欢迎加我的QQ群:193522571,一起来讨论、交流!

ObjectARX2010 学习笔记006:旋转实体

Acad::ErrorStatus CEntityUtil::Rotate(AcDbObjectId entId,const AcGePoint2d &ptBase,double rotation)
{
    //几何变换矩陈
    AcGeMatrix3d xform;
    //向量
    AcGeVector3d vec(0.0,0.0,1.0);
    //设置需要进行的变换
    xform.setToRotation(rotation,vec,CConvertUtil::ToPoint3d(ptBase));
    //定义实体指针
    AcDbEntity *pEnt=NULL;
    //试图打开实体
    Acad::ErrorStatus es=acdbOpenObject(pEnt,entId,AcDb::kForWrite,false);
    //如果不出错则执行转换
    if (es==Acad::eOk)
    {
        es=pEnt->transformBy(xform);
        pEnt->close();
    }
    return es;
}

 

posted @ 2014-07-03 22:11  swtool  阅读(796)  评论(0编辑  收藏  举报
欢迎加我的QQ群:193522571,一起来讨论、交流!