Generic6DOFJoint

Inherits: Joint < Spatial < Node < Object

通用的6度自由度关节可以通过锁定某些轴的旋转或平移来实现各种关节类型。

描述

前3个DOF轴是线性轴,代表物体的平移,后3个DOF轴代表角运动。每个轴可以被锁定,也可以被限制。

属性

float

angular_limit_x/damping

1.0

bool

angular_limit_x/enabled

true

float

angular_limit_x/erp

0.5

float

angular_limit_x/force_limit

0.0

float

angular_limit_x/lower_angle

0.0

float

angular_limit_x/restitution

0.0

float

angular_limit_x/softness

0.5

float

angular_limit_x/upper_angle

0.0

float

angular_limit_y/damping

1.0

bool

angular_limit_y/enabled

true

float

angular_limit_y/erp

0.5

float

angular_limit_y/force_limit

0.0

float

angular_limit_y/lower_angle

0.0

float

angular_limit_y/restitution

0.0

float

angular_limit_y/softness

0.5

float

angular_limit_y/upper_angle

0.0

float

angular_limit_z/damping

1.0

bool

angular_limit_z/enabled

true

float

angular_limit_z/erp

0.5

float

angular_limit_z/force_limit

0.0

float

angular_limit_z/lower_angle

0.0

float

angular_limit_z/restitution

0.0

float

angular_limit_z/softness

0.5

float

angular_limit_z/upper_angle

0.0

bool

angular_motor_x/enabled

false

float

angular_motor_x/force_limit

300.0

float

angular_motor_x/target_velocity

0.0

bool

angular_motor_y/enabled

false

float

angular_motor_y/force_limit

300.0

float

angular_motor_y/target_velocity

0.0

bool

angular_motor_z/enabled

false

float

angular_motor_z/force_limit

300.0

float

angular_motor_z/target_velocity

0.0

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

bool

linear_limit_x/enabled

true

float

linear_limit_x/lower_distance

0.0

float

linear_limit_x/restitution

0.5

float

linear_limit_x/softness

0.7

float

linear_limit_x/upper_distance

0.0

float

linear_limit_y/damping

1.0

bool

linear_limit_y/enabled

true

float

linear_limit_y/lower_distance

0.0

float

linear_limit_y/restitution

0.5

float

linear_limit_y/softness

0.7

float

linear_limit_y/upper_distance

0.0

float

linear_limit_z/damping

1.0

bool

linear_limit_z/enabled

true

float

linear_limit_z/lower_distance

0.0

float

linear_limit_z/restitution

0.5

float

linear_limit_z/softness

0.7

float

linear_limit_z/upper_distance

0.0

bool

linear_motor_x/enabled

false

float

linear_motor_x/force_limit

0.0

float

linear_motor_x/target_velocity

0.0

bool

linear_motor_y/enabled

false

float

linear_motor_y/force_limit

0.0

float

linear_motor_y/target_velocity

0.0

bool

linear_motor_z/enabled

false

float

linear_motor_z/force_limit

0.0

float

linear_motor_z/target_velocity

0.0

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

float

linear_spring_z/stiffness

0.01

方法

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, 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 )

枚举

