提取实线要素(带宽度的solid线)的轮廓
本帖最后由 guosheyang 于 2022-9-23 12:37 编辑实线(具有宽度)要素的轮廓提取,很多朋友不从下手,这里提供一种方法,建议高版本使用,如有优化意见或建议请跟帖提出,谢谢!
原问题帖在此 http://bbs.mjtd.com/thread-186265-1-1.html
;自定义函数ygs_solid2pl 作者:ygs-羊羊羊
;功能:提取实线要素的轮廓
;参数:ss实线选择集
;返回值:无
;执行 (ygs_solid2pl(setq ss(ssget)))
(defun ygs_solid2pl(ss)
(setvar "cmdecho" 0)
(command "region" ss ""
"erase"ss ""
"union" (ssget"A"'((0 . "REGION")) ) ""
"qaflags" 1 ".explode"(ENTLAST)""".explode"(ssget"A"'((0 . "REGION")))"""qaflags"0)
(initcommandversion 2)
(command"_.join"(ssget"A"'((0 . "LINE")))"")
)
大神是否可以搞成可以运行的 没看到执行两字?那句就是 厉害。union命令是我没想到的
请教楼主,qaflags是什么命令?initcommandversion 是什么作用? qaflags 是保证多个对象能炸开 nitcommandversion是保证 能用join命令 guosheyang 发表于 2022-9-20 18:04
qaflags 是保证多个对象能炸开 nitcommandversion是保证 能用join命令
(initcommandversion 2)受教了!! ;; Solid2Pl solid实体转pl线 (Solid2Pl s1)
;; (Solid2Pl (setq s1(car(entsel"\n选择: "))))
(defun Solid2Pl (s1 / ptn)
(defun xyp-dxf (code e) (cdr (assoc code (entget e))))
(setq ptn (mapcar '(lambda (x) (xyp-DXF x s1)) '(10 11 13 12)))
(command "pline")
(foreach pt ptn (command pt))
(command "c")
(entlast)
) xyp1964 发表于 2022-9-22 13:06
;; Solid2Pl solid实体转pl线 (Solid2Pl s1)
;; (Solid2Pl (setq s1(car(entsel"\n选择: "))))
(defun So ...
院长没有用面域哈,好方法 提取线以后合并轮廓 不用面域的话还挺麻烦的 xyp1964 发表于 2022-9-22 13:06
;; Solid2Pl solid实体转pl线 (Solid2Pl s1)
;; (Solid2Pl (setq s1(car(entsel"\n选择: "))))
(defun So ...
派大牛逼啊
页:
[1]