当前位置:   article > 正文

ObjectARX学习笔记(十一)----创建圆弧AcDbArc

acdbarc

AcDbArc(
    const AcGePoint3d& center, 
    double radius, 
    double startAngle, 
    double endAngle
);
Parameters
Description
const AcGePoint3d& center
Input center point of the arc
double radius
Input radius of the arc
double startAngle
Input starting angle of the arc
double endAngle
Input ending angle of the arc 
AcDbArc(
    const AcGePoint3d& center, 
    const AcGeVector3d& normal, 
    double radius, 
    double startAngle, 
    double endAngle
);
Parameters
Description
const AcGePoint3d& center
Input center point of the arc
const AcGeVector3d& normal
Input normal vector of the plane containing the arc
double radius
Input radius of the arc
double startAngle
Input starting angle of the arc
double endAngle
Input ending angle of the arc 


#define PI 3.1415926535897932384626433832795L

//创建圆弧
AcGePoint3d ptSart(0,0,0);
//输入的角度是弧度

AcDbArc *pArc= new AcDbArc(ptSart,200,0 , 90* PI / 180.0);

if (pArc == NULL)
       return;


  //将实体添加到模型空间是固定的代码,
AcDbDatabase* pDb = NULL;
pDb = acdbHostApplicationServices()->workingDatabase();
if (pDb == NULL)
return ;


AcDbBlockTable * pBlkTable ; 
if(pDb->getBlockTable(pBlkTable , AcDb::kForRead) != Acad::eOk ) 
return ;


AcDbBlockTableRecord * pRec ;
if(pBlkTable->getAt(ACDB_MODEL_SPACE , pRec , AcDb::kForWrite) != Acad::eOk) 
return ;
pBlkTable->close();


AcDbObjectId objId = AcDbObjectId::kNull;


if(pRec->appendAcDbEntity(objId, pArc) != Acad::eOk)  //将线添加到dwg中
return ;


pArc->close() ;
pRec->close() ;
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/114385
推荐阅读
  

闽ICP备14008679号