enum Param:

  • PARAM_LINEAR_LOWER_LIMIT = 0 —- 枢轴点之间的最小差异。

  • PARAM_LINEAR_UPPER_LIMIT = 1 —- 枢轴点的轴之间的最大差异。

  • PARAM_LINEAR_LIMIT_SOFTNESS = 2 —- 适用于跨轴移动的一个系数。值越低,移动的就越慢。

  • PARAM_LINEAR_RESTITUTION = 3 —- 轴的运动的恢复量。值越低,动量损失越大。

  • PARAM_LINEAR_DAMPING = 4 —- 发生在跨轴线性运动的阻尼量。

  • PARAM_LINEAR_MOTOR_TARGET_VELOCITY = 5 —- 线性马达将尝试达到的速度。

  • PARAM_LINEAR_MOTOR_FORCE_LIMIT = 6 —- 线性马达在试图达到速度目标时将施加的最大力。

  • PARAM_LINEAR_SPRING_STIFFNESS = 7

  • PARAM_LINEAR_SPRING_DAMPING = 8

  • PARAM_LINEAR_SPRING_EQUILIBRIUM_POINT = 9

  • PARAM_ANGULAR_LOWER_LIMIT = 10 —- 负方向的最小旋转,以脱离和绕轴旋转。

  • PARAM_ANGULAR_UPPER_LIMIT = 11 —- 正方向的最小旋转,以挣脱和绕轴旋转。

  • PARAM_ANGULAR_LIMIT_SOFTNESS = 12 —- 所有跨轴旋转的速度。

  • PARAM_ANGULAR_DAMPING = 13 —- 跨越Z轴的旋转阻尼量。值越低,发生的阻尼就越多。

  • PARAM_ANGULAR_RESTITUTION = 14 —- 在各轴上的旋转恢复量。值越低,发生的恢复量越大。

  • PARAM_ANGULAR_FORCE_LIMIT = 15 —- 围绕Z轴旋转时,可能发生的最大力。

  • PARAM_ANGULAR_ERP = 16 —- 当跨轴旋转时,这个误差容限系数定义了修正的速度被减慢的程度。值越低,旋转越慢。

  • PARAM_ANGULAR_MOTOR_TARGET_VELOCITY = 17 —- 轴上电机的目标速度。

  • PARAM_ANGULAR_MOTOR_FORCE_LIMIT = 18 —- 马达在轴上的最大加速度。

  • PARAM_ANGULAR_SPRING_STIFFNESS = 19

  • PARAM_ANGULAR_SPRING_DAMPING = 20

  • PARAM_ANGULAR_SPRING_EQUILIBRIUM_POINT = 21

  • PARAM_MAX = 22 —- 表示 Param 枚举的大小。


enum Flag:

  • FLAG_ENABLE_LINEAR_LIMIT = 0 —- 如果启用,在给定范围内可以进行线性运动。

  • FLAG_ENABLE_ANGULAR_LIMIT = 1 —- 如果启用,在给定的限度内可以进行旋转运动。

  • FLAG_ENABLE_LINEAR_SPRING = 3

  • FLAG_ENABLE_ANGULAR_SPRING = 2

  • FLAG_ENABLE_MOTOR = 4 —- 如果启用,就有一个跨这些轴的旋转马达。

  • FLAG_ENABLE_LINEAR_MOTOR = 5 —- 如果启用,有一个线性马达横跨这些轴。

  • FLAG_MAX = 6 —- 表示Flag枚举的大小。

属性说明

  • float angular_limit_x/damping

Default

1.0

Setter

set_param_x(value)

Getter

get_param_x()

X轴上的旋转阻尼量。

越低,来自一侧的冲力到达另一侧的时间越长。


  • bool angular_limit_x/enabled

Default

true

Setter

set_flag_x(value)

Getter

get_flag_x()

如果true,跨越X轴的旋转受到限制。


  • float angular_limit_x/erp

Default

0.5

Setter

set_param_x(value)

Getter

get_param_x()

当在X轴上旋转时,这个误差容限系数定义了修正的速度被减慢的程度。值越低,旋转越慢。


  • float angular_limit_x/force_limit

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

绕X轴旋转时所能产生的最大力。


  • float angular_limit_x/lower_angle

Default

0.0

负方向的最小旋转,以挣脱并围绕X轴旋转。


  • float angular_limit_x/restitution

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

X轴上的旋转恢复量。值越低,恢复量越大。


  • float angular_limit_x/softness

Default

0.5

Setter

set_param_x(value)

Getter

get_param_x()

跨越X轴的所有旋转的速度。


  • float angular_limit_x/upper_angle

Default

0.0

正方向的最小旋转,以挣脱并绕X轴旋转。


  • float angular_limit_y/damping

Default

1.0

Setter

set_param_y(value)

Getter

get_param_y()

Y轴上的旋转阻尼量。值越低,旋转的阻尼就越大。


  • bool angular_limit_y/enabled

Default

true

Setter

set_flag_y(value)

Getter

get_flag_y()

如果true,跨越Y轴的旋转受到限制。


  • float angular_limit_y/erp

Default

0.5

Setter

set_param_y(value)

Getter

get_param_y()

当在Y轴上旋转时,这个误差容限系数定义了修正的速度被减慢的程度。值越低,旋转越慢。


  • float angular_limit_y/force_limit

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

围绕Y轴旋转时,可能发生的最大力。


  • float angular_limit_y/lower_angle

Default

0.0

负方向的最小旋转,以挣脱并围绕Y轴旋转。


  • float angular_limit_y/restitution

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

跨越Y轴的旋转恢复量。越低,发生的恢复量越大。


  • float angular_limit_y/softness

Default

0.5

Setter

set_param_y(value)

Getter

get_param_y()

