将填充面积显示到填充图案
网上的很多插件,我测试过了,都只能计算正常填充图案的面积。异形填充图案的面积就无法计算了。
但是新版CAD,在图元的特性里面,已经可以显示面积了。
但是要查看这个图案的面积依旧比较麻烦,需要点选这个图案,然后打开特性,才能看到。
所以,我想也没用高手做一个插件,可以达到的效果:
1,将填充图案的面积,(面积不用插件来计算,可以直接提取特性里面的面积),
显示到该填充图案的中心点上。
2,面积保留两位小数,数字高度300,面积单位按平方米来计算,也就是面积除以1000000
——
——
这个lsp完全可以达到要求,但是唯一缺憾就是不能计算异性的面积,比如环形,内部确实的图形。供参考。
(defun c:TAT(/ ss tarea obj k l ename )
(setvar "cmdecho" 0)
(if (setq ss (ssget))
(progn
(vl-load-com)
(setq l (sslength ss) k 0 tarea 0 )
(repeat l
(setq ename (ssname ss k))
(setq obj (vlax-ename->vla-object ename))
(if (vlax-property-available-p obj "area")
(setq tarea (+ (vlax-get-property obj 'area) tarea))
)
(setq k (1+ k))
)
(setq tarea (/ tarea 1000000))
(princ (strcat "\n共选择 " (itoa l) " 个对象 | 总面积: " (rtos tarea 2 2) "平方米 "))
(command "text" (getpoint "\n选取文字插入点") """" (rtos tarea 2 2))
)
(princ "\n未选择对象")
)
(setvar "cmdecho" 1)
(prin1)
)
有没有高手能帮忙编写一个插件啊。
1,将填充图案的面积,(面积不用插件来计算,可以直接提取特性里面的面积),
显示到该填充图案的中心点上。
2,面积保留两位小数,数字高度300,面积单位按平方米来计算,也就是面积除以1000000
—— 直接从特性里提取面积就可以了,还要怎么做 我也想知道 找个计算封闭图形面积插件 填充先找到填充边界 我也想知道 支持楼主的想法,如果改进了的话,我愿意付费,这个对于算量来说,很有帮助 怎么能批量标注呢? 支持一下
页:
[1]