Управление мышью, аля Drag&Drop
Друзья, подскажите идею для реализации следующей задачи:
Есть объект, у него есть объектные оси, как на изображении. Но это не суть. Мне нужно двигать оси при нажатии мышкой на нее. Вся сложность в том, что я не понимаю, на какие изменять координаты оси, при движении мыши. Именно по какой формуле рассчитывать координаты. |
Ответ: Управление мышью, аля Drag&Drop
Юзай TFormVector (емнип).
|
Ответ: Управление мышью, аля Drag&Drop
Есть пример с этой фигней в примерах Xors'a
|
Ответ: Управление мышью, аля Drag&Drop
Можно чуть подробнее..?
|
Ответ: Управление мышью, аля Drag&Drop
Пример посмотрел, но мне бы саму логику процесса понять...
|
Ответ: Управление мышью, аля Drag&Drop
Цитата:
xMoveEntity(entity, xTFormedX(),xTFormedY(),xTFormedZ() ) |
Ответ: Управление мышью, аля Drag&Drop
Цитата:
|
Ответ: Управление мышью, аля Drag&Drop
CameraProject проецирует координаты объекта в 2D, а мне, получается, надо обратный процесс?
|
Ответ: Управление мышью, аля Drag&Drop
Цитата:
|
Ответ: Управление мышью, аля Drag&Drop
Ни черта не понимаю.
Дельта мыши - разность текущей позиции и позиции раньше? Как умножить вектор на дельту? |
Ответ: Управление мышью, аля Drag&Drop
Цитата:
x = xMouseXSpeed() y = xMouseYSpeed() c# = (x+y)* xTFormVector(1,0,0, entity,0) xMoveEntity(entity,xTFormedX()*c, xTFormedY()*c, xTFormedZ()*c) Как-то так |
Ответ: Управление мышью, аля Drag&Drop
Почему в TFormVector передаю (1,0,0)
Что это? Шаг вверх? Как это понять? Спасибо, уже что-то складывается в голове. |
Ответ: Управление мышью, аля Drag&Drop
Цитата:
0,1,0 - Y 0,0,1 - Z |
Ответ: Управление мышью, аля Drag&Drop
Понял, спасибо!
|
Ответ: Управление мышью, аля Drag&Drop
Огромное спасибо, реализовал.
Единственная проблема - если к оси подбираться с другой стороны, то движение инвертируется. С этим как-нибудь можно справиться? |
Часовой пояс GMT +4, время: 01:12. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot