
在基坑支护平面图中,立柱桩、钢支撑、钢腰梁、地连墙分幅等构件画完以后,设计人员还要逐个输入编号、绘制引线,再调整文字位置。单个标识并不复杂,但当图面中有几十个甚至更多构件时,这类重复操作会持续消耗时间,也容易出现编号与图层不一致、引线跑层、文字压住尺寸等问题。
图层构件自动标识插件 V1.0,就是为这一类细小但高频的操作开发的。它不参与结构计算,也不替代设计判断,只负责把“读取构件图层—生成同名文字—绘制标准引线—寻找较空位置”连成一个命令。
一、真正费时间的,不是画一根引线
以图层 LZ-1 上的立柱构件为例,常规做法通常要经历:调用文字命令输入 LZ-1,切换到文字所属图层,再切换到细实线图层绘制引线。图面较密时,还要反复移动文字,避开轴线、尺寸和已有说明。
问题不在于这些命令有多难,而在于信息需要由人来回搬运。后续修改构件分类时,校对工作也会变得困难。自动化最适合解决的,正是这种规则明确、频率高、容易遗漏的动作。

二、插件到底做了什么
执行命令后,插件首先读取所选实体的真实图层名称,而不是让用户再次输入编号。对于直线、多段线、圆弧或样条曲线,标识锚点优先取选择点在曲线上的最近点;对其他实体,则以对象包围盒中心作为基准。这样,引线起点尽量贴近本次实际点选的位置。
随后,程序根据文字高度估算标签范围,在构件周围生成 8 个候选位置,检查这些位置是否与现有文字、属性文字、多重引线、尺寸或普通引线相交。优先使用无冲突位置;如果全部存在冲突,则选择冲突数量最少的位置,并提示使用人工命令微调。
最后,插件生成同名文字和两段式引线。文字仍放在构件原图层,引线统一放在 0细实线图层。整个过程封装为一次撤销操作,执行前后的当前图层、对象捕捉和命令回显状态都会恢复。

三、三个命令,分别解决三种情况
1. MM1:自动标识
在命令行输入 MM1,回车后点选一个构件。插件自动读取图层名、寻找较空位置并完成文字与引线。对于构件分散、标注密度一般的平面图,这是最常用的命令。
2. MM2:人工指定位置
当节点附近尺寸、轴线和说明较多时,输入 MM2,选择构件后再点取标识位置。图层读取、文字生成和引线归层仍由程序完成,设计人员只负责判断文字放在哪里更合适。
3. MM3:设置文字高度和偏移
MM3 用于调整当前 CAD 会话中的文字高度和自动偏移距离。默认文字高度为 600 mm,默认偏移为 1800 mm,适合当前插件所针对的基坑平面图制图习惯。不同图纸比例或项目模板应根据实际出图效果调整,不能把默认值理解为通用制图规定。
| MM1 | ||
| MM2 | ||
| MM3 |
四、自动避让能解决什么,不能解决什么
自动避让的目标很明确:尽量不压已有文字。插件检查 TEXT、MTEXT、ATTRIB、MULTILEADER、DIMENSION 和 LEADER 六类对象,并按固定顺序比较候选位置。它适合处理常见的文字拥挤,但不会对所有线、填充、块轮廓和施工图语义进行识别。
因此,“自动”不等于“无需复核”。如果候选位置都被占用,程序会选择相对较好的位置;如果该位置仍遮挡重要构件轮廓、支撑轴线或节点详图,应立即使用 MM2 重新落点。这个设计保留了工程制图中必要的人为判断,也避免为了追求完全自动而引入不可控的复杂逻辑。

五、为什么文字和引线要分图层
插件没有把所有新对象简单放到当前图层。标识文字继承构件原图层,例如构件位于 LZ-1,文字内容和文字图层都为 LZ-1;斜引线及文字下方水平线则统一放在 -细实线。这样既能通过图层快速核对构件与编号的对应关系,也能保持引线线宽、颜色和打印效果的一致。
如果图中尚不存在 细实线,插件会创建颜色 7、Continuous 线型的图层;如果该图层已经存在,则保留原有属性,不强行覆盖项目模板。文字样式优先调用 TSSD,图中没有该样式时使用当前文字样式。
此外,文字和两段引线都写入 FP_LAYER_LABEL 扩展数据,记录源构件句柄、原图层名和对象角色。这些数据目前主要用于追溯,为后续开发“批量更新标识”“构件改层后同步刷新”等功能预留接口;V1.0 尚不会在构件改层后自动刷新文字。

六、加载与使用,只需三步
在 AutoCAD 命令行输入 APPLOAD。AutoCAD 2016、2018 等旧版本优先加载 layer_name_component_label_v1_gbk.lsp;支持 UTF-8 AutoLISP 的较新版本可加载 UTF-8 文件。 命令行出现“图层构件自动标识插件 V1.0 已加载”后,输入 MM1 或 MM2。需要长期使用时,可将 LISP 加入 APPLOAD 启动组。 选择构件并检查结果:文字内容是否等于构件图层名,引线是否位于 0-JG-细实线,标识是否避开关键尺寸和节点说明。
插件保留了 FPLL、FPLLM、FPLLSET 及长英文命令作为兼容入口,已有快捷调用不会失效。日常使用建议统一采用 MM1、MM2、MM3,便于记忆和培训。
夜雨聆风