明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2150|回复: 8

[源码] [详细注释]使用CTAB系统变量和layoutlist函数完成模型、布局空间切换

  [复制链接]
发表于 2015-4-23 14:52 | 显示全部楼层 |阅读模式
本帖最后由 brbright 于 2015-4-23 14:56 编辑

源码我是从国外的论坛找到的,注释是我个人编写的,在这里和大家一起分享。

;;;;使用CTAB系统变量和layoutlist函数完成模型、布局空间切换

;;;;以所有布局(layout)空间中的视窗全锁全开为例
;;--------------------------------------------------------

;;视窗全锁MVLO
(defun c:MVLO (/ THISTAB VPLST)
  ;;储存当前空间名,若为模型空间,返回"Model"。
  ;;用于程序结束时返回当前空间。
  (setq THISTAB (getvar "CTAB"))
  ;;使用layoutlis函数返回所有布局名称列表,然后使用foreach对每一个布局(储存在LAYOUT变量)进行操作
  (foreach LAYOUT (layoutlist)
    ;;切换布局,分别切换每一个布局名
    (setvar "CTAB" LAYOUT)
    ;;获得切换后布局中所有的视窗
    (setq vplst (ssget "x" (list (cons 0 "viewport"))))
    ;;调用mview命令锁定所有视窗
    (command "mview" "LOCK" "on" VPLST "")
  )
  ;;返回程序开始前的空间。
  (setvar "CTAB" THISTAB)
  (princ)
)

;;视窗全开MVUL
;;程序注释请参照MVLO,仅调用mview时有变化
(defun c:MVU (/ THISTAB VPLST)
  (setq THISTAB (getvar "CTAB"))
  (foreach LAYOUT (layoutlist)
    (setvar "CTAB" LAYOUT)
    (setq vplst (ssget "x" (list (cons 0 "viewport"))))
    (command "mview" "LOCK" "off" VPLST "")
  )
  (setvar "CTAB" THISTAB)
  (princ)
)

本帖子中包含更多资源

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

x

评分

参与人数 1明经币 +1 金钱 +10 收起 理由
wayne_myles + 1 + 10 很给力!

查看全部评分

发表于 2015-4-24 07:53 | 显示全部楼层
支持楼主!!!
发表于 2015-4-24 12:11 | 显示全部楼层
不知道具体有什么作用
发表于 2015-4-24 12:20 | 显示全部楼层
支持源码
发表于 2015-7-27 21:20 | 显示全部楼层
大力支持!!!!
发表于 2020-11-20 15:13 | 显示全部楼层
感谢源码,急需呀!
发表于 2022-9-27 22:43 | 显示全部楼层
谢谢大神啊
发表于 2022-11-18 07:45 | 显示全部楼层
感谢感谢,太方便了!
发表于 2023-4-28 19:40 | 显示全部楼层
牛的,感谢大表哥分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-4 08:51 , Processed in 0.227386 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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