土木在线论坛 \ 建筑设计 \ CAD下载及教程 \ 求一个cad lisp命令

求一个cad lisp命令

发布于:2011-05-10 10:36:10 来自:建筑设计/CAD下载及教程 [复制转发]
我有4个问题
请高手一一解答
1.请帮我翻译下面一串代码的意思,每句都要。
(defun c:1()
(setq gb (getvar "cmdecho"))
(setvar "cmdecho" 0)
(princ "锁定选择物体的图层: ")
(setq s0 (ssget))
(setq i 0)
(while (ssname s0 i)
(setq laname (cdr (assoc 8 (entget (ssname s0 i)))))
(command "layer" "lo" laname "" )
(setq i (1+ i))
)
(setvar "cmdecho" gb))

2.我自己写了一个代码,但是好像不对,请帮我看一下。
(defun c:89()
(setq gb (getvar "cmdecho"))
(setvar "cmdecho" 0)
(princ "解锁选择物体的图层: ")
(setq s0 (ssget))
(setq i 0)
(while (ssname s0 i)
(setq laname (cdr (assoc 8 (entget (ssname s0 i)))))
(command "vplayer" "f" laname "" )
(setq i (1+ i))
)
(setvar "cmdecho" gb))

3.根据2提出来的问题,我想求一个cad冻结视口的lisp命令,效果要和vplayer 然后选择f的命令效果一样。

4.cad 模型空间和图纸空间来回切换是通过TILEMODE变量1或者0实现的,想求一个lisp代码,只需一个命令就可以来回切换他们。
  • honker1981
    honker1981 沙发
    (defun c:1()
    (setq gb (getvar "cmdecho")) ;获得CMDECHO 变量值
    (setvar "cmdecho" 0) ;关闭回显
    (princ "锁定选择物体的图层: ")
    (setq s0 (ssget)) ;选择对象
    (setq i 0)
    (while (ssname s0 i) ;循环,逐个处理选择集内容
    (setq laname (cdr (assoc 8 (entget (ssname s0 i))))) ;获得图层名称
    (command "layer" "lo" laname "" ) ;锁定图层
    (setq i (1+ i))
    )
    (setvar "cmdecho" gb)) ;恢复CMDECHO 变量值
    2011-05-10 22:29:10

    回复 举报
    赞同0
这个家伙什么也没有留下。。。

CAD下载及教程

返回版块

52.08 万条内容 · 666 人订阅

猜你喜欢

阅读下一篇

鸿业8.0for2007-2010破解

鸿业8.0破解,适合cad2007-2010本人试用,不错,到官网下鸿业暖通8.0安装单机版。就可以破解了。

回帖成功

经验值 +10