Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MAXScript Part 9.doc
Скачиваний:
1
Добавлен:
11.12.2019
Размер:
136.19 Кб
Скачать

Остановить работу средства можно вызовом функции

stopTool Средство

Чаще всего эта функция вызывается из обратного вызова функции или обработчика события.

Правила оформления средств работы с мышью

Тело средства - это участок программы на MAXScript, который следует непосредственно за определением средства. Оно может включать в себя локальные переменные, функции и структуры, но обращение к ним из других программ не предусматривается. Кроме того, в теле средства могут находиться обработчики событий, генерируемых, главным образом, при работе пользователя с мышью. Во всех функциях, в том числе и в обработчиках событий, доступны тринадцать предопределенных переменных, из которых можно получить данные о состоянии клавиатур и мыши.

Название переменной

Тип переменной

Описание

viewPoint

Point2

Координаты курсора мыши в пикселях видового окна

worldPoint

Point3

Текущие координаты указателя мыши, спроектированного на активную сетку, в мировой системе координат.

worldDist

Point3

Расстояние по осям X, Y и Z от точки предыдущего нажатия кнопки мыши до текущего положения проекции курсора мыши в мировой системе координат

worldAngle

Point3

Углы между мировыми осями X, Y и Z и направлением на точку предыдущего нажатия кнопки мыши

gridPoint

Point3

Текущие координаты указателя мыши, спроектированного на активную сетку, в системе координат активной сетки.

gridDist

Point3

Расстояние по осям X, Y и Z от точки предыдущего нажатия кнопки мыши до текущего положения проекции курсора мыши в системе координат активной сетки

gridAngle

Point3

Углы между осями активной сетки X, Y и Z и направлением на точку предыдущего нажатия кнопки мыши

shiftKey

Boolean

True, если нажата клавиша Shift, в противном случае – false

ctrlKey

Boolean

True, если нажата клавиша Ctrl, в противном случае – false

altKey

Boolean

True, если нажата клавиша Alt, в противном случае – false

lButton

Boolean

True, если нажата левая кнопка мыши, в противном случае – false

mButton

Boolean

True, если нажата средняя кнопка мыши, в противном случае – false

rButton

Boolean

True, если нажата правая кнопка мыши, в противном случае – false

События

Средства работы с мышью генерируют следующие события. Перед началом работы

on start do

При завершении работы

on end do

Каждое перемещение мышки до первого нажатия кнопки вызывает событие

on freeMove do

Нажатие на кнопку мыши

on mousePoint Параметр do

В параметре передается номер нажатия. При обработке номера нажатия необходимо учитывать следующий факт. Первое нажатие кнопки мыши считается первым нажатием, отпускание кнопки после него – вторым. А далее учитываются только отпускания кнопки. Таким образом, нажав на кнопку мыши (в обычном смысле этого слова) три раза, Вы получите четыре события mousePoint. Одно на первом нажатии, одно на первом отпускании и еще два на двух следующих отпусканиях.

Перемещение курсора мыши после первого нажатия генерирует событие

on mouseMove Параметр do

Значение параметра аналогично предыдущему. При нажатии правой клавиши мыши или клавиши Esc происходит событие

on mouseAbort Параметр do

Параметр здесь так же содержит число нажатий кнопки мыши.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]