# 使用指定钻带的刀序功能说明 ## 功能概述 "使用指定钻带的刀序"功能允许用户选择一个之前排序好的钻带文件,直接读取其刀序到内存中进行重排操作,而不需要生成本地排序种子文件。 ## 使用步骤 1. **加载当前钻带文件** - 点击"加载钻带文件"按钮或直接拖拽钻带文件到窗口 - 系统会解析并显示当前钻带的刀具信息 2. **选择参考钻带文件** - 点击菜单栏中的"排序功能" → "使用指定钻带的刀序" - 在弹出的文件选择对话框中选择一个之前排序好的钻带文件 3. **系统验证** - 系统会自动验证当前钻带与参考钻带的刀具数量和直径是否匹配 - 如果不匹配,会显示详细的错误信息并中止操作 - 如果机台码刀具位置不一致,会显示警告信息 4. **确认重排** - 验证通过后,系统会显示重排前后的对比窗口 - 用户可以查看刀具顺序的变化情况 - 点击"确认"执行重排,点击"取消"保持原顺序 5. **完成重排** - 系统会按照参考钻带的刀序重新排列当前刀具 - 自动重新编号(T01, T02, T03...) - 更新钻带内容并显示成功信息 ## 验证规则 ### 严格匹配原则 - **刀具数量必须一致**:当前钻带和参考钻带的刀具数量必须完全相同 - **刀具直径必须匹配**:所有刀具的直径都必须在两个钻带中存在(考虑浮点数精度) - **机台码位置检查**:检查机台码刀具位置是否一致,不一致时给出警告 ### 错误处理 - 文件不存在:提示文件不存在错误 - 文件内容为空:提示文件内容为空错误 - 格式错误:提示刀具定义格式错误 - 数量不匹配:显示具体的数量差异 - 直径不匹配:显示哪些刀具在其中一个钻带中但不在另一个中 ## 技术特点 ### 内存操作 - 所有排序操作都在内存中完成 - 不生成本地排序种子文件 - 直接从参考钻带文件读取刀序 ### 复用现有基础设施 - 使用现有的刀具排序算法 - 使用现有的重排确认窗口 - 使用现有的重新编号机制 ### 用户友好 - 异步处理避免界面冻结 - 详细的进度提示 - 清晰的错误和警告信息 - 直观的重排前后对比 ## 注意事项 1. **文件格式要求**:参考钻带文件必须是标准的钻带格式,包含TxxCxxx格式的刀具定义 2. **刀具匹配**:只有当两个钻带的刀具完全匹配时才能进行重排 3. **机台码处理**:机台码刀具会保持原始编号,不会重新编号 4. **备份机制**:重排操作会自动创建原文件的备份 ## 与现有功能的关系 - **互补功能**:本功能与现有的"生成排序种子"功能互为补充 - **保留原功能**:原有的基于种子文件的排序功能完全保留 - **使用场景**: - 生成排序种子:用于长期保存和重复使用排序方案 - 使用指定钻带的刀序:用于一次性快速应用另一个钻带的排序 ## 示例场景 ### 场景1:相似产品快速重排 - 有多个相似产品的钻带文件 - 其中一个已经完成了刀具排序优化 - 使用该功能可以快速将优化后的刀序应用到其他相似产品 ### 场景2:临时排序需求 - 不需要长期保存排序方案 - 只是想临时参考另一个钻带的刀序 - 使用该功能可以避免创建额外的种子文件 ## 测试功能 开发人员可以使用"测试参考钻带功能"按钮来测试新功能的正确性: - 自动加载示例数据 - 创建模拟参考钻带文件 - 执行完整的重排流程 - 在调试输出中显示测试结果