;;计算各种表面、面域的面积和。设计 何勇
;;注意:绘图单位以毫米计。
(defun C:calmj(/ ss e ent)
(setq ss (ssget))
(setq are1 0)
(while ss
(setq
e (ssname ss 0)
ent (entget e)
ss (if (> (sslength ss) 1)
(ssdel e ss)
nil
)
)
(cond ((or (=(cdr (assoc 0 ent))"LWPOLYLINE")
(=(cdr (assoc 0 ent))"POLYLINE")
(=(cdr (assoc 0 ent))"REGION")
(=(cdr (assoc 0 ent))"LOFTEDSURFACE")
(=(cdr (assoc 0 ent))"SURFACE")
(=(cdr (assoc 0 ent))"REVOLVEDSURFACE")
(=(cdr (assoc 0 ent))"EXTRUDEDSURFACE")
(=(cdr (assoc 0 ent))"PLANESURFACE")
(=(cdr (assoc 0 ent))"SWEPTSURFACE")
)
(command "AREA" "e" e)
(setq
are1 (+ are1 (getvar "AREA"))
)
)
);;end cond
);;end while
(princ (strcat "\n总面积为:" (rtos are1) "mm2"))
(princ (strcat "\n总面积为:" (rtos (/ are1 1000000.0)) "m2"))
(prin1)
)
;;请试试我编的程序
;;计算各种表面、面域的面积和。设计 何勇
;;注意:绘图单位以毫米计。
(defun C:calmj(/ ss e ent)
(setq ss (ssget))
(setq are1 0)
(while ss
(setq
e (ssname ss 0)
ent (entget e)
ss (if (> (sslength ss) 1)
(ssdel e ss)
nil
)
)
(cond ((or (=(cdr (assoc 0 ent))"LWPOLYLINE")
(=(cdr (assoc 0 ent))"POLYLINE")
(=(cdr (assoc 0 ent))"REGION")
(=(cdr (assoc 0 ent))"LOFTEDSURFACE")
(=(cdr (assoc 0 ent))"SURFACE")
(=(cdr (assoc 0 ent))"REVOLVEDSURFACE")
(=(cdr (assoc 0 ent))"EXTRUDEDSURFACE")
(=(cdr (assoc 0 ent))"PLANESURFACE")
(=(cdr (assoc 0 ent))"SWEPTSURFACE")
)
(command "AREA" "e" e)
(setq
are1 (+ are1 (getvar "AREA"))
)
)
);;end cond
);;end while
(princ (strcat "\n总面积为:" (rtos are1) "mm2"))
(princ (strcat "\n总面积为:" (rtos (/ are1 1000000.0)) "m2"))
(prin1)
)
love1030312 发表于 2024-4-7 17:12
AI 还会写代码用的什么有嗲好奇请教下
kimi可以
页:
1
[2]