API review
Proposer: John Hsu
Present at review:
- Matei
- Gil
- Sachin
- Nate
Question / concerns / comments
Enter your thoughts on the API and any questions / concerns you have here. Please sign your name. Anything you want to address in the API review should be marked down here before the start of the meeting.
- John - to address some direction issues for updating urdf definitions and api.
Meeting agenda
Consider the addition of the following features and what it might take to implement them if we choose to do so.
Adding TiXmlElement* Model::writeURDF(), TiXmlElement* Model::writeCOLLADA()
Adding Model::writeCOLLADA()
- Now that urdf includes collada parsing using collada-dom, it is trivial to merge the collada writer (currently in collada_urdf package) into the urdf package. This means removing the collada_urdf package.
- Add a convex hull geometry
- With the multiple geometries per link, this will allow convex decompositions to be specified.
Addition of extra fields described on the OpenRave page.
- manipulators (a semantic meaning for a chain of joints)
- parameters: frame_origin, frame_tip, gripper_axis, iksolver, free_axis
- For example: solve IK for link X is not enough information. Do we include torso joint? Do we use all joints of the arm? What about fingers? solve IK for manipulator X would hold all information.
support for more than 2 types of meshes (visual, self-collision, environment-collision), #4270: enhancement: Support for multiple "visuals" fields in URDF for a single link (new)
- sensors (image sensors, range sensors, etc.)
- manipulators (a semantic meaning for a chain of joints)
Meeting Notes
go ahead and add TiXmlElement* Model::writeURDF(), TiXmlElement* Model::writeCOLLADA()
- tickets resolved on trac individually:
- Support for convex hull geometry will be provided by multiple collisions in URDF.
Multiple meshes are treated as unions, for the case where altenative meshes are specified, this will be supported in extensions.
Addition of extra fields described on the OpenRave page.
- manipulators (a semantic meaning for a chain of joints) are to be supported as mapping to an extension outside of core URDF.
- support for more than 2 types of meshes (visual, self-collision, environment-collision) are to be supported as mapping to an extension outside of URDF.
- In general, do we push things into URDF or define new extensions?
- Adding more specific features such as manipulator "groups" to URDF will be convenient for some portability between different robot and applications, but how to do this correctly in general is hard, so we should keep new features in extensions for now.
- How to prevent explosion of having too many extensions.
- Think about how to specify external plugins for parsing URDF extensions in a generic way.
Switching ROS to support COLLADA? COLLADA->URDF converter will support current ROS functionalities implemented on top of URDF given a COLLADA robot model. This enables us to move forward thinking seriously about adapting COLLADA into ROS.
Conclusion
Package status change mark change manifest)
Action items that need to be taken.
Major issues that need to be resolved