明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: janson78

视口 "cvport" 出错

  [复制链接]
发表于 2008-9-12 16:22:00 | 显示全部楼层
你两个视口重合在一起(其中一个隐藏,一个显示被关闭)
发表于 2008-9-15 09:42:00 | 显示全部楼层
  1. (defun C:TT (/ N SS W69)
  2.   (setq SS (ssget "x"
  3.     (list '(0 . "VIEWPORT") (cons 410 (getvar "CTAB")))
  4.     )
  5.   )
  6.   (command ".MSPACE")
  7.   (setq N 0)
  8.   (repeat (sslength SS)
  9.     (setq W69 (cdr (assoc 69 (entget (ssname SS N)))))
  10.     (if (and (/= W69 1) (/= W69 0))
  11.       (setvar "CVPORT" W69)
  12.     )
  13.     (setq N (1+ N))
  14.   )
  15.   (princ)
  16. )
 楼主| 发表于 2008-9-16 09:23:00 | 显示全部楼层

中秋放假了....

先祝各位节日快乐!

TO caoyin:  请问你一下,你用哪个命令看到两个视口重合的呢? 我只看到一个隐藏的视口的层.

TO 龙龙仔: 你的命令我试了一下,好象还是不行啊, 当前的 w69=14, 你的判断是 (and(/= W69 1) (/= W69 0)))

           满足你的判断,但是  (setvar "CVPORT" W69);   也就是 (setvar "CVPORT" 14)  还是显示出错啊
          

 能帮我再看看么...

  多谢了!!

发表于 2008-9-16 09:45:00 | 显示全部楼层

你的视口上有3个对象

1个是多段线

2个是视口,在隐藏的图层 Defpoints 上,其中一个视口显示被关闭

发表于 2008-9-16 09:58:00 | 显示全部楼层

将龙版的代码修改如下

(defun C:TT (/ N SS ENT W68 W69)
   (setq SS (ssget "x" (list '(0 . "VIEWPORT") (cons 410 (getvar "CTAB")))))
   (command ".MSPACE")
   (setq N 0)
   (repeat (sslength SS)
     (setq ENT (entget (ssname SS N)))
     (setq W68 (cdr (assoc 68 ENT)))
     (setq W69 (cdr (assoc 69 ENT)))
     (if (and (> W68 0) (/= W69 1) (/= W69 0));;判断视口是否打开,楼主最好再自己添加一个是否锁定判断
       (setvar "CVPORT" W69)
     )
     (setq N (1+ N))
   )
   (princ)
)

 楼主| 发表于 2008-9-16 12:59:00 | 显示全部楼层

十分感谢,问题好象已经解决了,程序运行正常

我再理解一下W68的涵义

再次感谢caoyin和龙龙仔

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

本版积分规则

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

GMT+8, 2025-6-18 14:22 , Processed in 0.170931 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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