Reference: OpenRAVE::KinBody
Each KinBody can be thought of as the basic rigid body element in OpenRAVE. It is composed of a collection of links (rigid bodies) connected with joints. The KinBody class provides a lot of functionality (from a planning perspective) needed to perform complex tasks:
- Setting and getting joint values
- Setting and getting the transformations of all links
- Getting the velocities of each joint (or link)
- Self collision detection functions
- Kinematic hierarchy querying - The underlying structure of KinBody is a list of links, not a tree. However, after some careful analysis, the parent and child links of a particular link can be extracted.
- Jacobian calculation - both translational and rotational.
- Attaching bodies online - a necessary function for manipulation planning; is called, for example, when an object is rigidly grasped by a hand
Loading Options
This is the set of loading options passed as a AttributesList into functions like OpenRAVE::EnvironmentBase::ReadKinBodyXMLFile:
- prefix: prefix link, joint, manipulator, and sensor names with a string
- skipgeometry: if 1 or true, will skip loading all geometry of the links