明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1532|回复: 5

如何返回除某一类型外的选择集

[复制链接]
发表于 2003-11-6 16:44:00 | 显示全部楼层 |阅读模式
(ssget "x" '((-4 . "/=") (62 . 256))可以建立COLOR不等于“随层”的选择集,但是为什么(ssget "x" '((-4 . "/=") (6 . "BYLAYER"))无法建立LINETYOE不等于“随层”的选择集?
发表于 2003-11-6 17:50:00 | 显示全部楼层
这样,
(ssget "X"
'(
    (-4 . "<NOT")
        (6 . "BYLAYER")
    (-4 . "NOT>")
  )
)
 楼主| 发表于 2003-11-6 19:32:00 | 显示全部楼层
多谢了,看了第38页的一个同名帖子,我也弄懂了,可就是纳闷为什么(ssget "x" '((-4 . "/=") (6 . "BYLAYER"))行不通!因为以后可能会用到形式相同的,所以就想弄懂!
发表于 2003-11-6 19:49:00 | 显示全部楼层
过滤表完全可以用逻辑组合来判断,这个完全可以绕过去的。
发表于 2003-11-7 09:01:00 | 显示全部楼层
原因是这样的:
在ssget中关系运算符的用法取决于要测试的组的类型:

除按位运算符(“&”和“&=”)之外的所有关系运算符对值为实数和整数的组都有效。
按位运算符“&”和“&=”只对值为整数的组有效。((integer_group & filter) /= 0),也就是说 integer_group 屏蔽位中有任一位为 1 时,按位与“&”就为真。只有 ((integer_group & filter) = filter),也就是说 integer_group 所有屏蔽位全为 1 时,按位屏蔽相等“&=”才为真(在 integer_group 中可能也设置了其他位,但不作检测)。
对于点组,X、Y 和 Z 坐标的测试可以组合成单个字符串,只需将每一个运算符用逗号分隔即可(例如“>、>、*”)。如果省略了字符串中某个运算符(例如“=, <>”省略了 Z 坐标的测试),然后又省略了“anything goes”运算符则假定用任意情况均可的“*”运算符。
方向矢量(210 组)只能使用“*”、“=”和“!=”运算符(或任意与“不等于”等价的运算符)进行比较。
不能用关系运算符测试字符串组,而应使用通配符测试。
 楼主| 发表于 2003-11-7 11:25:00 | 显示全部楼层
谢谢!总算明白了一点点!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-2 12:20 , Processed in 0.149810 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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