跨越Y轴的所有旋转的速度。


  • float angular_limit_y/upper_angle

Default

0.0

正方向的最小旋转,以挣脱并绕Y轴旋转。


  • float angular_limit_z/damping

Default

1.0

Setter

set_param_z(value)

Getter

get_param_z()

跨越Z轴的旋转阻尼量。值越低,阻尼就越多。


  • bool angular_limit_z/enabled

Default

true

Setter

set_flag_z(value)

Getter

get_flag_z()

如果true,跨越Z轴的旋转受到限制。


  • float angular_limit_z/erp

Default

0.5

Setter

set_param_z(value)

Getter

get_param_z()

当在Z轴上旋转时,这个误差容限系数定义了修正的速度被减慢的程度。值越低,旋转越慢。


  • float angular_limit_z/force_limit

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

围绕Z轴旋转时,可能发生的最角度。


  • float angular_limit_z/lower_angle

Default

0.0

负方向的最小旋转,以挣脱并围绕Z轴旋转。


  • float angular_limit_z/restitution

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

跨越Z轴的旋转恢复量。越低,发生的恢复量越大。


  • float angular_limit_z/softness

Default

0.5

Setter

set_param_z(value)

Getter

get_param_z()

跨越Z轴的所有旋转的速度。


  • float angular_limit_z/upper_angle

Default

0.0

正方向的最小旋转,并绕Z轴旋转。


  • bool angular_motor_x/enabled

Default

false

Setter

set_flag_x(value)

Getter

get_flag_x()

如果为true,X轴的旋转电机被启用。


  • float angular_motor_x/force_limit

Default

300.0

Setter

set_param_x(value)

Getter

get_param_x()

在X轴旋转的最大加速度。


  • float angular_motor_x/target_velocity

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

X轴上电机的目标速度。


  • bool angular_motor_y/enabled

Default

false

Setter

set_flag_y(value)

Getter

get_flag_y()

如果true,启用Y轴上的旋转电机。


  • float angular_motor_y/force_limit

Default

300.0

Setter

set_param_y(value)

Getter

get_param_y()

电机在X轴的最大加速度。


  • float angular_motor_y/target_velocity

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

电机在Y轴的目标速度。


  • bool angular_motor_z/enabled

Default

false

Setter

set_flag_z(value)

Getter

get_flag_z()

如果true,则启用Z轴的旋转电机。


  • float angular_motor_z/force_limit

Default

300.0

Setter

set_param_z(value)

Getter

get_param_z()

电机在Z轴的最大加速度。


  • float angular_motor_z/target_velocity

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

Z轴上电机的目标速度。


  • float angular_spring_x/damping

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()


  • bool angular_spring_x/enabled

Default

false

Setter

set_flag_x(value)

Getter

get_flag_x()


  • float angular_spring_x/equilibrium_point

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()


  • float angular_spring_x/stiffness

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()


  • float angular_spring_y/damping

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()


  • bool angular_spring_y/enabled

Default

false

Setter

set_flag_y(value)

Getter

get_flag_y()


  • float angular_spring_y/equilibrium_point

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()


  • float angular_spring_y/stiffness

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()


  • float angular_spring_z/damping

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()


  • bool angular_spring_z/enabled

Default

false

Setter

set_flag_z(value)

Getter

get_flag_z()


  • float angular_spring_z/equilibrium_point

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()


  • float angular_spring_z/stiffness

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()


  • float linear_limit_x/damping

Default

1.0

Setter

set_param_x(value)

Getter

get_param_x()

发生在X运动的阻尼量。


  • bool linear_limit_x/enabled

Default

true

Setter

set_flag_x(value)

Getter

get_flag_x()

如果true,整个X轴的线性运动受到限制。


  • float linear_limit_x/lower_distance

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

枢轴点的X轴之间的最小差异。


  • float linear_limit_x/restitution

Default

0.5

Setter

set_param_x(value)

Getter

get_param_x()

X轴运动的恢复量。越低,动量损失越大。


  • float linear_limit_x/softness

Default

0.7

Setter

set_param_x(value)

Getter

get_param_x()

应用于X轴上移动的一个系数。值越低,移动的就越慢。


  • float linear_limit_x/upper_distance

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

枢轴点的X轴之间的最小差异。


  • float linear_limit_y/damping

Default

1.0

Setter

set_param_y(value)

Getter

get_param_y()

发生在Y运动的阻尼量。


  • bool linear_limit_y/enabled

Default

true

Setter

