- UID
- 59465
- 积分
- 267
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2003-6-18
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
- [FONT=courier new]
- BOOL GetSSExtents(ads_name ss, ads_point &maxpt, ads_point &minpt)
- {
- long len;
- int ret=ads_sslength(ss,&len);
- if(ret!=RTNORM||len<1) return FALSE;
- AcDbObjectId objId;
- ads_name ename;
- AcDbEntity *pEnt;
- AcDbExtents extent;
- AcGePoint3d pt1,pt2;
- ads_ssname (ss, 0, ename);
- acdbGetObjectId(objId,ename);
- acdbOpenObject(pEnt,objId,AcDb::kForRead);
- pEnt->getGeomExtents(extent);
- pt1=extent.maxPoint();
- pt2=extent.minPoint();
- pEnt->close();
- for(int i=0;i<len;i++){
- ads_ssname (ss, i, ename);
- acdbGetObjectId(objId,ename);
- acdbOpenObject(pEnt,objId,AcDb::kForRead);
- pEnt->getGeomExtents(extent);
- if(pt1[X]<extent.maxPoint()[X]||pt1[Y]<extent.maxPoint()[Y])
- pt1=extent.maxPoint();
- if(pt2[X]>extent.minPoint()[X]||pt2[Y]>extent.minPoint()[Y])
- pt2=extent.minPoint();
- pEnt->close();
- }
- maxpt[X]=pt1[X];
- maxpt[Y]=pt1[Y];
- maxpt[Z]=pt1[Z];
-
- minpt[X]=pt2[X];
- minpt[Y]=pt2[Y];
- minpt[Z]=pt2[Z];
- return TRUE;
- } [/FONT]
复制代码 |
|