明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: peraperson

[提问] 请问如何在if语句中并列多个判断值

[复制链接]
发表于 2013-12-13 10:36:01 | 显示全部楼层
llsheng_73 发表于 2013-12-13 10:17
;;'("a" "b" "c" "d")这一部分你可以自己定义一个图层名表
;;比如你选了一堆东东得到一个选择集S,通过 ...

这应该是正解,我被他绕糊涂了。
发表于 2013-12-13 10:48:16 | 显示全部楼层
ll_j 发表于 2013-12-12 16:05
(setq lan(cdr (assoc 8 endata)))
(if (or (= lan "a")
         (= lan "b")

又学了招,以前没注意这个函数:member
发表于 2013-12-13 10:56:46 | 显示全部楼层
本帖最后由 llsheng_73 于 2013-12-13 11:04 编辑
Andyhon 发表于 2013-12-13 10:27
试试 (ssget '((8 . "[a-d]")))
详情 得究 WcMatch 的帮助


刚才学了下Andyhon长老的写法,没学会,只好变了一下
(setq s(ssget"X" '((8 . "图层1,道路,JZD,JMD,TK"))))
虽然长老的写法没学会,倒也是不用(-4 . "<or")了
 楼主| 发表于 2013-12-13 11:19:58 | 显示全部楼层
llsheng_73 发表于 2013-12-13 10:17
;;'("a" "b" "c" "d")这一部分你可以自己定义一个图层名表
;;比如你选了一堆东东得到一个选择集S,通过 ...

谢谢llsheng兄 我的要求又提高了 如果我想在其他图中也记住这些图层名表呢? 就是我在第一张图已经框选了这些元素了 那么我希望在新打开的图中执行该命令时不用再去框选(因为图太多了 )直接调用ls 请问有什么方法? 万分感谢
 楼主| 发表于 2013-12-13 11:22:30 | 显示全部楼层
Andyhon 发表于 2013-12-13 10:27
试试 (ssget '((8 . "[a-d]")))
详情 得究 WcMatch 的帮助

恩恩 谢谢 这种方法我用过 但是我希望的是对不同的图层的元素做不同的处理 (就是abcd做一种处理,ef一种 。。。)按这种方法的话好像要ssget好多次?
发表于 2013-12-13 11:52:40 | 显示全部楼层
peraperson 发表于 2013-12-13 11:19
谢谢llsheng兄 我的要求又提高了  如果我想在其他图中也记住这些图层名表呢? 就是我在第一张图已经 ...

建立一个文件把它们记录下来,每次打开如果找不到那个文件或者文件内容为空,就要求你去框选一堆东东,得到它们的图层后写入那个文件,如果文件存在并且能读到那些代表的图层就直接把它们弄到图层列表ls里边,别的方法我想不到,因为我假定你的图是一个一个开的
 楼主| 发表于 2013-12-13 11:58:17 | 显示全部楼层
llsheng_73 发表于 2013-12-13 11:52
建立一个文件把它们记录下来,每次打开如果找不到那个文件或者文件内容为空,就要求你去框选一堆东东,得 ...

"建立一个文件把它们记录下来"这一步我不会耶。。。。 能具体说下怎么做吗?或者相应的链接?(在论坛看到几个接近的但是没币了)十分感谢,真心请教。因为每次都要对建筑图的图层做处理 而建筑的楼层很多 这样下来工作量太大了 如果能解决这个问题对我真的是有太大的帮助了
发表于 2013-12-13 12:35:11 | 显示全部楼层
peraperson 发表于 2013-12-13 11:22
恩恩 谢谢 这种方法我用过 但是我希望的是对不同的图层的元素做不同的处理 (就是abcd做一种处理,ef一种 ...

选集:

http://bbs.mjtd.com/thread-84990-1-1.html
http://bbs.mjtd.com/thread-93264-1-1.html
http://bbs.mjtd.com/thread-95613-1-1.html
http://bbs.mjtd.com/thread-90036-1-1.html
...
发表于 2013-12-13 12:57:58 | 显示全部楼层
本帖最后由 llsheng_73 于 2013-12-13 13:01 编辑
peraperson 发表于 2013-12-13 11:58
"建立一个文件把它们记录下来"这一步我不会耶。。。。 能具体说下怎么做吗?或者相应的链接?(在论坛看到 ...


每次都是针对比较固定的几个图层进行处理么?
直接得到当前图形中所有图层没什么用么,只需要对其中几个图层(这几个图层每个图都是一样),或者不一样的话重新指定,是这样吗?
 楼主| 发表于 2013-12-13 13:19:51 | 显示全部楼层
本帖最后由 peraperson 于 2013-12-13 13:27 编辑
llsheng_73 发表于 2013-12-13 12:57
每次都是针对比较固定的几个图层进行处理么?
直接得到当前图形中所有图层没什么用么,只需要对其中几 ...

谢谢你的耐心回复
是的 要处理的图层在所有图都是一样的 比如在所有图中都把 a b c d 等图层删除掉,我希望用上面的方法在第一张图中框选出这些图层 记录下来(比如像你上面说的,建一个跟图同个文件夹下的文本) 到了第2张图 第3张,第4张。。。的时候就不用再去框选了 直接调用第一张图得到的图层名表  
如果可以的话 还恳请llsheng君按上面的例子写成完整的代码
十分感谢
如果能学会这方法 受益会很多 可以用在其他地方上
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-26 01:29 , Processed in 0.149975 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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