- UID
- 682354
- 积分
- 92
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2013-7-16
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
- static void YSCreatPolyLineplcopy(void)
- {
- // Add your code for command YSCreatPolyLine.plcopy here
- ads_name ename;ads_point pt;
- if (acedEntSel(NULL,ename,pt)!=RTNORM)
- {
- return;
- }
- AcDbObjectId id;
- acdbGetObjectId(id,ename);
- AcDbEntity *pEnt;
- acdbOpenObject(pEnt,id,AcDb::kForRead);
- AcGePoint2dArray points;
- if (pEnt->isKindOf(AcDbPolyline::desc()))
- {
- AcDbPolyline *pPline=AcDbPolyline::cast(pEnt);
-
- int num =pPline->numVerts();
- for (int i=0;i<num;i++)
- {
- AcGePoint2d pt;
- pPline->getPointAt(i,pt);
- points.append(pt);
- }
- }
- pEnt->close();
- CreatPolyLine(points,1.0);
- }
- } ;
- AcDbObjectId PostToModelSpace(AcDbEntity *pEnt)
- {
- AcDbBlockTable *pBlkTbl;
- acdbHostApplicationServices()->workingDatabase()->getSymbolTable(pBlkTbl,AcDb::kForRead);
- AcDbBlockTableRecord *pBlkTblRcd;
- pBlkTbl->getAt(ACDB_MODEL_SPACE,pBlkTblRcd,AcDb::kForWrite);
- AcDbObjectId entId;
- pBlkTblRcd->appendAcDbEntity(entId,pEnt);
- pBlkTbl->close();
- pBlkTblRcd->close();
- return entId;
- }
- AcDbObjectId CreatPolyLine(AcGePoint2dArray points,double width)
- {
- int numVertex = points.length();
- AcDbPolyline *pPoly=new AcDbPolyline(numVertex);
- for (int i=0;i < numVertex;i++)
- {
- pPoly->addVertexAt(i,points.at(i),0,width,width);
- }
- AcDbObjectId PolyID;
- PolyID=PostToModelSpace(pPoly);
- return PolyID;
- }
复制代码 读取现有多段线的节点,并重新在原来位置绘制一条相同多段线 线宽设为1mm
编译通过 功能无法实现
|
|