明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2035|回复: 4

还是选择集操作

[复制链接]
发表于 2004-11-16 12:53:00 | 显示全部楼层 |阅读模式
有什么好的办法对一个已有选择集SS1过滤操作(过滤表:eb1=acutBuildList=(0,"CIRCLE",62,1,0))而得到另一个选择集SS2
发表于 2004-11-17 10:25:00 | 显示全部楼层
我的做法是将选择集中的对象转化成ID,进而判断其是否满足条件,将满足条件的ID添加到一个AcDbObjectIdArray数组中,也就相当于得到了另一个选择集。
 楼主| 发表于 2004-11-17 10:45:00 | 显示全部楼层
void MySSFilter(ads_name adsname,const struct resbuf *reb)
{
if(acedCommand(RTSTR,"select",RTPICKS,adsname,0)!=RTNORM)return;
if(acedSSGet("P",NULL,NULL,reb,adsname)!=RTNORM)return;
} 这样做不好吗? 不过总是看acedCommand()有点不顺眼
发表于 2004-11-17 20:38:00 | 显示全部楼层
你的代码没有实现你说的功能吧?
 楼主| 发表于 2004-11-18 17:15:00 | 显示全部楼层
少了一个空格 void MySSFilter(ads_name adsname,const struct resbuf *reb)
{
if(ads_name_nil(adsname))return;
if(acedCommand(RTSTR,"select",RTPICKS,adsname,RTSTR,"",0)!=RTNORM)return;
if(acedSSGet("P",NULL,NULL,reb,adsname)!=RTNORM)return;
SSHighLight(adsname); }
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 10:23 , Processed in 0.165794 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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