ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Personally, if I don't have a need to programmatically generate a collision scene I just write a URDF with my static objects.

It's (all subjective of course) easy to visualise, easy to edit and easy to version (it's just a bunch of text / xml).

Conditional inclusion of objects is also possible (xacro supports conditionals, entire Python expressions in fact).

Having to read lines of C++ or Python and to have to make a mental model of what the resulting scene looks like sounds like an arduous thing to have to do compared to just looking at RViz (click the collision checkbox of the Robot Model display).

Personally, if I don't have a need to programmatically generate a collision scene I just write a URDF with my static objects.

It's (all subjective of course) easy to visualise, easy to edit and easy to version (it's just a bunch of text / xml).

Conditional inclusion of objects is also possible (xacro supports conditionals, entire Python expressions in fact).

Having to read lines of C++ or Python and to have to make a mental model of what the resulting scene looks like sounds like an arduous thing to have to do compared to just looking at RViz (click the collision checkbox of the Robot Model display).


I can't find it right now, but I remember there being at least one project that programmatically generated URDF snippets with a Python based DSL and then combined those into proper whole URDFs. That could be a hybrid between completely programmatic and completely based on markup.