57
183
126
后起之秀
(setq valor_area 0.0000)(setq sel (ssget "_x" (list '(0 . "HATCH")(cons 8 layer))))(if (/= sel nil) (progn (setq i 0) (repeat (sslength sel) (setq entbh (ssname sel i)) (if (/= entbh nil) (progn (setq lentbh (entget entbh)) (setq layerbh (cdr(assoc 8 lentbh))) (setq valor_area(+ valor_area (vla-get-area (vlax-ename->vla-object entbh)))))))
(setq valor_area(+ valor_area (vla-get-area (vlax-ename->vla-object entbh))))
使用道具 举报
63
6297
6283
vla-get-area (vlax-ename-> vla-object entbh)
(setq valor_area 0.0)(if (setq sel (ssget "_x" (list '(0 . "HATCH") (cons 8 layer)))) (repeat (setq i (sslength sel)) (setq entbh (ssname sel (setq i (1- i)))) (setq valor_area (+ valor_area (vla-get-area (vlax-ename->vla-object entbh)) ) ) ))
114
1万
中流砥柱
(defun c:harea ( / a i j r s ) (setq r 0.0 j 0) (if (setq s (ssget "_X" '((0 . "HATCH")))) (repeat (setq i (sslength s)) (if (vl-catch-all-error-p (setq a (vl-catch-all-apply 'vla-get-area (list (vlax-ename->vla-object (ssname s (setq i (1- i))))) ) ) ) (setq j (1+ j)) (setq r (+ r a)) ) ) ) (if (< 0.0 r) (princ (strcat "\nTotal Area: " (rtos r 2))) ) (if (< 0 j) (princ (strcat "\n" (itoa j) " had a self-intersecting boundary.")) ) (princ))
本版积分规则 发表回复 回帖后跳转到最后一页
微信公众平台
扫描访问手机版
点击图片下载手机App
|关于我们|小黑屋|乐筑天下 繁体中文
GMT+8, 2025-3-10 18:43 , Processed in 0.546002 second(s), 66 queries .
© 2020-2025 乐筑天下
在线时间:10:00-17:00
暂无
扫一扫,关注我们
帮助中心
关于我们
下载APP客户端