With this email I want to announce the "geometric-relations-semantics" software (http://www.orocos.org/wiki/geometric-relations-semantics-wiki and http://www.ros.org/wiki/geometric_relations_semantics ).
The geometric relations semantics software (C++) implements the geometric relation semantics theory, hereby offering support for semantic checks for your rigid body relations calculations. This will avoid commonly made errors, and hence reduce application and, especially, system integration development time considerably. The proposed software is to our knowledge the first to offer a semantic interface for geometric operation software libraries.
The goal of the software is to provide semantic checking for calculations with geometric relations between rigid bodies on top of existing geometric libraries, which are only working on specific coordinate representations. Since there are already a lot of libraries with good support for geometric calculations on specific coordinate representations (The Orocos Kinematics and Dynamics library, the ROS geometry library, boost, ...) we do not want to design yet another library but rather will extend these existing geometric libraries with semantic support. The effort to extend an existing geometric library with semantic support is very limited: it boils down to the implementation of about six function template specializations.
The software already includes orocos typekits and already supports the KDL geometry types and ROS geometry types. Furthermore, it is fully Orocos and ROS compatible.
The wiki page (http://www.orocos.org/wiki/geometric-relations-semantics-wiki) contains background information, software design discussion, API, Quick start, User guide, tutorials, FAQs, and use cases.
We will be happy to receive any kind of feedback!
Tinne De Laet
PS: The software is based on the paper "Geometric Relations between Rigid Bodies: Semantics for Standardization" (available at http://people.mech.kuleuven.be/~tdelaet/geometric_relations_semantics/geometric_relations_semantics_theory.pdf ), which is accepted for publication as a tutorial in IEEE Robotics and Automation Magazine.