TVTK入门

创建一个基本三维对象

tvtk.CubeSource()

s = tvtk.CubeSource(traits)

构造具有一定traits属性值的长方体数据源对象。

CubeSource对象的属性

属性 说明
s.x_length 长方体对象在X轴方向的长度
s.y_length 长方体对象在y轴方向的长度
s.z_length 长方体对象在z轴方向的长度
s.center 长方体对象所在坐标系的原点
s. output_points_precision 长方体对象的精度
VTK方法 TVTK 说明
Set/GetXLength() x_length 设置/获取长方体对象在X轴方向的长度
Set/GetYLength() y_length 设置/获取长方体对象在Y轴方向的长度
Set/GetZLength() z_length 设置/获取长方体对象在Z轴方向的长度
Set/GetCenter() center 设置/获取长方体对象所在坐标系的原点
...

TVTK库的基本三维对象

三维对象 说明
CubeSource 立方体三维对象数据源
ConeSource 圆锥三维对象数据源
CylinderSource 圆柱三维对象数据源
ArcSource 圆弧三维对象数据源
ArrowSource 箭头三维对象数据源

TVTK库显示一个三维对象

显示一个长方体

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()

原始数据转换为屏幕上图像,TVTK对象共同协调完成:
tvtk.CubeSource
tvtk.PolyDataMapper
tvtk.Actor
tvtk.Renderer
tvtk.RenderWindow
tvtk.RenderWindowInteractor
在TVTK中,这种对象之间协调完成工作的过程被称作管线(Pipeline)。

Reference :
中国大学MOOC北京理工大学Python科学计算三维可视化黄天羽、嵩天老师课件
课程主页

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 创建一个基本三维对象 理解TVTK的管线 管线技术(Pipeline,流水线) 可视化管线(Visualizati...
    不做大哥好多年阅读 867评论 0 0
  • 1 前言 一直想沿着图像处理这条线建立一套完整的理论知识体系,同时积累实际应用经验。因此有了从使用AVFounda...
    RichardJieChen阅读 5,963评论 5 12
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 12,815评论 6 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,941评论 19 139
  • 青春洒尽谊香浓 岁月无期期已至 无限风光送晚霞 此景已故谁人在 人生各路朝天,祝愿精彩一生 携梦,继续前行
    话晨阅读 278评论 2 10

友情链接更多精彩内容