问题是这样的,Solidworks出图后,然后要转成DWG的,。转图后,由于是软件之间的转换,转成CAD之后,如果后面一修改的话,所有尺寸的位置就跑到尺寸线的下面了,所以现在我想写一个小程序,只要输入一个命令,就把所有的标注样式里面要改的内容一次性全部修改过来。但是写出来后,执行命令,只能对最后一个表达式有用,也就是说,前面的改过来后,因为并不是修改了样式本身,而是增加了一个替换样式,执行到下面一个,置为当前后,前面一个样式就还原了,所以想请教大家,用什么函数可以得到我想要的结果,谢谢了! 下面是代码: (defun c:tt(/ oldecho ) (setq oldecho (getvar "cmdecho")) (setvar "cmdecho" 0) (setq dim1 (tblsearch "dimstyle" "SLDDIMSTYLE0")) ;搜索样式 (if ( = dim1 ) (progn (command "-dimstyle" "r" "SLDDIMSTYLE0" ) ;置为当前 (command "-dimstyle" "r" "slddimstyle0" "dimtad" 1) ;要修改的变量 ) ) (setq dim2 (tblsearch "dimstyle" "SLDDIMSTYLE1")) (if ( = dim2 ) (progn (setq dim3 (getvar "diamtad")); ) ) ;(setvar "cmdecho" oldecho) (princ) ) |