novaphy.ik.JointBodyBundle
Lightweight (joints, bodies) container used by the IK utilities. Replaces
the deleted top-level Articulation struct: provides the small interface
(num_links, total_q, total_qd, q_start, qd_start, joints,
bodies) the IK code historically used, without reintroducing a
C++-level struct.
Constructor
novaphy.ik.ik_solver.JointBodyBundle(joints, bodies)
| Parameter |
Description |
joints |
Iterable of Joint descriptors (parent-before-child order). |
bodies |
Iterable of RigidBody inertials, one per joint. |
Methods
| Method |
Description |
num_links() |
Number of links (length of joints). |
total_q() |
Sum of joint.num_q() across joints. |
total_qd() |
Sum of joint.num_qd() across joints. |
q_start(link) |
Index into the flat q vector at which link's position block begins. |
qd_start(link) |
Index into the flat qd vector at which link's velocity block begins. |
Attributes
| Attribute |
Description |
joints |
List of Joint descriptors. |
bodies |
List of RigidBody inertials. |
Notes
The IK functions accept either a JointBodyBundle, any object with
joints / bodies attributes, or a plain joints list (in which case empty
bodies are synthesized — IK uses kinematics only).
See Also