找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 885|回复: 0

[他山之石] AreaText.LSP ver 3.0

[复制链接]
发表于 2014-2-14 17:17:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

  1. ;;; AreaText.LSP ver 3.0
  2. ;;; Command name is AT
  3. ;;; Select a polyline and where to place the text
  4. ;;; Sample result: 2888.89 SQ. FT.
  5. ;;; As this is a FIELD it is updated based on the FIELDEVAL
  6. ;;; or the settings found in the OPTIONS dialog box
  7. ;;; By Jimmy Bergmark
  8. ;;; Copyright (C) 2007-2010 JTB World, All Rights Reserved
  9. ;;; Website: www.jtbworld.com
  10. ;;; E-mail: info@jtbworld.com
  11. ;;; 2007-09-05 - First release
  12. ;;; 2009-08-02 - Updated to work in both modelspace and paperspace
  13. ;;; 2010-10-29 - Updated to work also on 64-bit AutoCAD
  14. ;;; Uses TEXTSIZE for the text height
  15. (defun Get-ObjectIDx64 (obj / util)
  16.   (setq        util (vla-get-Utility
  17.                (vla-get-activedocument (vlax-get-acad-object))
  18.              )
  19.   )
  20.   (if (= (type obj) 'ENAME)
  21.     (setq obj (vlax-ename->vla-object obj))
  22.   )
  23.   (if (= (type obj) 'VLA-OBJECT)
  24.     (if        (> (vl-string-search "x64" (getvar "platform")) 0)
  25.       (vlax-invoke-method
  26.         util
  27.         "GetObjectIdString"
  28.         obj
  29.         :vlax-False
  30.       )
  31.       (rtos (vla-get-objectid obj) 2 0)
  32.     )
  33.   )
  34. )
  35. (defun c:AT (/ entObject entObjectID InsertionPoint ad)
  36.   (vl-load-com)
  37.   (setq        entObject      (vlax-ename->vla-object (car (entsel)))
  38.         entObjectID    (Get-ObjectIDx64 entObject)
  39.         InsertionPoint (vlax-3D-Point (getpoint "Select point: "))
  40.         ad               (vla-get-ActiveDocument (vlax-get-acad-object))
  41.   )
  42.   (vla-addMText
  43.     (if        (= 1 (vla-get-activespace ad))
  44.       (vla-get-modelspace ad)
  45.       (if (= (vla-get-mspace ad) :vlax-true)
  46.         (vla-get-modelspace ad)
  47.         (vla-get-paperspace ad)
  48.       )
  49.     )
  50.     InsertionPoint
  51.     0.0
  52.     (strcat "%<\\AcObjProp Object(%<\\_ObjId "
  53.             entObjectID
  54.             ">%).Area \\f \"%pr2%lu2%ct4%qf1 SQ. FT.\">%"
  55.     )
  56.   )
  57. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-25 00:33 , Processed in 0.170055 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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