Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: merke от Декабрь 18, 2012, 18:27



Название: Работа с картой
Отправлено: merke от Декабрь 18, 2012, 18:27
Всем привет!

Такой вопрос.

Есть изображение, любого размера. Мне нужно его отобразить в зоне 640x480. Это я делаю на сцене с помощью  QGraphicsPixmapItem. Далее на объект можно накладывать различные текстовые метки с помощью QGraphicsTextItem. Это получается рабочая область, с этим проблем нет. Но допустим изображение было больших размеров, я его подогнал под 640x480 и работал так с ним. Координаты всех меток сохраняются. Теперь мне нужно отобразить карту на полный экран, для этого в новом окне буду создавать сцену и на всю сцену кидать это же изображение, но надо сохранить положение текстовых меток после такого вот ресайза. Как лучше поступить, подскажите?

Буду очень благодарен!


Название: Re: Работа с картой
Отправлено: Bepec от Декабрь 18, 2012, 18:34
Так запоминать в относительных координатах. 10% от длины всегда будет 10% от длины, нет?


Название: Re: Работа с картой
Отправлено: merke от Декабрь 18, 2012, 18:54
Блин голова кипит. Пожалуйста, подробнее расскажите. Получает если я увеличил картинку на 10% по длине и ширине, то мне нужно передвинуть координаты метки на 10 туда и на 10 туда. ведь так?


Название: Re: Работа с картой
Отправлено: Bepec от Декабрь 18, 2012, 20:56
Берём лист 100 на 100 допустим.

Берём точку 10%.10%

Если увеличиваем пропорционально, то получаем допустим 400 на 400.

Но наша точка стоит где? правильно на 10%.10%

Т.е. точка двигается так же пропорционально, как и рисунок.

Возможно я неправ и меня поправят.