Skip to content

Conversation

@christian-rauch
Copy link

This set of commits enables to use URDF robot models in DART.

Summary of changes:

  • install DART library with a pkg-config file to a destination directory for system-wide access to the library files
  • enable to provide the tracker with an external dart model instance instead of providing a file path
  • new method dart::readModelURDF to obtain a dart model from a URDF file
  • read meshes in format obj and dae (collada) and ensure that only triangle meshes are added

Setting w=0 of a vertex results in its placement at the camera origin instead
of removing it from the scene. By using w=NAN, these vertices are not
visualized at all.
This enables the possibility to provide more joints than needed by the model.
In this case, required joints are automatically taken from the provided map.
The kinematic tree in the mesh is traversed recursively to obtain all
vertices, normals and faces and their transformation into the root node
frame. For mehses without tree structure (e.g. obj) there is only one node
which is the root node.
Link and Joints are extracted recursively from the root link that is automatically
determined or can be provided by the user. Joints are stores as frames in the
DART model, Links define the geometric representation. The package path is
determined automatically and a optional mesh file extension can be provided
to load meshes from other file types than provided in the URDF description.
If file "package.xml" does exists in paths down to the root and package URI
"package://" is not used in the mesh path, the given mesh path will be
interpreted as path relative to the *.urdf file.
@kanaek
Copy link

kanaek commented Jan 19, 2017

I used the readModelURDF function to read URDF models and thankfully, it works. I think this part written by Christian should be merged into master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants