我正在尝试向ROS发送一个ROS std_msgsFloat32但是,它不会自动向下转发。如何安全地将std_msgs :: Float64转换为std_msgs :: Float32?
具有向下转折问题的代码:
//currentLocation.theta is a Float64, thetaPublish accepts Float32
thetaPublish.publish(currentLocation.theta);
答案 0 :(得分:1)
你应该可以这样做:
do.call
您只需要将double std_msgs::Float32 theta32;
theta32.data = static_cast<float>(theta.data);
thetaPublish.publish(theta32);
显式复制到浮点数。