python绘制圆柱体的方法

yipeiwu_com5年前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设计】。

相关文章

对python中的xlsxwriter库简单分析

一、xlsxwriter 基本用法,创建 xlsx 文件并添加数据 官方文档:http://xlsxwriter.readthedocs.org/ xlsxwriter 可以操作 xls...

Python使用py2neo操作图数据库neo4j的方法详解

Python使用py2neo操作图数据库neo4j的方法详解

本文实例讲述了Python使用py2neo操作图数据库neo4j的方法。分享给大家供大家参考,具体如下: 1、概念 图:数据结构中的图由节点和其之间的边组成。节点表示一个实体,边表示实体...

python中matplotlib条件背景颜色的实现

如何根据图表中没有的变量更改折线图的背景颜色?例如,如果我有以下数据帧: import numpy as np import pandas as pd dates = pd.dat...

用Python实现校园通知更新提醒功能

用Python实现校园通知更新提醒功能

前言 这个项目实已经在一个月前已经完成了,一直都想写一篇博客来总结这个过程中遇到的一些问题。但最近一个月来都比较忙,所以一直拖到了现在。 首先说说起因吧,我没事的时候,总喜欢依次点开学校...

django 实现电子支付功能的示例代码

django 实现电子支付功能的示例代码

思路:调用第三方支付 API 接口实现支付功能。本来想用支付宝来实现第三方网站的支付功能的,但是在实际操作中发现支付宝没有 Python 接口,网上虽然有他人二次封装的的 Python...