TVTK 管线

2023-12-21 10:32
文章标签 管线 tvtk

本文主要是介绍TVTK 管线,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python科学计算三维可视化
黄天羽、嵩天

管线技术

Pipeline,流水线

分类

可视化管线(Visualization Pipeline)

将原始数据加工成图形数据的过程

  • TVTK对象说明
    CubeSource通过程序内部计算输出一组描述长方体的数据(PolyData)
    PolyDataMapper通过该映射器将数据Polydata映射为图形数据(mapper)
  • 
    #创建长方体数据源,同时设置其长宽高s = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0)#转换为图形数据m = tvtk.PolyDataMapper(input_connection=s.output_port)
  • 对象经由input_connectionoutput_port属性连接起来
    结果

图形管线(Graphics Pipeline)

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

  • TVTK对象说明
    Actor场景中的一个实体。它包括一个图形数据(mapper),具有描述该实体的位置、方向、大小的属性。
    Renderer渲染的场景。它包括多个需要渲染的Actor。
    RenderWindow渲染用的图形窗口,它包括一个或者多个Render。
    RenderWindowINteractor给图形窗口提供一些用户交互功能,例如平移、旋转、放大缩小。这些交互式操作并不改变Actor或者图形数据的属性,只是调整场景中的照相机(Camera)的一些设置。
  • 
    # 创建一个Actora = 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()
  • 结果图
    窗口

用 ivtk 工具观察管线

  • from tvtk.api import tvtk
    from tvtk.tools import ivtk
    from pyface.api import GUIs = 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)#修正窗口错误,使子窗口置于主窗口中dialog = win.control.centralWidget().widget(0).widget(0)
    from pyface.qt import QtCore
    dialog.setWindowFlags(QtCore.Qt.WindowFlags(0x00000000))
    dialog.show()#开始界面消息循环gui.start_event_loop()
  • 图形界面
    ivtk

  • 输出构成三维立方体的点的坐标
    输出

这篇关于TVTK 管线的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/519654

相关文章

OpenGL ES 2.0渲染管线

http://codingnow.cn/opengles/1504.html Opengl es 2.0实现了可编程的图形管线,比起1.x的固定管线要复杂和灵活很多,由两部分规范组成:Opengl es 2.0 API规范和Opengl es着色语言规范。下图是Opengl es 2.0渲染管线,阴影部分是opengl es 2.0的可编程阶段。   1. 顶点着色器(Vert

【Unity小技巧】URP管线遮挡高亮效果

前言 在URP渲染管线环境下实现物体遮挡高亮显示效果,效果如下: Unity URP遮挡高亮 实现步骤 创建层级,为需要显示高亮效果的物体添加层级,比如Player 创建一个材质球,也就是高亮效果显示的材质球找到Universal Renderer Data Assets 4.在Assets上添加两个Render Objects组件 第一个做如下三处设置 指定遮挡层级指

Real-Time Rendering笔记 --------------------------------- 渲染管线

一. 渲染管线:       渲染管线是指渲染的基本流程或步骤,基本渲染管线分为三个阶段:  应用程序( 逻辑 ) ------>  几何( 坐标变化和光照流水线 T&L ) ------> 光栅化       1. 应用程序( 逻辑 ) 阶段: 进行的是逻辑处理 ( 如: 移动相机,改变粒子位置等。) 是在CPU中进行处理的。       2. 几何( 坐标变化和光

Vulkan教程 - 10 创建图形管线

在我们完成管线创建之前,我们需要告诉Vulkan渲染将要用到的帧缓冲附件的信息。我们需要明确有多少颜色和深度缓冲,每个又有多少采样以及它们的内容应该如何通过渲染操作来进行处理。所有这些信息都包装在渲染通道(render pass)对象中,我们就创建一个新的方法createRenderPass,在initVulkan中调用它,且它在createGraphicsPipeline之前。

Vulkan教程 - 09 固定管线

固定管线         老式图形API为多数图形管线提供了默认状态。而在Vulkan中你必须明确所有的东西,从视口大小到混合函数。本章我们会填充所有的结构体来配置这些固定管线操作。         VkPipelineVertexInputStateCreateInfo结构体描述了将要传给顶点着色器的顶点数据的格式,它主要通过以下两种方式描述:         绑定:数据间的距离以及数据是

七、OpenTK中的图形渲染管线

文章目录 一、顶点处理(一)顶点坐标变换(二)顶点属性设置 二、图元装配(一)三角形的生成(二)线带和多边形带 三、光栅化(一)像素的确定(二)像素颜色计算 一、顶点处理 (一)顶点坐标变换   在图形渲染中,顶点坐标变换是将顶点从模型空间转换到世界空间、视图空间和投影空间的过程。这个过程通常涉及到矩阵运算,包括平移、旋转和缩放。首先,将模型空间中的顶点通过模型矩阵转换到

【OpenGL学习笔记】--图像管线

图像管线(Image Pipeline)是计算机图形学中一个核心概念,尤其是在图形处理和渲染的上下文中。它是一个用于处理和渲染图像的流程,其中包括从场景数据的输入到最终图像输出的各个阶段。 图像管线的组成 顶点处理(Vertex Processing): 顶点着色器(Vertex Shader):在这一阶段,顶点着色器处理每个顶点的位置、颜色和其他属性。它负责将顶点从模型空间转换到屏幕空间。

Unity的渲染管线

渲染管线 概念 Unity的渲染管线是在图形学渲染管线的基础上,加上了高度可配置可扩展的框架,允许开发者自定义渲染流程。 渲染管线(渲染流水线)概述:将数据分阶段的变为屏幕图像的过程。 数据指的是模型、光源和摄像机等内容的顶点、纹理、光照等数据。 阶段:应用阶段—>几何阶段—>光栅化阶段 CPU和GPU CPU:中央处理器,负责逻辑处理。GPU:图形处理器,搭载在显卡上,

【OpenGL学习】OpenGL不同版本渲染管线汇总

文章目录 一、《OpenGL编程指南》第6版/第7版的渲染管线二、《OpenGL编程指南》第8版/第9版的渲染管线 一、《OpenGL编程指南》第6版/第7版的渲染管线 图1. OpenGL 2.1、OpenGL 3.0、OpenGL 3.1 等支持的渲染管线 二、《OpenGL编程指南》第8版/第9版的渲染管线 图2. OpenGL 4.3、OpenGL 4.5 等支持的渲

从渲染管线到着色器Shader实践

浏览器渲染管线原理 浏览器渲染管线是浏览器将HTML、CSS和JavaScript转换为用户可见的网页的过程。这一过程涉及多个步骤,包括解析、布局、绘制和合成等。下面是浏览器渲染管线的详细原理: 解析(Parsing): HTML解析:浏览器下载HTML内容后,首先进行HTML解析,将HTML文本转换为DOM(文档对象模型)树。DOM树是一个以HTML标签为节点的树状结构,表示了文档的内容和