我正在尝试发送一个float64形式的ROS std_msgsFloat32,但是它不会自动向下转换。如何安全地将std_msgs :: Float64转换为std_msgs :: Float32?
带有下垂问题的代码:
//currentLocation.theta is a Float64, thetaPublish accepts Float32
thetaPublish.publish(currentLocation.theta);
您应该可以执行以下操作:
std_msgs::Float32 theta32;
theta32.data = static_cast<float>(theta.data);
thetaPublish.publish(theta32);
您只需要将双data
精度型显式复制到浮点型即可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句