统计标记,讨论(大神们都进来看看)
功能是:统计圆,并进行标记对不同半径的圆进行不同的字母标记
同半径的用一样的字母标记
例如:
图形中有半径1的圆1,半径2的圆2个,半径3的圆5个。
对齐进行统计,标记
半径1的圆右上角写上字母A
半径2的圆右上角写上字母B(注意:有2个圆)
半径3的圆右上角写上字母C(注意:有5个圆)
统计方面,(我在论坛版主的帮助下)已经会了,就是标记不会
求大神们,指点
这个不用标记
用直线或多义线之间画线就可以 gtj116600 发表于 2013-5-24 17:11 static/image/common/back.gif
这个不用标记
用直线或多义线之间画线就可以
关键是公司要求要写上字母呀 【KAIXIN】 发表于 2013-5-24 17:12 static/image/common/back.gif
关键是公司要求要写上字母呀
谢谢开心大哥的帮助,不好意思,耽误了你不少时间
也许是我太笨了,会了统计,标记就不会了 Angel1995 发表于 2013-5-24 17:14 static/image/common/back.gif
谢谢开心大哥的帮助,不好意思,耽误了你不少时间
也许是我太笨了,会了统计,标记就不会了
你们公司的要求不能改改? ;圆分类标注 明经ZZXXQQ 2009.6
(defun c:tt ()
(setvar "CMDECHO" 0)
(setq oldos (getvar "OSMODE"))
(setvar "OSMODE" 0)
(if (and (princ "\n【提示】选择圆对象....") (setq ss1 (ssget '((0 . "CIRCLE"))))) (progn
(setq i 0 j 65 cl (list))
(repeat (sslength SS1)
(setq ent (entget(ssname ss1 i)))
(setq pc (cdr(assoc 10 ent)))
(setq r (cdr(assoc 40 ent)))
(if (setq rl (assoc r cl))
(setq cl (subst (list r (cons (caadr rl) (1+ (cdadr rl)))) rl cl))
(setq cl (cons (list r (cons (chr j) 1)) cl) j (1+ j))
)
(setq i (1+ i))
)
(setq i 0 j 0 cl (reverse cl))
(repeat (sslength ss1)
(setq ent (entget(ssname ss1 i)))
(setq pc (cdr(assoc 10 ent)))
(setq r (cdr(assoc 40 ent)))
(if (setq rl (cadr(assoc r cl)))
(command "TEXT" "MC" pc "" 0.0 (car rl))
)
; (if (and (setq rl (assoc r cl)) (> (cdr r1) 1))
; (command "TEXT" "J" "MC" pc "" 0.0 (ascii (+ (cdr rl) 40)))
; )
(setq i (1+ i))
)
))
(setvar "OSMODE" oldos)
(setvar "CMDECHO" 1)
(princ)
)
本帖最后由 【KAIXIN】 于 2013-5-25 12:35 编辑
本帖最后由 【KAIXIN】 于 2013-5-25 12:37 编辑
H F
页:
[1]
2