Generic6DOFJoint
Inherits: Joint < Spatial < Node < Object
The generic 6-degrees-of-freedom joint can implement a variety of joint types by locking certain axes’ rotation or translation.
Description
The first 3 DOF axes are linear axes, which represent translation of Bodies, and the latter 3 DOF axes represent the angular motion. Each axis can be either locked, or limited.
Properties
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
Methods
get_flag_x ( Flag flag ) const | |
get_flag_y ( Flag flag ) const | |
get_flag_z ( Flag flag ) const | |
get_param_x ( Param param ) const | |
get_param_y ( Param param ) const | |
get_param_z ( Param param ) const | |
void | set_flag_x ( Flag flag, bool value ) |
void | set_flag_y ( Flag flag, bool value ) |
void | set_flag_z ( Flag flag, bool value ) |
void | set_param_x ( Param param, float value ) |
void | set_param_y ( Param param, float value ) |
void | set_param_z ( Param param, float value ) |
Enumerations
enum Param:
PARAM_LINEAR_LOWER_LIMIT = 0 —- The minimum difference between the pivot points’ axes.
PARAM_LINEAR_UPPER_LIMIT = 1 —- The maximum difference between the pivot points’ axes.
PARAM_LINEAR_LIMIT_SOFTNESS = 2 —- A factor applied to the movement across the axes. The lower, the slower the movement.
PARAM_LINEAR_RESTITUTION = 3 —- The amount of restitution on the axes’ movement. The lower, the more momentum gets lost.
PARAM_LINEAR_DAMPING = 4 —- The amount of damping that happens at the linear motion across the axes.
PARAM_LINEAR_MOTOR_TARGET_VELOCITY = 5 —- The velocity the linear motor will try to reach.
PARAM_LINEAR_MOTOR_FORCE_LIMIT = 6 —- The maximum force the linear motor will apply while trying to reach the velocity target.
PARAM_LINEAR_SPRING_STIFFNESS = 7
PARAM_LINEAR_SPRING_DAMPING = 8
PARAM_LINEAR_SPRING_EQUILIBRIUM_POINT = 9
PARAM_ANGULAR_LOWER_LIMIT = 10 —- The minimum rotation in negative direction to break loose and rotate around the axes.
PARAM_ANGULAR_UPPER_LIMIT = 11 —- The minimum rotation in positive direction to break loose and rotate around the axes.
PARAM_ANGULAR_LIMIT_SOFTNESS = 12 —- The speed of all rotations across the axes.
PARAM_ANGULAR_DAMPING = 13 —- The amount of rotational damping across the axes. The lower, the more dampening occurs.
PARAM_ANGULAR_RESTITUTION = 14 —- The amount of rotational restitution across the axes. The lower, the more restitution occurs.
PARAM_ANGULAR_FORCE_LIMIT = 15 —- The maximum amount of force that can occur, when rotating around the axes.
PARAM_ANGULAR_ERP = 16 —- When rotating across the axes, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.
PARAM_ANGULAR_MOTOR_TARGET_VELOCITY = 17 —- Target speed for the motor at the axes.
PARAM_ANGULAR_MOTOR_FORCE_LIMIT = 18 —- Maximum acceleration for the motor at the axes.
PARAM_ANGULAR_SPRING_STIFFNESS = 19
PARAM_ANGULAR_SPRING_DAMPING = 20
PARAM_ANGULAR_SPRING_EQUILIBRIUM_POINT = 21
PARAM_MAX = 22 —- Represents the size of the Param enum.
enum Flag:
FLAG_ENABLE_LINEAR_LIMIT = 0 —- If enabled, linear motion is possible within the given limits.
FLAG_ENABLE_ANGULAR_LIMIT = 1 —- If enabled, rotational motion is possible within the given limits.
FLAG_ENABLE_LINEAR_SPRING = 3
FLAG_ENABLE_ANGULAR_SPRING = 2
FLAG_ENABLE_MOTOR = 4 —- If enabled, there is a rotational motor across these axes.
FLAG_ENABLE_LINEAR_MOTOR = 5 —- If enabled, there is a linear motor across these axes.
FLAG_MAX = 6 —- Represents the size of the Flag enum.
Property Descriptions
- float angular_limit_x/damping
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The amount of rotational damping across the X axis.
The lower, the longer an impulse from one side takes to travel to the other side.
- bool angular_limit_x/enabled
Default |
|
Setter | set_flag_x(value) |
Getter | get_flag_x() |
If true
, rotation across the X axis is limited.
- float angular_limit_x/erp
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
When rotating across the X axis, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.
- float angular_limit_x/force_limit
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The maximum amount of force that can occur, when rotating around the X axis.
- float angular_limit_x/lower_angle
Default |
|
The minimum rotation in negative direction to break loose and rotate around the X axis.
- float angular_limit_x/restitution
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The amount of rotational restitution across the X axis. The lower, the more restitution occurs.
- float angular_limit_x/softness
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The speed of all rotations across the X axis.
- float angular_limit_x/upper_angle
Default |
|
The minimum rotation in positive direction to break loose and rotate around the X axis.
- float angular_limit_y/damping
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The amount of rotational damping across the Y axis. The lower, the more dampening occurs.
- bool angular_limit_y/enabled
Default |
|
Setter | set_flag_y(value) |
Getter | get_flag_y() |
If true
, rotation across the Y axis is limited.
- float angular_limit_y/erp
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
When rotating across the Y axis, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.
- float angular_limit_y/force_limit
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The maximum amount of force that can occur, when rotating around the Y axis.
- float angular_limit_y/lower_angle
Default |
|
The minimum rotation in negative direction to break loose and rotate around the Y axis.
- float angular_limit_y/restitution
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The amount of rotational restitution across the Y axis. The lower, the more restitution occurs.
- float angular_limit_y/softness
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The speed of all rotations across the Y axis.
- float angular_limit_y/upper_angle
Default |
|
The minimum rotation in positive direction to break loose and rotate around the Y axis.
- float angular_limit_z/damping
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The amount of rotational damping across the Z axis. The lower, the more dampening occurs.
- bool angular_limit_z/enabled
Default |
|
Setter | set_flag_z(value) |
Getter | get_flag_z() |
If true
, rotation across the Z axis is limited.
- float angular_limit_z/erp
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
When rotating across the Z axis, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.
- float angular_limit_z/force_limit
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The maximum amount of force that can occur, when rotating around the Z axis.
- float angular_limit_z/lower_angle
Default |
|
The minimum rotation in negative direction to break loose and rotate around the Z axis.
- float angular_limit_z/restitution
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The amount of rotational restitution across the Z axis. The lower, the more restitution occurs.
- float angular_limit_z/softness
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The speed of all rotations across the Z axis.
- float angular_limit_z/upper_angle
Default |
|
The minimum rotation in positive direction to break loose and rotate around the Z axis.
- bool angular_motor_x/enabled
Default |
|
Setter | set_flag_x(value) |
Getter | get_flag_x() |
If true
, a rotating motor at the X axis is enabled.
- float angular_motor_x/force_limit
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
Maximum acceleration for the motor at the X axis.
- float angular_motor_x/target_velocity
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
Target speed for the motor at the X axis.
- bool angular_motor_y/enabled
Default |
|
Setter | set_flag_y(value) |
Getter | get_flag_y() |
If true
, a rotating motor at the Y axis is enabled.
- float angular_motor_y/force_limit
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
Maximum acceleration for the motor at the Y axis.
- float angular_motor_y/target_velocity
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
Target speed for the motor at the Y axis.
- bool angular_motor_z/enabled
Default |
|
Setter | set_flag_z(value) |
Getter | get_flag_z() |
If true
, a rotating motor at the Z axis is enabled.
- float angular_motor_z/force_limit
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
Maximum acceleration for the motor at the Z axis.
- float angular_motor_z/target_velocity
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
Target speed for the motor at the Z axis.
- float angular_spring_x/damping
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
- bool angular_spring_x/enabled
Default |
|
Setter | set_flag_x(value) |
Getter | get_flag_x() |
- float angular_spring_x/equilibrium_point
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
- float angular_spring_x/stiffness
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
- float angular_spring_y/damping
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
- bool angular_spring_y/enabled
Default |
|
Setter | set_flag_y(value) |
Getter | get_flag_y() |
- float angular_spring_y/equilibrium_point
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
- float angular_spring_y/stiffness
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
- float angular_spring_z/damping
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
- bool angular_spring_z/enabled
Default |
|
Setter | set_flag_z(value) |
Getter | get_flag_z() |
- float angular_spring_z/equilibrium_point
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
- float angular_spring_z/stiffness
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
- float linear_limit_x/damping
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The amount of damping that happens at the X motion.
- bool linear_limit_x/enabled
Default |
|
Setter | set_flag_x(value) |
Getter | get_flag_x() |
If true
, the linear motion across the X axis is limited.
- float linear_limit_x/lower_distance
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The minimum difference between the pivot points’ X axis.
- float linear_limit_x/restitution
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The amount of restitution on the X axis movement. The lower, the more momentum gets lost.
- float linear_limit_x/softness
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
A factor applied to the movement across the X axis. The lower, the slower the movement.
- float linear_limit_x/upper_distance
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The maximum difference between the pivot points’ X axis.
- float linear_limit_y/damping
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The amount of damping that happens at the Y motion.
- bool linear_limit_y/enabled
Default |
|
Setter | set_flag_y(value) |
Getter | get_flag_y() |
If true
, the linear motion across the Y axis is limited.
- float linear_limit_y/lower_distance
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The minimum difference between the pivot points’ Y axis.
- float linear_limit_y/restitution
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The amount of restitution on the Y axis movement. The lower, the more momentum gets lost.
- float linear_limit_y/softness
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
A factor applied to the movement across the Y axis. The lower, the slower the movement.
- float linear_limit_y/upper_distance
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The maximum difference between the pivot points’ Y axis.
- float linear_limit_z/damping
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The amount of damping that happens at the Z motion.
- bool linear_limit_z/enabled
Default |
|
Setter | set_flag_z(value) |
Getter | get_flag_z() |
If true
, the linear motion across the Z axis is limited.
- float linear_limit_z/lower_distance
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The minimum difference between the pivot points’ Z axis.
- float linear_limit_z/restitution
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The amount of restitution on the Z axis movement. The lower, the more momentum gets lost.
- float linear_limit_z/softness
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
A factor applied to the movement across the Z axis. The lower, the slower the movement.
- float linear_limit_z/upper_distance
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The maximum difference between the pivot points’ Z axis.
- bool linear_motor_x/enabled
Default |
|
Setter | set_flag_x(value) |
Getter | get_flag_x() |
If true
, then there is a linear motor on the X axis. It will attempt to reach the target velocity while staying within the force limits.
- float linear_motor_x/force_limit
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The maximum force the linear motor can apply on the X axis while trying to reach the target velocity.
- float linear_motor_x/target_velocity
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
The speed that the linear motor will attempt to reach on the X axis.
- bool linear_motor_y/enabled
Default |
|
Setter | set_flag_y(value) |
Getter | get_flag_y() |
If true
, then there is a linear motor on the Y axis. It will attempt to reach the target velocity while staying within the force limits.
- float linear_motor_y/force_limit
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The maximum force the linear motor can apply on the Y axis while trying to reach the target velocity.
- float linear_motor_y/target_velocity
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
The speed that the linear motor will attempt to reach on the Y axis.
- bool linear_motor_z/enabled
Default |
|
Setter | set_flag_z(value) |
Getter | get_flag_z() |
If true
, then there is a linear motor on the Z axis. It will attempt to reach the target velocity while staying within the force limits.
- float linear_motor_z/force_limit
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The maximum force the linear motor can apply on the Z axis while trying to reach the target velocity.
- float linear_motor_z/target_velocity
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
The speed that the linear motor will attempt to reach on the Z axis.
- float linear_spring_x/damping
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
- bool linear_spring_x/enabled
Default |
|
Setter | set_flag_x(value) |
Getter | get_flag_x() |
- float linear_spring_x/equilibrium_point
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
- float linear_spring_x/stiffness
Default |
|
Setter | set_param_x(value) |
Getter | get_param_x() |
- float linear_spring_y/damping
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
- bool linear_spring_y/enabled
Default |
|
Setter | set_flag_y(value) |
Getter | get_flag_y() |
- float linear_spring_y/equilibrium_point
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
- float linear_spring_y/stiffness
Default |
|
Setter | set_param_y(value) |
Getter | get_param_y() |
- float linear_spring_z/damping
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
- bool linear_spring_z/enabled
Default |
|
Setter | set_flag_z(value) |
Getter | get_flag_z() |
- float linear_spring_z/equilibrium_point
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |
- float linear_spring_z/stiffness
Default |
|
Setter | set_param_z(value) |
Getter | get_param_z() |