unreal.RigUnit_TwoBoneIKSimple

class unreal.RigUnit_TwoBoneIKSimple(execute_context: ControlRigExecuteContext = [], bone_a: Name = 'None', bone_b: Name = 'None', effector_bone: Name = 'None', effector: Transform = Ellipsis, primary_axis: Vector = Ellipsis, secondary_axis: Vector = Ellipsis, secondary_axis_weight: float = 0.0, pole_vector: Vector = Ellipsis, pole_vector_kind: ControlRigVectorKind = Ellipsis, pole_vector_space: Name = 'None', enable_stretch: bool = False, stretch_start_ratio: float = 0.0, stretch_maximum_ratio: float = 0.0, weight: float = 0.0, bone_a_length: float = 0.0, bone_b_length: float = 0.0, propagate_to_children: bool = False, debug_settings: RigUnit_TwoBoneIKSimple_DebugSettings = Ellipsis)

Bases: RigUnit_HighlevelBaseMutable

Solves the two bone IK given two bones. Note: This node operates in world space!

C++ Source:

  • Plugin: ControlRig

  • Module: ControlRig

  • File: RigUnit_TwoBoneIKSimple.h

Editor Properties: (see get_editor_property/set_editor_property)

  • bone_a (Name): [Read-Write] The name of first bone

  • bone_a_length (float): [Read-Write] The length of the first bone. If set to 0.0 it will be determined by the hierarchy

  • bone_b (Name): [Read-Write] The name of second bone

  • bone_b_length (float): [Read-Write] The length of the second bone. If set to 0.0 it will be determined by the hierarchy

  • debug_settings (RigUnit_TwoBoneIKSimple_DebugSettings): [Read-Write] The settings for debug drawing

  • effector (Transform): [Read-Write] The transform of the effector

  • effector_bone (Name): [Read-Write] The name of the effector bone (if exists)

  • enable_stretch (bool): [Read-Write] If set to true the stretch feature of the solver will be enabled

  • execute_context (ControlRigExecuteContext): [Read-Write] * This property is used to chain multiple mutable units together

  • pole_vector (Vector): [Read-Write] The polevector to use for the IK solver This can be a location or direction.

  • pole_vector_kind (ControlRigVectorKind): [Read-Write] The kind of pole vector this is representing - can be a direction or a location

  • pole_vector_space (Name): [Read-Write] The space in which the pole vector is expressed

  • primary_axis (Vector): [Read-Write] The major axis being aligned - along the bone

  • propagate_to_children (bool): [Read-Only] If set to true all of the global transforms of the children of this bone will be recalculated based on their local transforms. Note: This is computationally more expensive than turning it off.

  • secondary_axis (Vector): [Read-Write] The minor axis being aligned - towards the polevector

  • secondary_axis_weight (float): [Read-Write] Determines how much the secondary axis roll is being applied

  • stretch_maximum_ratio (float): [Read-Write] The maximum allowed stretch ratio

  • stretch_start_ratio (float): [Read-Write] The ratio where the stretch starts

  • weight (float): [Read-Write] The weight of the solver - how much the IK should be applied.

property bone_a: Name

[Read-Write] The name of first bone

Type:

(Name)

property bone_a_length: float

[Read-Write] The length of the first bone. If set to 0.0 it will be determined by the hierarchy

Type:

(float)

property bone_b: Name

[Read-Write] The name of second bone

Type:

(Name)

property bone_b_length: float

[Read-Write] The length of the second bone. If set to 0.0 it will be determined by the hierarchy

Type:

(float)

property debug_settings: RigUnit_TwoBoneIKSimple_DebugSettings

[Read-Write] The settings for debug drawing

Type:

(RigUnit_TwoBoneIKSimple_DebugSettings)

property effector: Transform

[Read-Write] The transform of the effector

Type:

(Transform)

property effector_bone: Name

[Read-Write] The name of the effector bone (if exists)

Type:

(Name)

property enable_stretch: bool

[Read-Write] If set to true the stretch feature of the solver will be enabled

Type:

(bool)

property pole_vector: Vector

[Read-Write] The polevector to use for the IK solver This can be a location or direction.

Type:

(Vector)

property pole_vector_kind: ControlRigVectorKind

[Read-Write] The kind of pole vector this is representing - can be a direction or a location

Type:

(ControlRigVectorKind)

property pole_vector_space: Name

[Read-Write] The space in which the pole vector is expressed

Type:

(Name)

property primary_axis: Vector

[Read-Write] The major axis being aligned - along the bone

Type:

(Vector)

property propagate_to_children: bool

[Read-Only] If set to true all of the global transforms of the children of this bone will be recalculated based on their local transforms. Note: This is computationally more expensive than turning it off.

Type:

(bool)

property secondary_axis: Vector

[Read-Write] The minor axis being aligned - towards the polevector

Type:

(Vector)

property secondary_axis_weight: float

[Read-Write] Determines how much the secondary axis roll is being applied

Type:

(float)

property stretch_maximum_ratio: float

[Read-Write] The maximum allowed stretch ratio

Type:

(float)

property stretch_start_ratio: float

[Read-Write] The ratio where the stretch starts

Type:

(float)

property weight: float

[Read-Write] The weight of the solver - how much the IK should be applied.

Type:

(float)