CopyTransformModifier3D

Hérite de : BoneConstraint3D < SkeletonModifier3D < Node3D < Node < Object

Un SkeletonModifier3D qui applique une transformation à l'os, copiée de la référence.

Description

Apply the copied transform of the bone set by BoneConstraint3D.set_reference_bone() to the bone set by BoneConstraint3D.set_apply_bone() with processing it with some masks and options.

There are 4 ways to apply the transform, depending on the combination of set_relative() and set_additive().

Relative + Additive:

  • Extract reference pose relative to the rest and add it to the apply bone's pose.

Relative + Not Additive:

  • Extract reference pose relative to the rest and add it to the apply bone's rest.

Not Relative + Additive:

  • Extract reference pose absolutely and add it to the apply bone's pose.

Not Relative + Not Additive:

  • Extract reference pose absolutely and the apply bone's pose is replaced with it.

Propriétés

int

setting_count

0

Méthodes

BitField[AxisFlag]

get_axis_flags(index: int) const

BitField[TransformFlag]

get_copy_flags(index: int) const

BitField[AxisFlag]

get_invert_flags(index: int) const

bool

is_additive(index: int) const

bool

is_axis_x_enabled(index: int) const

bool

is_axis_x_inverted(index: int) const

bool

is_axis_y_enabled(index: int) const

bool

is_axis_y_inverted(index: int) const

bool

is_axis_z_enabled(index: int) const

bool

is_axis_z_inverted(index: int) const

bool

is_position_copying(index: int) const

bool

is_relative(index: int) const

bool

is_rotation_copying(index: int) const

bool

is_scale_copying(index: int) const

void

set_additive(index: int, enabled: bool)

void

set_axis_flags(index: int, axis_flags: BitField[AxisFlag])

void

set_axis_x_enabled(index: int, enabled: bool)

void

set_axis_x_inverted(index: int, enabled: bool)

void

set_axis_y_enabled(index: int, enabled: bool)

void

set_axis_y_inverted(index: int, enabled: bool)

void

set_axis_z_enabled(index: int, enabled: bool)

void

set_axis_z_inverted(index: int, enabled: bool)

void

set_copy_flags(index: int, copy_flags: BitField[TransformFlag])

void

set_copy_position(index: int, enabled: bool)

void

set_copy_rotation(index: int, enabled: bool)

void

set_copy_scale(index: int, enabled: bool)

void

set_invert_flags(index: int, axis_flags: BitField[AxisFlag])

void

set_relative(index: int, enabled: bool)


Énumérations

flags TransformFlag: 🔗

TransformFlag TRANSFORM_FLAG_POSITION = 1

Si défini, permet de copier la position.

TransformFlag TRANSFORM_FLAG_ROTATION = 2

Si défini, permet de copier la rotation.

TransformFlag TRANSFORM_FLAG_SCALE = 4

Si défini, permet de copier l'échelle.

TransformFlag TRANSFORM_FLAG_ALL = 7

Si défini, permet de copier la position/rotation/échelle.


flags AxisFlag: 🔗

AxisFlag AXIS_FLAG_X = 1

Si défini, permet de traiter l'axe X.

AxisFlag AXIS_FLAG_Y = 2

Si défini, permet de traiter l'axe Y.

AxisFlag AXIS_FLAG_Z = 4

Si défini, permet de traiter l'axe Z.

AxisFlag AXIS_FLAG_ALL = 7

Si défini, permet de traiter tous les axes.


Descriptions des propriétés

int setting_count = 0 🔗

  • void set_setting_count(value: int)

  • int get_setting_count()

Le nombre de réglages dans le modificateur.


Descriptions des méthodes

BitField[AxisFlag] get_axis_flags(index: int) const 🔗

Returns the axis flags of the setting at index.


BitField[TransformFlag] get_copy_flags(index: int) const 🔗

Renvoie les drapeaux de copie du paramètre à l'index index.


BitField[AxisFlag] get_invert_flags(index: int) const 🔗

Renvoie les drapeaux d'inversion du paramètre à l'index index.


bool is_additive(index: int) const 🔗

Renvoie true si l'option Additive est activée dans le paramètre à l'index index.


bool is_axis_x_enabled(index: int) const 🔗

Renvoie true si les drapeaux d'activation ont le drapeau de l'axe X dans le paramètre à l'index index. Voir aussi set_axis_flags().


bool is_axis_x_inverted(index: int) const 🔗

Renvoie true si les drapeaux d'inversion ont le drapeau pour l'axe X dans le paramètre à l'index index. Voir aussi set_invert_flags().


bool is_axis_y_enabled(index: int) const 🔗

