Russian Qt Forum
Октябрь 02, 2024, 01:38 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Вращение элемента сцены относительно произвольной точки  (Прочитано 2328 раз)
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« : Октябрь 28, 2013, 13:46 »

Привет. Нужно реализовать вращение элемента относительно точки.
Казалось бы просто задать setTransformOriginPoint() и проблема решена.

Допустим есть у меня полигон - несколько точек, которые соеденены между собой. Нужно вращать вокруг выделенной точки.
Т.е. в первый раз все работает, получил координаты выделенной точки, и вращаю. Далее нужно выделить другую точку - и все, координаты смещаются.
Я так понимаю что нужно задействовать матрицы преобразования, но не могу найти нормальное описание, как их использовать в данном случае.
Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #1 : Октябрь 28, 2013, 16:39 »

Может быть картинки прояснят суть дела.

Есть полигон с якорями. Нужно вращать относительно выделеного якоря. В первый раз при 0 повороте получается вылеить якорь и вращать вокруг него.
После вращения его уже не получается нормально выделить так как его координаты уже не в той матрице, в которой поступают от сцены.
Не могу разобраться, подскажите пожалуйста.
Записан
_OLEGator_
Гость
« Ответ #2 : Октябрь 28, 2013, 16:49 »

Ты не картинки заливай, ты код показывай, как обрабатываешь нажатие.
Скорее всего у тебя не хватает перевода в систему координат элемента (mapTo*, mapFrom*)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.106 секунд. Запросов: 23.