- UID
- 107516
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2004-2-29
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
如何用intersectWith求AcDb3dPolyline线与AcDbPolyline线的交点?
下面的代码只能对AcDbPolyline线与AcDbPolyline线的交点:
ads_name ename;
AcDbObjectId id1,id2;
ads_point p1;
AcDbEntity *pE1,*pE2;
AcGePlane plane;
AcDb::Planarity flag;
if(ads_entsel("\nÑ¡Ôñ:",ename,p1)!=RTNORM) return ;
acdbGetObjectId(id1, ename);
if(ads_entsel("\nÑ¡Ôñ:",ename,p1)!=RTNORM) return ;
acdbGetObjectId(id2, ename);
AcGePoint3dArray aa;
if(acdbOpenObject(pE1,id1,AcDb::kForRead)!=Acad::eOk) return ;
if(acdbOpenObject(pE2,id2,AcDb::kForRead)!=Acad::eOk){
pE1->close();
return ;
}
pE1->getPlane(plane,flag);
if(pE1->intersectWith(pE2,AcDb::kOnBothOperands,plane,aa)!=Acad::eOk) return ;
pE1->close();
pE2->close();
if(aa.length()<=0) return;
ads_printf("\nx=%lf y=%lf",aa[0].x,aa[0].y);
郁闷啊? |
|