Generic6DOFJoint

    Category: Core

    The generic 6 degrees of freedom joint can implement a variety of joint-types by locking certain axes’ rotation or translation.

    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_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_MAX = 22 — Represents the size of the enum.

    enum Flag:

    • FLAG_ENABLE_LINEAR_LIMIT = 0 — If there is linear motion possible within the given limits.
    • FLAG_ENABLE_ANGULAR_LIMIT = 1 — If set there is rotational motion possible.
    • FLAG_ENABLE_LINEAR_SPRING = 3
    • FLAG_ENABLE_ANGULAR_SPRING = 2
    • FLAG_ENABLE_MOTOR = 4 — If set there is a rotational motor across these axes.
    • FLAG_ENABLE_LINEAR_MOTOR = 5
    • FLAG_MAX = 6 — Represents the size of the Flag enum.

    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.

    • angular_limit_x/damping
    Setterset_param_x(value)
    Getterget_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
    Setterset_flag_x(value)
    Getterget_flag_x()

    If true, rotation across the x-axis is limited.


    • angular_limit_x/erp
    Setterset_param_x(value)
    Getterget_param_x()

    When rotating across x-axis, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.


    • float angular_limit_x/force_limit
    Setterset_param_x(value)
    Getterget_param_x()

    The maximum amount of force that can occur, when rotating around x-axis.


    • angular_limit_x/lower_angle

    The minimum rotation in negative direction to break loose and rotate around the x-axis.


    • float angular_limit_x/restitution
    Setterset_param_x(value)
    Getterget_param_x()

    The amount of rotational restitution across the x-axis. The lower, the more restitution occurs.


    • angular_limit_x/softness
    Setterset_param_x(value)
    Getterget_param_x()

    The speed of all rotations across the x-axis.


    • float angular_limit_x/upper_angle

    The minimum rotation in positive direction to break loose and rotate around the x-axis.


    Setterset_param_y(value)
    Getterget_param_y()

    The amount of rotational damping across the y-axis. The lower, the more dampening occurs.


    • angular_limit_y/enabled
    Setterset_flag_y(value)
    Getterget_flag_y()

    If true, rotation across the y-axis is limited.


    • float angular_limit_y/erp
    Setterset_param_y(value)
    Getterget_param_y()

    When rotating across y-axis, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.


    • angular_limit_y/force_limit
    Setterset_param_y(value)
    Getterget_param_y()

    The maximum amount of force that can occur, when rotating around y-axis.


    • float angular_limit_y/lower_angle

    The minimum rotation in negative direction to break loose and rotate around the y-axis.


    • angular_limit_y/restitution
    Setterset_param_y(value)
    Getterget_param_y()

    The amount of rotational restitution across the y-axis. The lower, the more restitution occurs.


    • float angular_limit_y/softness
    Setterset_param_y(value)
    Getterget_param_y()

    The speed of all rotations across the y-axis.


    • angular_limit_y/upper_angle

    • float angular_limit_z/damping
    Setterset_param_z(value)
    Getterget_param_z()

    The amount of rotational damping across the z-axis. The lower, the more dampening occurs.


    • angular_limit_z/enabled
    Setterset_flag_z(value)
    Getterget_flag_z()

    If , rotation across the z-axis is limited.


    • float angular_limit_z/erp
    Setterset_param_z(value)
    Getterget_param_z()

    When rotating across z-axis, this error tolerance factor defines how much the correction gets slowed down. The lower, the slower.


    • angular_limit_z/force_limit
    Setterset_param_z(value)
    Getterget_param_z()

    The maximum amount of force that can occur, when rotating around z-axis.


    • float angular_limit_z/lower_angle

    The minimum rotation in negative direction to break loose and rotate around the z-axis.


    • angular_limit_z/restitution
    Setterset_param_z(value)
    Getterget_param_z()

    The amount of rotational restitution across the z-axis. The lower, the more restitution occurs.


    • float angular_limit_z/softness
    Setterset_param_z(value)
    Getterget_param_z()

    The speed of all rotations across the z-axis.


    • angular_limit_z/upper_angle

    The minimum rotation in positive direction to break loose and rotate around the z-axis.


    • bool angular_motor_x/enabled
    Setterset_flag_x(value)
    Getterget_flag_x()

    If true, a rotating motor at the x-axis is enabled.


    • angular_motor_x/force_limit
    Setterset_param_x(value)
    Getterget_param_x()

    Maximum acceleration for the motor at the x-axis.


    • float angular_motor_x/target_velocity
    Setterset_param_x(value)
    Getterget_param_x()

    Target speed for the motor at the x-axis.


    • angular_motor_y/enabled
    Setterset_flag_y(value)
    Getterget_flag_y()

    If true, a rotating motor at the y-axis is enabled.


    • float angular_motor_y/force_limit
    Setterset_param_y(value)
    Getterget_param_y()

    Maximum acceleration for the motor at the y-axis.


    • angular_motor_y/target_velocity
    Setterset_param_y(value)
    Getterget_param_y()

    Target speed for the motor at the y-axis.


    • bool angular_motor_z/enabled
    Setterset_flag_z(value)
    Getterget_flag_z()

    If true, a rotating motor at the z-axis is enabled.


    • angular_motor_z/force_limit

    Maximum acceleration for the motor at the z-axis.


    • float angular_motor_z/target_velocity
    Setterset_param_z(value)
    Getterget_param_z()

    Target speed for the motor at the z-axis.


    • angular_spring_x/damping
    Setterset_param_x(value)
    Getterget_param_x()

    • bool angular_spring_x/enabled
    Setterset_flag_x(value)
    Getterget_flag_x()

    • angular_spring_x/equilibrium_point
    Setterset_param_x(value)
    Getterget_param_x()

    • float angular_spring_x/stiffness
    Setterset_param_x(value)
    Getterget_param_x()

    • angular_spring_y/damping
    Setterset_param_y(value)
    Getterget_param_y()

    • bool angular_spring_y/enabled
    Setterset_flag_y(value)
    Getterget_flag_y()

    • angular_spring_y/equilibrium_point
    Setterset_param_y(value)
    Getterget_param_y()

    • float angular_spring_y/stiffness
    Setterset_param_y(value)
    Getterget_param_y()

    • angular_spring_z/damping
    Setterset_param_z(value)
    Getterget_param_z()

    • bool angular_spring_z/enabled
    Setterset_flag_z(value)
    Getterget_flag_z()

    • angular_spring_z/equilibrium_point
    Setterset_param_z(value)
    Getterget_param_z()

    • float angular_spring_z/stiffness
    Setterset_param_z(value)
    Getterget_param_z()

    • linear_limit_x/damping
    Setterset_param_x(value)
    Getterget_param_x()

    The amount of damping that happens at the x-motion.


    Setterset_flag_x(value)
    Getterget_flag_x()

    If true, the linear motion across the x-axis is limited.


    • float linear_limit_x/lower_distance
    Setterset_param_x(value)
    Getterget_param_x()

    The minimum difference between the pivot points’ x-axis.


    • linear_limit_x/restitution
    Setterset_param_x(value)
    Getterget_param_x()

    The amount of restitution on the x-axis movement The lower, the more momentum gets lost.


    • float linear_limit_x/softness
    Setterset_param_x(value)
    Getterget_param_x()

    • linear_limit_x/upper_distance
    Setterset_param_x(value)
    Getterget_param_x()

    The maximum difference between the pivot points’ x-axis.


    • float linear_limit_y/damping
    Setterset_param_y(value)
    Getterget_param_y()

    The amount of damping that happens at the y-motion.


    • linear_limit_y/enabled
    Setterset_flag_y(value)
    Getterget_flag_y()

    If , the linear motion across the y-axis is limited.


    • float linear_limit_y/lower_distance
    Setterset_param_y(value)
    Getterget_param_y()

    The minimum difference between the pivot points’ y-axis.


    • linear_limit_y/restitution
    Setterset_param_y(value)
    Getterget_param_y()

    The amount of restitution on the y-axis movement The lower, the more momentum gets lost.


    • float linear_limit_y/softness
    Setterset_param_y(value)
    Getterget_param_y()

    A factor applied to the movement across the y-axis The lower, the slower the movement.


    • linear_limit_y/upper_distance
    Setterset_param_y(value)
    Getterget_param_y()

    The maximum difference between the pivot points’ y-axis.


    • float linear_limit_z/damping

    The amount of damping that happens at the z-motion.


    • linear_limit_z/enabled
    Setterset_flag_z(value)
    Getterget_flag_z()

    If true, the linear motion across the z-axis is limited.


    • float linear_limit_z/lower_distance
    Setterset_param_z(value)
    Getterget_param_z()

    The minimum difference between the pivot points’ z-axis.


    • linear_limit_z/restitution
    Setterset_param_z(value)
    Getterget_param_z()

    The amount of restitution on the z-axis movement The lower, the more momentum gets lost.


    • float linear_limit_z/softness
    Setterset_param_z(value)
    Getterget_param_z()

    A factor applied to the movement across the z-axis The lower, the slower the movement.


    • linear_limit_z/upper_distance
    Setterset_param_z(value)
    Getterget_param_z()

    The maximum difference between the pivot points’ z-axis.


    • bool linear_motor_x/enabled
    Setterset_flag_x(value)
    Getterget_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.


    • linear_motor_x/force_limit
    Setterset_param_x(value)
    Getterget_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
    Setterset_param_x(value)
    Getterget_param_x()

    The speed that the linear motor will attempt to reach on the x-axis.


    • linear_motor_y/enabled
    Setterset_flag_y(value)
    Getterget_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
    Setterset_param_y(value)
    Getterget_param_y()

    The maximum force the linear motor can apply on the y-axis while trying to reach the target velocity.


    • linear_motor_y/target_velocity
    Setterset_param_y(value)
    Getterget_param_y()

    The speed that the linear motor will attempt to reach on the y-axis.


    • bool linear_motor_z/enabled
    Setterset_flag_z(value)
    Getterget_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.


    • linear_motor_z/force_limit
    Setterset_param_z(value)
    Getterget_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
    Setterset_param_z(value)
    Getterget_param_z()

    • linear_spring_x/damping
    Setterset_param_x(value)
    Getterget_param_x()

    • bool linear_spring_x/enabled
    Setterset_flag_x(value)
    Getterget_flag_x()

    • linear_spring_x/equilibrium_point
    Setterset_param_x(value)
    Getterget_param_x()

    • float linear_spring_x/stiffness
    Setterset_param_x(value)
    Getterget_param_x()

    • linear_spring_y/damping
    Setterset_param_y(value)
    Getterget_param_y()

    • bool linear_spring_y/enabled
    Setterset_flag_y(value)
    Getterget_flag_y()

    • linear_spring_y/equilibrium_point
    Setterset_param_y(value)
    Getterget_param_y()

    • float linear_spring_y/stiffness
    Setterset_param_y(value)
    Getterget_param_y()

    • linear_spring_z/damping
    Setterset_param_z(value)
    Getterget_param_z()

    • bool linear_spring_z/enabled
    Setterset_flag_z(value)
    Getterget_flag_z()

    • linear_spring_z/equilibrium_point
    Setterset_param_z(value)
    Getterget_param_z()

    • float linear_spring_z/stiffness

    Setterset_precision(value)
    Getterget_precision()