![]() |
用vba如何复选insert命令中的“在屏幕上指定”复选框?
用vba如何复选insert命令中的“在屏幕上指定”复选框?
www.dimcax.com 用vba如何复选insert命令中的“在屏幕上指定”复选框? 如题 att 好像不容易实现 你做的工作时插入块,根本不需要调用cad命令,反而低效了。调用插入块函数,其中有个插入点参数,采取屏幕取点的方法,等同实现“在屏幕指定” 用-insert命令 在insert前加一个减号,就可输入参数了 我的情况是:块的位置水平,插入后需要旋转,而旋转角度未知(但块上有两个固定点位置已知),我使用旋转角度在屏幕上指定,就可以一次旋转到位,不知道这样是不是更土了。。。。 ms:有很多这样的块,这样是不是需要每个插入都需要和人交互?那就更麻烦了,有没有其他好办法?谢谢! 就用-insert命令就可以实现 注意命令后面要带参数 旋转角度未知,即旋转角度事先不确定,如果用户不干预怎么解决呢?除非你找到了它的规律,然后再赋以该规律让程序自动判断 你可以利用程序确定块其中一点的位置,然后计算出两点连线到水平线的夹角,再旋转该角度,即可保持两点重合了 利用函数 thisdrawing.utility.anglefromxaxis (defun c:huu( / strtemp point) (setvar "cmdecho" 0) (if (= strname1 nil) (setq strname1 "")) (setq strtemp (getstring (strcat "\n请输入型号<" strname1 ">:"))) (if (= strtemp "") (if (= strname1 "") (quit) ) (setq strname1 strtemp) ) (setq point (getpoint "请选择插入点:")) (if (= point "") (quit)) (command "-insert" (strcat strname1 ".dwg") point "1" "1" pause "explode" "l") (princ) ) (command "-vbarun" "changetext.dvb!module1.joining" "-insert" "joining" "s" "1") 可用vba宏changetext.dvb!module1.joining创建块 |
所有的时间均为北京时间。 现在的时间是 11:27 PM. |