Рисование линий с использованием холста между холстами - PullRequest
0 голосов
/ 30 мая 2011

Какой лучший способ сделать это?

Я смотрел на Как нарисовать линию между двумя элементами с помощью JQuery и обновить эту линию? , но вскоре понял, что речь идет об одном холсте;)

Я тоже гадал на http://raphaeljs.com/

Это в прямом эфире на http: // --- - Имена анонимные и объекты не сохраняют свои позиции при перемещении ...

Все указания приветствуются и высоко ценятся. Даже если вы хотите, чтобы я переписал все холсты с нуля. :)

1 Ответ

0 голосов
/ 30 мая 2011

У вас есть несколько вариантов:

  1. Добавьте еще один холст для каждой линии, которую вы хотите нарисовать, ее размер должен быть прямоугольником, диагональ которого - линия, которую вы хотите нарисовать. его z-индекс должен быть ниже, чем у перетаскиваемых объектов, чтобы он не скрывал щелчок мышью. каждый холст строки должен перерисовываться всякий раз, когда перетаскивается один из двух перетаскиваемых оконечности холста.

  2. То же, что и раньше, но поддерживайте только один холст внизу. всякий раз, когда перетаскивается любой перетаскиваемый объект, очищайте холст и перерисовывайте все строки.

  3. перепишите ваш код, что все на одном холсте, и все перерисовывается каждый раз. Используя этот метод, вы не сможете использовать перетаскиваемые элементы пользовательского интерфейса jQuery, и вам придется самостоятельно выполнять перетаскивание.

Если бы мне пришлось выбирать, я бы выбрал вариант 2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...