Конструктор корпусной мебели

Мебель Клик

Один конструктор — любой прямой распашной шкаф: прихожая, книжный стеллаж, узкий пенал или тумба. Меняете размеры — модель и детали пересчитываются вместе.

развиваетсябесплатно, без регистрации
Мебель Кликодин масштаб
Прихожая900 × 2100Тумба800 × 600Шкаф в нишу1600 × 2600
Все три — один и тот же «Корпусный шкаф» с разными числами на стартовом экране.

Устройство конструктора Мебель Клик

Мебель Клик (M-Click) — конструктор корпусной мебели, который целиком работает в браузере. Здесь — как он устроен изнутри: где считается шкаф, какие мебельные правила зашиты в расчёт и из чего он собран. Как им пользоваться, рассказывает сайт конструктора.

браузер

  • Ввод рукамичисла
  • Файл JSONпроверяется теми же правилами
  • Проект в браузерепереживает перезагрузку

Расчётное ядро

на входе числа, на выходе детали с размерами и положением

без React, three.js и хранилища

читают один и тот же результат

  • 3D-сцена
  • Таблица деталей
  • PDF
  • Панели настроек

Всё считается в браузере. Сервера с расчётами у конструктора нет: модель в 3D, таблица деталей и PDF собираются прямо в браузере. Регистрации нет, и проект никуда не отправляется.

Одно расчётное ядро

Вся геометрия шкафа считается в одном модуле — расчётном ядре. Оно чистое: без React, three.js и хранилища, на входе числа, на выходе детали с размерами и положением. 3D-сцена, таблица деталей, PDF и панели настроек читают один и тот же результат. Раньше каждая из этих частей считала шкаф по-своему: геометрия жила в четырёх файлах и успела разойтись. С одним ядром расходиться нечему.

Число деталей и проверку листа у шкафов на странице проекта посчитало это же ядро.

Проект — у вас

Проект хранится в браузере и переживает перезагрузку страницы. Его можно выгрузить файлом JSON и открыть кнопкой «Открыть проект (JSON)» на стартовом экране — в другом браузере получится тот же шкаф. Файл при открытии проверяется теми же правилами, что и ввод руками, поэтому испорченный файл расчёт не ломает.

PDF — это шапка проекта, эскиз шкафа из 3D-сцены и таблица деталей в пильных размерах.

Мебельные правила в расчёте

  • Пильный размер

    В таблицу деталей и в PDF идёт размер, по которому деталь пилят: габарит минус толщина кромки с тех сторон, где она клеится.

  • Кромка по граням

    Какие грани кромить, задано у каждой детали: фасад — по периметру, полка и перегородка — только спереди, боковина — спереди, сзади и снизу. Задняя стенка из ДВПО не кромится.

  • Проверка листа

    Каждая деталь сверяется с форматом листа ЛДСП с учётом поворота. Та, что не влезает, краснеет прямо в 3D и помечается в таблице.

  • Створка по своей ширине

    Каждая створка считается по своему проёму. Слишком широкая подсвечивается в 3D, а в панели появляется кнопка «Сделать 2 створки».

Стек

  • React и TypeScript
  • сборка Vite
  • стили Tailwind CSS
  • состояние zustand
  • 3D-сцена three.js через React Three Fiber и drei
  • PDF jsPDF

Два продукта в одном репозитории

В одном репозитории живут два продукта: сам конструктор и его сайт — статические страницы из своего генератора. Код они не делят, общее у них только имя, значок и цвета, и работает каждый в своём контейнере.

Зачем он появился

Конструктор появился, когда мне понадобился шкаф под свою стену, а мебельные программы просили скачать, зарегистрироваться и оставить телефон.

Вопросы и проблемыв группе Panda Koding, тема Мебель Клик: Telegram ↗ · MAX ↗

Программы бесплатные

Я стараюсь делать их доступными и удобными: они не показывают рекламу и не собирают данные о вас. Если что-то из этого вам пригодилось, на странице поддержки можно сказать спасибо.

Поддержать автора