PythonOCC 3D圖形庫學習—創建立方體模型


Open CASCADE(簡稱OCC)平台是是一個開源的C++類庫,OCC主要用於開發二維和三維幾何建模應用程序,包括通用的或專業的計算機輔助設計CAD系統、制造或分析領域的應用程序、仿真應用程序或圖形演示工具。

PythonOCC是對Open CASCADE的封裝。PythonOCC按照官方描述:3D CAD/CAE/PLM DEVELOPMENT FRAMEWORK FOR THE PYTHON PROGRAMMING LANGUAGE. 即用於開發CAD/CAE/CAM程序的一個Python框架。PythonOCC的下載地址為:http://www.pythonocc.org/download/

學習一個框架先從最簡單的"Hello world"程序開始,下面用PythonOCC創建一個最簡單的立方體並顯示出來。

 1 '''
 2 This examples creates and displays a simple box.
 3 '''
 4 
 5 # The first line loads the init_display function, necessary to
 6 # enable the builtin simple gui provided with pythonocc
 7 from OCC.Display.SimpleGui import init_display
 8 
 9 # Then we import the class that instanciates a box
10 # Here the BRepPrimAPI module means Boundary Representation Primitive API.
11 # It provides an API for creation of basic geometries like spheres,cones etc
12 from OCC.BRepPrimAPI import BRepPrimAPI_MakeBox
13 
14 # Following line initializes the display
15 # By default, the init_display function looks for a Qt based Gui (PyQt, PySide)
16 display, start_display, add_menu, add_function_to_menu = init_display()
17 
18 # The BRepPrimAPI_MakeBox class is initialized with the 3 parameters of the box: widht, height, depth
19 my_box = BRepPrimAPI_MakeBox(10., 20., 30.).Shape()
20 
21 # Then the box shape is sent to the renderer
22 display.DisplayShape(my_box, update=True)
23 
24 # At last, we enter the gui mainloop
25 start_display()

顯示結果如下,按鍵盤上的W,S,H鍵可以在線框模型,面模型和消隱線模型之間切換。按住左鍵移動鼠標可以旋轉物體,鼠標中鍵用於縮放,按住鼠標中鍵可以平移物體

參考:

http://www.pythonocc.org/

http://www.vrplumber.com/py3d.py

https://github.com/tpaviot/pythonocc-core/blob/5b7ac9167e50e302cea534c5c7777ca2432f6d09/doc/examples/helloworld.rst


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM