crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Поворот объекта QGraphicsItem
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
kamre Дата 31.8.2009, 1:59
 
Цитата(jojahti @ 30.8.2009, 0:39) *
поворачивать по желанию в заданные положения, независимо от его текущего угла поворота .
Возможно есть какой-то стандартный метод для этого?

void QGraphicsItem::setTransform ( const QTransform & matrix, bool combine = false )
Litkevich Yuriy Дата 30.8.2009, 12:46
 
Цитата(jojahti @ 30.8.2009, 11:56) *
А как насчёт универсальной матрицы преобразования, нет там поворота относительно начального положения?
я с Грфическим Представлением не работал, да и с матрицами преобразования.
Но я думаю, что всегда можно узнать текущее преобразование и к нему добавлять недостающий угол поворота. Надо просто с этими матрицами разобраться.
jojahti Дата 30.8.2009, 9:52
  Ну вообщем я так реализовал.

Ключи:
0 - 0
1 - 90
2 - 180
3 - 270

d - выбираемое направление. dir - старое направление.

void someclass::direction(int d)
     { rotate((d-dir)*-90);
        dir = d;                    }


Можно конечно и без ключей, если они не нужны. 8)
P.S. и когда только 20ть сообщений наберётся. :huh:
jojahti Дата 30.8.2009, 7:56
  Litkevich Yuriy
Цитата
jojahti, этот смайлик означает "Браво!"

Ну именно это я и кричал будущим ээ... отвечателям. <_<

Намудрить конечно не проблема, тока вот неохота на пустом месте огород городить.

А как насчёт универсальной матрицы преобразования, нет там поворота относительно начального положения?
Litkevich Yuriy Дата 29.8.2009, 21:51
  jojahti, этот смайлик означает "Браво!"
:)

Цитата(jojahti @ 30.8.2009, 0:39) *
Вообщем есть метод rotate(), но он прибавляет угол к текущему углу поворота.
ну текущее преобразование можно определить.

См. русский перевод функции void QGraphicsItem::rotate ( qreal angle ) может проще будет найти нужную комбинацию
jojahti Дата 29.8.2009, 20:39
  Вообщем есть метод rotate(), но он прибавляет угол к текущему углу поворота. А мне нужно указать угол элементу сцены напрямую, тоесть поворачивать по желанию в заданные положения, независимо от его текущего угла поворота .
Возможно есть какой-то стандартный метод для этого? :clapping:
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 5.5.2024, 9:57