PureBasic

GenericJoint()

Синтаксис

Result = GenericJoint(#Joint , EntityID , TransformX , TransformY , TransformZ [, EntityID2 , TransformX2 , TransformY2 , TransformZ2])

Описание


Создает новое универсальное (Generic) Сочленение (Joint), прикрепляемое к одной или двум Сущностям (Entities).
Универсальное Сочленение допускает движение объектов во всех шести направлениях, и даёт возможность ограничивать степень свободы этого движения.

Параметры

#Joint Номер для идентификации нового Сочленения. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически.
EntityID Идентификатор Сущности, связанной с Сочленением. Корректный идентификатор 'EntityID' можно получить с помощью функции EntityID().
TransformX, TransformY, TransformZ Координаты точки крепления Сочленения к первой Сущности, относительно центра первой Сущности.
EntityID2 (дополн.) Идентификатор второй Сущности, связанной с Сочленением. Если этот параметр не указан, между точкой поворота и Сущностью создается одно соединение. Если этот параметр указан, первый объект привязывается ко второму объекту. Для получения правильного идентификатора Сущности можно использовать команду EntityID().
TransformX2, TransformY2, TransformZ2 (дополн.) Координаты точки крепления Сочленения ко второй Сущности, относительно центра второй Сущности.

Возвращаемое значение

Возвращает ненулевое значение, если Сочленение создать удалось, в противном случае - 0.
Если в качестве параметра #Joint использовалось значение #PB_Any, то в случае успеха будет возвращен сгенерированный Номер.

Комментарии

Для изменения поведения Сочленения могут использоваться команды GetJointAttribute() и SetJointAttribute() со следующими атрибутами:
  #PB_Joint_EnableSpring: Активация пружины #True = ON, #False = OFF (по умолчанию).
  #PB_Joint_Stiffness   : Устанавливает жесткость. Значения от 1 до 10000.
  #PB_Joint_Damping     : Устанавливает демпфирование. Значения от 0 до 1 (0 означает очень сильное демпфирование).
  #PB_Joint_Position    : Устанавливает позицию на оси.
  #PB_Joint_NoLimit     : Свободное положение оси
  #PB_Joint_LowerLimit  : Нижний предел
  #PB_Joint_UpperLimit  : Верхний предел

См. также

FreeJoint(), GetJointAttribute(), SetJointAttribute()

Поддерживаемые OS

Все

<- FreeJoint() - Joint Index - GetJointAttribute() ->