// 提示用户选择选择方式

acedInitGet(0, _T("W CP"));

int nRs = acedGetKword(_T("\n请输入关键字确定选择方式[窗选(W)/圈交(CP)]:<点选>"), szKword);

if (RTCAN == nRs)   // 取消

{

return;

}

elseif (RTNONE == nRs)  // 默认为点选

{

// 让用户选择一个点

ads_point pt;

nRs = acedGetPoint(NULL, _T("\n请选择点:"), pt);

if (RTNORM != nRs)  // 取消

return;

nRs = acedSSGet(NULL, pt, NULL, NULL, ss);

}

elseif (RTNORM == nRs)

{

if (_tcscmp(szKword, _T("W")) == 0)

{

// W方式选择集,需要两个点

ads_point pt1, pt2;

nRs = acedGetPoint(NULL, _T("\n请输入第一个角点:"), pt1);

if (RTNORM != nRs)

return;

nRs = acedGetPoint(pt1, _T("\n请输入第二个角点:"), pt2);

if (RTNORM != nRs)

return;

nRs = acedSSGet(_T("W"), pt1, pt2, NULL, ss);

}

elseif (_tcscmp(szKword, _T("CP")) == 0)

{

// CP方式构造选择集,需要一组点,此处需要四个点

ads_point pt[4];

nRs = acedGetPoint(NULL, _T("\n输入第一个点:"), pt[0]);

if (RTNORM != nRs)

return;

nRs = acedGetPoint(pt[0], _T("\n第二个点:"), pt[1]);

if (RTNORM != nRs)

return;

nRs = acedGetPoint(pt[1], _T("\n第三个点:"), pt[2]);

if (RTNORM != nRs)

return;

nRs = acedGetPoint(pt[2], _T("\n第四个点:"), pt[3]);

if (RTNORM != nRs)

return;

resbuf* pRb = acutBuildList(RTPOINT, pt[0], RTPOINT, pt[1], RTPOINT, pt[2], RTPOINT, pt[3], 0);

nRs = acedSSGet(_T("CP"), pRb, NULL, NULL, ss);

acutRelRb(pRb);

}

else

{

acutPrintf(_T("\n无效输入"));

return;

}

}

else

{

acutPrintf(_T("\n无效输入"));

return;

}

if (RTNONE == nRs)

{

acutPrintf(_T("\n选择集为空"));

return;

}

elseif (RTNORM != nRs)

{

acutPrintf(_T("\n构建选择集失败"));

return;

}

//////////////////////////////////////////////////////////////////////////

// 遍历选择集,删除实体

long lLen = 0;

acedSSLength(ss, &lLen);

for (long index = 0; index < lLen; index++)

{

ads_name ent;

AcDbObjectId objId;

acedSSName(ss, index, ent);

acdbGetObjectId(objId, ent);

if (!objId.isValid())

continue;

AcDbEntity* pEnt = NULL;

if (Acad::eOk != acdbOpenAcDbEntity(pEnt, objId, AcDb::kForWrite))

continue;

pEnt->erase();

pEnt->close();

}

acutPrintf(_T("\n删除成功"));

return;

}

} ;

acedinitget的更多相关文章

  1. ObjectARX® for Beginners: An Introduction

    转:ObjectARX® for Beginners: An Introduction Lee Ambrosius – Autodesk, Inc.         CP4164-L    Objec ...

  2. acedSSGet 翻译

    ObjectARX 参考指南 > 全局函数 > AcEd 全局函数 > acedSSGet 函数 acedSSGet 折叠全部 C++ int acedSSGet( const AC ...

  3. 类似倒圆角方法输入半径选择实体 kword

    ads_name ename; ads_point adspt; acedInitGet(NULL, TEXT("R")); while (1) { int rc = acedEn ...

随机推荐

  1. Java大数练习第二弹

    hdu1250 水题 题目链接:pid=1250">http://acm.hdu.edu.cn/showproblem.php?pid=1250 import java.util.*; ...

  2. MySQL hash分区(四)

    具体描写叙述总结请看MySQL分区(一) 样例:该样例为本人个人学习总结分享->具体说明-->有问题欢迎前来交流 watermark/2/text/aHR0cDovL2Jsb2cuY3Nk ...

  3. Zookeeper01

    ZooKeeper数据模型Znode

  4. 机器视觉: LBP-TOP

    之前介绍过机器视觉中常用到的一种特征:LBP http://blog.csdn.net/matrix_space/article/details/50481641 LBP可以有效地处理光照变化,在纹理 ...

  5. mysql中 groupby分组

    引用自http://www.cnblogs.com/mo-beifeng/archive/2012/02/07/2341886.html#2341105 --按某一字段分组取最大(小)值所在行的数据 ...

  6. [Swift通天遁地]六、智能布局-(4)给视图添加锚点约束

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  7. cobbler+kickstart安装笔记

    cobbler+kickstart安装笔记 本文参考老男孩配置:https://blog.oldboyedu.com/autoinstall-cobbler/ centos7:开机如果不启动网卡,需要 ...

  8. mysql在linux下的安装(5.7版本以后)

    1.添加mysql组和mysql用户,用于设置mysql安装目录文件所有者和所属组. ①groupadd mysql ②useradd -r -g mysql mysql 2.将二进制文件解压到指定的 ...

  9. ACM_他和她(最大生成树+最短路径)

    他和她 Time Limit: 2000/1000ms (Java/Others) Problem Description: 大二上学期刚过完,平时成绩不错的小V参加了一个小型编程比赛,遇到一道题,虽 ...

  10. Hadoop Hive概念学习系列之hive里的视图(十二)

    不多说,直接上干货! 可以先,从MySQL里的视图概念理解入手 视图是由从数据库的基本表中选取出来的数据组成的逻辑窗口,与基本表不同,它是一个虚表.在数据库中,存放的只是视图的定义,而不存放视图包含的 ...