python绘制圆柱体的方法

yipeiwu_com6年前Python基础

本文实例为大家分享了python绘制圆柱体示的具体代码,供大家参考,具体内容如下

#!/usr/bin/env python
 
import vtk
# 参考的C++版本源码及解释 感谢原作者
# http://blog.csdn.net/www_doling_net/article/details/8536376
 
def main():
  cylinder = vtk.vtkCylinderSource()
  cylinder.SetHeight(3.0) # 设置柱体的高
  cylinder.SetRadius(1.0) # 设置柱体横截面的半径
  cylinder.SetResolution(6) # 设置柱体横截面的等边多边形的边数
 
  cylinderMapper = vtk.vtkPolyDataMapper() # 渲染多边形几何数据
  cylinderMapper.SetInputConnection(cylinder.GetOutputPort()) # VTK可视化管线的输入数据接口 ,对应的可视化管线输出数据的接口为GetOutputPort();
  cylinderActor = vtk.vtkActor()
  cylinderActor.SetMapper(cylinderMapper) # 设置生成几何图元的Mapper。即连接一个Actor到可视化管线的末端(可视化管线的末端就是Mapper)。
  renderer = vtk.vtkRenderer() # 负责管理场景的渲染过程
  renderer.AddActor(cylinderActor)
  renderer.SetBackground(0.1, 0.2, 0.4)
  renWin = vtk.vtkRenderWindow() # 将操作系统与VTK渲染引擎连接到一起。
  renWin.AddRenderer(renderer)
  renWin.SetSize(300, 300)
  iren = vtk.vtkRenderWindowInteractor() # 提供平台独立的响应鼠标、键盘和时钟事件的交互机制
  iren.SetRenderWindow(renWin)
 
  # 交互器样式的一种,该样式下,用户是通过控制相机对物体作旋转、放大、缩小等操作
  style = vtk.vtkInteractorStyleTrackballCamera()
  
  iren.SetInteractorStyle(style)
  iren.Initialize()
 
  iren.Start()
 
  # Clean up
  del cylinder
  del cylinderMapper
  del cylinderActor
  del renderer
  del renWin
  del iren
 
main()

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python3.5 正常安装 却不能直接使用Tkinter包的问题

一个小的解决方法分享: 正常安装的情况下,你所需要的包都能在python文件夹下找到,找到你所需要的包 ,把它复制到Python35\Lib\site-packages 这个文件夹下,这...

python生成器用法实例详解

本文实例讲述了python生成器用法。分享给大家供大家参考,具体如下: 1. 生成器 利用迭代器,我们可以在每次迭代获取数据(通过next()方法)时按照特定的规律进行生成。但是我们在实...

Python  Django 母版和继承解析

Python Django 母版和继承解析

可以把多个页面相同的部分提取出来,放在一个母板里,这些页面只需要继承这个母板就好了 通常会在母板中定义页面专用的 CSS 块和 JS 块,方便子页面替换 定义块: {% block...

Python中用Decorator来简化元编程的教程

少劳多得 Decorator 与 Python 之前引入的元编程抽象有着某些共同之处:即使没有这些技术,您也一样可以实现它们所提供的功能。正如 Michele Simionato 和我在...

django数据模型(Model)的字段类型解析

字段类型(Field types) 1、AutoField 它是一个根据 ID 自增长的 IntegerField 字段。通常,你不必直接使用该字段。如果你没在别的字段上指定主 键,Dj...