Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Может сделать отрисовку линий сразу в svg #25

Open
alfedukovich opened this issue Mar 24, 2023 · 13 comments

Comments

@alfedukovich
Copy link

Это позволит менять толщину линий и количество линий после получения результата. И приведёт к единому виду результата в рендеринге и просмотре svg.
Или сделать эти параметры изменяемыми в просмотре svg.

@GyverLibs
Copy link
Contributor

Там проблема в том что для рисования в svg нужно создать канвас svg, а у него в несколько раз медленнее работает рисование графики

@alfedukovich
Copy link
Author

99% времени занимают проверки пикселей - выбор лучшего пути и изменения массива исходного изображения. Отрисовка по-сравнению с этим, в любом случае будет казаться мнгновенной.
Для проверки отключил отрисовку затирания линий на исходном изображении - скорость ощутимо не поменялась.
Peek 2023-03-24 10-56
На практике svg из 5000-10000 элементов появляется мнгновенно и изменения свойств на лету тоже происходит быстро.

@AlexGyver
Copy link
Owner

а как быть с выводом исходного изображения?

@alfedukovich
Copy link
Author

Также как и сейчас. Просто правый круг рисовать в svg.

@AlexGyver
Copy link
Owner

для этого нужно создать canvas в SVG, а в рамках одного p5js скетча канвас может быть только один. Можно сделать два через instance режим и сверстать под разные скетчи разные div блоки, но мне кажется это порка

@AlexGyver
Copy link
Owner

я добавил в страничку svg слайдер, которым можно покрутить количество линий. Сейчас 1 мин гитхаб сайт обновит

@AlexGyver
Copy link
Owner

а как такую гифку вставил? Отдельно делал или гитхаб как то сам?

@alfedukovich
Copy link
Author

Софтина в ubuntu(может для других систем есть)
изображение

@GyverLibs
Copy link
Contributor

Захватывает с экрана и выдает гифу?

@alfedukovich
Copy link
Author

Да. Вот такое простое окошко для захвата.
изображение

@AlexGyver
Copy link
Owner

супер, я нашел себе аналог под вин

@copych
Copy link

copych commented Mar 24, 2023

Кстати, по поводу быстродействия, в консоли браузера вот такое предлагают...
Canvas2D: Multiple readback operations using getImageData are faster with the willReadFrequently attribute set to true. See: https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-will-read-frequently

@AlexGyver
Copy link
Owner

для этого нужно вносить изменения в библиотеку p5js. Я пробовал, и то ли не заработало, то ли не стало быстрее, уже не помню

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants