Название: Масштабирование сцены и элемента Отправлено: fdfsdfgjfh от Март 26, 2015, 21:28 масштабирование сделал во view:
Код: setscale(value, 1); Надо сделать масштабирование только по x элементы наследуются от qgraphicsitem там делаю Код: painter->drawtext // текст добавляю в середину элемента(прямоугольник) сейчас при масштабировании текст растягивается и размазывается и углы RoundRect вытягиваются, становится более острым. такое поведение, думаю, очевидное т.к. растягиваем по x как правильно реализовать масштабирование? в какую сторону смотреть Название: Re: Масштабирование сцены и элемента Отправлено: Nidxogg от Март 26, 2015, 23:50 QGraphicsItem::ItemIgnoresTransformations
Название: Re: Масштабирование сцены и элемента Отправлено: fdfsdfgjfh от Март 27, 2015, 18:20 QGraphicsItem::ItemIgnoresTransformations А это не правильно, т.к. при мастабирование сцены объект останется таким же, мне надо объект увеличить а текст оставить Название: Re: Масштабирование сцены и элемента Отправлено: AzazelloAV от Март 27, 2015, 19:39 масштабирование сделал во view: Код: setscale(value, 1); Надо сделать масштабирование только по x элементы наследуются от qgraphicsitem там делаю Код: painter->drawtext // текст добавляю в середину элемента(прямоугольник) сейчас при масштабировании текст растягивается и размазывается и углы RoundRect вытягиваются, становится более острым. такое поведение, думаю, очевидное т.к. растягиваем по x как правильно реализовать масштабирование? в какую сторону смотреть Приведите код, очень сложно судить. Название: Re: Масштабирование сцены и элемента Отправлено: fdfsdfgjfh от Март 27, 2015, 21:36 к сожалению не могу....
интересует какая правильная логика работы Название: Re: Масштабирование сцены и элемента Отправлено: AzazelloAV от Март 27, 2015, 23:12 к сожалению не могу.... интересует какая правильная логика работы Да мы не будем смеятся. Это же, конечно, ирония. Вы можете псевдокод написать в виде пару строк, указав метод в котором он вызывается. Хотя, вроде бы указали...... Попытаюсь отгадать. Мы текст не хотим трогать, всё остальное да. painter->save(); что-то с рамкой painter->setWorldMatrixEnabled(false); //оставить всё как есть, как рисуем, все транфсормации побоку. что-то с текстом painter->restore(); |