乐筑天下

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

[编程交流] ssget筛选器问题

[复制链接]
hei

2

主题

6

帖子

4

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 18:34:32 | 显示全部楼层 |阅读模式
问候语。
 
我对整个autolisp世界(或编程)都是新手
 
无论如何,我想做的是:
 
一种根据一组过滤器来突发块的命令。
 
这是我的密码:
 
  1. (defun c:ppx ( / p )
  2. (setq p (ssget '((0 . "INSERT") (-4 . "<OR") (2 . "S??A") (2 . "S??B") (-4 . "OR>"))))
  3. (if (/= p nil)
  4. (progn
  5. (sssetfirst nil p)
  6. (c:burst)
  7. )
  8. (progn
  9. (princ "\n¡No más elementos!")(princ)
  10. )
  11. )
  12. (princ "\nFinalizado.")(princ)
  13. )

 
附加文件包含我打算使用此命令的几个块。
 
如果对其进行测试,您将看到命名为S12A和S12B的块被正确选择,但附件中包含的所有其他块都没有被正确选择。
 
所以我想知道是否有人可以帮我看看我是否遗漏了其他块上的任何内容,或者解释为什么过滤器没有考虑其他块,或者我是否做错了什么。
 
提前谢谢
测验图纸
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 18:38:46 | 显示全部楼层
图形中的块是动态的,因此,将自动创建新的匿名块定义,并使用一组不同的动态块参数值为每个块参照参照参照。
 
有多种方法可以在选择中包括适当的匿名块引用,您采用的方法可能取决于程序是完全自动的还是提示用户选择要处理的块引用。我在“获取匿名引用”函数的描述中描述了各种方法并提供了示例。
 
对于您的任务,我还建议使用LM:Burst函数(可能直接随选择集提供),因为该函数的执行速度远高于标准的Burst命令,并且还将排除不可见的属性。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 18:43:01 | 显示全部楼层
对于您的特定任务,我调整了LM:getanonymousreferences函数以允许通配符参数,这意味着代码可以是:
我将很快更新我网站上的功能。
回复

使用道具 举报

hei

2

主题

6

帖子

4

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-5 18:47:39 | 显示全部楼层
哇!谢谢!工作完美!
 
只是一个附带的问题:这些额外的块是否命名为像*U之类的东西?
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 18:51:22 | 显示全部楼层
 
太好了-不客气!
 
 
确实如此-您可以使用AutoCAD LIST命令查看块名。
回复

使用道具 举报

36

主题

161

帖子

125

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
182
发表于 2022-7-5 18:53:48 | 显示全部楼层
嗨,李
  1. Command: (setq obj (vlax-ename->vla-object (car (entsel "\nSelect Block: "))))
  2. Select Block: #<VLA-OBJECT IAcadBlockReference 0b68d8d4>

 
我用你的Dy块函数。
  1. (LM:getvisibilityparametername obj)

我得到:开关符号
 
 
开关符号具有更高的可见性状态{开关类型1、开关类型2、开关类型3、开关类型4)
 
  1. (setq blkvb (LM:getvisibilitystate obj))

 
我得到:“swith type2”
 
我想要得到VS“swith type2”中的所有实体,而不是Dy块中的所有实体。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 18:57:29 | 显示全部楼层
 
为了确认,您希望仅获取块定义中的实体,这些实体在设置可见性状态“switch type2”时显示?
回复

使用道具 举报

36

主题

161

帖子

125

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
182
发表于 2022-7-5 19:02:11 | 显示全部楼层
 
是的,李。就是这样。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 19:04:44 | 显示全部楼层
 
[列表]
  • 插入动态块的临时参考。
  • 将可见性状态参数设置为“switch type2”。
  • 检索临时引用的匿名块名。
  • 迭代匿名块的定义。
    [/列表]
  • 回复

    使用道具 举报

    36

    主题

    161

    帖子

    125

    银币

    初露锋芒

    Rank: 3Rank: 3Rank: 3

    铜币
    182
    发表于 2022-7-5 19:09:44 | 显示全部楼层
     
    谢谢李,你的意思是:每个实体都是匿名区块?
    回复

    使用道具 举报

    发表回复

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

    本版积分规则

    • 微信公众平台

    • 扫描访问手机版

    • 点击图片下载手机App

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

    GMT+8, 2025-3-12 13:41 , Processed in 0.411791 second(s), 72 queries .

    © 2020-2025 乐筑天下

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