冲孔率计算
本帖最后由 WL卧龙 于 2023-4-6 16:32 编辑感谢分享,学习学习! 感谢分享,也是算落料的材料利用率。 (defun c:CKL()
(setvar "cmdecho" 0)
(setq i 0)
(setq a 0)
(princ "选择内部孔型对象")
(setq a(jisuan))
(princ "选择外轮廓")
(setq b(jisuan))
(setq c (* (/ a b) 100))
(princ(strcat"冲孔率= "(rtos c 2 0) "%") )
(princ)
)
(prompt "小夏钣金插件专辑【卧龙】更多LISP插件程序请加微信:A6-227本插件:冲孔率CKL ")
(defun jisuan( / ss en i )
(if (setq ss (ssget '((0 . "circle,spline,lwpolyline,pline,ellipse,polyline" ))))
(progn
(setq i (sslength ss))
(repeat (sslength ss)
(setq en (ssname ss (setq i (1- i))))
(command "._area" "_O" en)
(setq arer (+ arer (getvar "area")))
)
)
)
(setq arer (/ arer 1000000))
) 谢谢分享,抢个沙发座 可以给个演示! guankuiwu 发表于 2023-4-6 19:36
可以给个演示!
加载后输入CKL
按照提示先框选内部闭合图形,再根据提示选取外框就可以了,很简单的代码 guankuiwu 发表于 2023-4-6 19:52
(defun c:CKL()
(setvar "cmdecho" 0)
(setq i 0)
你好,我看了修改的源代码
1:(setq arer (+ arer (getvar "area"))) +后面的area是未被定义的,得先赋值(否则nil)
2:外框和内部闭合计算概念是各自独立的,整合后会出现逻辑问题 请选择或输入文字(T): <选择外框>
输入文字是什么意思? gaics 发表于 2023-4-7 08:04
请选择或输入文字(T):
输入文字是什么意思?
为了提示用户不要选错了前后方式,不用输入回车直接忽略
用习惯了可以改为 (princ "选择内部孔型对象")
(princ "选择外轮廓")
页:
[1]
2