Lisp 在闭合多段线上绘制多边形
我试图用我拙劣的英语技巧来描述这个问题:Lisp 在闭合多段线上绘制多边形,lisp,autocad,autolisp,Lisp,Autocad,Autolisp,我试图用我拙劣的英语技巧来描述这个问题: 我的dwg文件中有闭合块,这些块由许多连接在一起的多段线组成,但它们不是一体(集成),我只需要一个lisp在该块上绘制多边形并创建一体块。有办法吗? thnx假设: 当你说“连接”时,你的意思是他们的末端相触 当你说“uni body”时,实际上是指AutoCAD意义上的“joined” 然后尝试以下操作: (defun convert_block_to_polyline (block / old_entlast new_entlast curr p
我的dwg文件中有闭合块,这些块由许多连接在一起的多段线组成,但它们不是一体(集成),我只需要一个lisp在该块上绘制多边形并创建一体块。有办法吗? thnx假设:
- 当你说“连接”时,你的意思是他们的末端相触
- 当你说“uni body”时,实际上是指AutoCAD意义上的“joined”
(defun convert_block_to_polyline (block / old_entlast new_entlast curr polylines_set)
(setq old_entlast (entlast))
(command "explode" block)
(setq new_entlast (entlast))
(setq
curr (entnext old_entlast)
polylines_set (ssadd)
)
(while (entnext curr)
(ssadd curr polylines_set)
(setq curr (entnext curr))
)
(command "join" (entlast) polylines_set "")
(princ)
)
此函数假定:
- 您不想保留原始块,如果这样做,那么在分解之前创建一个副本,然后将其粘贴到同一位置就是一个简单的问题
- 块仅由可包含在“连接”命令中的对象(直线、多段线等)组成