Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.09.2016, 01:32
Новичок на форуме
Отправить личное сообщение для andreykh Посмотреть профиль Найти все сообщения от andreykh
 
Регистрация: 16.09.2016
Сообщений: 2

Сегодня запустили крутую open-source библиотеку GraphicsJS - как вам?
Всем привет.

Мы сегодня запустили GraphicsJS – бесплатную open-source JavaScript библиотеку для рисования любой HTML5 графики и анимации. Она легкая и по количеству и качеству возможностей превосходит существующие в мире SVG/VML компоненты, включая Raphaël и Bonsai.

Основные фичи коротко:
  • виртуальный DOM;
  • свой движок для трансформаций;
  • удобный лаконичный API с chaining;
  • умная система слоев с z-индексом;
  • возможность рисовать не только кривые Безье, но вообще любые линии, арки, всевозможные фигуры "из коробки";
  • обширные возможности для работы с текстом (многострочные тексты, измерения и т.д.);
  • поддержка легаси-браузеров (IE6+).



Рисовать можно легко всё, что угодно: картинки, инфографика, анимация и т.д. Мы изначально разрабатывали для себя и используем как графический движок в наших коммерческих библиотеках для визуализации данных AnyChart. Но это только один из вариантов использования, конечно.

А вам как? В общем, будем рады фидбэку от вас. Ответим на вопросы, если что.
Ответить с цитированием
  #2 (permalink)  
Старый 16.09.2016, 15:31
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

1. в документации на сайте я вижу версии >=7.0.0, а в тегах на гитхабе 1.0.0
2. в бауэр зарегистрируйте
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #3 (permalink)  
Старый 16.09.2016, 15:35
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от andreykh
Она легкая
raphael.min.js 90,3kb

graphics 170kb
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #4 (permalink)  
Старый 16.09.2016, 17:47
Новичок на форуме
Отправить личное сообщение для roman_lubushkin Посмотреть профиль Найти все сообщения от roman_lubushkin
 
Регистрация: 16.09.2016
Сообщений: 1

Сообщение от nerv_
1. в документации на сайте я вижу версии >=7.0.0, а в тегах на гитхабе 1.0.0
Да, это не много конфузит. 7.x это версия AnyChart, движки документации пока слиты. Мы над этим работаем)

Сообщение от nerv_
2. в бауэр зарегистрируйте
Спасибо за совет, завтра же добавим в bower и npm

Сообщение от nerv_
raphael.min.js 90,3kb
graphics 170kb
Большое количество функций и удобное API требуют жертв. К тому же Graphics собирается Closure Compiler в режиме Advanced optimization с включенным strict mode. Closure Compiler ориентирован на минимзацию размера в gzip,который для графикса составляет 54Kb.

До думаю со временем сожмем до 100Kb в чистом виде
Ответить с цитированием
  #5 (permalink)  
Старый 16.09.2016, 18:05
Новичок на форуме
Отправить личное сообщение для langley Посмотреть профиль Найти все сообщения от langley
 
Регистрация: 16.09.2016
Сообщений: 1

Сообщение от nerv_ Посмотреть сообщение
raphael.min.js 90,3kb

graphics 170kb
Думаю, под легкостью в том числе понимается не только вес, но и легкость DOM-операций (то, что graphics умеет переходить в состояние suspended).

Так, например если мне нужна 1000 элементов в SVG, то большинство популярных нынче движков отрисуют их за 1000 изменений в DOM. Это тяжелая и долгая операция.

Graphics может сделать это одной пачкой, что, по замерам, в несколько раз быстрее:

stage.suspend();
for (var i = 0; i < 1000; i++) {
 var path = stage.path();
 //тут произвольные операции над path.
}
stage.resume(); //Significant performance boost.
Ответить с цитированием
  #6 (permalink)  
Старый 16.09.2016, 19:23
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от langley
Думаю, под легкостью в том числе понимается не только вес, но и легкость DOM-операций
В таком случае, чтобы исключить неоднозначность толкования, вероятно, следует пересмотреть формулировку.

Сообщение от langley
Graphics может сделать это одной пачкой, что, по замерам, в несколько раз быстрее:
Да, я понимаю о чем идет речь. Когда-то давно мне доводилось иметь дело с [mxGraph](https://jgraph.github.io/mxgraph/) и еще одной библиотекой, для работы с графами, кот. оперировала с канвасом (не помню название). Они имеют подобные механизмы.

Перфоманс -- это хорошо. Все любят перфоманс. Другое дело, что доки никто не читает и думать не хочет. В связи с чем, могу предложить вам идею реализации "перфоманса из коробки", как это сделано, например, в библиотеке Vue.js.
Идея проста:

for (var i = 0; i < 1000; i++) {
 var path = stage.path();
 //тут произвольные операции над path. (!) ТУТ собираем (пакуем) изменения
}

setImmediate(function() {
   // (!) А ТУТ применяем их
})

https://learn.javascript.ru/setimmed...immediate-func

В терминологии Vue.js -- это асинхронный рендеринг.

У вас к тому же есть уже все для этого:
Цитата:
GraphicsJS has implements the Virtual DOM which makes drawing more robust and manageable.
---

Ну, и лично мне не понятно почему ваше решение должно выстрелить. Существует огромное количество хороших библиотек визуализации и анимации.

Хотя, пока писал этот абзац, лично для себя заметил, что: видимо ценность вашей библиотеки как раз в том, что она на стыке highcharts и Raphael/BonsaiJS.
Однако visjs умеет графы, диаграммы(2d,3d) и судя по всему с анимациями там тоже не плохо.

---

Цитата:
GraphicsJS
A lightweight JavaScript graphics library with the intuitive API, based on SVG/VML technology.
Это конечно хорошо знать на чем она основана, но мне важнее что она умеет! Напишите об этом в ключевом послании к аудитории =)
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук

Последний раз редактировалось nerv_, 16.09.2016 в 19:29.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29