измерения реального мира в qgraphicsscene

Я пишу небольшое приложение CAD в Qt 5.1 и пытаюсь выяснить, как получить координаты QGraphicsScene, чтобы соответствовать измерениям реального мира. Я намерен сохранить координаты в их первоначальном виде (значение, единица измерения), чтобы сохранить данные, например, при переключении с мм на дюймы.

Я нашел в их документации (http://qt-project.org/doc/qt-4.8/coordsys.html) что единица по умолчанию соответствует 1 пикселю на устройствах рисования на основе пикселей и 1/72 дюйма для устройств на основе печати.

Это преобразование, которое я должен использовать (72 единицы на дюйм)? Это не особенно удобно … Есть ли лучший способ связать измерения реального мира с координатами в QGraphicsScene? Можно ли настроить это преобразование?

Спасибо 🙂

1

Решение

Относительность здесь важна, и нет прямой связи между тем, что вы видите в QGraphicsScene, и реальным миром, если только вы не решите создать репрезентативную шкалу.

Вы можете счастливо создать молекулярную модель для масштабирования атомов внутри объекта или модель солнечной системы, которая позволяет вам путешествовать между звездами и галактиками. Важно то, что вы, как разработчик, решаете, какой будет ваша шкала.

В солнечной системе переход от координатной позиции GraphicsScene (0,0) к (10,0) может означать расстояние 10 метров или 10 миль. Пока объекты в сцене моделируются в одном и том же масштабе и располагаются в сцене с использованием этого масштаба, вот что имеет значение.

Когда дело доходит до печати, я согласен с @FrankOsterfeld, что это вопрос масштабирования вида на сцене. Если вам нужна прямая связь между тем, что вы видите на экране, и тем, что вы печатаете на бумаге, вам лучше не использовать здесь QGraphicsScene.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector