CubeSource对象是长方体数据源对象。本次在安装成功TVTK库的基础上显示一个长方体对象。通过以下代码,我们设置一个长宽高分别为1.0,2.0,3.0的长方体数据源并通过管线显示出来。

from tvtk.api import tvtk#导入tvtk库
s = tvtk.CubeSource(x_length=1.0,y_length=2.0,z_length=3.0)
#创建长方体数据源并设置长宽高
m = tvtk.PolyDataMapper(input_connection=s.output_port)
#将CubeSource数据转换为图形数据
a = tvtk.Actor(mapper=m)#创建一个Action实体Actor
r = tvtk.Renderer(background=(0,0,0))#渲染器背景为(0,0,0)
r.add_actor(a)
#创建一个渲染器Render将Actor添加进去
w = tvtk.RenderWindow(size=(300,300))
#创建一个绘制窗口大小是300*300
w.add_renderer(r)
#将创建的Render加入到窗口中
i = tvtk.RenderWindowInteractor(render_window=w)#创建交互工具
i.initialize()
i.start()
'''
显示一个长方体,从原始数据转换为屏幕上的图像,由TVTK对象共同完成
tvtk.CubeSource:长方体数据源
tvtk.PolyDataMapper:图形数据对象
tvtk.Actor:Action实体对象
tvtk.Renderer:渲染器
tvtk.RenderWindow:绘制窗口对象
tvtk.RenderWindowInteractor:交互工具窗口
在tvtk中,这种对象之间协调完成工作的过程被称作管线(Pipeline)
'''
'''
管线技术也称流水线技术(Pipeline)每个对象只实现相对简单的任务,
整个管线进行复杂的可视化处理
在tvtk中分为可视化管线和图形管线
可视化管线(Visualization Pipeline):将原始数据加工成图形数据的过程
图形管线(Graphics Pipeline):图形数据加工为所看到的图像
数据可视化分为五个模块:
数据模块,数据预处理模块,数据映射模块,绘制模块和显示模块。
前两部分为可视化管线
与可视化管线相关的两个对象:
tvtk.CubeSource数据对象和tvtk.PolyDataMapper图形对象
后三部分为图形管线
与图形管线相关的四个tvtk对象:
Actor实体对象,
Renderer渲染场景对象
RenderWindow渲染用的图形窗口对象
RenderWindowInteractor用户交互对象 '''

上面那段代码运行起来也很有意思(对于我这么一个初接触的人来说)

它会显示一个长方体对象,可以通过鼠标控制它的旋转和大小

  下面是Python shell运行的效果

  Python其他管线对象的使用也许会在后续继续尝试

