Previous Page  7 / 18 Next Page
Information
Show Menu
Previous Page 7 / 18 Next Page
Page Background

Моделирование движения кабельной линии подводного аппарата в пакете

Blender Game Engine

ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение. 2017. № 3

53

в список идентификаторов связей кабеля. Если разматывание кабеля продолжает-

ся, то описанная процедура повторяется при создании следующего элемента и т. д.

Наматывание элемента кабеля также выполняется в несколько этапов. Анало-

гично разматыванию, на первом этапе объект

Root

поворачивается вокруг «конце-

вого» шарнира в положение, при котором продольные оси объекта

Root

и элемента

Old

окажутся коллинеарными. На втором этапе выполняется циклическое умень-

шение длины элемента

Old

и его перемещение вплоть до достижения им длины

объекта

Root

. На каждом такте цикла наматывания выполняются следующие дей-

ствия. С помощью операции мгновенного масштабирования на шаг уменьшается

длина элемента

Old

(рис. 3,

а

). Удаляется шарнир между элементом

Old

и предпо-

следним элементом кабеля — назовем этот объект

New

. Объект

New

и весь кабель

перемещаются в положение, в котором начало объекта

New

совпадает с концом

элемента

Old

; вновь создается шарнир между элементом

Old

и объектом

New

. Уда-

ляется «концевой» шарнир; элемент

Old

и весь кабель перемещаются в положение,

в котором начало элемента

Old

совпадает с концом объекта

Root

; вновь создается

«концевой» шарнир, что завершает такт цикла наматывания (рис. 3,

б

).

Рис. 3.

Такт цикла второго этапа наматывания элемента кабеля:

а

— положение элементов и шарниров после уменьшения длины элемента

Old

;

б

— положение

элементов и шарниров после окончания такта;

1

— объект

Root

;

2

— «концевой» шарнир;

3

элемент

Old

;

4

— 3D-шарнир между элементами

Old

и

New

;

5

— элемент

New

Цикл наматывания полагается завершенным, когда длина элемента

Old

станет равной длине объекта

Root

. На третьем этапе удаляются шарниры —

«концевой» и между элементом

Old

и объектом

New

; удаляется элемент

Old

.

Объект

New

и весь кабель перемещаются в положение, в котором начало объек-

та

New

совпадает с концом объекта

Root

; вновь создается «концевой» шарнир.

Объект

New

фактически становится последним элементом кабеля, т. е. элемен-

том

Old

. Из списка идентификаторов элементов кабеля удаляется идентифика-

тор удаленного элемента, корректируется список идентификаторов связей —

удаляются идентификаторы удаленных связей, добавляется идентификатор со-

зданной связи. При продолжении наматывания кабеля процедура повторяется

для следующего удаляемого элемента.