马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
原贴内容:关于给文字(单行/多行),尺寸标注加括号:
文件里有很多数字,单行多行都有,还有尺寸标注,比如:2000 ,3500,4500等,有没有那样的命令,不用自己编辑文字,一个一个的去加括号,把他们变成:(2000),(3500),(4500)等,还有<>中括号
斑竹,谢谢你的回复。这几个月一直在国外,没时间上来。
试了你的程序,情况如下
---------------------------------------
Command: test
Font not available.Unknown command "0". Press F1 for help.
Unknown command "1". Press F1 for help.
Unknown command "0". Press F1 for help.
Unknown command "TEST". Press F1 for help.
Unknown command "TEST". Press F1 for help.
---------------------------------------
另外,跟日文系统,cad版本没关系把?我用的是cad2005英文,系统是日文的。还有,能给尺寸标注批量加括号么?即等回复,再次谢谢
原贴连接 http://www.xdcad.net/forum/showt ... 3165749#post3165749
另外,下附两个程序,都能正常使用,能修改尺寸,能改单多行文字,但是各有优缺点:TF---尺寸内容修改后用不了,如--尺寸内容的<>去掉,换成4300时;TG---多行文字用不了;另外这两个命令都不能选择括号种类。

- [FONT=courier new]
- (defun C:tf (/ ENT HOLDECHO HOLDOSMODE I N SS)
- (vl-load-com)
- (if (setq ENT (ssget '((0 . "DIMENSION,*TEXT"))))
- (progn
- (setq HOLDECHO (getvar "CMDECHO"))
- (setvar "CMDECHO" 0)
- (setq HOLDOSMODE (getvar "OSMODE"))
- (setvar "OSMODE" 0)
- (setq N (sslength ENT)
- I 0
- )
- (while (< I N)
- (setq SS (vlax-ename->vla-object (ssname ENT I)))
- (cond
- ((wcmatch (vla-get-objectname SS) "*Dimension")
- (cond
- ((= (vla-get-textoverride SS) "")
- (vla-put-textoverride
- SS
- (strcat "(<>)")
- )
- )
- ((wcmatch (vla-get-textoverride SS) "*<>*")
- (vla-put-textoverride
- SS
- (strcat "(" (vla-get-textoverride SS) ")")
- )
- )
- (vla-put-textoverride
- SS
- (strcat "(" (rtos (vla-get-measurement SS) 2 2) ")")
- )
- )
- )
- (t
- (vla-put-textstring
- SS
- (strcat "(" (vla-get-textstring SS) ")")
- )
- )
- )
- (setq I (1+ I))
- )
- (setvar "OSMODE" HOLDOSMODE)
- (setvar "CMDECHO" HOLDECHO)
- )
- )
- (princ)
- )
- [/FONT]

- [FONT=courier new]
- (defun c:tg() ;(setq e (car((entsel))))
- (setq ss (ssget '((0 . "TEXT,DIMENSION")))
- i -1)
- (while (setq e (ssname ss (setq i (1+ i))))
- (setq obj (vlax-ename->vla-object e))
- (if (= "TEXT" (cdr(assoc 0 (entget e))))
- (vla-put-TextString obj (strcat "(" (vla-get-TextString obj)")"))
- (vla-put-Textoverride obj (strcat "(" (if(wcmatch (setq dimt (vla-get-textoverride obj)) "")"<>" dimt) ")"))
- )
- )(princ)
- )
- [/FONT]
|