Учебник по VRML 97

TouchSensor


Описание:

TouchSensor { enabled TRUE eventOut hitNormal_changed eventOut hitPoint_changed eventOut hitTexCoord_changed eventOut isActive eventOut isOver eventOut touchTime }

Хороший сенсор, обычно используемый для большей интерактивности: чтобы что-нибудь открылось/закрылось/заработало и т.д. приходится навести курсор или щелкнуть на чем-нибудь мышкой.

Поле у узла всего одно enabled TRUE/FALSE, а сам сенсор привязывается ко всем объектам, объединенным с TouchSensor'ом в одну parent группу.

Работа сенсора начинается с момента наведения курсора мыши (или другого манипулятора) на объект, к которому привязан TouchSensor. При этом начинает генерироваться eventOut isOver TRUE. А кроме того при перемещении курсора над поверхностью объекта генерируются eventOut hitNormal_changed (отслеживается положение вектора нормали к поверхности объекта), eventOut hitPoint_changed (отслеживаются координаты точки на поверхности объекта, над которой находится курсор), eventOut hitTexCoord_changed (отслеживается положение точки на поверхности объекта, над которой находится курсор в координатах texture map).

Оставшиейся два eventOut'a eventOut isActive и eventOut touchTime генерируются при участии кнопки мыши: isActive TRUE генерируется только до тех пор пока Вы держите кнопку мыши НАЖАТОЙ (а после отпускания isActive FALSE), а eventOut touchTime наоборот генерируется КАК ТОЛЬКО Вы ОТПУСКАЕТЕ кнопку мыши.

Наиболее употребительными мне представляются isOver, isActive и touchTime

.



Содержание раздела