一:Mayavi管线

mlab.show_pipeline()  #显示管线层级,来打开管线对话框

(一)管线中的对象scene

Mayavi Scene:处于树的最顶层的对象,他表示场景,配置界面中可以设置场景的背景,前景色,场景中的灯光,以及其他一些选项
>>> s = mlab.gcf()  #获取当前场景
>>> print(s)  #获取当前场景状态
<mayavi.core.scene.Scene object at 0x00000000014E66D0>
>>> print(s.scene.background)  #输出管线中的背景色
(0.5, 0.5, 0.5)

(二)GridSource网格数据源

scalars标量数据,他就是传递给mesh的标量数组,他表示mesh表面的每个点的数组
>>> source = s.children[]  #获取GridSource对象,因为scene场景中有多个数据集合sources,我们获取当前唯一的这一个
>>> print(repr(source))  #打印返回的字符串
<mayavi.sources.vtk_data_source.VTKDataSource object at 0x0000000014117570>
>>> print(source.name)  #返回该节点的名称
GridSource >>> print(repr(source.data.points))  #打印GridSource的坐标(空间坐标,三维)
[(0.0, 1.0852211291184772, 0.0), ..., (-0.01969313518771439, -1.5671711510166164
, -0.00024748426251406075)], length =   #length说明坐标数组大小是126504 >>> print(repr(source.data.point_data.scalars))  #打印出每个点对应的标量数组
[0.0, ..., -0.00024748426251406075], length =

(三)PolyDataNormals是数据源的法向量

>>> manager = source.children[]
>>> print(manager)
<mayavi.filters.poly_data_normals.PolyDataNormals object at 0x00000000163D1308>

(四)Colors and legends

>>> colors = manager.children[]
>>> colors.scalar_lut_manager.lut_mode = "Blues"
>>> colors.scalar_lut_manager.show_legend = True

(五)Surface对象:将GridSource输出的PolyData数据转换为最终的在场景中显示的三维实体

>>> surface = colors.children[]    #获得颜色的第一个子节点
>>> surface.actor.property.representation = "wireframe"
>>> surface.actor.property.opacity = 0.6

总结:程序配置属性的步骤

.获取场景对象,mlab.gcf()
.通过children属性,在管线中找到需要修改的对象
.当其配置窗口由多个选项卡,属性需要一级一级获得

Mayavi管线:是层级管线,相互嵌套,需要使用children获取下一级
TVTK管线:分为可视化管线和图形管线两部分,用于将TVTK中各个对象穿连起来

科学计算三维可视化---Mayavi入门(Mayavi管线)的更多相关文章

  1. 科学计算三维可视化---Mlab基础(管线控制函数)

    科学计算三维可视化---TVTK管线与数据加载(可视化管线和图像管线了解) 科学计算三维可视化---Mayavi入门(Mayavi管线) Mlab管线控制函数的调用 Sources:数据源 Filte ...

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

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

  3. 科学计算三维可视化---TraitsUI与Mayavi实例

    TraitsUI与Mayavi实例 一:创建一个简单的TraitsUI与Mayavi实例 from numpy import sqrt,sin,mgrid from traits.api import ...

  4. 科学计算三维可视化---TVTK入门(数据加载)

    一:数据加载 大多数可视化应用的数据并非是在TVTK库中构建的,很多都是通过接口读取外部数据文件 (一)使用vtkSTLReader来读取外部文件 .stl 文件是在计算机图形应用系统中,用于表示三角 ...

  5. 科学计算三维可视化---TVTK入门(创建和显示三维对象)

    一:创建一个基本的三维对象 (一)长方体操作 traits:就是TVTK对象的属性 (1)对象属性操作 >>> from tvtk.api import tvtk >>& ...

  6. 科学计算三维可视化---Mlab基础(数据可视化)

    推文:科学计算三维可视化---TVTK库可视化实例 使用相关函数:科学计算三维可视化---Mlab基础(管线控制函数) 一:mlab.pipeline中标量数据可视化 通过持续实例,来感受mlab对数 ...

  7. Python科学计算三维可视化(整理完结)

    中国MOOC<Pyhton计算计算三维可视化>总结 课程url:here ,教师:黄天宇,嵩天 下文的图片和问题,答案都是从eclipse和上完课后总结的,转载请声明. Python数据三 ...

  8. 科学计算三维可视化---Mlab基础(鼠标选取交互操作)

    一:鼠标选取介绍 二:选取红色小球分析 相关方法:科学计算三维可视化---Mlab基础(基于Numpy数组的绘图函数) 1.小球场景初始化建立 import numpy as np from maya ...

  9. 科学计算三维可视化---Mayavi入门(Mayavi库的基本元素和绘图实例)

    一:Mayavi库的基本元素 .处理图形可视化和图形操作的mlab模块 .操作管线对象,窗口对象的api (一)mlab模块 (二)mayavi的api 二:快速绘图实例 (一)mlab.mesh的使 ...

  10. 科学计算三维可视化---Mayavi可视化实例

    一:Dragon绘制实例(三维扫描的绘制) 三维扫描主要用于对物体空间外形结构以及色彩进行扫描,用以获得物体表面的空间坐标, 他的主要意义在于能够将实物的立体信息转换为计算机能够直接处理的数据信号,为 ...

