CAD自动计算实体面积的lsp

 

加载后使用命令:getarea

;get area
(defun C:GETAREA  ( /  ss e ent lyname ls llist)
  (setq ss (ssget))
  (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"))
      (command "AREA" "e" e)
      (setq
        lyname (cdr (assoc 8 ent))
        ls (assoc lyname llist)
        ls1 (cons lyname (+ (if ls (cdr ls) 0) (getvar "AREA"))) 
        llist (if ls (subst ls1 ls llist) (cons ls1 llist))
      )
    ))
  )
  llist
)

这是我的“收款”的二维码,放在这里想说的是,如果这篇文章真的对你很有帮助,为你解决了难题或提供了便利,你可以通过它打赏一下,不要多,只一块钱即可。除了声明转载的,全都是原创内容,发表在博客里一是留个念想,二也是互联网精神所致。一块钱对我算是一种鼓励。当然评论一句“很有帮助”也是值一块钱的 :)

号外1:(这里)提供搭建个人站足够用的2GB容量100GB流量的免费虚拟主机
号外2:(这里)承接微信公众平台建设服务
喜欢 0

这篇文章还没有评论

发表评论