找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1022|回复: 7

[研讨] 自动标注

[复制链接]
发表于 2019-11-22 21:36:47 | 显示全部楼层 |阅读模式

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

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

×

;对象长宽标注

(defun c:25t(/ dimtx minx0 miny0 maxx0 maxy0 ss end end_data i p1 p2 p3 p4 P5 p6
    keyh p7 p8 p9 p10)
(vl-load-com)
(command "undo" "be")
(setvar "cmdecho" 0)
  (setq keyh nil)
  (setq dimtx (getvar "dimtxt"))
(command "ucs" "w")
(if (and (princ "\nSelect object to dim :") (setq ss (ssget))) (progn
  (setq minx0 1e6 miny0 1e6 maxx0 -1e6 maxy0 -1e6)
  (setq i 0)
  (repeat (sslength ss)
   (setq end (ssname ss i))
   (setq end_data (entget end))
   (Min_Max)
   (setq i(1+ i))
  );end repeat
  (setq p1 (list minx0 miny0)    p2 (list minx0 maxy0)
        p3 (list maxx0 maxy0)    p4 (list maxx0 miny0))
  (autodrawline)
  (command "DIMLINEAR" "non" p1 "non" p2 "non" (polar p2 pi p5))
  (command "DIMLINEAR" "non" p1 "non" p4 "non" (setq p6 (polar p4 (/ pi -2) p5)))
    (princ "\n Please give height ...default<25>:")
    (if (= (car (grread)) 3) (exit))
    (if (= keyh nil) (setq keyh 25))
    (setq p7 (list minx0 (- miny0 p5 (* 4 dimtx))))
    (setq p8 (list maxx0 (- miny0 p5 (* 4 dimtx))))
    (setq p9 (list maxx0 (- (- miny0 p5 (* 4 dimtx)) keyh)))
    (setq p10 (list minx0 (- (- miny0 p5 (* 4 dimtx)) keyh)))
    (vl-cmdf "rectang" p7 p9 "")
  (command "DIMLINEAR" "non" p7 "non" p10 "non" (polar p2 pi p5))
  (command "undo" "e")
))
(princ)
)






;;;子程序,求选集是大外形坐标
(defun Min_Max(/ minx maxx miny maxy)
(vla-getboundingbox(vlax-ename->vla-object end) 'minp 'maxp)
(setq minp (vlax-safearray->list minp)
       maxp (vlax-safearray->list maxp))
(setq minx (car minp)
       maxx (car maxp)
       miny (cadr minp)
       maxy (cadr maxp))
(if (> minx0 minx) (setq minx0 minx))
(if (> miny0 miny) (setq miny0 miny))
(if (< maxx0 maxx) (setq maxx0 maxx))
(if (< maxy0 maxy) (setq maxy0 maxy))
)

;;  defun grread
(defun ZML-GRREAD (LST / test tmp mode val tmp2)
    (setq TEST t)
    (while TEST
(setq TMP  (grread 2)
       MODE (car TMP)
       val  (cadr tmp)
)
(cond ((= mode 2)
        (if (and (setq TMP2 (assoc mode LST))
   (setq tmp2 (cdr tmp2))
   (setq tmp2 (assoc val tmp2))
     )
     (eval (cons 'progn (cdr TMP2)))
     ()
        )
       );row end
       ((setq TMP2 (assoc MODE LST))
        (eval (cons 'progn (cdr TMP2)))
       )
       (t (princ tmp))
)
    )
)

;;;;;;;;;;;;;auto draw line
(defun autodrawline(/ SS lst PT PT0)
     (setq LST
       (list '(5
        (setq pt val)
        ;;
        (redraw)
        (grdraw PT p1 3)
       )
      ;;left press
      '
       (3
        (setq pt val)
(setq p5 (distance PT p1))
        (redraw)
        (setq TEST NIL)
       )
      '(25
        (redraw)
        (setq TEST NIL)
       )
      '(11
        (redraw)
        (setq TEST NIL)
       )
       )
     )
     (ZML-GRREAD lst)
    (princ)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
 楼主| 发表于 2019-11-22 21:38:22 | 显示全部楼层
如附件图片,求高手指教,谢谢!
微信图片_20191122213336.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5295个

财富等级: 富甲天下

发表于 2019-11-23 11:54:41 | 显示全部楼层
很好的代码,可以方便的进行标注了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2470个

财富等级: 金玉满堂

发表于 2019-11-24 13:16:30 | 显示全部楼层
学习了!!!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 5个

财富等级: 恭喜发财

发表于 2019-11-28 16:48:43 | 显示全部楼层
楼主好厉害,这功能可实用了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2020-2-5 22:28:44 | 显示全部楼层
谢谢,收藏 学习
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2020-9-10 16:34:40 | 显示全部楼层
谢谢分享 下载备用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-14 20:18 , Processed in 0.178959 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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