随机推荐

  1. Gogoing的NABCD

    特点之一:路线推荐 N  用户出行需要一个合理的路线计划 A 运用百度地图,还有根据自己的所想去的地方,推荐最省时间,最省钱的路线安排 B 方便用户出行,节约时间,节约金钱 C 对于旅行方面的App, ...

  2. css3学习笔记三

    css3有些特殊的元素选择器这和jquery相似.效果图如下

  3. Monty Hall 问题与贝叶斯定理的理解

     三门问题(Monty Hall problem),是一个源自博弈论的数学游戏问题,大致出自美国的电视游戏节目Let's Make a Deal.问题的名字来自该节目的主持人蒙提·霍尔(Monty H ...

  4. BETA-1

    前言 我们居然又冲刺了·一 团队代码管理github 站立会议 队名:PMS 530雨勤(组长) 过去两天完成了哪些任务 发现之前的代码居然已经有了陌生感,默默地复习一遍并做注释 阅读关于基于视频的车 ...

  5. 树莓派与Arduino Leonardo使用NRF24L01无线模块通信之基于RF24库 (二) 发送自定义数据

    在我的项目里,树莓派主要作为中心节点,用于接收数据,Arduino作为子节点,用于发送数据,考虑到以后会有很多子节点,但又不至于使得代码过于繁琐,因此所有的传输数据添加一个头部编号用于区分不同节点. ...

  6. yum与rmp

    清理一切缓存[root@geust02 ~]# yum   clean  all  重建元数据[root@geust02 ~]# yum  makecache 查询vim相关的软件包[root@geu ...

  7. Delphi函数的out、var等关键字的作用,和使用场景

    问题描述 Delphi函数的out.var等关键字的作用,和使用场景 Delphi函数的out.var等关键字的作用,和使用场景,我知道var是作为传值调用,但是像out这个关键字又是什么作用呢? 解 ...

  8. Oracle与SQLSERVER 批处理执行 DDL 语句

    1. 公司里面的 很多同名的数据库 的一个表都错误的多了一个列 要是每个都用数据库连接工具打开 感觉太废时间了. 比如写个sql命令来执行. 具体方法: Oracle 使用 sqlplus sqlpl ...

  9. SpringMVC 之 mvc:exclude-mapping 不拦截某个请求

    在使用 SpringMVC 是,配置了一个 Session 拦截器,用于拦截用户是否登录,但是用户访问登录页面和注册页面时就不需要拦截了,这时就需要用到这个标签了 <mvc:execlude-m ...

  10. MySQL 双主问题集

    最近试用MySQL高可用方案,需要配MySQL双主,对期间遇到的问题做下记录. 1.导出锁表问题 mysqldump 命令增加参数 --skip-opt -q 可避免导出时锁表: 2.导出\导入所有数 ...