Generic6DOFJoint3D
继承: Joint3D
< Node3D
< Node
< Object
A physics joint that allows for complex movement and rotation between two 3D physics bodies.
描述
The Generic6DOFJoint3D (6 Degrees Of Freedom) joint allows for implementing custom types of joints by locking the rotation and translation of certain axes.
The first 3 DOF represent the linear motion of the physics bodies and the last 3 DOF represent the angular motion of the physics bodies. Each axis can be either locked, or limited.
属性
方法
bool | get_flag_x ( flag: Flag ) const1 |
bool | get_flag_y ( flag: Flag ) const1 |
bool | get_flag_z ( flag: Flag ) const1 |
float | get_param_x ( param: Param ) const1 |
float | get_param_y ( param: Param ) const1 |
float | get_param_z ( param: Param ) const1 |
void | set_flag_x ( flag: Flag, value: bool ) |
void | set_flag_y ( flag: Flag, value: bool ) |
void | set_flag_z ( flag: Flag, value: bool ) |
void | set_param_x ( param: Param, value: float ) |
void | set_param_y ( param: Param, value: float ) |
void | set_param_z ( param: Param, value: float ) |
枚举
enum Param:
Param PARAM_LINEAR_LOWER_LIMIT = 0
The minimum difference between the pivot points' axes.
Param PARAM_LINEAR_UPPER_LIMIT = 1
The maximum difference between the pivot points' axes.
Param PARAM_LINEAR_LIMIT_SOFTNESS = 2
A factor applied to the movement across the axes. The lower, the slower the movement.
Param PARAM_LINEAR_RESTITUTION = 3
The amount of restitution on the axes' movement. The lower, the more momentum gets lost.
Param PARAM_LINEAR_DAMPING = 4
The amount of damping that happens at the linear motion across the axes.
Param PARAM_LINEAR_MOTOR_TARGET_VELOCITY = 5
The velocity the linear motor will try to reach.
Param PARAM_LINEAR_MOTOR_FORCE_LIMIT = 6
The maximum force the linear motor will apply while trying to reach the velocity target.
Param PARAM_LINEAR_SPRING_STIFFNESS = 7
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Param PARAM_LINEAR_SPRING_DAMPING = 8
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Param PARAM_LINEAR_SPRING_EQUILIBRIUM_POINT = 9
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Param PARAM_ANGULAR_LOWER_LIMIT = 10
The minimum rotation in negative direction to break loose and rotate around the axes.
Param PARAM_ANGULAR_UPPER_LIMIT = 11
The minimum rotation in positive direction to break loose and rotate around the axes.
Param PARAM_ANGULAR_LIMIT_SOFTNESS = 12
The speed of all rotations across the axes.
Param PARAM_ANGULAR_DAMPING = 13
The amount of rotational damping across the axes. The lower, the more damping occurs.
Param PARAM_ANGULAR_RESTITUTION = 14
The amount of rotational restitution across the axes. The lower, the more restitution occurs.
Param PARAM_ANGULAR_FORCE_LIMIT = 15
The maximum amount of force that can occur, when rotating around the axes.
Param 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 PARAM_ANGULAR_MOTOR_TARGET_VELOCITY = 17
Target speed for the motor at the axes.
Param PARAM_ANGULAR_MOTOR_FORCE_LIMIT = 18
Maximum acceleration for the motor at the axes.
Param PARAM_ANGULAR_SPRING_STIFFNESS = 19
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Param PARAM_ANGULAR_SPRING_DAMPING = 20
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Param PARAM_ANGULAR_SPRING_EQUILIBRIUM_POINT = 21
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Param PARAM_MAX = 22
Represents the size of the Param enum.
enum Flag:
Flag FLAG_ENABLE_LINEAR_LIMIT = 0
If enabled, linear motion is possible within the given limits.
Flag FLAG_ENABLE_ANGULAR_LIMIT = 1
If enabled, rotational motion is possible within the given limits.
Flag FLAG_ENABLE_LINEAR_SPRING = 3
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Flag FLAG_ENABLE_ANGULAR_SPRING = 2
该枚举目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
Flag FLAG_ENABLE_MOTOR = 4
If enabled, there is a rotational motor across these axes.
Flag FLAG_ENABLE_LINEAR_MOTOR = 5
If enabled, there is a linear motor across these axes.
Flag FLAG_MAX = 6
Represents the size of the Flag enum.
属性说明
float
angular_limit_x/damping = 1.0
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 = true
If true
, rotation across the X axis is limited.
float
angular_limit_x/erp = 0.5
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 = 0.0
The maximum amount of force that can occur, when rotating around the X axis.
float
angular_limit_x/lower_angle = 0.0
The minimum rotation in negative direction to break loose and rotate around the X axis.
float
angular_limit_x/restitution = 0.0
The amount of rotational restitution across the X axis. The lower, the more restitution occurs.
float
angular_limit_x/softness = 0.5
The speed of all rotations across the X axis.
float
angular_limit_x/upper_angle = 0.0
The minimum rotation in positive direction to break loose and rotate around the X axis.
float
angular_limit_y/damping = 1.0
The amount of rotational damping across the Y axis. The lower, the more damping occurs.
bool
angular_limit_y/enabled = true
If true
, rotation across the Y axis is limited.
float
angular_limit_y/erp = 0.5
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 = 0.0
The maximum amount of force that can occur, when rotating around the Y axis.
float
angular_limit_y/lower_angle = 0.0
The minimum rotation in negative direction to break loose and rotate around the Y axis.
float
angular_limit_y/restitution = 0.0
The amount of rotational restitution across the Y axis. The lower, the more restitution occurs.
float
angular_limit_y/softness = 0.5
The speed of all rotations across the Y axis.
float
angular_limit_y/upper_angle = 0.0
The minimum rotation in positive direction to break loose and rotate around the Y axis.
float
angular_limit_z/damping = 1.0
The amount of rotational damping across the Z axis. The lower, the more damping occurs.
bool
angular_limit_z/enabled = true
If true
, rotation across the Z axis is limited.
float
angular_limit_z/erp = 0.5
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 = 0.0
The maximum amount of force that can occur, when rotating around the Z axis.
float
angular_limit_z/lower_angle = 0.0
The minimum rotation in negative direction to break loose and rotate around the Z axis.
float
angular_limit_z/restitution = 0.0
The amount of rotational restitution across the Z axis. The lower, the more restitution occurs.
float
angular_limit_z/softness = 0.5
The speed of all rotations across the Z axis.
float
angular_limit_z/upper_angle = 0.0
The minimum rotation in positive direction to break loose and rotate around the Z axis.
bool
angular_motor_x/enabled = false
If true
, a rotating motor at the X axis is enabled.
float
angular_motor_x/force_limit = 300.0
Maximum acceleration for the motor at the X axis.
float
angular_motor_x/target_velocity = 0.0
Target speed for the motor at the X axis.
bool
angular_motor_y/enabled = false
If true
, a rotating motor at the Y axis is enabled.
float
angular_motor_y/force_limit = 300.0
Maximum acceleration for the motor at the Y axis.
float
angular_motor_y/target_velocity = 0.0
Target speed for the motor at the Y axis.
bool
angular_motor_z/enabled = false
If true
, a rotating motor at the Z axis is enabled.
float
angular_motor_z/force_limit = 300.0
Maximum acceleration for the motor at the Z axis.
float
angular_motor_z/target_velocity = 0.0
Target speed for the motor at the Z axis.
float
angular_spring_x/damping = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
angular_spring_x/enabled = false
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_x/equilibrium_point = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_x/stiffness = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_y/damping = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
angular_spring_y/enabled = false
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_y/equilibrium_point = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_y/stiffness = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_z/damping = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
angular_spring_z/enabled = false
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_z/equilibrium_point = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
angular_spring_z/stiffness = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_limit_x/damping = 1.0
The amount of damping that happens at the X motion.
bool
linear_limit_x/enabled = true
If true
, the linear motion across the X axis is limited.
float
linear_limit_x/lower_distance = 0.0
The minimum difference between the pivot points' X axis.
float
linear_limit_x/restitution = 0.5
The amount of restitution on the X axis movement. The lower, the more momentum gets lost.
float
linear_limit_x/softness = 0.7
A factor applied to the movement across the X axis. The lower, the slower the movement.
float
linear_limit_x/upper_distance = 0.0
The maximum difference between the pivot points' X axis.
float
linear_limit_y/damping = 1.0
The amount of damping that happens at the Y motion.
bool
linear_limit_y/enabled = true
If true
, the linear motion across the Y axis is limited.
float
linear_limit_y/lower_distance = 0.0
The minimum difference between the pivot points' Y axis.
float
linear_limit_y/restitution = 0.5
The amount of restitution on the Y axis movement. The lower, the more momentum gets lost.
float
linear_limit_y/softness = 0.7
A factor applied to the movement across the Y axis. The lower, the slower the movement.
float
linear_limit_y/upper_distance = 0.0
The maximum difference between the pivot points' Y axis.
float
linear_limit_z/damping = 1.0
The amount of damping that happens at the Z motion.
bool
linear_limit_z/enabled = true
If true
, the linear motion across the Z axis is limited.
float
linear_limit_z/lower_distance = 0.0
The minimum difference between the pivot points' Z axis.
float
linear_limit_z/restitution = 0.5
The amount of restitution on the Z axis movement. The lower, the more momentum gets lost.
float
linear_limit_z/softness = 0.7
A factor applied to the movement across the Z axis. The lower, the slower the movement.
float
linear_limit_z/upper_distance = 0.0
The maximum difference between the pivot points' Z axis.
bool
linear_motor_x/enabled = false
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 = 0.0
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 = 0.0
The speed that the linear motor will attempt to reach on the X axis.
bool
linear_motor_y/enabled = false
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 = 0.0
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 = 0.0
The speed that the linear motor will attempt to reach on the Y axis.
bool
linear_motor_z/enabled = false
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 = 0.0
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 = 0.0
The speed that the linear motor will attempt to reach on the Z axis.
float
linear_spring_x/damping = 0.01
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
linear_spring_x/enabled = false
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_x/equilibrium_point = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_x/stiffness = 0.01
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_y/damping = 0.01
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
linear_spring_y/enabled = false
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_y/equilibrium_point = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_y/stiffness = 0.01
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_z/damping = 0.01
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
linear_spring_z/enabled = false
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_z/equilibrium_point = 0.0
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
linear_spring_z/stiffness = 0.01
该属性目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
方法说明
bool
get_flag_x ( flag: Flag ) const1
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
get_flag_y ( flag: Flag ) const1
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
bool
get_flag_z ( flag: Flag ) const1
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
get_param_x ( param: Param ) const1
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
get_param_y ( param: Param ) const1
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
float
get_param_z ( param: Param ) const1
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
void
set_flag_x ( flag: Flag, value: bool
)
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
void
set_flag_y ( flag: Flag, value: bool
)
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
void
set_flag_z ( flag: Flag, value: bool
)
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
void
set_param_x ( param: Param, value: float
)
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
void
set_param_y ( param: Param, value: float
)
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
void
set_param_z ( param: Param, value: float
)
该方法目前没有描述,请帮我们\ :ref:贡献一个 <doc_updating_the_class_reference>
\ 吧!
本方法通常需要用户覆盖才能生效。
本方法无副作用,不会修改该实例的任何成员变量。
本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。
本方法用于构造某个类型。
调用本方法无需实例,可直接使用类名进行调用。
本方法描述的是使用本类型作为左操作数的有效运算符。
这个值是由下列位标志构成位掩码的整数。
无返回值。