Как правильно задать координаты? |
Здравствуйте, гость ( Вход | Регистрация )
Как правильно задать координаты? |
toni.lobster |
23.11.2014, 14:16
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 23.9.2014 Пользователь №: 4231 Спасибо сказали: 0 раз(а) Репутация: 0 |
Задача - нарисовать нотный лист.
есть QGraphicsScene, есть QGraphicsRectItem - это страница(str) Есть QGraphicsRectItem - это нотоносец(staff), установлено staff.setParentItem(str), т.е при изменениях страницы нотоносцы меняются с ней. Нотоносец можно двигать по сцене. и есть QGraphicsEllipseItem- нота(note), должна добавляться на нотоносец по щелчку правой кнопки мыши. Координаты вычисляются note.setPos(event.scenePos()). и для нее ParentItem - это staff. НО есть проблема - если я двигаю staff по листу, то при вызове note.setParentItem координаты пересчитываются относительно staff, т.е если позиция курсора была в точке 10,10 на сцене, то при пересчете она станет 10,10 на нотоносце, что будет уже не под курсором. Мне надо сохранить 2 пункта - нота добавляется в позицию курсора и при этом она связана с нотоносцем, с которым движется и масштабируется. Есть конечно вариант все время учитывать координаты нотоносца относительно листа и вносить поправки при добавлении ноты, но может быть есть что-то проще? Спасибо! |
|
|
Текстовая версия | Сейчас: 25.11.2024, 14:54 |