Russian Qt Forum

Qt => Общие вопросы => Тема начата: Acrobat от Январь 14, 2017, 16:07



Название: Связи между прямоугольниками в QGraphicScene
Отправлено: Acrobat от Январь 14, 2017, 16:07
Доброго времени суток. Хотел спросить совета знающих. Необходимо реализовать возможность построения связи между графическими блоками (прямоугольниками) в виде стрелочек. Связи могут идти только с правой стороны прямоугольника к левой. Прямоугольники могут располагаться где угодно в пределах QGraphicView. Наложение (коллизии) прямоугольников запрещены. Поэтому стрелка может иметь множество преломление (прямых углов). Необходимо ещё предусмотреть, чтобы была возможность визуализации соединения между прямоугольниками, т.е. ПКМ нажал на один прямоугольник и тянешь стрелку между другими прямоугольниками к целевому. Реально ли всё это сделать с помощью QGraphicScene ?
Механизм обработки коллизий очень странный, сначала рисуешь только потом узнаёшь что произошло столкновение и опять перерисовываешь, жесть какая-то.


Название: Re: Связи между прямоугольниками в QGraphicScene
Отправлено: Swa от Январь 14, 2017, 16:42
А в чем проблема?
Есть даже такой пример уже: http://doc.qt.io/qt-5/qtwidgets-graphicsview-diagramscene-example.html (http://doc.qt.io/qt-5/qtwidgets-graphicsview-diagramscene-example.html)


Название: Re: Связи между прямоугольниками в QGraphicScene
Отправлено: Acrobat от Январь 14, 2017, 16:59
Да фиг его знает в чём проблема. Пытаюсь всю картину уложить в голове, в итоге сижу туплю, походу просто надо начать писать. Много проблем придётся решить. Всё новое.


Название: Re: Связи между прямоугольниками в QGraphicScene
Отправлено: Racheengel от Январь 14, 2017, 18:12
Тут подобная идея вроде реализована: https://github.com/ArsMasiuk/BranchEditor/tree/master/v3