Open CASCADE Modeling Data --- Direct Construction
eryar@163.com
使用本章中介绍的包可以使用创建几何实体易如反掌,这些包是gp、Geom2d、Geom等。若想通过圆心和半径创建一个圆,可以使用包gp,在创建之前还需要创建一个轴Ax2d。若可以使用包gce,则将轴设置为Ox轴,可直接通过点和半径创建出圆。一般的构造方法都是通过构造函数来完成的。
一、提供的功能 The services provided
提供了创建初等几何实体的基本函数,如创建直线、圆和曲线等。
l gce:提供了创建非持久性几何实体的算法实现,算法如下所示:
u 根据已知直线和距离求其平行线;
u 根据已知直线和点求其平行线;
u 过两个指定点的圆;
u 求已知圆和距离求其平行的圆;
u 求过已知点并平行于已知圆的圆;
u 过三个指定点的圆;
u 过圆心和半径的圆;
u 过五个指定点的双曲线;
u 过中心点和两个顶点的双曲线;
u 过五个点的椭圆;
u 过中心点和两个顶点的椭圆;
u 过三个点的抛物线;
u 过中心点和一个顶点的抛物线;
u 过两个点的直线;
u 更全面的的信息请参考帮助文档。如下图所示:
包gce
l 包GC、GCE2d:提供了生成几何实体的算法;
u 圆由两点剪裁得到的圆弧;
u 椭圆由两点剪裁得到的圆弧;
u ……
二、常用的包
在工具箱TKGeomBase中提供了相应的三个包:
l gce:构造gp实体;constructs gp entities.这个包中的类用来构造包gp中的对象。每个类构造gp包中相应的一个对象。例如:类MakeLin2d创建gp包中的一个Lin2d对象。gp包在工具箱TKMath中,属于基础类模块。
u 对于二维几何形状:
1. MakeCirc2d;
2. MakeElips2d;
3. MakeHypr2d;
4. MakeLin2d;
5. MakeParab2d;
u 对于三维几何形状:
1. MakeCirc;
2. MakeElips;
3. MakeHypr;
4. MakeLin;
5. MakeParab;
6. MakeCone;
7. MakeCylinder;
8. MakePln.
u 对于二维变换:
1. MakeMirror2d;
2. MakeRotation2d;
3. MakeScale2d;
4. MakeTranslation2d;
u 对于三维变换:
1. MakeMirror;
2. MakeRotation;
3. MakeScale;
4. MakeTranslation.
u 代码示例:
当你不确定传递的构造参数是否能创建出相应的gp对象,而不产生异常时,上面的这种用法很有用。上例中,若Point1、Point2太相近,则函数MakeLin2d认为它们是相同的两个点,会返回gce_ConfusedPoint值。若你能确定两个点的值是不同的,则可以直接创建gp对象,如下所示:
l GCE2d:构造Geom2d实体;constructs Geom2d entities.包GCE2d的类是用来构造包Geom2d的对象。包Geom2d在工具箱TKG2d中,属于造型数据模块。
u 对于几何形状:
1. MakeCircle;
2. MakeEllipse;
3. MakeHyperbola;
4. MakeLine;
5. MakeParabola;
u 对于几何变换:
1. MakeMirror;
2. MakeRotation;
3. MakeScale;
4. MakeTranslation;
u 使用方式与包gce相同。
l GC:构造Geom实体;constructs Geom entities.这个包中的类是用来构造包Geom中的对象。包Geom在工具箱TKG3d中,属于造型数据模块。每个类都将会构造出包Geom中相应的对象。如类MakeLine将构造出Geom中的类Line的对象。
u 有些类返回Geom中的TrimmedCurve对象,这些类如下:
1. MakeArcOfCircle;
2. MakeArcOfEllipse;
3. MakeArcOfHyperbola;
4. MakeArcOfParabola;
5. MakeSegment;
u 同样地,有两个类返回RectangluarTrimmedSurface类型:
1. MakeTrimmedCone;
2. MakeTrimmedCylinder;
u 对于几何形状:
1. MakeCicle;
2. MakeEllipse;
3. MakeHyperbola;
4. MakeLine;
5. MakeParabola;
6. MakeConicalSurface;
7. MakeCylindricalSurface;
8. MakePlane;
l 对于几何变换:
u MakeMirror;
u MakeRotation;
u MakeScale;
u MakeTranslation.
使用方式与包gce是相同的。
eryar@163.com
Shanghai China
2012-9-27