![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
alexandrnv |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 4.10.2008 Репутация: нет Всего: нет |
Здравствуйте.
Меня интересует такая вещь: как удалить с холста отдельно взятую линию (нарисованную через ctx.lineTo()) ? Очистка холста полностью не подходит. Рисование новой линии цветом фона поверх старой - тоже не подходит. Приведу пример для чего мне это нужно: у меня на холсте рисуется граф. Звенья соеденины линиями. Звенья могут перемещаться (draggable) - соответственно нужно перерисовывать линии их соединяющие. При изменении положения звена нужно удалить/стереть старую линию, соединяющую два звена, и нарисовать новую. (Линии могут пересекаться друг с другом). Можно ли удалить отдельную линию без перерисовки всего холста? Я уже реализовал то, что мне нужно с помощью сторонней библиотеки Raphael (raphaeljs.com). Там линия ( paper.path() ) представляет собой объект, у которого есть метод remove(). Но я нехочу использовать целую библиотеку только для рисования линий. Поэтому хочу реализовать задачу на чистом html5 canvas api. Заранее спасибо. |
|||
|
||||
alexandrnv |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 4.10.2008 Репутация: нет Всего: нет |
UP.
Никто не подскажет? |
|||
|
||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Обычно все перерисовывают заново. Все линии. это быстро на быстрых компутерах с быстрым броузером
![]() Можно рисовать на слоях - наложенных друг на друга канвасах. Но если хотеть иметь возможность отменить линии по одной - канвасов не напасешься... Для драга можно из основного канваса выкидывать драгнутый элемент и рисовать его с его соединяющими линиями на отдельном слое. Так можно обойтись только двумя слоями. С чего, как думаете, канвас не получил широкого распространения сразу после появления? Только ли из-за вредного дяди Билла? ![]() -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |