crossplatform.ru

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

> Вращение текста в графическом представлении, QGraphicsItem и drawText
r485_post
  опции профиля:
сообщение 31.7.2009, 13:59
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 10
Регистрация: 31.7.2009
Пользователь №: 970

Спасибо сказали: 0 раз(а)




Репутация:   0  


Хочу спросить еще про функцию drawText следующее:

в классе QGraphicsItem переопределяю метод paint

painter->rotate(изменяемый во времени угол);
painter->drawText(-100, -100, "Текстовая строка");

Т.е. пользователь видит как с некой скоростью на экране поворачивается строка. Но буквы в самой строке при этом пляшут относительно друг друга как живые. Смотреть на эти танцы невозможно. Если повернуть, нарисовать и оставить - все прекрасно. Но как только динамически начинаешь крутить строку, происходит "ЭТО". Похоже на автоформатирование текста по ширине.

Кто сталкивался с таким? Как это убрать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
ufna
  опции профиля:
сообщение 31.7.2009, 14:07
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 362
Регистрация: 24.5.2008
Из: Курган/СПб
Пользователь №: 182

Спасибо сказали: 29 раз(а)




Репутация:   5  


подожди, ты рисуешь каждый раз из разных мест, получается. Точка (-100, -100) каждый раз реально находится в совершенно разных местах, т.к. она считается в уже повернутой системе координат.

тебе нужно
painter->translate(-100, -100);
painter->rotate(...);
painter->drawText(0, 0, "vot ono");


Сообщение отредактировал Litkevich Yuriy - 31.7.2009, 18:05
Причина редактирования: используй тэг code
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.12.2024, 23:52