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