81 lines
5.4 KiB
Markdown
81 lines
5.4 KiB
Markdown
# PrintFit - Генератор Органайзеров для 3D Печати
|
||
|
||
PrintFit — это мощный веб-инструмент для создания параметрических органайзеров, разделителей и ящиков, оптимизированных для 3D-печати. Приложение позволяет легко проектировать системы хранения под любые размеры с возможностью детальной настройки перегородок и перфорации.
|
||
|
||

|
||
|
||
## ✨ Основные Возможности
|
||
|
||
### 🛠 Параметрическое Моделирование
|
||
- **Полный контроль размеров**: Настраивайте ширину, глубину и высоту ящика с точностью до миллиметра.
|
||
- **Толщина стенок и допуски**: Установка толщины внешних стенок и внутренних перегородок, а также компенсация усадки пластика (tolerance) для идеальной совместимости.
|
||
- **Скругление углов**: Настройка радиуса углов для эстетики и совместимости с различными стандартами (например, Gridfinity).
|
||
|
||
### 📐 Гибкая Система Перегородок
|
||
- **Визуальный редактор макета**: Интуитивно понятный интерфейс для добавления вертикальных и горизонтальных разделителей.
|
||
- **Вложенность**: Создание сложных сеток и ячеек разных размеров внутри одного органайзера.
|
||
- **Умное отображение размеров**: Автоматический расчет и отображение внутренних габаритов каждого отсека прямо на 3D-модели.
|
||
|
||
### 💨 Продвинутая Перфорация
|
||
- **Экономия материала и времени**: Возможность создания перфорированных стенок.
|
||
- **Различные узоры**: Выбор формы отверстий (соты/гексагоны, круги, треугольники и др.).
|
||
- **Умные исключения**: Алгоритм автоматически убирает перфорацию в местах стыков перегородок и углов, обеспечивая прочность конструкции (Solid Zones).
|
||
- **Настройка плотности**: Регулировка размера отверстий и отступов между ними.
|
||
|
||
### 🖥 Интерактивный 3D Предпросмотр
|
||
- **Real-time рендеринг**: Мгновенное отображение изменений в браузере с помощью Three.js.
|
||
- **Управление камерой**: Вращение, масштабирование и панорамирование для детального осмотра модели со всех сторон.
|
||
- **Индикация размеров**: Внутренние размеры отсеков отображаются прямо внутри ячеек.
|
||
|
||
### 💾 Экспорт и Шеринг
|
||
- **STL Экспорт**: Генерация готовых к печати STL файлов. Можно скачать отдельные детали или весь проект архивом (ZIP).
|
||
- **Сохранение проектов**: Возможность поделиться ссылкой на конфигурацию (все параметры кодируются в URL).
|
||
|
||
## 🚀 Запуск Локально
|
||
|
||
Для работы требуется установленный **Node.js**.
|
||
|
||
1. Клонируйте репозиторий:
|
||
```bash
|
||
git clone https://github.com/your-username/printfit-box-generator.git
|
||
cd printfit-box-generator
|
||
```
|
||
|
||
2. Установите зависимости:
|
||
```bash
|
||
npm install
|
||
```
|
||
|
||
3. Запустите локальный сервер разработки:
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
4. Откройте приложение в браузере (обычно http://localhost:5173).
|
||
|
||
## 🐳 Запуск в Docker
|
||
|
||
Приложение можно легко развернуть в контейнере Docker (используется Nginx для раздачи статики).
|
||
|
||
1. Соберите образ:
|
||
```bash
|
||
docker build -t printfit-app .
|
||
```
|
||
|
||
2. Запустите контейнер:
|
||
```bash
|
||
docker run -p 8080:80 printfit-app
|
||
```
|
||
|
||
3. Откройте http://localhost:8080
|
||
|
||
## 🛠 Технологический Стек
|
||
- **React**: UI и управление состоянием.
|
||
- **Three.js (@react-three/fiber)**: 3D рендеринг и геометрия.
|
||
- **Tailwind CSS**: Стилизация интерфейса.
|
||
- **Vite**: Сборщик проекта.
|
||
- **Lucide React**: Иконки.
|
||
|
||
## 📝 Лицензия
|
||
Этот проект распространяется под лицензией MIT. Вы можете свободно использовать, изменять и распространять его.
|