点击蓝字
关注我们
在化工设计里用CAD画图,不少活儿其实是重复的体力活。工艺管路要断线,联锁线交叉点要打断,每根管子、每个仪表阀门的编号都得手动改一遍;插个管件还得处理管道和管件之间的碰撞……单独看都不难,可量一大就特别磨人。
这几年AI越来越好用,工作和生活里离不开它的身影。这类重复劳动,其实很适合交给AI批量处理,把人从枯燥的活里解放出来。
所以我想着,能不能让AI直接帮我写个CAD插件,专门处理管线断线。下面就把这个过程记下来,算是抛砖引玉,分享给大家这个思路,也盼着能有更厉害的做法被启发出来。
1
确定提示词:先把需求拆给 AI
动手写插件之前,得先想清楚两件事:这个插件要干什么,以及它该按什么逻辑跑。
我的习惯是,自己先写一个粗糙的方案,再把它丢给AI去把提示词(prompt)打磨细。AI比人更擅长把含糊的需求,拆成机器能一步步执行的步骤。磨完之后的提示词大概是这样:
技术栈:AutoCAD .NET API,C#;编译为 dll。
整体策略:采用临时辅助圆求取分割点,不依靠手写沿曲线距离算法;不使用 TRIM 命令删除管线中间段。
开发目的:管线(Line / 二维 Polyline)交叉时,找到交叉点;利用临时辅助圆获取避让管线上的两个分割点;支持两种模式:缺口打断、半圆架桥。
使用方式:dll 通过 NETLOAD 加载,自定义命令 PIPEBREAK;无需工具栏。
输入参数:
1、图元:用户框选管线集合;仅 Line、二维 Polyline;仅模型空间;跳过冻结 / 锁定图层、外部参照、块内图形。
2、缺口 / 架桥总宽度(mm):配置持久记忆上次数值。
3、模式选择:缺口打断 / 半圆架桥;架桥时选择拱桥朝向。
4、每条交叉由用户指定哪一条为避让管线(需要被修改),另一条为主管线(保持不变)。
完整执行步骤:
1、启动命令,读取上次保存的宽度参数;
2、用户框选管线;两两求交,仅保留线段中部相交的有效交点;跳过端点相交、Z 不一致交点;
3、对于每一组有效交叉:
以交叉点为圆心,给定总宽度为直径,绘制一个临时辅助圆(仅用于求交点,不留在图纸);
求取该圆与避让管线的所有交点,筛选出距离交叉点最近的两个点,作为分割点 A、B;
立刻删除临时辅助圆;
缺口模式:在 A、B 两点将避让管线断开,移除 A‑B 之间的管段;主管线不变。
架桥模式:断开避让管线并删除 A‑B 中间段;以 A、B 为两个端点,按选定朝向生成半圆多段线作为拱桥;拱桥继承原管线图层、线型、线宽、颜色。
4、全部处理完成后命令行输出统计:有效交点数、成功处理数量。
重要约束:
1、不要使用 TRIM 命令尝试删除管线中间部分(CAD 原生 TRIM 无法实现中间挖空);
2、辅助圆只用来几何求交点,不留在图纸;
3、优先使用 API 自带几何求交;事务包裹所有实体修改;支持整体 Undo;
4、遇到圆‑管线交点数量异常时,跳过当前交点并输出警告,不终止循环;
5、半圆拱桥使用 Polyline 圆弧段实现,不用独立 Arc 实体。
交付要求:
1、C# 类库完整代码;说明 NuGet 引用;
2、模块化;中文注释;
3、编译、NETLOAD 加载步骤;
4、列出已知风险(例如倾斜管线、圆弧多段线下圆求交稳定性)。
2
输出文件及使用:拿到插件,装进CAD
这一步有两种路子。
一种是直接和网页版AI对话。它会把完整的C# 代码贴出来,但代码不能直接用,你得自己编译成dll,才能塞进CAD。
另一种是用电脑上的AI工具,比如WorkBuddy、千问办公、TARE、豆包这类 App。它们能直接产出可用的dll文件,省了编译那一步。我选的就是这个方案——把上面那串提示词复制进去,点确定,等着就行。
插件生成好后,记住它存在哪个文件夹。然后打开CAD里要处理的图纸,输入命令NETLOAD,找到刚生成的插件位置,加载进来,这张图就算装好插件了。接着输入命令PIPEBREAK,按提示框选管线、选模式、指定哪条让行、哪条不动,剩下的交给它。
插件使用演示视频
3
总结及探讨
以上就是我用AI做出这个断线插件的整个过程,不算什么高明的方案,就是一条能跑通的路。把它写下来,是觉得「让AI帮我们写插件」这个思路本身挺值得分享——以后再碰上大批量断线,至少不用再一条条手动点了。
当然,这个插件还很粗糙,能打磨的地方很多。比如现在它要求你精准框选要处理的管线,不能混进别的线或多段线,不然会多打断、出问题。真要融进日常,还得继续优化,把容错和适用性做上去。也欢迎大家一起琢磨,怎么把它改得更好用。
说到底,重点不在插件本身,而在「让AI帮我们写工具」这条路已经通了。我们未必非得花大力气去专门学一门编程语言、自己写代码、自己调bug,把这些交给AI,把精力省下来放到更值得花时间的地方,挺好。
如果这个小插件对你有点用,公众号后台回复
PIPEBREAK
可以拿去试试;也欢迎来聊聊你的改进思路。
(注:此插件仅适用AutoCAD2022-2026版本)
夜雨聆风