明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3160|回复: 18

[已解答] 请问:CAD模型空间 视图显示2~4个视口,能否让几个视口关联同时移动?

[复制链接]
发表于 2016-6-30 11:43:34 | 显示全部楼层 |阅读模式
5明经币
本帖最后由 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)的区域

附件: 您需要 登录 才可以下载或查看,没有账号?注册

最佳答案

查看完整内容

沉得好快,没有高手来帮忙
发表于 2016-6-30 11:43:35 | 显示全部楼层
沉得好快,没有高手来帮忙
回复

使用道具 举报

发表于 2016-6-30 12:45:00 | 显示全部楼层
模型空间能创建视口?你确定不是布局空间?把视口边线显示出来,一起选中不就可以一起移动了吗。或者把它们编成一个组。
回复

使用道具 举报

发表于 2016-6-30 14:22:38 | 显示全部楼层
chg 发表于 2016-6-30 12:45
模型空间能创建视口?你确定不是布局空间?把视口边线显示出来,一起选中不就可以一起移动了吗。或者把它们 ...

回答错误!楼主是在模型空间操作的。
回复

使用道具 举报

发表于 2016-6-30 20:12:37 | 显示全部楼层
正好有同样的需要!

这个功能实际上就和EXCEL的分割窗口一样,有两个对象离很远,但又想离近点操作,在EXCEL里面就可以分割窗口,把左边的和上边的锁住,仅仅移动右和下边的。

highflybir版主写过类似的东西,能把打开的两张图呈现同时缩放的效果,实际上和你需要的这个很相似了,只不过它是两张图而已。

贴子在这里:
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=106978

你变通一下,把四个视口内的对象放到四张图上,估计就能用这个神器了!


回复

使用道具 举报

发表于 2016-7-1 12:57:54 | 显示全部楼层
GamIng 发表于 2016-6-30 14:22
回答错误!楼主是在模型空间操作的。

确实回答错误了,我一般是在布局空间里开视口,调整视口比例来出图的,这种视口的用法几乎没用过,学习了。
回复

使用道具 举报

发表于 2016-7-1 13:28:27 来自手机 | 显示全部楼层
非实时对焦的程序我做了一个
实时对焦的要用到反应器
因为视窗缩放太频繁
过于占用资源
而且个人感觉意义不大
所以没做
回复

使用道具 举报

发表于 2016-7-1 13:55:54 | 显示全部楼层
@masterlong

“masterlong”你好,能不能把你非实时对焦的程序分享一下,有时候真的很需要呢!
回复

使用道具 举报

发表于 2016-7-1 14:15:57 | 显示全部楼层
;;多视口对焦
(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)
)
回复

使用道具 举报

 楼主| 发表于 2016-7-1 14:46:47 | 显示全部楼层
本帖最后由 nfr 于 2016-7-1 15:10 编辑
masterlong 发表于 2016-7-1 14:15
;;多视口对焦
(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)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-23 15:20 , Processed in 0.175653 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表