|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
||||||
Когда-то давно на самых первых шагах изучения JS попытался спародировать MS Paint02.09.2025, 14:32. Показов 2133. Ответов 12
Метки нет (Все метки)
Понимаю что конечно получился не фонтан, но Canvas в то время, кажется, еще не придумали...
А вообще интересно, реальный аналог Пэйнта на чистом JS написать можно?
0
|
||||||
| 02.09.2025, 14:32 | |
|
Ответы с готовыми решениями:
12
Не могу додуматься как сделать пагинацию для своего FILM APP, проект давно уже закончил, но пагинацию так и не осилил Нужна такая штука: когда на второе текстовое поле попадает фокус - появляется третье поле; когда на третье поле попадает фокус - появляетя четвертое . Когда страница не загружена, показывать div, когда загрузилась, скрыть |
|
14303 / 9388 / 1354
Регистрация: 21.01.2016
Сообщений: 35,398
|
|
| 02.09.2025, 14:53 | |
|
Zloyalex100, что за «чистый JS» и чем он от нечистого отличается?)
0
|
|
|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
||
| 02.09.2025, 15:10 [ТС] | ||
|
Добавлено через 13 минут То есть имел в виду не "чистый", а "первобытный". 90-х годов. Который у самых "корней земли"
0
|
||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,834
|
||
| 02.09.2025, 17:25 | ||
|
Если делать что каждый пиксель - это отдельный dom-элемент, то это будет весьма ресурсозатратно. Канвас для таких целей лучше подходит. У вас на mousemove создаются div-ы но никогда не удаляются.. Я бы попробовал сделать, чтоб "холст" был заранее заполнен, к примеру создать таблицу с ячейками в 1 пиксель. И на mousemove закрашивать тот элемент над которым находится мышь. Добавлено через 1 час 9 минут Попробовал - работает ужасно) Надо придумать что-то другое)
0
|
||
|
14303 / 9388 / 1354
Регистрация: 21.01.2016
Сообщений: 35,398
|
|
| 03.09.2025, 05:38 | |
|
0
|
|
|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
||||||
| 03.09.2025, 16:42 [ТС] | ||||||
|
Кстати, размер кисти при уменьшении уходил в отрицательные числа... Напутал с порядком строк
0
|
||||||
|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
||
| 14.09.2025, 16:16 [ТС] | ||
|
0
|
||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,834
|
||
| 14.09.2025, 17:17 | ||
|
0
|
||
|
6224 / 2925 / 1046
Регистрация: 01.06.2021
Сообщений: 10,829
|
|
| 15.09.2025, 12:44 | |
|
создание множества маленьких кружков вдоль траектории движения мыши - это худший подход, который можно было реализовать. Это выглядит ужасно и это решение не оптимизировано.
Я не изучал, как это реализовано в MS Paint, но скорее всего, там просто с определенной частотой берутся координаты точек, по который проходит курсор. Потом просто используется интерполяция, чтобы заполнить разрывы. Это предотвращает разрывы при быстром движении мыши. То есть все-таки там рисуется не точками, а линиями. Возможно, используется алгоритм Брезенхэма или какая-то его модификация. В старых версия Paint сглаживания вообще не было, поэтому вероятно, что именно так и рисовалось. В случае со сглаживанием интерполяция может быть по кубическим сплайнам или что-то в этом роде.
0
|
|
|
6224 / 2925 / 1046
Регистрация: 01.06.2021
Сообщений: 10,829
|
|
| 15.09.2025, 13:29 | |
|
Вот, я делал рисование на стенах и на полу в своей трехмерной игре.
Рисование у меня плавное, просто джифка воспроизводится со скоростью 5 кадров в сек из-за ограничений размера на форуме.
0
|
|
|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
|
| 25.09.2025, 14:39 [ТС] | |
|
Кстати, что касается рисования в самом Пэйнте... Пробовал это делать в той версии которая была в XP в нулевые годы... Конечно способности ее не велики, явно не Фотошоп, но хотя бы кораблики нарисовать позволяет
0
|
|
|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
|
| 25.09.2025, 18:37 [ТС] | |
|
Разгребал тут свои старые папки, даже вот такой "Тинто Брасс" попался... Даже не знаю что сказать...
0
|
|
|
121 / 116 / 18
Регистрация: 05.08.2021
Сообщений: 506
|
|
| 16.10.2025, 20:53 [ТС] | |
|
Уже даже подзабыл каким именно образом в Пейнте начала нулевых годов всё это рисовал... Помню что там было не всё так просто....
А как вспомнить? Инструкций по Windows XP в тырнете сейчас скорее всего мало
0
|
|
| 16.10.2025, 20:53 | |
|
Помогаю со студенческими работами здесь
13
Когда нужно ставить скобки для функций, а когда нет Конфликт скриптов: когда нужен "async", а когда - "defer"? Когда нужно писать скобки после функции а когда нет?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|