Комментарии 16
А может есть готовый пример, где можно блоки перетаскивать и кривая, соответственно бы изменялась, а также масштабировать рабочую область? Как в блендере.
Данный способ отрисовки соединения справедлив для нод, чьи порты располагаются на противоположных сторонах. Однако, для портов, расположенных на одной стороне, можно использовать кубические кривые Безье
Кубическая, кажется, подойдет и для случая противоположных сторон. Насколько я знаю, подобные соединительные линии рисуются именно кубическими.
А зум работает в вашем приложении?
Кстати, а почему всё таки через DOM, а не через canvas?
Мы делаем всю систему на реакте, используя дизайн-систему antd. Ноды имеют режим редактирования - в этом состоянии они превращаются в огромные формы. Проще использовать все возможности DOM, React и antd, чем делать все это в canvas
Безумно интересная статья. Если честно, даже не подозревал, что можно таким способом реализовывать описанные вещи, так как мало с таким сталкивался. Спасибо вам)
А вы прям всю функциональность с нуля пишете? Работаю над проектом с похожей концепцией, но за основу взяли rete.js
Как рисовать красивые соединения с помощью SVG