# pagoda.physics.Joint¶

class pagoda.physics.Joint[source]

Base class for joints connecting two bodies.

In ODE, Body objects represent mass/inertia properties, while Joint and Motor objects represent mathematical constraints that govern how specific pairs of bodies interact. For example, a BallJoint that connects two bodies will force the anchor point for those two bodies to remain in the same location in world coordinates – any linear force that displaces one of the bodies will also cause a force to be applied to the second body, because of the constraint imposed by the ball joint. As another example, a Slider that connects two bodies allows those two bodies to displace relative to one another along a single axis, but not to rotate with respect to one another – any torque applied to one body will also cause a torque to be applied to the other body.

Constraints can be applied to angular degrees of freedom (e.g., AMotor), linear degrees of freedom (e.g., BallJoint, LMotor), or both (e.g., PistonJoint).

Both joints and motors apply constraints to pairs of bodies, but they are quite different in many ways and so are represented using specific subclasses. This superclass is just a mixin to avoid repeating the getters and setters that are common between motors and joints.

__init__()

x.__init__(...) initializes x; see help(type(x)) for signature

Methods

 disable_feedback() Disable feedback on this ODE object. enable_feedback() Enable feedback on this ODE object.

Attributes

 ADOF LDOF angle_rates List of angle rates for rotational degrees of freedom. angles List of angles for rotational degrees of freedom. axes List of axes for this object’s degrees of freedom. cfms List of CFM values for this object’s degrees of freedom. erps List of ERP values for this object’s degrees of freedom. feedback Feedback buffer (list of 3-tuples) for this ODE motor/joint. hi_stops List of hi stop values for this object’s degrees of freedom. lo_stops List of lo stop values for this object’s degrees of freedom. max_forces List of max force values for rotational degrees of freedom. position_rates List of position rates for linear degrees of freedom. positions List of positions for linear degrees of freedom. stop_cfms List of lo/hi stop CFM values. stop_erps List of lo/hi stop ERP values. velocities List of target velocity values for rotational degrees of freedom.
angle_rates

List of angle rates for rotational degrees of freedom.

angles

List of angles for rotational degrees of freedom.

axes

List of axes for this object’s degrees of freedom.

cfms

List of CFM values for this object’s degrees of freedom.

disable_feedback()[source]

Disable feedback on this ODE object.

enable_feedback()[source]

Enable feedback on this ODE object.

erps

List of ERP values for this object’s degrees of freedom.

feedback

Feedback buffer (list of 3-tuples) for this ODE motor/joint.

hi_stops

List of hi stop values for this object’s degrees of freedom.

lo_stops

List of lo stop values for this object’s degrees of freedom.

max_forces

List of max force values for rotational degrees of freedom.

position_rates

List of position rates for linear degrees of freedom.

positions

List of positions for linear degrees of freedom.

stop_cfms

List of lo/hi stop CFM values.

stop_erps

List of lo/hi stop ERP values.

velocities

List of target velocity values for rotational degrees of freedom.