ChainIK3D

Наследует: IKModifier3D < SkeletonModifier3D < Node3D < Node < Object

Наследуется от: IterateIK3D, SplineIK3D

SkeletonModifier3D для применения обратной кинематики к цепочкам костей, содержащим произвольное количество костей.

Описание

Базовый класс SkeletonModifier3D, который автоматически генерирует список суставов из костей между корневой и конечными костями.

Методы

int

get_end_bone(index: int) const

BoneDirection

get_end_bone_direction(index: int) const

float

get_end_bone_length(index: int) const

String

get_end_bone_name(index: int) const

int

get_joint_bone(index: int, joint: int) const

String

get_joint_bone_name(index: int, joint: int) const

int

get_joint_count(index: int) const

int

get_root_bone(index: int) const

String

get_root_bone_name(index: int) const

bool

is_end_bone_extended(index: int) const

void

set_end_bone(index: int, bone: int)

void

set_end_bone_direction(index: int, bone_direction: BoneDirection)

void

set_end_bone_length(index: int, length: float)

void

set_end_bone_name(index: int, bone_name: String)

void

set_extend_end_bone(index: int, enabled: bool)

void

set_root_bone(index: int, bone: int)

void

set_root_bone_name(index: int, bone_name: String)


Описания метода

int get_end_bone(index: int) const 🔗

Возвращает индекс конечной кости цепочки костей.


BoneDirection get_end_bone_direction(index: int) const 🔗

Возвращает направление хвоста конечной кости цепочки костей, когда is_end_bone_extended() имеет значение true.


float get_end_bone_length(index: int) const 🔗

Возвращает длину хвостовой части конечной кости цепочки костей, когда is_end_bone_extended() имеет значение true.


String get_end_bone_name(index: int) const 🔗

Возвращает имя конечной кости цепочки костей.


int get_joint_bone(index: int, joint: int) const 🔗

Возвращает индекс кости в joint в списке суставов цепочки костей.


String get_joint_bone_name(index: int, joint: int) const 🔗

Возвращает имя кости в joint в списке суставов цепочки костей.


int get_joint_count(index: int) const 🔗

Возвращает количество суставов в списке суставов цепочки костей.


int get_root_bone(index: int) const 🔗

Возвращает индекс корневой кости цепочки костей.


String get_root_bone_name(index: int) const 🔗

Возвращает имя корневой кости цепочки костей.


bool is_end_bone_extended(index: int) const 🔗

Возвращает true, если конечная кость удлинена и имеет хвост.


void set_end_bone(index: int, bone: int) 🔗

Устанавливает индекс конечной кости в костной цепи.


void set_end_bone_direction(index: int, bone_direction: BoneDirection) 🔗

Устанавливает направление хвоста конечной кости цепочки костей, когда is_end_bone_extended() имеет значение true.


void set_end_bone_length(index: int, length: float) 🔗

Устанавливает длину конечной кости цепи костей, когда is_end_bone_extended() имеет значение true.


void set_end_bone_name(index: int, bone_name: String) 🔗

Задает имя конечной кости цепочки костей.

Примечание: Конечная кость должна быть корневой костью или дочерней костью корневой кости. Если они совпадают, хвостовая кость должна быть расширена с помощью set_extend_end_bone() для изменения кости.


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

Если enabled равно true, конечная кость удлиняется, образуя хвост.

Конфигурация расширенного хвоста назначается последнему элементу в списке суставов. Другими словами, если вы установите enabled в false, конфигурация последнего элемента в списке суставов не повлияет на результат моделирования.


void set_root_bone(index: int, bone: int) 🔗

Устанавливает индекс корневой кости цепочки костей.


void set_root_bone_name(index: int, bone_name: String) 🔗

Задает имя корневой кости цепочки костей.