Closed Carter12s closed 4 months ago
With this rostopic pub:
rostopic pub /point geometry_msgs/PointStamped "{point: {x: 1.0}}"
I see this from repr(msg._connection_header["message_definition"])
in a PointStamped:
"# This represents a Point with reference coordinate frame and timestamp\nHeader header\nPoint point\n\n================================================================================\nMSG: std_msgs/Header\n# Standard metadata for higher-level stamped data types.\n# This is generally used to communicate timestamped data \n# in a particular coordinate frame.\n# \n# sequence ID: consecutively increasing ID \nuint32 seq\n#Two-integer timestamp that is expressed as:\n# * stamp.sec: seconds (stamp_secs) since epoch (in Python the variable is called 'secs')\n# * stamp.nsec: nanoseconds since stamp_secs (in Python the variable is called 'nsecs')\n# time-handling sugar is provided by the client library\ntime stamp\n#Frame this data is associated with\nstring frame_id\n\n================================================================================\nMSG: geometry_msgs/Point\n# This contains the position of a point in free space\nfloat64 x\nfloat64 y\nfloat64 z\n"
but from a roslibrust node using this branch (at 03d73ac6)) it's still not expanding the Header or Point fields:
'# This represents a Point with reference coordinate frame and timestamp\nHeader header\nPoint point'
Okay, was able to get to an actual dev environment today where I could directly test this. Found a bug in how I was collecting referenced types that was skipping a layer.
Description
Previously our message_definition provided by Publishers did not include the fully expanded definition. This works fine for most cases, but PlotJuggler was fully parsing the definition for dynamic interaction. This should get our message_definition to be accepted by PlotJuggler.
Fixes
Closes: #173
Checklist