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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Объясните смысл методов QPainter-а  (Прочитано 3639 раз)
BaltikS
Гость
« : Март 05, 2009, 12:01 »

У меня собственно два вопроса к знатокам:
1) Чем отличаются два метода у QPainter
Код:
const QTransform & transform () const 
Ответ по assistant-у
Код:
Returns the world transformation matrix
и метод
Код:
const QTransform & QPainter::worldTransform () const 
по ассистенту
Код:
Returns the world transformation matrix
... И действительно они возвращают одни и те же координаты. Спрашиваются зачем нужен второй если есть первый или наоборот? Улыбающийся
2) Я рисую на QGraphicsItem painter-ом в координатах итема. При этом использую rotate и translate painter-а..... При попытки перевести координаты вращаемой точки в item-е функцией painter->transform().map(QPoint(0,0)) возвращается координаты, то ли viewport-a, то ли сцены... Ещё толком не понял. Вопрос почему? Если я рисую в относительных координатах, почему же мне возвращаются подозреваю абсолютные всего viewport-a? Кто нибудь сталкивался с этим?
Записан
BRE
Гость
« Ответ #1 : Март 05, 2009, 12:19 »

1) Чем отличаются два метода у QPainter
Код:
const QTransform & transform () const 
Ответ по assistant-у
Код:
Returns the world transformation matrix
и метод
Код:
const QTransform & QPainter::worldTransform () const 
по ассистенту
Код:
Returns the world transformation matrix
... И действительно они возвращают одни и те же координаты. Спрашиваются зачем нужен второй если есть первый или наоборот? Улыбающийся
Ничем.
Цитировать
void QPainter::setTransform ( const QTransform & transform, bool combine = false )
Sets the world transformation matrix. If combine is true, the specified transform is combined with the current matrix; otherwise it replaces the current matrix.
This function has been added for compatibility with setMatrix(), but as with setMatrix() the preferred method of setting a transformation on the painter is through setWorldTransform().
This function was introduced in Qt 4.3.

Qt 4.4.3:
Код
C++ (Qt)
void QPainter::setTransform(const QTransform &transform, bool combine )
{
   setWorldTransform(transform, combine);
}
 
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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