Renvoie true si les drapeaux d'activation ont le drapeau de l'axe Y dans le paramètre à l'index index. Voir aussi set_axis_flags().


bool is_axis_y_inverted(index: int) const 🔗

Renvoie true si les drapeaux d'inversion ont le drapeau pour l'axe Y dans le paramètre à l'index index. Voir aussi set_invert_flags().


bool is_axis_z_enabled(index: int) const 🔗

Renvoie true si les drapeaux d'activation ont le drapeau de l'axe Z dans le paramètre à l'index index. Voir aussi set_axis_flags().


bool is_axis_z_inverted(index: int) const 🔗

Renvoie true si les drapeaux d'inversion ont le drapeau pour l'axe Z dans le paramètre à l'index index. Voir aussi set_invert_flags().


bool is_position_copying(index: int) const 🔗

Renvoie true si les drapeaux de copie ont le drapeau pour la position dans le paramètre à l'index index. Voir aussi set_copy_flags().


bool is_relative(index: int) const 🔗

Renvoie true si l'option Relative est activée dans le paramètre à l'index index.


bool is_rotation_copying(index: int) const 🔗

Renvoie true si les drapeaux de copie ont le drapeau pour la rotation dans le paramètre à l'index index. Voir aussi set_copy_flags().


bool is_scale_copying(index: int) const 🔗

Renvoie true si les drapeaux de copie ont le drapeau pour l'échelle dans le paramètre à l'index index. Voir aussi set_copy_flags().


void set_additive(index: int, enabled: bool) 🔗

Définit l'option Additive dans le paramètre à l'index index à la valeur enabled. Cela affecte principalement le processus d'application de la transformation à l'os de BoneConstraint3D.set_apply_bone().

Si enabled est défini à true, la transformation traitée est ajoutée à la pose de l'os appliqué actuel.

Si enabled est défini à false, la pose de l'os appliqué actuel est remplacée par la transformation traitée. Toutefois, si set_relative() est défini à true, la transformation est relative au repos.


void set_axis_flags(index: int, axis_flags: BitField[AxisFlag]) 🔗

Définit les drapeaux pour copier les axes. Si le drapeau est valide, l'axe est copié.


void set_axis_x_enabled(index: int, enabled: bool) 🔗

Si enabled vaut true, l'axe X sera copié.


void set_axis_x_inverted(index: int, enabled: bool) 🔗

Si enabled vaut true, l'axe X sera inversé.


void set_axis_y_enabled(index: int, enabled: bool) 🔗

Si enabled vaut true, l'axe Y sera copié.


void set_axis_y_inverted(index: int, enabled: bool) 🔗

Si enabled vaut true, l'axe Y sera inversé.


void set_axis_z_enabled(index: int, enabled: bool) 🔗

Si enabled vaut true, l'axe Z sera copié.


void set_axis_z_inverted(index: int, enabled: bool) 🔗

Si enabled vaut true, l'axe Z sera inversé.


void set_copy_flags(index: int, copy_flags: BitField[TransformFlag]) 🔗

Définit les drapeaux pour traiter les opérations de transformation. Si le drapeau est valide, l'opération de transformation est traitée.

Note : Si la rotation est valable pour seulement un axe, elle respecte le roulis de l'axe valide. Si la rotation est valable pour deux axes, elle écarte le roulis de l'axe invalide.


void set_copy_position(index: int, enabled: bool) 🔗

Si enabled est défini à true, la position sera copiée.


void set_copy_rotation(index: int, enabled: bool) 🔗

Si enabled est défini à true, la rotation sera copiée.


void set_copy_scale(index: int, enabled: bool) 🔗

Si enabled est défini à true, l'échelle sera copiée.


void set_invert_flags(index: int, axis_flags: BitField[AxisFlag]) 🔗

Définit les drapeaux pour inverser les axes. Si le drapeau est valide, l'axe est copié.

Note : Une échelle inversée signifie un nombre inverse, pas une échelle négative. Par exemple, inverser 2.0 signifie 0.5.

Note : Une rotation inversée retourne les éléments du quaternion. Par exemple, une inversion à deux axes renversera le roulis de chaque axe, et une inversion à trois axes renversera l'orientation finale. Cependant, soyez conscients que l'inversion d'un seul axe peut provoquer une rotation non désirée sur les axes non inversés, en raison des caractéristiques du quaternion.


void set_relative(index: int, enabled: bool) 🔗

Sets relative option in the setting at index to enabled.

If sets enabled to true, the extracted and applying transform is relative to the rest.

If sets enabled to false, the extracted transform is absolute.