下载此文档

CAD系统二次开发-ObjectARX中的实体造型技术.ppt


文档分类:汽车/机械/制造 | 页数:约22页 举报非法文档有奖
1/ 22
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/ 22 下载此文档
文档列表 文档介绍
王淑营
ObjectARX中的实体造型技术
inline AcGePoint3d& asPnt3d(const double* pnt);
//将一个三维数组转化为一个三维点
inline AcGeVector3d& asVec3d(const double* vec);
//将三维数组转化为三维矢量
inline double* asDblArray(const AcGePoint3d& pnt);
//将点对象转化为一个数组对象
inline double* asDblArray (const AcGeVector3d& vec);
//将三维矢量转化为三维数组
补充知识
1、点对象和数组的相互转换方法
例:AcGePoint3d pc;
acedGetPoint(NULL,”\n中心点:”,asDblArray(pc));
double length;
acedGetDist(asDblArray(pc),”\n长度:”,&length);
一、基本三维实体生成技术
二、基于二维对象生成三维实体技术
三、三维实体的布尔运算和查询技术
ObjectARX中的实体造型技术
AutoCAD提供了三种三维造型方法,包括线框造型、表面造型和实体造型,①、线框模型:描述三维实体对象的骨架,线框模型中没有面,只有描绘对象边界的点、直线和曲线,AutoCAD提供了一些三维线框对象,三维多义线和样条曲线,由于构成线框模型的每个对象都必须单独绘制和定位,因此这种建模方法最为耗时;②、曲面模型:比线框造型更为复杂,它不仅定义三维对象的边而且定义面,AutoCAD的曲面模型使用多边形网格定义镶嵌面,由于网格面是平面,所以网格只能近似于曲面,使用Mechanical Desktop可创建真正的曲面;③、实体造型:实体模型是最容易使用的三维模型,利用AutoCAD的实体模型,可以通过创建长方体、圆锥体、圆柱体、球体和圆环体等来创建三维对象,然后对这些形状进行合并,找出它们的差集或交集部分,结合起来生成更复杂的实体,也可以将二维对象沿路径延伸或绕轴旋转来创建实体。
一、基本三维实体生成技术
1、基于ObjectARX的三维实体造型技术概述
在ObjectARX应用程序中,实体造型可以通过直接调用AutoCAD系统本身提供的有关实体造型和编辑命令来实现,也可以通过直接生成数据库对象及调用相关的成员函数来进行造型。在AutoCAD数据库中,三维实体属于AcDb3dSolid类对象,该类从AcDbEntity类派生而来的。调用AcDb3dSolid类的成员函数可生成各种基本的三维实体以及实现实体的布尔运算。生成三维实体的基本步骤为:
一、基本三维实体生成技术
2、基本三维实体的生成方法
①调用AcDb3dSolid类创建一个容器对象,如:
AcDb3dSolid *p3dObj=new AcDb3dSolid;
②调用AcDb3dSolid类的成员函数创建基本三维实体对象,一般形式为:
指向AcDb3dSolid类对象的指针->创建基本的三维三体对象成员函数。
③将AcDb3dSolid类对象写入当前图形数据库的块表记录中。
基本的三维实体是指长方体(Box)、平截头体(Frustum)、球体(Sphere)、圆环体(Torus) 、契体(Wedge)等,生成向营实体的AcDb3dSolid函数原型为:
一、基本三维实体生成技术
3、生成基本三维实体的函数
①、长方体:生成一个中心在坐标原点,长、宽、高分别与X、Y、Z轴平行的长方体,函数原型如下:
virtual Acad::ErrorStatus createBox(double xLen,double yLen,double zLen);
如果长方体的边长小于1E-6,函数返回Acad::eOutOfRange,如果生成失
败,函数返回Acad::eGeneralModelingFailure。
②、平截头体:生成一个质心在WCS坐标原点的圆柱体或圆锥体,函数原型如下:
virtual Acad::ErrorStatus createFrustum (double height,double xRadius,
double yRadius,double topXRadius);
其中xRadius、yRadius分别表示X、Y方向半径,topXRadius代表顶端半径。
③、球体:生成一个质心在WCS坐标原点的球体。函数原型如下:
virtual Acad::ErrorStatus createSphere(double radius);
一、基本三维实体生成技术
3、生成基本三维实体的函数
④、圆环体:生成一个质

CAD系统二次开发-ObjectARX中的实体造型技术 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数 22
  • 收藏数 0 收藏
  • 顶次数 0
  • 上传人 所以所以
  • 文件大小 0 KB
  • 时间2012-06-25
最近更新