Float64到Float32

时间:2017-02-13 02:34:43

标签: c++ ros

我正在尝试向ROS发送一个ROS std_msgsFloat32但是,它不会自动向下转发。如何安全地将std_msgs :: Float64转换为std_msgs :: Float32?

具有向下转折问题的代码:

//currentLocation.theta is a Float64, thetaPublish accepts Float32
thetaPublish.publish(currentLocation.theta);

1 个答案:

答案 0 :(得分:1)

你应该可以这样做:

do.call

您只需要将double std_msgs::Float32 theta32; theta32.data = static_cast<float>(theta.data); thetaPublish.publish(theta32); 显式复制到浮点数。