Jakub 发表于 2022-7-5 18:35:43

按名称选择图层

你好
 
我正在搜索一个lisp,它根据层的名称选择层。例如,我给出了一些名称:
 
AAA\u BBB\u xxx
AAA\u BBB\u xxy
AAA\u BBB\u xyz
 
我需要选择所有名称以AAA_BBB开头的层。名称的第三部分正在更改。在这种情况下,我只想选择名称为AAA_BBB的层。我该怎么做?
 
感谢您提前提出建议。
雅库布

Tharwat 发表于 2022-7-5 19:06:22

尝试
 
(setq sel (ssget "_:L" '((8 . "AAA_BBB*"))))

BIGAL 发表于 2022-7-5 19:16:52

你需要Lisp程序吗?
 
过滤器,选择对象,编辑层名称,AAA\u BBB*选择所有以AAA\u BBB开头的层

BIGAL 发表于 2022-7-5 19:38:24

第二个建议选择对象,然后为其7个以上的子字符串选择“要匹配的字符数”,然后使用Tharwats建议。
 
; bit rough but for testing
(setq obj (vlax-ename->vla-object (car (entsel))))
(setq lay (vla-get-layer obj) )
(alert (strcat "You have picked layer " lay "Enter number of characters next step"))
(setq num ("Enter number of characters"))
(setq str (strcat (substr lay 1 num) "*" ))
(setq sel (ssget "_:L" (list (cons 8 str))))
页: [1]
查看完整版本: 按名称选择图层