1. 程式人生 > >Open CASCADE Modeling Data --- Direct Construction

Open CASCADE Modeling Data --- Direct Construction

Open CASCADE Modeling Data --- Direct Construction

使用本章中介紹的包可以使用建立幾何實體易如反掌,這些包是gpGeom2dGeom等。若想通過圓心和半徑建立一個圓,可以使用包gp,在建立之前還需要建立一個軸Ax2d。若可以使用包gce,則將軸設定為Ox軸,可直接通過點和半徑創建出圓。一般的構造方法都是通過建構函式來完成的。

一、提供的功能 The services provided

提供了建立初等幾何實體的基本函式,如建立直線、圓和曲線等。

l gce:提供了建立非永續性幾何實體的演算法實現,演算法如下所示:

u 根據已知直線和距離求其平行線;

u 根據已知直線和點求其平行線;

u 過兩個指定點的圓;

u 求已知圓和距離求其平行的圓;

u 求過已知點並平行於已知圓的圓;

u 過三個指定點的圓;

u 過圓心和半徑的圓;

u 過五個指定點的雙曲線;

u 過中心點和兩個頂點的雙曲線;

u 過五個點的橢圓;

u 過中心點和兩個頂點的橢圓;

u 過三個點的拋物線;

u 過中心點和一個頂點的拋物線;

u 過兩個點的直線;

u 更全面的的資訊請參考幫助文件。如下圖所示:

Package gce

gce

l 包GCGCE2d:提供了生成幾何實體的演算法;

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 程式碼示例:

clip_image004

當你不確定傳遞的構造引數是否能創建出相應的gp物件,而不產生異常時,上面的這種用法很有用。上例中,若Point1Point2太相近,則函式MakeLin2d認為它們是相同的兩個點,會返回gce_ConfusedPoint值。若你能確定兩個點的值是不同的,則可以直接建立gp物件,如下所示:

clip_image006

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是相同的。

Shanghai China

2012-9-27