k: Kinematics library for rust-lang
k has below functionalities.
- Forward kinematics
- Inverse kinematics
- URDF Loader
k uses nalgebra as math library.
See Document and examples/ for more details.
Requirements to build examples
IK example with GUI

Push below keys to move the end of the manipulator.
f: forwardb: backwardp: upn: downl: leftr: rightz: reset the manipulator state.
Create link tree from urdf and solve IK
use *;
Structure of API
Top level interface is Chain struct. It contains Nodes and they have the relations between nodes (parent/children).
Actual data (joint angle(position), transform between nodes) is stored in Joint object inside nodes.

You can get local/world transform of nodes. See below figure to understand what is the node's local_transform() and world_transform().

OpenRR Community
Here is a discord server for OpenRR users and developers.