# OptiCut **Repository Path**: s1amese2003/OptiCut ## Basic Information - **Project Name**: OptiCut - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-23 - **Last Updated**: 2025-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OpiCut - 精准切割优化工具 OpiCut 是一个用于优化木板、玻璃板等材料切割方案的 Flutter Web 应用。它可以帮助您最小化材料浪费,节省成本。 ## 功能特点 - 支持自定义板材尺寸 - 考虑锯片宽度,提高计算精度 - 可视化切割方案 - 打印优化结果 - 响应式设计,支持桌面和移动设备 ## 环境要求 - Flutter SDK (3.0.0 或更高版本) - Chrome 或其他现代浏览器 - Git (可选,用于版本控制) ## 安装指南 ### 1. 安装 Flutter 1. 访问 [Flutter 官方文档](https://flutter.dev/docs/get-started/install) 下载适合您操作系统的 Flutter SDK 2. 解压下载的文件到您选择的目录(例如:`C:\\src\\flutter`) 3. 将 Flutter 添加到系统环境变量 PATH 中 4. 打开命令提示符或终端,运行以下命令验证安装: ```bash flutter doctor ``` 5. 安装 Android Studio 或 VS Code 用于开发(推荐) ### 2. 启用 Web 支持 运行以下命令启用 Flutter Web 支持: ```bash flutter channel stable flutter upgrade flutter config --enable-web ``` ### 3. 获取项目代码 ```bash git clone https://github.com/yourusername/OptiCut.git cd OptiCut ``` ## 运行项目 1. 安装项目依赖: ```bash flutter pub get ``` 2. 运行开发服务器: ```bash flutter run -d chrome ``` 这将在 Chrome 浏览器中启动应用,并启用热重载功能。 3. 构建生产版本: ```bash flutter build web ``` 构建完成后,文件将保存在 `build/web` 目录下。 ## 使用方法 1. 在输入区域设置板材的尺寸(长和宽) 2. 设置锯片宽度(默认为 3mm) 3. 添加需要切割的条料尺寸和数量 4. 点击"优化"按钮生成最佳切割方案 5. 查看可视化结果和统计数据 6. 使用打印功能保存或分享切割方案 ## 开发 ### 项目结构 - `lib/` - 主要源代码 - `main.dart` - 应用入口 - `data_input_section.dart` - 数据输入组件 - `optimizer_output_section.dart` - 优化结果展示 - `visualizer_section.dart` - 切割可视化组件 - `print_page.dart` - 打印页面 - `web/` - Web 相关文件 - `test/` - 测试文件 ### 依赖项 - `url_launcher`: 用于打开外部链接 - `flutter_lints`: 代码质量检查 ## 常见问题 ### 1. 运行时报错 "Waiting for connection from debug service on Chrome..." 这通常是因为 Chrome 启动需要时间,请稍等片刻。如果长时间无响应,请确保: - Chrome 浏览器已安装 - 没有其他 Chrome 实例在运行 - 尝试运行 `flutter clean` 后重试 ### 2. 如何清除缓存? ```bash flutter clean flutter pub get ``` ## 贡献 欢迎提交 Issue 和 Pull Request。在提交代码前,请确保: 1. 代码风格与现有代码一致 2. 通过所有测试 3. 更新相关文档 ## 许可证 MIT License - 详见 [LICENSE](LICENSE) 文件 --- 由 [您的名字/组织] 开发 | [网站链接] | [联系方式]