求助!用lisp如何实现进入选择的视口内
请教一下论坛的各位大神们、如何lisp进入到选中的视口内(if (setq E (entsel))
(progn
(command "_.MSPACE")
(setvar 'CVPORT (cdr (assoc 69 (entget (car E)))))
)
)
这是之前一个大神给出的方法、但是如果循环进入选中的每个视口中、
偶尔会出现报错的情况、报错内容是无法设置CVPORT的值、
所以想请教一下各位有没有其他方法可以进入选中的视口
①输入to→自定义用户界面→键盘快捷键→快捷键,自定义键如Shift+Z,在宏里面输入
$M=$(if,$(=,$(getvar,CVPORT),1),^C^C_VPMAX,^C^C_VPMIN)
②鼠标选择某视口后,配合Shift+Z,可以快速切换进入视口或退出。
同理,自定义键如Shift+A,在宏里面输入
^P'_.TILEMODE $M=$(if,$(eq,$(getvar,TILEMODE),0),1,0)
反复按Shift+A,可以快速切换模型或布局。
很多键盘命令还可以转换成键盘快捷键,日积月累后,也可以保存为.cuix文件,重复使用。
例如 F4两点中点F5自…
当然也可以用autolisp加载.cuix文件
(vla-load(vla-get-MenuGroups (vlax-get-acad-object)) fname.cuix) G〆h 发表于 2022-3-14 23:14
①输入to→自定义用户界面→键盘快捷键→快捷键,自定义键如Shift+Z,在宏里面输入
$M=$(if,$(=,$(getvar, ...
谢谢、之前报错的原因找到了、还是用之前的代码更直接点 xiaocainiao 发表于 2022-3-16 17:11
谢谢、之前报错的原因找到了、还是用之前的代码更直接点
楼主,这个问题咋解决的,分享一下,谢谢!! tfanghui 发表于 2022-8-26 16:52
楼主,这个问题咋解决的,分享一下,谢谢!!
就是用Z+O的形式先让视口在屏幕中全部显示、然后再循环进入就行了 xiaocainiao 发表于 2022-8-28 12:02
就是用Z+O的形式先让视口在屏幕中全部显示、然后再循环进入就行了
上面的代码只能是偶尔可以正常运行咯, tfanghui 发表于 2022-8-28 12:17
上面的代码只能是偶尔可以正常运行咯,
上面的代码是没问题的、可以一直运行、但是我的问题是循环多个视口、代码只是一个视口 G〆h 发表于 2022-3-14 23:14
①输入to→自定义用户界面→键盘快捷键→快捷键,自定义键如Shift+Z,在宏里面输入
$M=$(if,$(=,$(getvar, ...
这个思路很有意思
页:
[1]