[求助]哪个函数可以得到椭圆的半径
本帖最后由 作者 于 2008-9-26 15:40:15 编辑 <br /><br /> <font size="5"> CAD面板上显示的椭圆的长半轴和短半轴怎么得到?用哪个函数??在椭圆类里找了半天也没找到。。请版主帮帮忙。。谢谢!</font>//编程:包达勇
//2008-09-27 上午9:16
ads_real Dist1,Dist2;
ads_name Ename,Ename1;
ads_point pt,p1,p2;
AcDbObjectId ObjID,NewID;
AcDbEllipse *pEll;
AcGePoint3d Spt,Ept;
if (acedEntSel("\n请您选取要椭圆对象:",Ename,p1)!=RTNORM)return;
if (acdbGetObjectId(ObjID,Ename)!=eOk)return;
acdbOpenObject(pEll,ObjID,AcDb::kForRead);
Spt=(AcGePoint3d&)pEll->minorAxis();
Ept=(AcGePoint3d&)pEll->majorAxis();
pEll->close();
pt=pt=pt=0;
ads_point_set(asDblArray(Spt),p1);
ads_point_set(asDblArray(Ept),p2);
Dist1=acutDistance(pt,p1);
Dist2=acutDistance(pt,p2);
acutPrintf("\n报告:\n椭圆的长半轴=%fmm\n椭圆的短半轴=%fmm\n编程:BDYCAD <2008-09-27>",Dist2,Dist1); 谢谢包哥,我试试。 恩。计算出来了。我当时计算距离的时候直接获取的center,后来发现2个坐标系不一样,得到的距离总是比实际的要大。再次谢谢包哥。
页:
[1]