找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 48|回复: 1

[分享] IFX 孔表加载与优先级机制 为什么你的IFX报错了

[复制链接]

16

主题

124

回帖

6

威望

助工

积分
181
发表于 2026-7-2 12:45 | 显示全部楼层 |阅读模式
为了弄明白Creo与IFX间孔表的调用机制,我也是费尽心神,拿公司人工不干人事

我们通常会在IFX做GB库,不理解它的机制,通常容易报错,下面是协助生成的思维导图,有需要的可以看看,留个谢谢


┌─────────────────────────────────────────────────────────────────────────────┐
│                     IFX 孔表加载与优先级机制                                │
│                  (Creo/IFX 孔表数据查找全流程)                            │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  📁 第一步:紧固件数据文件 (.dat) 中的"指令"                               │
│  ───────────────────────────────────────────────────────────────────────── │
│  文件中包含 CBSCR、CSKSCR、THREAD 等字段                                    │
│  ┌───────────────────────────────────────────────────────────────────────┐  │
│  │ 场景 1: 有明确指令(如 CBSCR GB_R1)                                  │  │
│  │         → 直接跳转到"第二步 - 中间层"查找对应数据                      │  │
│  │ 场景 2: 无明确指令(未定义 CBSCR)                                    │  │
│  │         → 直接跳转到"第二步 - 中间层"查找默认值                        │  │
│  └───────────────────────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  📂 第二步:中间层 - ifx_screw_data.cfg 配置文件                           │
│  ───────────────────────────────────────────────────────────────────────── │
│  包含 #THREAD(螺纹数据)和 #CBSCR(沉孔数据)等数据块                      │
│  ┌───────────────────────────────────────────────────────────────────────┐  │
│  │ 情况 A: 找到对应数据(如 GB_R1 列存在且有数值)                        │  │
│  │         → ✅ 使用该数据,创建孔成功                                   │  │
│  │ 情况 B: 找到列名但该规格无数据(如 M10 行缺失)                       │  │
│  │         → ❌ 报错,不再向下查找                                       │  │
│  │ 情况 C: 找到列名但数据不完整(缺少必要的孔类型)                      │  │
│  │         → ❌ 报错,不再向下查找                                       │  │
│  └───────────────────────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  📂 第三步:最高优先级孔表目录 (hole_parameter_file_path 指定的目录)        │
│  ───────────────────────────────────────────────────────────────────────── │
│  例如:D:\Hole 目录中的 .hol 文件                                          │
│  ┌───────────────────────────────────────────────────────────────────────┐  │
│  │ 情况 A: 存在对应的 .hol 文件且数据完整                               │  │
│  │         → ✅ 使用该数据,创建孔成功                                   │  │
│  │ 情况 B: 存在对应的 .hol 文件,但缺少某些规格数据                      │  │
│  │         → ❌ 报错"无法创建孔",不再向下查找                           │  │
│  │ 情况 C: 不存在对应的 .hol 文件                                       │  │
│  │         → ⬇️ 继续向下查找(进入第四步)                              │  │
│  └───────────────────────────────────────────────────────────────────────┘  │
│                                                                             │
│  ⚠️ 关键规则:只要文件存在(哪怕内容不完整),IFX 就不会再往下查找!        │
│     因为 IFX 认为"自定义孔表有数据但无法使用",而非"没有数据"。             │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  📂 第四步:次高优先级孔表目录(Creo 工作目录)                             │
│  ───────────────────────────────────────────────────────────────────────── │
│  当前 Creo 工作目录下的 .hol 文件                                          │
│  查找逻辑与第三步相同                                                      │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  📂 第五步:最低优先级孔表目录(系统自带 text\hole)                        │
│  ───────────────────────────────────────────────────────────────────────── │
│  例如:C:\Program Files\PTC\Creo\...\Common Files\text\hole               │
│  ┌───────────────────────────────────────────────────────────────────────┐  │
│  │ 只有当前面所有目录都找不到对应文件时,才会到达这里                    │  │
│  │ → 使用系统自带孔表数据                                               │  │
│  └───────────────────────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│                       最终结果                                             │
│  ───────────────────────────────────────────────────────────────────────── │
│  ┌───────────────────────────────────────────────────────────────────────┐  │
│  │ 找到了数据 → ✅ 创建孔成功,紧固件装配完成                           │  │
│  │ 找不到数据 → ❌ 报错:"无法创建孔,因为没有符合您所选直径的孔图表"    │  │
│  └───────────────────────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────────────────────┘

8

主题

430

回帖

16

威望

高工

积分
545
发表于 2026-7-2 14:14 | 显示全部楼层
收藏了,谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

本站为非营利性站点,部分资源为网友搜集或发布,仅供学习和研究使用,如用于商业用途,请购买正版。站内所发布的资源,如有侵犯你的权益,请发邮件联系我们,本站将立即改正或删除。

手机版|小黑屋|野火论坛(©2007~2026) ( 苏ICP备11036728号-2 )苏公网安备 32039102000103号|站长QQ28016688

GMT+8, 2026-7-2 17:14 , Processed in 0.162689 second(s), 23 queries .

快速回复 返回顶部 返回列表