Generic6DOFJoint¶
继承: JointBase < Item3D < Item < Object
一种物理关节,允许在两个3D物理体之间进行复杂的运动和旋转。
描述¶
Generic6DOFJoint(6自由度)关节允许通过锁定某些轴的旋转和平移来实现自定义类型的关节。
前三个自由度表示物理体的线性运动,后三个自由度表示物理体的角运动。每个轴可以锁定或限制。
属性¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
方法¶
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, 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
枢轴点轴线之间的最小差异。
Param PARAM_LINEAR_UPPER_LIMIT = 1
枢轴点轴线之间的最大差异。
Param PARAM_LINEAR_LIMIT_SOFTNESS = 2
应用于轴上运动的因素。越低,运动越慢。
Param PARAM_LINEAR_RESTITUTION = 3
轴运动的恢复量。越低,失去的动量越多。
Param PARAM_LINEAR_DAMPING = 4
在轴的直线运动中发生的阻尼量。
Param PARAM_LINEAR_MOTOR_TARGET_VELOCITY = 5
直线电机将试图达到的速度。
Param PARAM_LINEAR_MOTOR_FORCE_LIMIT = 6
直线电机在试图达到速度目标时施加的最大力。
Param PARAM_LINEAR_SPRING_STIFFNESS = 7
Param PARAM_LINEAR_SPRING_DAMPING = 8
Param PARAM_LINEAR_SPRING_EQUILIBRIUM_POINT = 9
Param PARAM_ANGULAR_LOWER_LIMIT = 10
负方向的最小旋转,以松开并绕轴旋转。
Param PARAM_ANGULAR_UPPER_LIMIT = 11
正方向的最小旋转,以松开并绕轴旋转。
Param PARAM_ANGULAR_LIMIT_SOFTNESS = 12
轴上所有旋转的速度。
Param PARAM_ANGULAR_DAMPING = 13
轴上的旋转阻尼量。越低,发生的阻尼越多。
Param PARAM_ANGULAR_RESTITUTION = 14
轴上的旋转恢复量。越低,恢复越多。
Param PARAM_ANGULAR_FORCE_LIMIT = 15
绕轴旋转时可能发生的最大力。
Param PARAM_ANGULAR_ERP = 16
当在轴上旋转时,这个误差容差系数定义了校正变慢的程度。越低,越慢。
Param PARAM_ANGULAR_MOTOR_TARGET_VELOCITY = 17
电机在轴上的目标速度。
Param PARAM_ANGULAR_MOTOR_FORCE_LIMIT = 18
电机在轴上的最大加速度。
Param PARAM_ANGULAR_SPRING_STIFFNESS = 19
Param PARAM_ANGULAR_SPRING_DAMPING = 20
Param PARAM_ANGULAR_SPRING_EQUILIBRIUM_POINT = 21
Param PARAM_MAX = 22
表示Param枚举的大小。
enum Flag: 🔗
Flag FLAG_ENABLE_LINEAR_LIMIT = 0
如果启用,则可以在给定限制内进行直线运动。
Flag FLAG_ENABLE_ANGULAR_LIMIT = 1
如果启用,则可以在给定限制内进行旋转运动。
Flag FLAG_ENABLE_LINEAR_SPRING = 3
Flag FLAG_ENABLE_ANGULAR_SPRING = 2
Flag FLAG_ENABLE_MOTOR = 4
如果启用,则在这些轴上有一个旋转电机。
Flag FLAG_ENABLE_LINEAR_MOTOR = 5
如果启用,则这些轴上有一个线性电机。
Flag FLAG_MAX = 6
表示Flag枚举的大小。
属性说明¶
float angular_limit_x/damping = 1.0 🔗
横跨X轴的旋转阻尼量。
越低,脉冲从一边传播到另一边所需的时间就越长。
bool angular_limit_x/enabled = true 🔗
如果true,则跨X轴的旋转是有限的。
float angular_limit_x/erp = 0.5 🔗
当在X轴上旋转时,这个误差容差系数定义了校正速度减慢的程度。越低,越慢。
float angular_limit_x/force_limit = 0.0 🔗
绕X轴旋转时可能发生的最大力。
float angular_limit_x/lower_angle = 0.0 🔗
负方向的最小旋转打破松散并绕X轴旋转。
float angular_limit_x/restitution = 0.0 🔗
X轴上的旋转恢复量。越低,恢复越多。
float angular_limit_x/softness = 0.5 🔗
X轴上所有旋转的速度。
float angular_limit_x/upper_angle = 0.0 🔗
正方向的最小旋转打破松散并围绕X轴旋转。
float angular_limit_y/damping = 1.0 🔗
Y轴上的旋转阻尼量。越低,发生的阻尼越多。
bool angular_limit_y/enabled = true 🔗
如果true,则Y轴上的旋转是有限的。
float angular_limit_y/erp = 0.5 🔗
当在Y轴上旋转时,这个误差容差系数定义了校正速度减慢的程度。越低,越慢。
float angular_limit_y/force_limit = 0.0 🔗
绕Y轴旋转时可能发生的最大力。
float angular_limit_y/lower_angle = 0.0 🔗
负方向的最小旋转打破松动并绕Y轴旋转。
float angular_limit_y/restitution = 0.0 🔗
Y轴上的旋转恢复量。越低,恢复越多。
float angular_limit_y/softness = 0.5 🔗
Y轴上所有旋转的速度。
float angular_limit_y/upper_angle = 0.0 🔗
正方向的最小旋转松开并绕Y轴旋转。
float angular_limit_z/damping = 1.0 🔗
横跨Z轴的旋转阻尼量。越低,发生的阻尼越多。
bool angular_limit_z/enabled = true 🔗
如果true,则跨Z轴的旋转是有限的。
float angular_limit_z/erp = 0.5 🔗
当在Z轴上旋转时,这个误差容差系数定义了校正速度减慢的程度。越低,越慢。
float angular_limit_z/force_limit = 0.0 🔗
绕Z轴旋转时可能发生的最大力。
float angular_limit_z/lower_angle = 0.0 🔗
负方向的最小旋转打破松动并绕Z轴旋转。
float angular_limit_z/restitution = 0.0 🔗
横跨Z轴的旋转恢复量。越低,恢复越多。
float angular_limit_z/softness = 0.5 🔗
Z轴上所有旋转的速度。
float angular_limit_z/upper_angle = 0.0 🔗
正方向的最小旋转松开并绕Z轴旋转。
bool angular_motor_x/enabled = false 🔗
如果true,则启用X轴上的旋转电机。
float angular_motor_x/force_limit = 300.0 🔗
电机在X轴上的最大加速度。
float angular_motor_x/target_velocity = 0.0 🔗
电机在X轴上的目标速度。
bool angular_motor_y/enabled = false 🔗
如果true,则启用Y轴上的旋转电机。
float angular_motor_y/force_limit = 300.0 🔗
电机在Y轴上的最大加速度。
float angular_motor_y/target_velocity = 0.0 🔗
电机在Y轴上的目标速度。
bool angular_motor_z/enabled = false 🔗
如果true,则启用Z轴上的旋转电机。
float angular_motor_z/force_limit = 300.0 🔗
电机在Z轴上的最大加速度。
float angular_motor_z/target_velocity = 0.0 🔗
电机在Z轴上的目标速度。
float angular_spring_x/damping = 0.0 🔗
bool angular_spring_x/enabled = false 🔗
float angular_spring_x/equilibrium_point = 0.0 🔗
float angular_spring_x/stiffness = 0.0 🔗
float angular_spring_y/damping = 0.0 🔗
bool angular_spring_y/enabled = false 🔗
float angular_spring_y/equilibrium_point = 0.0 🔗
float angular_spring_y/stiffness = 0.0 🔗
float angular_spring_z/damping = 0.0 🔗
bool angular_spring_z/enabled = false 🔗
float angular_spring_z/equilibrium_point = 0.0 🔗
float angular_spring_z/stiffness = 0.0 🔗
float linear_limit_x/damping = 1.0 🔗
在X轴运动时产生的阻尼量。
bool linear_limit_x/enabled = true 🔗
如果true,则跨X轴的线性运动是有限的。
float linear_limit_x/lower_distance = 0.0 🔗
枢轴点'X轴之间的最小差。
float linear_limit_x/restitution = 0.5 🔗
X轴运动的恢复量。越低,失去的动量越多。
float linear_limit_x/softness = 0.7 🔗
应用于跨X轴运动的因素。越低,运动越慢。
float linear_limit_x/upper_distance = 0.0 🔗
枢轴点'X轴之间的最大差值。
float linear_limit_y/damping = 1.0 🔗
Y轴运动时产生的阻尼量。
bool linear_limit_y/enabled = true 🔗
如果true,则Y轴上的直线运动是有限的。
float linear_limit_y/lower_distance = 0.0 🔗
枢轴点'Y轴之间的最小差。
float linear_limit_y/restitution = 0.5 🔗
Y轴上运动的恢复量。越低,失去的动量越多。
float linear_limit_y/softness = 0.7 🔗
应用于Y轴运动的因素。越低,运动越慢。
float linear_limit_y/upper_distance = 0.0 🔗
Y轴的枢轴点之间的最大差值。
float linear_limit_z/damping = 1.0 🔗
Z轴运动时产生的阻尼量。
bool linear_limit_z/enabled = true 🔗
如果true,则跨Z轴的线性运动是有限的。
float linear_limit_z/lower_distance = 0.0 🔗
枢轴点之间的最小差值'Z轴。
float linear_limit_z/restitution = 0.5 🔗
Z轴运动的恢复量。越低,失去的动量越多。
float linear_limit_z/softness = 0.7 🔗
应用于Z轴运动的因素。越低,运动越慢。
float linear_limit_z/upper_distance = 0.0 🔗
枢轴点之间的最大差值'Z轴。
bool linear_motor_x/enabled = false 🔗
如果true,则X轴上有一个线性电机。它将尝试在保持在力限制内的情况下达到目标速度。
float linear_motor_x/force_limit = 0.0 🔗
直线电机在试图达到目标速度时可以在X轴上施加的最大力。
float linear_motor_x/target_velocity = 0.0 🔗
直线电机在X轴上试图达到的速度。
bool linear_motor_y/enabled = false 🔗
如果true,则Y轴上有一个线性电机。它将尝试在保持力限制的情况下达到目标速度。
float linear_motor_y/force_limit = 0.0 🔗
直线电机在试图达到目标速度时可以在Y轴上施加的最大力。
float linear_motor_y/target_velocity = 0.0 🔗
直线电机在Y轴上试图达到的速度。
bool linear_motor_z/enabled = false 🔗
如果true,则Z轴上有一个线性电机。它将尝试在保持在力限制内的情况下达到目标速度。
float linear_motor_z/force_limit = 0.0 🔗
直线电机在试图达到目标速度时可以在Z轴上施加的最大力。
float linear_motor_z/target_velocity = 0.0 🔗
直线电机在Z轴上试图达到的速度。
float linear_spring_x/damping = 0.01 🔗
bool linear_spring_x/enabled = false 🔗
float linear_spring_x/equilibrium_point = 0.0 🔗
float linear_spring_x/stiffness = 0.01 🔗
float linear_spring_y/damping = 0.01 🔗
bool linear_spring_y/enabled = false 🔗
float linear_spring_y/equilibrium_point = 0.0 🔗
float linear_spring_y/stiffness = 0.01 🔗
float linear_spring_z/damping = 0.01 🔗
bool linear_spring_z/enabled = false 🔗
float linear_spring_z/equilibrium_point = 0.0 🔗
方法说明¶
bool get_flag_x(flag: Flag) const 🔗
bool get_flag_y(flag: Flag) const 🔗
bool get_flag_z(flag: Flag) const 🔗
float get_param_x(param: Param) const 🔗
float get_param_y(param: Param) const 🔗
float get_param_z(param: Param) const 🔗
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) 🔗