happysheep 发表于 2014-2-26 17:03:20

怎样记录之前的图层信息

看到一个插件,功能是这样的:

除了选定对象所在的图层外,锁定所有其他图层,把所有其他图层的颜色都改为灰色。
再次运行命令时,如果什么都没选,则会将所有灰色的图层都改为原来的颜色。

问题是,程序里面是怎样记录之前的图层颜色设定的,有什么特别的变量会保存在图形文件里吗?

谢谢诸位



masterlong 发表于 2014-2-26 17:08:50

命令-layer选项A

happysheep 发表于 2014-2-26 18:10:33

masterlong 发表于 2014-2-26 17:08 static/image/common/back.gif
命令-layer选项A

如果不用command命令的话,如何实现这个功能呢

自贡黄明儒 发表于 2014-2-26 18:10:40

这个G版有,而且与众不同

q3_2006 发表于 2014-2-26 18:48:32

自贡黄明儒 发表于 2014-2-26 18:10 static/image/common/back.gif
这个G版有,而且与众不同

没找到...拜托黄工能转下源码,谢谢!

自贡黄明儒 发表于 2014-2-27 09:06:54

q3_2006 发表于 2014-2-26 18:48 static/image/common/back.gif
没找到...拜托黄工能转下源码,谢谢!

1 这个一般人想到的是command layer
2 修改组码
3 (acet-layerp-mode)见明经通道和caoyin推荐
4 highflybir用的vla- ,所以我一直用他的程序
5 G版的出现在他的程序中,看起来很不错,但我没有实践过。如果G版有空,有兴趣,他来回答是最合适了

q3_2006 发表于 2014-2-27 09:42:19

自贡黄明儒 发表于 2014-2-27 09:06 static/image/common/back.gif
1 这个一般人想到的是command layer
2 修改组码
3 (acet-layerp-mode)见明经通道和caoyin推荐


新手,没用过.....想了解下......

happysheep 发表于 2014-3-1 11:07:29

自贡黄明儒 发表于 2014-2-27 09:06 static/image/common/back.gif
1 这个一般人想到的是command layer
2 修改组码
3 (acet-layerp-mode)见明经通道和caoyin推荐


能给下高飞鸟和G版程序的链接吗?

happysheep 发表于 2014-3-1 11:31:13

自贡黄明儒 发表于 2014-2-27 09:06 static/image/common/back.gif
1 这个一般人想到的是command layer
2 修改组码
3 (acet-layerp-mode)见明经通道和caoyin推荐


我找到了一段代码如下,这个代码在cad里执行就会返回nil,不知道为什么(defun c:ccc()
(vl-load-com)
(vlax-for Blk (vla-get-Blocks
    (vla-get-ActiveDocument
      (vlax-get-Acad-Object)
    )
)
    (vlax-for Obj Blk
      (vla-put-Color Obj 256)    ;256随层
      (if (= (vla-get-ObjectName Obj) "AcDbBlockReference")
        (foreach Att (vlax-invoke Obj 'GetAttributes)
           (vla-put-Color Att 256);256随层
        )
      )
    )
)
)
页: [1]
查看完整版本: 怎样记录之前的图层信息