PythonOCC 3D图形库学习—创建立方体模型
2016-03-04 10:25
609 查看
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创建一个最简单的立方体并显示出来。
显示结果如下,按键盘上的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
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创建一个最简单的立方体并显示出来。
''' This examples creates and displays a simple box. ''' # The first line loads the init_display function, necessary to # enable the builtin simple gui provided with pythonocc from OCC.Display.SimpleGui import init_display # Then we import the class that instanciates a box # Here the BRepPrimAPI module means Boundary Representation Primitive API. # It provides an API for creation of basic geometries like spheres,cones etc from OCC.BRepPrimAPI import BRepPrimAPI_MakeBox # Following line initializes the display # By default, the init_display function looks for a Qt based Gui (PyQt, PySide) display, start_display, add_menu, add_function_to_menu = init_display() # The BRepPrimAPI_MakeBox class is initialized with the 3 parameters of the box: widht, height, depth my_box = BRepPrimAPI_MakeBox(10., 20., 30.).Shape() # Then the box shape is sent to the renderer display.DisplayShape(my_box, update=True) # At last, we enter the gui mainloop 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
相关文章推荐
- Python自动化单元测试框架
- [python] pool
- python Scrapy安装和介绍
- eclipse mars python插件 和 scala插件
- 阿拉伯数字转换成中文大写,中文货币的表达方式 python
- python爬虫基础知识
- 【机器学习算法-python实现】Adaboost的实现(1)-单层决策树(decision stump)
- 【python】编程语言入门经典100例--18
- python-技巧
- python获得当前工作目录和修改
- python相似模块用例
- Python图像处理库PIL的ImageOps模块介绍
- Python学习笔记day7
- Elasticsearch v2.2 快速入门(含curl,Sense,python 3种客户端方式)
- python3 爬虫 模拟登陆豆瓣修改签名
- Python学习笔记(1):语法基础
- python相似模块用例
- 用Python编写简单的微博爬虫
- 使用py2exe在Windows下将Python程序转为exe文件
- 使用Python来开发Markdown脚本扩展的实例分享