明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 664571221

[提问] 如下程序,目的是删除除你好* 和我好*图层以外的所有图层上的图元,如何修改

[复制链接]
发表于 2018-10-7 10:48 | 显示全部楼层
看看你自己的标题,自己的问题首先要问清楚了
 楼主| 发表于 2018-10-7 10:52 | 显示全部楼层
fangmin723 发表于 2018-10-7 10:48
看看你自己的标题,自己的问题首先要问清楚了

我修改一下,大神帮帮我
发表于 2018-10-7 11:22 来自手机 | 显示全部楼层
(defun c:xx ( / ss)   (if (setq ss (ssget "X" (list  '(8 . "你好*,我好*"))))     (command ".erase" "all" "r" ss)
发表于 2018-10-7 11:34 | 显示全部楼层
要么用楼上的:(command ".erase" "all" "r" ss)
要么用 (setq ss (ssget '((-4 . "<and") (8 . "~你好*") (8 . "~我好*") (-4 . "and>"))))
 楼主| 发表于 2018-10-7 14:47 | 显示全部楼层
852456 发表于 2018-10-7 11:22
(defun c:xx ( / ss)   (if (setq ss (ssget "X" (list  '(8 . "你好*,我好*"))))     (command ".erase" " ...

提示输入的列表有缺陷
 楼主| 发表于 2018-10-7 14:49 | 显示全部楼层
852456 发表于 2018-10-7 11:22
(defun c:xx ( / ss)   (if (setq ss (ssget "X" (list  '(8 . "你好*,我好*"))))     (command ".erase" " ...

可以了少了个括号,谢谢你
 楼主| 发表于 2018-10-7 15:00 | 显示全部楼层
fangmin723 发表于 2018-10-7 11:34
要么用楼上的:(command ".erase" "all" "r" ss)
要么用 (setq ss (ssget '((-4 . ""))))

你好 你的程序很不错谢谢你
发表于 2018-10-8 14:36 | 显示全部楼层

(setq ss (ssget    "x"     (list '(-4 . "<or")
                                        (cons 8 "你好")
                                        (cons 8 "我好")
                                         '(-4 . "or>")
                                 )
            )
);先选出“你好”和“我好”图层图元
(command ".select" "all" "r" ss "");再反选图元
(command ".erase"  "");最后删除

点评

你好提示有多余的括号  发表于 2018-10-25 14:52
发表于 2018-10-9 11:00 | 显示全部楼层
能否变成多用的?选取只保留所选对象的图层,删去其余的图层?
发表于 2020-10-23 16:32 | 显示全部楼层
@辰雨@ 发表于 2018-10-8 14:36
(setq ss (ssget    "x"     (list '(-4 . "")
                                 )
            )

使用编辑器查看下括号的中英文,全角的都改半角就行
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-27 06:04 , Processed in 0.166705 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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