一、本节课程
Arx二次开发用户交互
二、本节要讲解的知识点
1、用户交互的一些函数:acedGetXXX(acedGetString、acedGetPoint、acedGetInt acedGetKword、acedGetReal)。
2、动态创建多段线的实现。
3、acedGetPoint函数中使用关键字。
三、具体内容
1、acedGetString:获取用户输入的字符串
acedGetPoint:获取用户输入的点
acedGetInt:获取用户输入的整型
acedGetKword:获取用户输入的关键字
acedGetReal:获取用户输入的实数。
2、动态创建多段线:最基本的要求就是用户在图形窗口中按顺序拾取各个点,每次拾取一点都会将其加入到多段线的末端,最终按ENTER键或者ESC键就完成多段线的创建。
(1)拾取第一点;
(2)拾取第二点,创建多段线。
(3)如果没有按ENTER或ESC键,则拾取下一点,并将拾取的点添加到多段线的末尾。
(4)如果用户按ENTER或ESC键,退出程序的执行,多段线创建完毕,否则执行步骤3。
3、动态创建多段线(简单版、升级版)
static void YunyouMyGroupAddPolyBaic(void) { int index=2; AcGePoint3d ptStart; if (!CGetInputUtil::GetPoint(TEXT("\n please input first point:"),ptStart)) { return; } AcGePoint3d ptPrevious,ptCurrent; ptPrevious=ptStart; AcDbObjectId polyId; while (CGetInputUtil::GetPoint(ptPrevious,TEXT("\n please input NEXT point:"),ptCurrent)) { if (index==2) { polyId=CPolylineUtil::Add(CConvertUtil::ToPoint2d(ptPrevious),CConvertUtil::ToPoint2d(</ |