xskfq 发表于 2013-12-2 09:33:58

ARX怎么实现选中状态?

要把筛选后的图元 置为当前选中状态,
现在用的方法是:先用ssadd创建一个空选择集,再一个一个地加入其中,然后用sssetfirst实现。
ARX 应该怎么做

xskfq 发表于 2013-12-2 13:17:44

static void mydraw_ddd(void)       
{       
      // Add your code for command mydraw._ddd here       
      ads_point pt1,pt2;       
      if( acedGetPoint(NULL,_T("\nPlease Enter start point: "),pt1) != RTNORM       
                || acedGetPoint(pt1,_T("\nPlease Enter end point: "),pt2)!= RTNORM)       
                return;       
      AcGePoint3d p1,p2;       
      p1 = asPnt3d(pt1);       
      p2 = asPnt3d(pt2);       
      //创建一条直线并返回其ID       
      AcDbObjectId lineId = CreateLine(p1,p2);       
      //获得其图元名       
      ads_name ent;       
      acdbGetAdsName(ent,lineId);       
      //参加到一个空的选择集       
      ads_name sel;       
      acedSSAdd(ent,NULL,sel);       
      //创建一个圆,并获得其ID       
      AcDbObjectId CircleId = CreateCircle(p1,p2);       
      //获得其图元名,并参加到先前的选择集       
      acdbGetAdsName(ent,CircleId);       
      acedSSAdd(ent,sel,sel);       
      //亮显       
      acedSSSetFirst(sel,sel);       
      return;       
}       

这样可否?
页: [1]
查看完整版本: ARX怎么实现选中状态?