Python 可视化TVTK CubeSource管线初使用的更多相关文章

  1. Python可视化TVTK库初使用

    本周学习了初步的TVTK库的安装及使用方法,第一次通过tvtk.CubeSource方法建立了一个长方体对象.对TVTK的接触有了新的体会. 首先,在网上下载了以下五个库并按顺序通过pip指令在cmd ...

  2. 科学计算三维可视化---TVTK管线与数据加载(用IVTK根据观察管线)

    一:用IVTK根据观察管线 (一)引入该工具 from tvtk.tools import ivtk 可能需要安装pygments pip3 install pygments (二)使用ivtk显示立 ...

  3. 科学计算三维可视化---TVTK管线与数据加载(可视化管线和图像管线了解)

    一:TVTK的管线 使用管线技术将TVTK中各个对象穿连起来,几乎所有渲染引擎都会提到管线技术 在TVTK中,每个对象只需要实现相对简单的任务,整个管线则能根据用户的需求,实现复杂的数据可视化处理. ...

  4. 科学计算三维可视化---TVTK入门(安装与测试)

    推文:http://docs.huihoo.com/scipy/scipy-zh-cn/tvtk_intro.html 推文:http://code.enthought.com/pages/mayav ...

  5. Python可视化学习(1):Matplotlib的配置

    Matplotlib是一个优秀的可视化库,它提供了丰富的接口,让Python的可视化落地显得非常容易上手.本系列是本人学习python可视化的学习笔记,主要用于监督自己的学习进度,同时也希望和相关的博 ...

  6. Pycon 2017: Python可视化库大全

    本文首发于微信公众号“Python数据之道” 前言 本文主要摘录自 pycon 2017大会的一个演讲,同时结合自己的一些理解. pycon 2017的相关演讲主题是“The Python Visua ...

  7. 高效使用 Python 可视化工具 Matplotlib

    Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表.本文主要介绍了在学习Matplotlib时面临的一些挑战,为什么要使用Matplo ...

  8. Python可视化库-Matplotlib使用总结

    在做完数据分析后,有时候需要将分析结果一目了然地展示出来,此时便离不开Python可视化工具,Matplotlib是Python中的一个2D绘图工具,是另外一个绘图工具seaborn的基础包 先总结下 ...

  9. 数据分析之---Python可视化工具

    1. 数据分析基本流程 作为非专业的数据分析人员,在平时的工作中也会遇到一些任务:需要对大量进行分析,然后得出结果,解决问题. 所以了解基本的数据分析流程,数据分析手段对于提高工作效率还是非常有帮助的 ...

随机推荐

  1. 5. React 组件的协同使用 组件嵌套和Mixin

            组件是React的核心,构建大型项目时多个组件之间需要进行协同使用.可以从横向和纵向两个角度来实现组件的协同使用,纵向的协同使用就是组件嵌套,横向的协同使用就是Mixin(抽取公共方法 ...

  2. 开源项目——小Q聊天机器人V1.0

    小Q聊天机器人V1.0 http://blog.csdn.net/baiyuliang2013/article/details/51386281 小Q聊天机器人V1.1 http://blog.csd ...

  3. UNIX网络编程——关于socket阻塞与非阻塞情况下的recv、send、read、write返回值

    1.阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有 区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 <0:出错,=0:连接关闭,>0接收到数据大小,特别:返回 ...

  4. 关于bootstrap-fileinput

    最近搞了一个很简单的项目,里面需要文件上传.当然文件上传也是很简单的,不过做出成品之后发现,卧槽,火狐和谷歌两个浏览器显示的内容不一致. 如下图,左边的是谷歌显示,右边是火狐显示. 其实,作为一个后台 ...

  5. Android进阶(四)一个APP引发的思索之ArrayList的add总是添加相同的值

    解决"ArrayList的add总是添加相同的值"问题 前言 最近在写一个小的Android APP,在用ArrayList的add时,总是出现添加相同值的现象.如下图所示: 错误 ...

  6. FFmpeg获取DirectShow设备数据(摄像头,录屏)

    这两天研究了FFmpeg获取DirectShow设备数据的方法,在此简单记录一下以作备忘.本文所述的方法主要是对应Windows平台的. 1.       列设备 ffmpeg -list_devic ...

  7. Google的两种广告推广方式

    1搜索关键字广告推送:AdWords: 覆盖广泛:在全球最大的搜索和网络平台上进行推广. 定位精准:锁定目标客户群体,让潜在客户轻松找上门. 成本可控:仅当用户点击广告时,您才支付费用. 2.网站内容 ...

  8. Leetcode_7_Reverse Integer

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41578077 Reverse Integer Revers ...

  9. 推荐一个优秀的c++源代码,TinyXml2

    项目主页:http://grinninglizard.com/tinyxml2docs/index.html tinyxml2.h /* Original code by Lee Thomason ( ...

  10. 小强的HTML5移动开发之路(4)——CSS2和CSS3

    来自:http://blog.csdn.net/dawanganban/article/details/17653149 在上一篇中我们提到学习HTML5要具备CSS的知识,在页面设计的时候HTML5 ...