Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.03.2020, 16:59
Аватар для Spirtikys
Аспирант
Отправить личное сообщение для Spirtikys Посмотреть профиль Найти все сообщения от Spirtikys
 
Регистрация: 30.12.2015
Сообщений: 49

SVG библиотека для манипуляций с элементами
Добрый день.
Возможно кто-то знает и использовал в своих проектах библиотеку для манипуляции с svg элементами ( polygon, rect, circle ) и может подсказать что-то небольшое по размеру и простое в обращении?
Цель - это отрисовка динамически элементов + возможность их перемещать + изменять им размеры ( в polygon перемещать ребра ).
leaflet или openlayer имеют данный функционал, но тянут за собой слишком много лишнего и их основная цель работа с картой, у меня же карты нету, а нужно размечать элементы на картинке.

Спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 20.03.2020, 17:13
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,138

у SVG все очень плохо со скоростью отрисовки всего SVG объекта
разумнее использовать canvas что то на вроде http://libcanvas.github.io/
Ответить с цитированием
  #3 (permalink)  
Старый 20.03.2020, 17:24
Аватар для Spirtikys
Аспирант
Отправить личное сообщение для Spirtikys Посмотреть профиль Найти все сообщения от Spirtikys
 
Регистрация: 30.12.2015
Сообщений: 49

Сообщение от MallSerg Посмотреть сообщение
у SVG все очень плохо со скоростью отрисовки всего SVG объекта
разумнее использовать canvas что то на вроде http://libcanvas.github.io/
В производительность не упираемся, отрисовка только shapes, да и хочется DOM модель и легко манипулировать через React.
Данная библиотека, судя по репо, уже лет 7 не обновляется. По canvas знаю еще fabric.js , но взаимодействия с такими фигурами проблематично + он не покрывает все мои нужды из указанного ( нету возможности обрабатывать каждое ребро у polygon ).
SVG как то ближе)
Ответить с цитированием
  #4 (permalink)  
Старый 20.03.2020, 18:09
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

http://fabricjs.com/
Ответить с цитированием
  #5 (permalink)  
Старый 20.03.2020, 18:32
Аватар для Spirtikys
Аспирант
Отправить личное сообщение для Spirtikys Посмотреть профиль Найти все сообщения от Spirtikys
 
Регистрация: 30.12.2015
Сообщений: 49

Сообщение от Poznakomlus Посмотреть сообщение
http://fabricjs.com/
Я упоминал ее в сообщении выше.
Возможно я плохо прочитал документацию, но не нашел там нужного взаимодействия над polygon, построить - да, а как потом по точкам двигать и менять размеры не нашел.
В целом, самая большая проблема это именно полигоны и взаимодействия с ними, все остальные фигуры не вызывают проблем, идеальный вариант - это такая же работа как и в leaflet, хочется что-то подобное, но без карты)
Ответить с цитированием
  #6 (permalink)  
Старый 20.03.2020, 18:51
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

http://fabricjs.com/polygon-animation
https://jsfiddle.net/Fidel90/9s04n68p/
fabricjs polygon example in
Ответить с цитированием
  #7 (permalink)  
Старый 21.03.2020, 00:51
Аватар для Spirtikys
Аспирант
Отправить личное сообщение для Spirtikys Посмотреть профиль Найти все сообщения от Spirtikys
 
Регистрация: 30.12.2015
Сообщений: 49

Сообщение от Poznakomlus Посмотреть сообщение
http://fabricjs.com/polygon-animation
https://jsfiddle.net/Fidel90/9s04n68p/
fabricjs polygon example in
Первый пример я видел, второй очень забагован и плохо адаптирован к touch screen.
Возможно я плохо объяснил задумку, суть в том, чтобы добиться вот такого эффекта https://gojs.net/latest/extensions/PolygonDrawing.html , плавности и возможности редактирования по точкам ( рисовать разные фигуры как в openlayer и leaflet + взаимодействовать с ними по точкам, манипулировать их размерами ).
Есть на просторах svg.js , но она никак не адаптирована под React, а последняя версия без draw эффекта, как в крупных библиотеках аля leaflet.
У меня 2 режима в приложении: в одном я просто обрисовываю фигуры ( и тут мне хватает чистого svg ), а во втором режиме я должен рисовать эти фигуры сам и передавать координаты.

Если не брать в расчет полигоны, то с остальными фигурами проблем как таковых нет, на данный момент вся загвоздка именно в них.
Ответить с цитированием
  #8 (permalink)  
Старый 21.03.2020, 01:52
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

https://habr.com/ru/post/152731/
Не надо приивязыватся React
Ответить с цитированием
  #9 (permalink)  
Старый 23.03.2020, 12:08
Аватар для Spirtikys
Аспирант
Отправить личное сообщение для Spirtikys Посмотреть профиль Найти все сообщения от Spirtikys
 
Регистрация: 30.12.2015
Сообщений: 49

Сообщение от Poznakomlus Посмотреть сообщение
https://habr.com/ru/post/152731/
Не надо приивязыватся React
За статью спасибо, уже умаю писать сам, если позволит время и использовать SVG
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Библиотека для управления последовательностью вызова пользовательских анимаций R2R Ваши сайты и скрипты 3 10.09.2018 13:37
библиотека javascript для построения контурного графика kononov Общие вопросы Javascript 1 28.04.2016 14:23
Аналог wmode=transparent для Canvas или svg lusever Events/DOM/Window 1 15.06.2009 16:05
Библиотека для "вижуалсов" Гость Библиотеки/Тулкиты/Фреймворки 0 25.02.2008 12:16