Posted on 2022-11-12 15:31
eryar 閱讀(1779)
評論(0) 編輯 收藏 引用 所屬分類:
2.OpenCASCADE
Geometric Constrained Solver - PlaneGCS
eryar@163.com
Abstract: PlaneGCS is open source geometric constrained solver for 2d sketch. 2 main open source software use it as constrained solver: FreeCAD and SALOME Shaper.
Keywords: PlaneGCS
1 Introduction
在傳統(tǒng)的三維設(shè)計(jì)軟件中,都提供從草圖通過拉伸、放樣生成三維零件的功能。而草圖的繪制都提供幾何約束和參數(shù)化的功能來提高建模效率。目前主流商用軟件一般使用西門子D-Cubed DCM及達(dá)索的CGM。在開源世界也有兩款常用的幾何約束求解器:


在開源有限元前后處理平臺SALOME中,同時(shí)使用了這兩款幾何約束求解器:
https://git.salome-platform.org/gitweb/?p=modules/shaper.git;a=tree;f=src/SketchSolver
并做了封裝示例:PlaneGCSSolver&SolveSpaceSolver。OpenCASCADE將SALOME的Shaper模塊單獨(dú)做成CAD Builder,可以在CAD Builder中體驗(yàn)PlaneGCS的效果。

2 PlaneGCS
PlaneGCS字面意思是平面幾何約束求解器,主要用于二維草圖。支持的約束有:

- 水平約束 Horizontal Constraint





- 垂直約束 Perpendicular Constraint




除了以上列舉的約束以外,還支持參數(shù)變量的約束等。
3 Conclusion
PlaneGCS作為FreeCAD中二維草圖約束求解器,在社區(qū)反應(yīng)還不錯(cuò)。編譯PlaneGCS主要依賴Eigen,用到了Eigen中的非線性方程組求解算法,如BFGS等。
https://forum.freecadweb.org/viewtopic.php?t=20541
SALOME中對開源幾何約束求解器封裝的代碼可讀性強(qiáng),可以作為學(xué)習(xí)的示例代碼。開源世界為我們打開了一扇理論聯(lián)系實(shí)際的門,教材論文等一般理論性強(qiáng),結(jié)合開源代碼可以理論聯(lián)系實(shí)踐,提高學(xué)習(xí)效率。