乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 98|回复: 3

[编程交流] 本人';m搜索lisp到s

[复制链接]

1

主题

4

帖子

3

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 15:49:42 | 显示全部楼层 |阅读模式
你好
嗯,我在几层楼工作,我们有一栋公寓楼,
在每个公寓里,我们有很多街区,比如“床”,
我想一次选择所有的床来更改这个块的层,我不想进入edit_块来更改线的层,但以将块“床”设置为层“mobilier”为例,
按名称选择的过滤器无法将块识别为块,qselection也无法识别。
 
我希望有人能帮我,
谢谢
 
这是我的第一个帖子,我不经常说英语,所以我很抱歉我的错误。。。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 16:26:27 | 显示全部楼层
假设我已经理解了要求,下面是一个快速的Vanilla AutoLISP解决方案供您尝试:
  1. (defun c:nestblocklayer ( / blk def ent enx lay )
  2.    (setq blk "bed"      ;; Nested block name
  3.          lay "mobilier" ;; New layer for nested blocks
  4.          blk (strcase blk)
  5.    )
  6.    (while (setq def (tblnext "block" (not def)))
  7.        (setq ent (tblobjname "block" (cdr (assoc 2 def))))
  8.        (while (setq ent (entnext ent))
  9.            (if
  10.                (and
  11.                    (setq enx (entget ent))
  12.                    (= "INSERT" (cdr (assoc 0 enx)))
  13.                    (= blk (strcase (cdr (assoc 2 enx))))
  14.                )
  15.                (entmod (subst (cons 8 lay) (assoc 8 enx) enx))
  16.            )
  17.        )
  18.    )
  19.    (command "_.regenall")
  20.    (princ)
  21. )
回复

使用道具 举报

1

主题

4

帖子

3

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 16:31:14 | 显示全部楼层
谢谢李的回答,但它似乎不起作用,
为了确保lisp文件和我需要的情况,
如果只有一个块和一个层,我不会使用lisp,但我需要很好地组织好几个块和几个文件,并且有很多明显的现象:极客:
我得到了什么。图纸
我需要什么。图纸
lisp lee mac mobilier。lsp
回复

使用道具 举报

1

主题

4

帖子

3

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 16:50:18 | 显示全部楼层
对不起,我周五晚上试过了,我结束了,效果很好,非常感谢李,
你是最棒的!
我正在你的网站上寻找有效的名字lisp,所以我可以选择我的所有动态块了!我希望,我可以选择区块以及与它!
非常感谢!
 
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-14 13:06 , Processed in 0.873696 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表