明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 942|回复: 6

[提问] 各位大神请问,是否可以写一个代码 一键锁定所有视口,谢谢

[复制链接]
发表于 2018-10-16 06:56 | 显示全部楼层 |阅读模式
如题
各位大神请问,是否可以写一个代码 一键锁定所有视口,谢谢!:P
发表于 2018-10-16 18:35 | 显示全部楼层
;全锁
(defun c:tt4 ()
(command "MVIEW" "l" "on" "all" "")
)
;全解锁
(defun c:tt5 ()
(command "MVIEW" "l" "off" "all" "")
)
回复 支持 1 反对 0

使用道具 举报

发表于 2018-10-16 09:47 | 显示全部楼层
(defun C:vpl (/ kw);;; Viewports lock-----VPL or unlock -----VPU
  (setq kw "LOCK")
  (vplocks kw)
  (Princ " the viewports have been locked")
  (princ)
)
(defun C:vpu (/ kw)
  (setq kw "UNLOCK")
  (vplocks kw)
  (Princ " the viewports have been unlocked")
  (princ)
)
(defun vpLocks (kw / kval doc adoc lao cnt inc cvprt blk pw)
  (vl-load-com)
  (if (= kw "LOCK")
    (setq kval :vlax-true)
    (if        (= kw "UNLOCK")
      (setq kval :vlax-false)
    )
  )
  (setq        doc  (vlax-get-object "AutoCad.Application")
        adoc (vla-get-ActiveDocument doc)
        lao  (vla-get-Layouts adoc)
        cnt  (vla-get-Count lao)
        inc  0
  )
  (repeat cnt
    (setq cvprt        (vla-Item lao inc)
          inc        (+ inc 1)
          blk        (vla-get-Block cvprt)
    )
    (vlax-for itm blk
      (if
        (vlax-property-available-p itm 'DisplayLocked)
         (progn
           (vla-put-DisplayLocked itm kval)
           (vla-update itm)
         )
      )
    )
  )

  (princ)
)
发表于 2018-10-16 12:26 | 显示全部楼层
  1. (defun C:mvlo()

  2.     (progn

  3.         (command "mview" "l" "on")

  4.     )

  5. )

发表于 2018-10-19 18:54 来自手机 | 显示全部楼层
没测试,看上去还是command简洁,这个好。
发表于 2022-3-21 22:58 | 显示全部楼层
收下了,说不定用的上。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-25 09:36 , Processed in 0.218086 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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