ROS pcl::PointXYZ 데이터 게시 시 시간 스탬프 문제
3517 단어 ROS
실행 중 오류: ERROR:terminate called after throwing an instance of'std::runtime_error' what(): Time is out of dual 32-bit range
#include
#include
#include
typedef pcl::PointCloud<:pointxyz> PointCloud;
int main(int argc, char** argv)
{
ros::init (argc, argv, "pub_pcl");
ros::NodeHandle nh;
ros::Publisher pub = nh.advertise ("points2", 1);
PointCloud::Ptr msg (new PointCloud);
msg->header.frame_id = "some_tf_frame";
msg->height = msg->width = 1;
msg->points.push_back (pcl::PointXYZ(1.0, 2.0, 3.0));
ros::Rate loop_rate(4);
while (nh.ok())
{
msg->header.stamp = ros::Time::now ();
pub.publish (msg);
ros::spinOnce ();
loop_rate.sleep ();
}
}
오류:error: no se puede convertir ‘ros::Time’ a ‘uint64_t {aka long unsigned int}’ en la asignación (it's in Spanish, I don't know how to change my compiler language)
error: 'ros::Time' cannot be converted to 'uint64_t {aka long unsigned int}' in assignment
해결 방법:
참조:http://answers.ros.org/question/172730/pcl-header-timestamp/
pcl_conversions
has conversion functions :http://docs.ros.org/indigo/api/pcl_co... To convert the time:
#include
...
pcl_conversions::toPCL(ros::Time::now(), point_cloud_msg->header.stamp);
Or convert an entire header from a ros message:
pcl_conversions::toPCL(ros_msg->header, point_cloud_msg>header);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Gazebo 시뮬레이터로 AR drone 2.0을 웹에서 조작농업이나 경비라든지 화상 인식할 수 있는 정보 수집 드론에 개인의 지속은 외로운 것입니다. 다음에 시뮬레이터 내의 드론을 웹과 GUI의 인터페이스에서 조작할 수 있도록 했습니다. 참고로 한 것은 이쪽 ※ROS의 ca...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.