Найти - Пользователи
Полная версия: [PyQt4] Сцена внутри другой сцены
Начало » GUI » [PyQt4] Сцена внутри другой сцены
1
aaleksander
Доброго времени суток. Помоги решить такую задачу.

Есть задача отобразить планшет с показаниями некоего прибора (которые опускается в скважину сверху вниз от глубины А, до глубины Б). Все кривые в своей системы координат, т.е. какая-то кривая будет , какая-то , а какая-то вообще в логирифмической системе.
Хотелось бы сделать это как-то… попитоничнее что-ли. Т.е. один раз создать голую сцену с одной кривой и потом просто вставлять эту сцену в нужном месте планшета без головоломных операций над матрицами.

Т.е. в идеале, хочу в сцену поместить другую сцену с указанием откуда-докуда и все.
Пока единственным выходом вижу оборачивать каждую сцену в виджет и уже его добавлять на планшет с помощью стандартного addWidget. Но насколько это будет правильно?

На рисунке примерная схема того, что я хочу. Т.е. синим - координаты “главной сцены”, она же планшет. Красным - координаты дополнительных сцен, отрисованных заранее в своей системе координат и просто рисуемые поверх родительской в нужном месте.

Подскажите, как бы это покрасивее сделать? Возможно я что-то пропустил в документации.

Спасибо.

aaleksander
Ладно, эту проблемму решил. Объясните тогда вот какой момент.
Если виджет целиком на влезает на сцену, то при скроллинге сцены он не перерисовывается. А надо бы.
Не проходите мимо, помогите решить :-)

Studentik
Вы бы лучше тестовым кодом жаловались
aaleksander
Для кнопки стандартыный код отсюда: http://symmetrica.net/qt4/lesson4.htm
Только на Питон надо перевести, а то я свой вариант уже потер.
button = new QPushButton(trUtf8("Кнопочка"), 0);
item = addWidget(button);
button->show();
QTransform transform = item->transform();
transform.translate(50., 30.);
transform.rotate(60.0);
item->setTransform(transform);
Но я уже через QGraphicsItem сделал.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB