明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: 香田里浪人

闭合多义线面积批量标注

  [复制链接]
发表于 2013-3-10 08:01 | 显示全部楼层
mini有此功能,挺好用
发表于 2013-3-10 12:21 | 显示全部楼层
mjjs ; 错误: no function definition: MKLA
发表于 2013-5-13 21:25 | 显示全部楼层
香田里浪人 发表于 2013-1-13 18:00
我在2004中确实能运行,不知你们cad版本。我也没有收钱,哪来坑人吗?

2004也不能运行,楼主再修改一下
 楼主| 发表于 2013-5-14 20:00 | 显示全部楼层
;;;;面积批量计算(不闭合可计算)
(defun c:mjpljs(/ ACADDOC ACADSPC OBJAREA OBJLLPOINT OBJRUPOINT SELECTIONSET TEXTBASEPOINT TEXTHEIGHT TEXTINDEX TEXTOBJ)
   (vl-load-com)
   (setq AcadDoc (vla-get-activedocument (vlax-get-acad-object)))
   (if (= (getvar "TILEMODE") 1)(setq AcadSpc (vla-get-modelspace AcadDoc))(setq AcadSpc (vla-get-paperspace AcadDoc)))
   (setq TextHeight (getdist "\n输入标注文字高度:")
Textbh (getstring "\n输入编号前缀:")
TextIndex (getint "\n输入起始编号:")
)
   (ssget '((0 . "LWPOLYLINE")))
(command "layer" "M" "面积计算" "C" "3" "" "LT" "CONTINUOUS" "" "");设置一个标注图层
(command "style" "tukou" "黑体" "0" "" "0" "" "")
(defun maketext (txt pt)             ; 生成文字子函数
    (entmake (list '(0 . "TEXT") (cons 10 pt) (cons 40 TextHeight) (cons 1 txt) '(41 . 0.8)'(7 . "BG_ST")))
  )
   (setq Selectionset (vla-get-activeselectionset AcadDoc))
   (if (and TextHeight Selectionset TextIndex)
     (vlax-for Obj Selectionset
       (setq ObjArea (vla-get-area obj)
      ObjLlPoint nil
      ObjRuPoint nil
      )
       (vla-GetBoundingBox Obj 'ObjLlPoint 'ObjRuPoint)
       (setq TextBasePoint (mapcar '(lambda(x y) (/ (+ x y) 2)) (vlax-safearray->list ObjLlPoint)(vlax-safearray->list ObjRuPoint))
      TextObj (vla-addtext AcadSpc (strcat Textbh (itoa TextIndex) "=" (rtos (/ ObjArea 1)2 2) "㎡") (vlax-3d-point TextBasePoint) TextHeight)
      )
       (vla-put-alignment TextObj acAlignmentCenter)
       (vla-put-TextAlignmentPoint TextObj (vlax-3d-point TextBasePoint))
       (setq TextIndex (1+ TextIndex))      
       )
     )
   )
发表于 2013-5-15 15:53 | 显示全部楼层
香田里浪人 发表于 2013-5-14 20:00
;;;;面积批量计算(不闭合可计算)
(defun c:mjpljs(/ ACADDOC ACADSPC OBJAREA OBJLLPOINT OBJRUPOINT SE ...

大哥,单位好像是错误的呢,10米*10米=
 楼主| 发表于 2013-5-15 18:48 | 显示全部楼层
默认单位采用米,若采用mm,请自己调整。
发表于 2013-5-15 23:05 | 显示全部楼层
谢谢下载了~~
发表于 2013-5-16 08:55 | 显示全部楼层
香田里浪人 发表于 2013-5-14 20:00
;;;;面积批量计算(不闭合可计算)
(defun c:mjpljs(/ ACADDOC ACADSPC OBJAREA OBJLLPOINT OBJRUPOINT SE ...

输入文字高度、编号前缀、起始编号过程太麻烦。最好是能有些默认或记忆的参数,直接出结果。
发表于 2013-8-27 01:02 | 显示全部楼层
香田里浪人 发表于 2013-5-14 20:00
;;;;面积批量计算(不闭合可计算)
(defun c:mjpljs(/ ACADDOC ACADSPC OBJAREA OBJLLPOINT OBJRUPOINT SE ...

很不错的程序,谢谢分享
发表于 2013-8-27 14:31 | 显示全部楼层
谢谢楼主的分享,试用了,非常好,收藏备用了!
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-25 00:00 , Processed in 0.327220 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表