PxD6Drive#

Defined in include/extensions/PxD6Joint.h

struct PxD6Drive#

Used to specify which axes of a D6 joint are driven.

Each drive is an implicit force-limited damped spring:

force = spring * (target position - position) + damping * (targetVelocity - velocity)

Alternatively, the spring may be configured to generate a specified acceleration instead of a force.

A linear axis is affected by drive only if the corresponding drive flag is set. There are two possible models for angular drive: swing/twist, which may be used to drive one or more angular degrees of freedom, or slerp, which may only be used to drive all three angular degrees simultaneously. Please use PxD6AngularDriveConfig to configure the angular drive model.

Public Types

enum Enum#

Values:

enumerator eX#

drive along the X-axis

enumerator eY#

drive along the Y-axis

enumerator eZ#

drive along the Z-axis

enumerator eSWING#

rotational drive around the Y- and Z-axis

Deprecated:

Note

Only allowed if the angular drive configuration is set to PxD6AngularDriveConfig::eLEGACY.

enumerator eTWIST#

rotational drive around the X-axis

Note

Only allowed if the angular drive configuration is set to PxD6AngularDriveConfig::eLEGACY or PxD6AngularDriveConfig::eSWING_TWIST.

enumerator eSLERP#

drive of all three angular degrees along a SLERP-path

Note

Only allowed if the angular drive configuration is set to PxD6AngularDriveConfig::eSLERP or PxD6AngularDriveConfig::eLEGACY.

Note

If the angular drive configuration is set to PxD6AngularDriveConfig::eLEGACY, then eSLERP takes precedence over eSWING/eTWIST

enumerator eSWING1#

rotational drive around the Y-axis

Note

Only allowed if the angular drive configuration is set to PxD6AngularDriveConfig::eSWING_TWIST.

enumerator eSWING2#

rotational drive around the Z-axis

Note

Only allowed if the angular drive configuration is set to PxD6AngularDriveConfig::eSWING_TWIST.

enumerator eCOUNT#