请问:CAD模型空间 视图显示2~4个视口,能否让几个视口关联同时移动?
本帖最后由 nfr 于 2016-7-21 09:45 编辑避免误解,上cad图。谢谢帮忙
回答1、2、3,图框是Pl线,表示图形边界,各种比例,按缩放大小
4,各自显示的规律是焦点的不同,
视口a焦点是(0,0)视口b焦点是(10,0)
假设视口a是操作视口,
视口a 显示归档图1时 视口b显示归档图2
视口a 显示归档图1a时 视口b显示归档图2a
视口a 显示归档图2时, 视口b显示归档图2右移(10,0)的区域
沉得好快,没有高手来帮忙 模型空间能创建视口?你确定不是布局空间?把视口边线显示出来,一起选中不就可以一起移动了吗。或者把它们编成一个组。 chg 发表于 2016-6-30 12:45 static/image/common/back.gif
模型空间能创建视口?你确定不是布局空间?把视口边线显示出来,一起选中不就可以一起移动了吗。或者把它们 ...
回答错误!楼主是在模型空间操作的。 正好有同样的需要!
这个功能实际上就和EXCEL的分割窗口一样,有两个对象离很远,但又想离近点操作,在EXCEL里面就可以分割窗口,把左边的和上边的锁住,仅仅移动右和下边的。
highflybir版主写过类似的东西,能把打开的两张图呈现同时缩放的效果,实际上和你需要的这个很相似了,只不过它是两张图而已。
贴子在这里:
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=106978
你变通一下,把四个视口内的对象放到四张图上,估计就能用这个神器了!
GamIng 发表于 2016-6-30 14:22 static/image/common/back.gif
回答错误!楼主是在模型空间操作的。
确实回答错误了,我一般是在布局空间里开视口,调整视口比例来出图的,这种视口的用法几乎没用过,学习了。 非实时对焦的程序我做了一个
实时对焦的要用到反应器
因为视窗缩放太频繁
过于占用资源
而且个人感觉意义不大
所以没做
@masterlong
“masterlong”你好,能不能把你非实时对焦的程序分享一下,有时候真的很需要呢! ;;多视口对焦
(defun c:yy()
(setq cvp (getvar "cvport"))
(setq cvbox (viewbox))
(foreach vp (cdr (vports))
(setvar "cvport" (car vp))
(command "zoom" "w" "non" (car cvbox) "non" (cadr cvbox))
)
(setvar "cvport" cvp)
(princ)
)
;999返回当前视窗左下角和右上角 坐标
(defun viewbox(/ a b c d x)
(setq b (getvar "viewsize")
c (car (getvar "screensize"))
d (cadr (getvar "screensize"))
a (* b (/ c d))
x (setq x (getvar "viewctr"))
x (trans x 1 2)
c (list (- (car x) (/ a 2.0)) (- (cadr x) (/ b 2.0)) 0.0)
d (list (+ (car x) (/ a 2.0)) (+ (cadr x) (/ b 2.0)) 0.0)
c (trans c 2 1)
d (trans d 2 1)
)
(list c d)
) 本帖最后由 nfr 于 2016-7-1 15:10 编辑
masterlong 发表于 2016-7-1 14:15 static/image/common/back.gif
;;多视口对焦
(defun c:yy()
(setq cvp (getvar "cvport"))
谢谢masterlong帮忙,
我想要的不是所有视口显示同样的图。是每个视口的焦点不同。
例如: 4个视口时(4个焦点,红色坐标,最好可在图里面点选定义焦点):视口1显示(0,0)-(10000,10000)范围视口2显示(0,10000)-(10000,20000)
视口3显示(0,20000)-(10000,30000)范围视口4显示(0,30000)-(10000,40000)。
2个视口时(2个焦点,红色坐标,最好可在图里面点选定义焦点):视口1显示(0,0)-(10000,10000)范围视口2显示(0,10000)-(10000,20000)
页:
[1]
2