V-REP offers powerful calculation functionalities, or calculation modules, that are not directly encapsulated in objects (like proximity sensors or vision sensors for instance), but that rather operate on one or several objects.
Calculation modules include:
the collision detection module: the module allows to track, record and visualize collisions that might occur between any collidable entity.
the minimum distance calculation module: the module allows to track, record and visualize minimum distances between any measurable entity.
the inverse kinematics calculation module: the module allows solving in a very efficient way any type of inverse or forward kinematic problem.
the geometric constraint solver module: the module allows solving inverse or forward kinematic problems, while offering a great extent of interaction possibilities to the user.
the dynamics module: the module allows dynamically simulating objects or models to achieve object interactions (e.g. collision response, object grasping, etc.)
the path and motion planning module: the module, encapsulated in a plugin, allows performing path and motion planning calculations based on the OMPL library.
Some calculation module allow registering calculation objects that are user defined. Calculation objects are different from scene objects, but are indirectly linked to them by operating on them. This means that calculation objects cannot exist by themselves:
Collision detection objects (or collision objects) rely on collidable objects.
Minimum distance calculation objects (or distance objects) rely on measurable objects.
Inverse kinematics calculation objects (or IK groups) rely mainly on dummies and kinematic chains, where joint objects play a central role.
Geometric constraint solver objects (or mechanisms) rely mainly on dummies and kinematic chains, where joint objects play a central role.
If the integrity of a given calculation object is maintained during a copy/paste operation of scene objects, then that calculation object will also automatically be copied. For example, if collision object A is defined by collidable object B and collidable object C (i.e. performs collision detection between object B and object C), and if both objects B and C are duplicated at the same time (in a same copy-paste operation), then collision object A will also be duplicated. This represents a powerful feature allowing to duplicate not only objects or models, but also all their related calculation objects (including all related scripts), so that the full functionality and behavior of an object or model can be maintained.
Calculation module properties dialog
Collision detection module
Minimum distance calculation module
Inverse kinematics calculation module
Geometric constraint solver module
Path and motion planning module