OCCT培训笔记(刘星讲)--第2天
本課程使用的全部是7.6.0的occt庫和API。
OCCT培訓筆記(劉星講)--第2天
- 0、關于上節課的提問:
- 0.1、平面螺旋線PCurver-Parametric Curve
- 0.2、Geomtry Surface 中為什么有求導數的函數?
- 1、求曲面上某點的法線向量。
- 2、求曲線的長度
- 3、求極值,點到曲線的距離,兩個曲面的極小值和極大值
- 4、Package math中的類結構
- 1、造型算法 ModelingAlgorithms
- 1.1、BRepBuilderAPI類和BRepBuilder_MakeFace類。
- 1.2、邊界表示法(略)
- 1.3、BRepOffsetAPI 偏移量的類。
- 1.4、倒角
- 1.5、HLR的軟件
- 1.6、布爾運算
- 2、Automated Testing System
- 3、介紹已經實現的項目
- 4、模塊介紹
- 4.1Module ModulingData
- 1、ToolKit TKBRep
- 2、ToolKit TKGeomBase
- 3、ToolKit TKTopAlgo
- 4、ToolKit TKPrim
- 5、ToolKit TKMesh
- 6、ToolKit TKBO
- 7、ToolKit TKFeat
- 8、ToolKit TKFillet
- 9、ToolKit TKHLR
- 4.2Module Visualization
- 1、ToolKit TKV3d
- 2、ToolKit TKService
- 3、ToolKit TKMeshVS
- 4.3Module DataExchange
- 4.4Module ApplicationFramework
- 4.5Module Draw
- 5、提問解答
- 1、求弧長
0、關于上節課的提問:
0.1、平面螺旋線PCurver-Parametric Curve
平面螺旋線-圓錐對數螺線
OCCT中沒有這個螺旋線。得到方法如下:
方法1:通過PCurve做一個三維的曲線,再投影到平面上面,間接獲得平面螺旋線。
方法2:從Geometry_Curve去派生類,實現所有虛函數。(直接方法)
這里有draw.bat的生成代碼。比較復雜可以有時間深入研究。時間點是(視頻2-1.mp4,3’20"位置)
0.2、Geomtry Surface 中為什么有求導數的函數?
1、求曲面上某點的法線向量。
2、求曲線的長度
3、求極值,點到曲線的距離,兩個曲面的極小值和極大值
Package math中的類:
Extrema_FuncExtCS 類 和 Extrema_GenExtCS 類。
4、Package math中的類結構
內容舔腳到第1天相關內容里面了。
1、造型算法 ModelingAlgorithms
1.1、BRepBuilderAPI類和BRepBuilder_MakeFace類。
ToolKit TKG2d存在的原因。
ModelingAlgorithms->ToolKit TKTopAlgo中->Package BRepBuilderAPI包中。
BRepBuilder_MakeFace類的實際功能是在 BRepLib_MakeFace類中實現的。
BRepBuilder_MakeFace 類是個封裝接口的功能。
看懂MakeFace基本就理解了邊界表示法。
其他略
1.2、邊界表示法(略)
1.3、BRepOffsetAPI 偏移量的類。
1.4、倒角
倒圓角 Fillet ,倒角Chamfer, 滾球法Rolling Ball。
1.5、HLR的軟件
官方sample里的軟件。軟件功能是:自動生成二維圖紙,遮擋部分不畫,或者畫可以選擇控制。
這個軟件的代碼是別人寫的, 比較亂,不好理解。
Draw->TKTopTest->HLRTest包中。
1.6、布爾運算
運算速度慢的原因是需要求相交線和各種方程運算,而且默認的運算精度比較高是1e-7。
做布爾運算時候的歷史修改記錄的開關。會記錄運算過程中的歷史,可以關閉記錄開關。
開發文檔中,高級選項設置會對運算速度有影響。
2、Automated Testing System
draw的一些自動測試用例。就是OCCT系統的測試用例。配置環境變量后可以使用。
可以用來熟悉draw命令的使用。命令實現中調用occt的類,也可以調用學習。
3、介紹已經實現的項目
-
occQt 項目和KGV的Git示例。
-
RvmTranslator 使用數據交換模塊將船舶、管道、工廠模型進行數字化交付。
-
PipeCAD 三維管道設計軟件
4、模塊介紹
4.1Module ModulingData
1、ToolKit TKBRep
- Package BinTools 序列化成二進制的BRep格式文件。
2、ToolKit TKGeomBase
和幾何相關的基礎計算。
- Package BinTools 序列化成二進制的BRep格式文件。
- Package BndLib 算包圍盒。
- Package CPnts 離散的函數。
- Package Extrema 求極值。
- Package GC 構造基本曲線曲面。
- Package GCE2D 構造二維基本曲線。
- Package GCPnts 曲線的離散,采樣。
- Package Geom2dConvert 轉換、擬合成B樣條曲線。
- Package GeomConvert 三維曲面的擬合。
- Package GeomLib 插值和點的反求。
- Package GeomProjLib 投影算法。
- Package GeomTools 導入導出格式使用的容器。
- Package IntAna 基本曲線曲面求交計算。
- Package IntAna2d 二維曲線的求交。
- Package ProjLib 基本曲線曲面投影。沒有B樣條。
- Package gce 構造加班gp的曲線和曲面的對象。
3、ToolKit TKTopAlgo
- Package BRepClass 定位,點是否在參數空間中。
- Package BRepClass3d 體定位,點是否在一個體的里面。
- Package BRepExtrema 求極值。極大值,極小值。
- Package BRepLib 生成BRep體的機構類型。
- Package BRepBuilderAPI 是對BRepLib包中類的簡單封裝。
4、ToolKit TKPrim
- Package BRepPrimAPI 基本體的構造。
5、ToolKit TKMesh
- Package BRepMesh 對模型進行網格化。
——一般用 BRepMesh_IncrementalMesh類。
6、ToolKit TKBO
- Package BRepAlgoAPI 做布爾運算。
——BRepAlgoAPI_Section類 取交線。
——BRepAlgoAPI_Splitter類,把模型分成兩部分。
——BRepAlgoAPI_Defeaturing類,去除不需要的模型。開口,倒角,倒圓。
7、ToolKit TKFeat
- Package BRepFeat 機械零件設計時候添加的小支撐等特征模型。
8、ToolKit TKFillet
倒圓角,到平面。
9、ToolKit TKHLR
工程制圖中去掉隱藏線。
4.2Module Visualization
1、ToolKit TKV3d
視圖的變換,模型的選擇編輯,在這里實現。
2、ToolKit TKService
和第三方庫有關的。
- Package Wasm 在web上面顯示的OCC的窗口。支持HTML5 canvas。
3、ToolKit TKMeshVS
- Package MeshVS 云圖的顯示效果。
4.3Module DataExchange
數據交換部分。
- Package TKSTL網格數據怎么從BRep體中導出來。
ToolKit TKXDEIGES和ToolKit TKXDESTEP 通過XDE框架去讀取。
4.4Module ApplicationFramework
一套基本的應用程序框架。
4.5Module Draw
一個命令關聯一個應用。
5、提問解答
1、求弧長
——完——
總結
以上是生活随笔為你收集整理的OCCT培训笔记(刘星讲)--第2天的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ruby编程语言简介
- 下一篇: SSM整合(一)