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