- UID
- 84199
- 积分
- 71
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2003-10-5
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
大家看看这段程序,然后按照一下步骤作一下,看看结果是什么。
1:在阿AUTOCAD中画一条多义线,最好是封闭的凸多边形,尺寸大一点;
2:把它移动,是它的最左边的定点的横坐标大于10000(一万);
3:运行下面程序,是程序中的pl指向该多以线,看运行结果。
///////////////
我的运行环境是2004,结果是偏移得到的第一条是正确的,偏移得到的另外两条和原来的
多以线都被移动到了原点附近。
大家看看你们的结果跟我的一样不一样
/////////////
AcDbEntity* ent=NULL;
ent=selectEntity("\nPlease select a Polyline:",AcDb::kForWrite); //选择并打开一实体
if(ent==NULL)
return;
AcDbPolyline* pl=NULL;
pl=AcDbPolyline::cast(ent);
if(pl==NULL)
{
ent->close();
acutPrintf("\npl NUll");
return;
}
AcDbVoidPtrArray vs02,vd04,vd03;
AcDbPolyline* pls02=NULL;
AcDbPolyline* pld04=NULL;
AcDbPolyline* pld03=NULL;
pl->getOffsetCurves(30,vd04);
pl->getOffsetCurves(20,vd03);
pl->getOffsetCurves(10,vs02);
append((AcDbEntity*)vd03.first());//将实体加入当前数据库
append((AcDbEntity*)vd04.first());
append((AcDbEntity*)vs02.first());
pl->close(); |
|