明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 494|回复: 5

[讨论] 请问cad如何保存当前图层锁定,冻结状态(但是不包含图层颜色)

[复制链接]
发表于 2024-7-4 17:29:42 | 显示全部楼层 |阅读模式
请问lisp如何保存当前锁定,冻结状态(但是不包含图层颜色,线型)

希望直接拖进去直接改一样的冻结锁定状态,
图纸图层一样,但是图纸颜色,线型不一样。
发表于 2024-7-4 19:24:07 | 显示全部楼层

图层状态管理器 命令: layersettings  或 layerstate
善用输入输出


本帖子中包含更多资源

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

x
回复 支持 1 反对 0

使用道具 举报

发表于 2024-7-4 17:59:40 | 显示全部楼层
本帖最后由 你有种再说一遍 于 2024-7-4 18:01 编辑

没啥好讨论的吧,做不就得了...你也没提问啊?
用vla-get遍历图层表,获取图层表记录,然后读取它的状态咯

然后vla-put设置咯
 楼主| 发表于 2024-7-5 09:16:50 | 显示全部楼层
vitalgg 发表于 2024-7-4 19:24
图层状态管理器 命令: layersettings  或 layerstate
善用输入输出

明白了谢谢。
 楼主| 发表于 2024-7-5 09:29:59 | 显示全部楼层
你有种再说一遍 发表于 2024-7-4 17:59
没啥好讨论的吧,做不就得了...你也没提问啊?
用vla-get遍历图层表,获取图层表记录,然后读取它的状态咯

这是问ai的,但是代码提示语法错误,请问错在哪里?
(defun get-layer-states ()
;"获取所有图层的锁定状态"
  (setq layer-states '())
  (foreach layer (tblnames "LAYER")
    (setq layer-states (cons (list layer (tblsearch "LAYER" layer) (getvar "CLAYER"))) layer-states))
  layer-states
)

(defun restore-layer-states (layer-states)
;  "恢复图层的锁定状态"
  (foreach state layer-states
    (setvar "CLAYER" (car state))
    (command "_.LAYER" "_SET" (car state) "")
    (command "_.LAYER" "_LOCK" (cadr state) "")
  )
)
发表于 2024-7-5 14:37:16 | 显示全部楼层
目前AI的lisp代码基本上是一种看起来不错,但仔细看一下,就问题一堆的状态。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 14:37 , Processed in 0.156454 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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