连接方式:区间与排布公式¶
连接件说明了「一套孔长什么样」,连接方式说明「一条板边上排几套、排在哪」。前台最常见的孔位问题(某些长度的板没孔、孔的个数不对、间距不对)几乎都出在这一层。这一篇把 APlus 连接方式的规则和算法完整写出来:系统怎么按板长挑规则,排布公式里每个符号的意思,前后预留、32mm 系统、余量分配怎么一步步算出每个连接件的位置。读完后,给您任意一个板长和一条规则,您能在纸上算出孔位,再用排布预览核对。
和其他文章的分工
界面上每个设置在哪里,见连接方式与连接件;32mm 系统的行业背景,见32mm 系统与孔位。本文只讲规则和算法。
一、连接方式的两层:大类和规则¶
在 连接方式管理 的目录里,连接方式分两层:
- 连接方式(大类):目录里带 📦 图标的一项,比如「三合一」「二合一-示例」。它只有名称和 连接类型(三合一、二合一、三合一&木榫、二合一&调节孔、层板托、层板托&上下调节、木榫、其他、踢脚专用);
- 连接规则:挂在大类下面、带 🔧 图标的每一项,在大类上右键 ➕ 新建连接规则 创建。每条规则有自己的适用区间、五金代码映射、预留、32mm 系统、余量分配和排布公式。
板件五金里选连接方式时,只能选大类。生成五金时,系统按这条边的长度,自动在大类下面挑一条规则来用。
规则名称建议直接写区间
规则名称不参与计算,但建议直接写成区间,比如「0-50」「50-190」「190-280」。这样在目录里一眼就能看出有没有断层。
二、适用区间:系统怎么挑规则¶
这里的「板长」,指这条边与接触板件实际贴合的那一段长度。大多数情况下就是这条板边的长度,比如层板左端这条边的长度就是层板的深度。
系统按下面的规则挑规则,按顺序判断,命中就停:
区间匹配规则
- 找出所有满足「板长 ≥ 最小值,且 板长 < 最大值」的规则(包含最小值,不包含最大值,界面上写作 [min, max));
- 命中多条时,取区间最窄(最大值减最小值最小)的那一条;
- 一条都没命中时,把边界放宽 0.01mm 再找一次(避免 199.999 这种小数误差落空);
- 还是没命中,并且板长 ≥ 所有规则里最大的那个最大值,就用最大值最大的那条规则;
- 其他情况(板长比最小的最小值还小,或者落在两条规则之间的空档里),这条边不排连接件,也就没有孔。
正确的例子¶
一套三合一常见的分档:
| 规则 | 最小值 | 最大值 | 排布公式 |
|---|---|---|---|
| 0-50 | 0 | 50 | A |
| 50-190 | 50 | 190 | A*A |
| 190-280 | 190 | 280 | A*A |
| 280-500 | 280 | 500 | AB*A*BA |
| 500-1750 | 500 | 1750 | AB*A*B*A*BA |
| 1750-3000 | 1750 | 3000 | AB*AB*A*BA*BA |
每条的最大值都等于下一条的最小值,从 0 一直连到 3000,中间没有空档:
- 板长 190 → 命中「190-280」(包含最小值 190),不命中「50-190」(不包含最大值 190);
- 板长 3200 → 没有规则命中,但它 ≥ 最大的最大值 3000,于是用「1750-3000」。
断层的例子(错误)¶
| 规则 | 最小值 | 最大值 |
|---|---|---|
| 0-190 | 0 | 190 |
| 200-500 | 200 | 500 |
板长在 190 到 200 之间(比如 195)的边,两条都不命中,又没有超过 500,于是这条边没有孔。前台看到的现象是:「大部分柜子正常,偏偏某个尺寸的柜子某些板没孔」。这种问题最难查,因为只在特定尺寸出现。
重叠的例子(不推荐)¶
| 规则 | 最小值 | 最大值 |
|---|---|---|
| 0-600 | 0 | 600 |
| 400-800 | 400 | 800 |
板长 500 同时命中两条,按规则 2 取区间更窄的「400-800」(宽 400,比 600 窄)。结果虽然确定,但人很难一眼看出来,建议不要重叠。
软件不会替您检查断层
保存规则时只检查「最大值大于最小值」,不会检查几条规则之间有没有空档或重叠。建好一套规则后,请按最小值从小到大排一遍,逐条确认「上一条的最大值 = 下一条的最小值」。
三、排布公式:字母和星号¶
排布公式由两种符号组成:
- 字母:五金代码。在 五金代码映射 里,A~Z 每个字母对应一个连接件,最多 26 个。点 + 添加五金代码 时系统会自动分配下一个没用过的字母。公式里写
A,就是在这个位置放一套 A 对应的连接件; - 星号
*:把公式切成若干组。组与组之间在有效长度上均分;同一组里连写的几个字母贴在一起排,相邻两个相距 32mm。
公式里的空格和换行会被忽略。
系统怎么读公式¶
排布算法
先算有效长度 E = 板长 − 距前预留 − 距后预留。E ≤ 0 时不排。
然后看公式属于哪一种:
情况一:每组只有一个字母(如 A、A*A、A*B*A),或者整个公式没有星号(如 AA)。所有字母当成 n 个点,在有效长度上均分:
- 间距:n = 1 时为 0;不开 32mm 系统时为 E ÷ (n − 1);开了 32mm 系统时,取不超过 E ÷ (n − 1) 的最大的 32 的整数倍,如果连 32 都放不下,整条边不排;
- 余量 R = E − (n − 1) × 间距;
- 第一个点离起点的距离 = 距前预留 + 偏移,偏移由余量分配决定:余量前移为 0,余量均分为 R ÷ 2,余量后移为 R;
- 后面的点依次加一个间距。
情况二:有两组以上,而且至少有一组不止一个字母(如 AB*BA、AB*A*BA)。按组排:
- 每组有一个锚点,g 个锚点在有效长度上均分:锚点间距 = E ÷ (g − 1);开了 32mm 系统时,同样取不超过它的最大的 32 的整数倍;
- 第一个锚点在距前预留处,后面依次加锚点间距;
- 第一组从锚点开始往后排;最后一组排到锚点为止(最后一个字母落在锚点上);中间的组以锚点为中心排;
- 组内相邻两个字母固定相距 32mm;
- 这种情况下余量分配不起作用,开了 32mm 系统时多出来的长度全部留在后端。
「起点」是哪一头,由板件五金那一行的 起点(前、后、左、右、上、下)决定。距前预留就是从起点那一头量的。
常见公式一览¶
| 公式 | 属于哪种情况 | 结果 |
|---|---|---|
A |
情况一,n = 1 | 一套。余量均分时在有效长度正中;余量前移时在距前预留处;余量后移时在「板长 − 距后预留」处 |
A*A |
情况一,n = 2 | 两套,分别在有效长度的两头(不开 32mm 系统时正好在距前、距后预留处) |
AA |
情况一(没有星号) | 和 A*A 完全一样 |
A*A*A |
情况一,n = 3 | 三套均分 |
A*B*A |
情况一,n = 3 | 三点均分,中间那套换成 B |
AB*BA |
情况二,2 组 | 前端 A、B 两套相距 32;后端 B、A 两套相距 32,A 在最后 |
AB*A*BA |
情况二,3 组 | 前端 AB、正中 A、后端 BA |
AA*A |
情况二,2 组 | 前端两套 A 相距 32,后端一套 A |
AA 和 A*A 有什么区别
在 APlus 里,单独写 AA 和 A*A 的结果一样:都是两套,排在有效长度两头。字母连写「贴在一起、相距 32」的意思,只有在公式里有两组以上时才生效,比如 AA*A、AB*BA。想让两套连接件在前端贴在一起,至少要写成两组。
如果您在其他软件里学过「AA 表示两个连在一起」,到 APlus 里要注意这个差别。
四、一步步算孔位¶
下面四个例子覆盖了所有情况。建议先自己算,再对答案。
例 1:32mm 系统和三种余量分配¶
板长 560,距前预留 37、距后预留 37,公式 A*A,开 32mm 系统。
- 有效长度 E = 560 − 37 − 37 = 486;
- 情况一,n = 2,理想间距 486 ÷ 1 = 486;取不超过 486 的最大的 32 的倍数:15 × 32 = 480;
- 余量 R = 486 − 480 = 6;
- 按余量分配算第一套的位置,第二套再加 480:
| 余量分配 | 偏移 | 两套离起点 | 离另一头 |
|---|---|---|---|
| 余量前移 | 0 | 37、517 | 43 |
| 余量均分 | 3 | 40、520 | 40 |
| 余量后移 | 6 | 43、523 | 37 |
不开 32mm 系统时,间距就是 486,两套在 37 和 523,余量为 0,三种余量分配结果相同。
余量分配的名字怎么理解
从结果看,「余量前移」是连接件整体靠起点一头排、多出来的余量留在另一头;「余量后移」正好相反;「余量均分」是余量两头各一半。只有算出来有余量时(开了 32mm 系统,或者公式只有一个字母)这个设置才有影响。
例 2:三套均分 + 32mm 系统¶
板长 600,距前 32、距后 32,公式 A*A*A,开 32mm 系统,余量均分。
- E = 600 − 64 = 536;
- n = 3,理想间距 536 ÷ 2 = 268;取 32 的倍数:8 × 32 = 256;
- R = 536 − 2 × 256 = 24,偏移 12;
- 三套离起点:32 + 12 = 44,44 + 256 = 300,300 + 256 = 556。
例 3:分组公式¶
板长 560,距前 50、距后 50,公式 AB*A*B*A*BA,不开 32mm 系统。
- E = 560 − 100 = 460;
- 情况二,5 组:
AB、A、B、A、BA;锚点间距 460 ÷ 4 = 115; - 锚点离起点:50、165、280、395、510;
- 第一组
AB从锚点 50 往后排:A 在 50,B 在 82; - 中间三组各一个字母,落在锚点上:A 在 165,B 在 280,A 在 395;
- 最后一组
BA排到锚点 510 为止:A 在 510,B 在 510 − 32 = 478。
结果:A 50、B 82、A 165、B 280、A 395、B 478、A 510,一共 7 套(A 4 套、B 3 套)。
例 4:短板为什么没孔¶
板长 90,距前 32、距后 32,公式 A*A,开 32mm 系统。
- E = 90 − 64 = 26;
- n = 2,理想间距 26,不到 32,一个 32 都放不下;
- 整条边不排,前台看到这块板这条边没有孔。
同样的板长,关掉 32mm 系统,两套在 32 和 58;或者保持 32mm 系统,把预留改小、公式改成 A。这就是为什么公库里最短的区间(如 0-50、50-190)常常预留更小(15)、用 A 或 A*A 且不开 32mm 系统。
新建规则的默认值
新建一条连接规则时,默认是:区间 0~1000、距前距后各 32、开启 32mm 系统、余量前移、排布公式为空。排布公式为空的规则排不出任何连接件;32mm 系统是否需要,按您的工艺决定,不需要时记得取消勾选。
五、用排布预览自查¶
选中一条规则,中间 3D 区会画一块示例板和排好的连接件,左上角 排布预览 显示「板件长度」「连接件数量」「公式」。
- 预览设置 → 预览长度:预览用的板长,默认是这条规则的最大值减 1;
- 预览长度必须落在这条规则的区间里,否则不排;
- 预留、32mm 系统、余量分配改动后,预览会跟着刷新。改完仍建议点 保存连接方式。
建议每条规则至少看三个长度:
| 看哪个长度 | 为什么 |
|---|---|
| 最小值 | 最短的板排不排得下,间距会不会太挤 |
| 中间值 | 典型情况下个数和位置对不对 |
| 最大值减 1 | 最长的板间距会不会太大 |
算出来的数量和位置与预览一致,这条规则才算建对。
做错了会怎样¶
| 前台现象 | 原因 | 改法 |
|---|---|---|
| 某个尺寸范围的板,某条边没有孔 | 区间之间有断层 | 让上一条的最大值等于下一条的最小值 |
| 很短的板没有孔 | 预留之和 ≥ 板长;或开了 32mm 系统而有效长度不到 32 | 最短的区间用小预留、A 或 A*A、不开 32mm 系统 |
| 最小区间以下的板没孔 | 最小的规则最小值不是 0 | 最小区间从 0 开始 |
| 所有长度都没有孔 | 规则的排布公式为空,或五金代码映射里没有对应字母 | 填公式,并确认公式里每个字母都在映射里 |
| 孔的个数和想的不一样 | 板长命中了相邻的另一条规则(注意包含最小值、不包含最大值) | 用排布预览按实际板长复算 |
| 想要两套贴在一起,结果分在两头 | 只写了 AA,没有分组 |
写成两组以上,如 AA*A |
| 超长板的孔很稀 | 板长超过所有区间,被最大的那条规则兜住 | 为更长的板补一条规则 |
| 开了 32mm 系统,孔却不对称 | 余量分配选了前移或后移 | 需要对称时选余量均分 |
自测¶
- 说出区间匹配的五条规则,并判断板长 190、195、3200 分别命中文中哪条规则;
- 说出单独写
AA和A*A为什么结果一样,AA*A和A*A*A为什么不一样; - 算出:板长 600、预留 37 / 37、
A*A、开 32mm 系统、余量均分时两套的位置(答案:44、556。有效长度 526,间距 512,余量 14,偏移 7); - 算出:板长 560、预留 50 / 50、
AB*A*BA、不开 32mm 系统时每套的位置(答案:A 50、B 82、A 280、B 478、A 510); - 说出板长 90、预留 32 / 32、
A*A、开 32mm 系统时为什么没有孔。
常见问题¶
板件五金里能直接选某一条规则吗?
不能。板件五金的连接方式弹窗里只列大类,规则由系统按板长自动挑。这样同一个大类可以覆盖各种长度的板。
一条边同时贴着两块板时怎么算?
系统按这条边与每块接触板件实际贴合的那一段分别计算长度、分别挑规则和排布。比如一块长侧板的边上下贴着两块不同的板,会各排各的。
余量分配、32mm 系统在分组公式里有用吗?
32mm 系统有用:锚点间距会取 32 的整数倍。余量分配没用:分组公式总是从距前预留处开始排,多出来的长度留在后端。
距前预留、距后预留能按柜子单独改吗?
可以。在柜体管理里选中柜子中的某块板,它的「板件五金」每一行有「起始间距」「末端间距」,留空表示按连接规则里的预留,填了就用填的值。
下一步¶
- 公式入门:变量、条件与常用写法——让柜子本身随尺寸联动;
- 动手做一个二合一连接件——把这些规则用在一个完整练习里;
- 连接方式与连接件——界面操作速查。
