![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
hemmul |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 8 Регистрация: 9.3.2012 Пользователь №: 3254 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Выводится виджет с MyGraphicsScene, по нажатии кнопки на сцену добавляется фигура координата верхнего правого угла которой 200, 200, далее, если зажать фигуру мышкой и перемещать ее, в консоль выводится координаты верхнего правого угла ограничивающего прямоугольника и позиция элемента в координатах сцены.
ВОПРОС: почему при перемещении фигуры координаты верхнего правого угла ограничивающего прямоугольника не изменяются вообще, а вместо координат сцены выводятся локальные координаты объекта при том что используется QGraphicsItem::scenePos() хедер
CPP файл
|
|
|
![]() |
wiz29 |
![]()
Сообщение
#2
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: ![]() ![]() ![]() |
ВОПРОС: почему при перемещении фигуры координаты верхнего правого угла ограничивающего прямоугольника не изменяются вообще координаты ограничивающего прямоугольника рассчитываются в локальной системе координат элемента, а не родителя (в вашем случае сцены). с чего вы решили что что то должно поменяться? а вместо координат сцены выводятся локальные координаты объекта при том что используется QGraphicsItem::scenePos() Что значит локальные координаты объекта (0, 0)? в вашем коде в консоль выведется координата левого верхнего в его локальной системе координат и принтанется координата позиции элемента на сцене, не понятна суть проблемы на самом деле. Для того чтоб узнать как поменлся ограничивающий прямоугольник на сцене надо применить:
|
|
|
hemmul |
![]()
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 8 Регистрация: 9.3.2012 Пользователь №: 3254 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Благодарю за консультацию.
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 15.7.2025, 14:01 |