set_flag_y(value)

Getter

get_flag_y()

如果true,限制跨越Y轴的线性运动。


  • float linear_limit_y/lower_distance

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

枢轴点的Y轴之间的最小差异。


  • float linear_limit_y/restitution

Default

0.5

Setter

set_param_y(value)

Getter

get_param_y()

Y轴运动的恢复量。值越低,动量损失越大。


  • float linear_limit_y/softness

Default

0.7

Setter

set_param_y(value)

Getter

get_param_y()

应用于Y轴上移动的一个系数。值越低,移动的就越慢。


  • float linear_limit_y/upper_distance

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

枢轴点的Y轴之间的最大差异。


  • float linear_limit_z/damping

Default

1.0

Setter

set_param_z(value)

Getter

get_param_z()

发生在Z运动的阻尼量。


  • bool linear_limit_z/enabled

Default

true

Setter

set_flag_z(value)

Getter

get_flag_z()

如果true,跨Z轴的线性运动受到限制。


  • float linear_limit_z/lower_distance

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

枢轴点的Z轴之间的最小差异。


  • float linear_limit_z/restitution

Default

0.5

Setter

set_param_z(value)

Getter

get_param_z()

Y轴运动的恢复量。越低,动量损失越大。


  • float linear_limit_z/softness

Default

0.7

Setter

set_param_z(value)

Getter

get_param_z()

适用于跨Z轴移动的一个系数。值越低,移动的就越慢。


  • float linear_limit_z/upper_distance

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

枢轴点的Z轴之间的最大差异。


  • bool linear_motor_x/enabled

Default

false

Setter

set_flag_x(value)

Getter

get_flag_x()

如果true,那么X轴上有一个线性马达。它将试图达到目标速度,同时保持在力的限度内。


  • float linear_motor_x/force_limit

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

当尝试达到目标速度时,线性马达可以在X轴上应用的最大力。


  • float linear_motor_x/target_velocity

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()

线性马达在X轴上尝试达到的速度。


  • bool linear_motor_y/enabled

Default

false

Setter

set_flag_y(value)

Getter

get_flag_y()

如果true,那么Y轴上有一个线性马达。它将尝试达到目标速度,同时保持在力的限度内。


  • float linear_motor_y/force_limit

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

直线电机在试图达到目标速度时可施加在Y轴上的最大力。


  • float linear_motor_y/target_velocity

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()

线性马达在Y轴上将会达到的速度。


  • bool linear_motor_z/enabled

Default

false

Setter

set_flag_z(value)

Getter

get_flag_z()

如果true,那么在Z轴上有一个线性马达。它将试图达到目标速度,同时保持在力的限度内。


  • float linear_motor_z/force_limit

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

当试图达到目标速度时,线性马达可以在X轴上应用的最大力。


  • float linear_motor_z/target_velocity

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()

线性马达在Z轴上试图达到的速度。


  • float linear_spring_x/damping

Default

0.01

Setter

set_param_x(value)

Getter

get_param_x()


  • bool linear_spring_x/enabled

Default

false

Setter

set_flag_x(value)

Getter

get_flag_x()


  • float linear_spring_x/equilibrium_point

Default

0.0

Setter

set_param_x(value)

Getter

get_param_x()


  • float linear_spring_x/stiffness

Default

0.01

Setter

set_param_x(value)

Getter

get_param_x()


  • float linear_spring_y/damping

Default

0.01

Setter

set_param_y(value)

Getter

get_param_y()


  • bool linear_spring_y/enabled

Default

false

Setter

set_flag_y(value)

Getter

get_flag_y()


  • float linear_spring_y/equilibrium_point

Default

0.0

Setter

set_param_y(value)

Getter

get_param_y()


  • float linear_spring_y/stiffness

Default

0.01

Setter

set_param_y(value)

Getter

get_param_y()


  • float linear_spring_z/damping

Default

0.01

Setter

set_param_z(value)

Getter

get_param_z()


  • bool linear_spring_z/enabled

Default

false

Setter

set_flag_z(value)

Getter

get_flag_z()


  • float linear_spring_z/equilibrium_point

Default

0.0

Setter

set_param_z(value)

Getter

get_param_z()


  • float linear_spring_z/stiffness

Default

0.01

Setter

set_param_z(value)

Getter

get_param_z()

方法说明







  • void set_flag_x ( Flag flag, bool value )

  • void set_flag_y ( Flag flag, bool value )

  • void set_flag_z ( Flag flag, bool value )