vla-get-area获取填充图案的面积,为什么会自动退出?
vla-get-area获取填充图案的面积时,当填充没有面积时会自动退出程序,如何才能让其返回nil,程序接着执行后面的语句?(setq mj (vl-catch-all-apply 'vla-get-area (list obj)))
(if (vl-catch-all-error-p mj)
(setq mj nil)
) yshf 发表于 2019-4-6 10:14
(setq mj (vl-catch-all-apply 'vla-get-area (list obj)))
(if (vl-catch-all-error-p mj)
(setq mj ...
按你的方法试了下,不行哦。 (defun c:test()
(vl-load-com)
(while (setq ssa (ssget ":S" '((0 . "HATCH"))))
(setq obj (vlax-ename->vla-object (ssname ssa 0)))
(setq mj (vl-catch-all-apply 'vla-get-area (list obj)))
(if (vl-catch-all-error-p mj)
(setq mj nil)
)
(if (/= mj nil)
(princ (strcat "\n所选取填充的面积=" (rtos mj 2 3)))
(princ "\n所选取填充不具有面积属性" )
)
)
(princ)
) 原来如此,多谢!
页:
[1]