VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > python教程 >
  • python基础教程之【学习笔记】Python科学计算三维可视化(黄天羽、嵩天)(学习中。。)(3)

 


显示一个三维对象

image

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from tvtk.api import tvtk
 
# 创建一个长方体数据源,并且同时设置其长宽高
s = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0)
# 使用PolyDataMapper将数据转换为图形数据
m = tvtk.PolyDataMapper(input_connection=s.output_port)
# 创建一个Actor
a = tvtk.Actor(mapper=m)
# 创建一个Renderer,将Actor添加进去
r = tvtk.Renderer(background=(0, 0, 0))
r.add_actor(a)
# 创建一个RenderWindow(窗口),将Renderer添加进去
w = tvtk.RenderWindow(size=(300, 300))
w.add_renderer(r)
# 创建一个RenderWindowInteractor(窗口的交互工具)
i = tvtk.RenderWindowInteractor(render_window=w)
# 开启交互
i.initialize()
i.start()

将长方体数据转化为三维图像运用了什么技术?

    管线(Pipeline),对象之间协调完成工作的过程,需要众多的的TVTK对象共同协调完成,如tvtk.CubeSource、tvtk.PolyDataMapper、tvtk.Actor、tvtk.Renderer、tvtk.RenderWindow、tvtk.RenderWindowInteractor

1.2 TVTK管线与数据加载

管线基本流程

image

几乎所有渲染引擎都会涉及管线技术,TVTK管线分为2部分,其中:

        可视化管线:将原始数据加工为图形数据的过程

imageimage        图形管线:图形数据加工为我们所看到的图像的过程

imageimage

IVTK工具观察管线

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from tvtk.api import tvtk
from tvtk.tools import ivtk
from pyface.api import GUI
 
s = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0)
m = tvtk.PolyDataMapper(input_connection=s.output_port)
a = tvtk.Actor(mapper=m)
 
#创建一个带Crust(Python Shell)的窗口
gui = GUI()
win = ivtk.IVTKWithCrustAndBrowser()
win.open()
win.scene.add_actor(a)
 
#开始界面消息循环
gui.start_event_loop()
相关教程