управление моделью самолета
Упражнение: управление моделью самолета
Существует множество имитаторов полета, используемых для обучения пилотов. В этом упражнении будем управлять движением самолета с помощью простого джойстика.
Для того чтобы управлять самолетом с помощью модели джойстика, выполните описанные ниже действия.
- В папке Chapter Example Files на прилагаемом компакт-диске найдите файл Chap 29 . zip, распакуйте его и откройте файл Joysticks controlling airplane, max. В файле вы увидите модель самолета, предоставленную компанией Viewpoint Datalabs, и два джойстика, созданные на основе примитивов. Каждый из джойстиков отклоняется только вдоль одной оси.
- Выделите модель самолета, активизируйте вкладку Motion и щелкните на кнопке Parameters. В разворачивающейся панели Assign Controller выделите трек Position и щелкните на кнопке Assign Controller. Из списка окна Assign Position Controller выберите элемент Position Expression и щелкните на кнопке ОК. Откроется диалоговое окно Expression Controller.
- В поле Name диалогового окна Expression Controller введите имя joystickRot0l. установите переключатель Scalar (Скалярная) и щелкните на кнопке Create. Щелкните на кнопке Assign to Controller, в появившемся диалоговом окне Track View Pick выделите трек Local X Rotation (в иерархическом списке этот трек можно найти следующим образом: Objects>JoystickOI >Transform:Position/Rotation/ScaleoRotation:Local Bezier Float) и щелкните на кнопке ОК. Затем создайте другую скалярную переменную по именем joystickRot02 и присвойте ее треку Local Y Rotation объекта Joystick02.
- В поле Expression должно появиться значение [150,0,50]. Вместо него введите в поле выражение [50+(2*radToDeg(joystickRot02)), 0,50+(2*radToDeg(JoysUckRot01))].
- Для просмотра полученных значения щелкните на кнопке Debug (Отладка). Не закрывая окно Expression Debug Window (Окно отладки выражений), щелкните на кнопке Select and Rotate (Выбрать и повернуть) основной панели инструментов и поверните один из джойстиков в окне проекции. Убедитесь в том, что самолет перемещается в окне проекции, а в окне Expression Debug Window обновляются соответствующие значения. Если выражение составлено верно, закройте окна Expression Debug Window и Expression Controller, щелкнув на кнопке Close в каждом из них.

|
При щелчке на кнопке Debug выражение автоматически применяется к объектам. Если в поле Expression окна Expression Controller сделаны какие-либо изменения, необходимо закрыть диалоговое окно Expression Debug Window и затем открыть его вновь.
|
Если применить к джойстику преобразование вращения вокруг оси X, то самолет будет автоматически подниматься или снижаться. На рис. 29.6 показан управляемый джойстиками самолет.
Содержание раздела