VTK知识学习(1)-概述

图像显示是一个重要的知识,其中VTK就是一个医学上常用的图像显示开发包。

1、总述

从结构上看,VTK程序段落主要包含两个部分。

一是数据和管道部分,

二是角色和渲染部分。

2、工作流程

工作的基本流程是"数据源Souce"--"过滤器Filter"-- "制图器Mapper"-- "角色Actor"--"渲染器Renderer"。

3、特点

从对象和语言上看,VTK的类和方法实现简介,程序清晰,可读性好,这也是C#的特点。

VTK对OpenGL进行了面向对象的封装,并设置了大量简单易用的默认值,

如"球体"的半径为5,球心位于(0,0,0), "摄像机camera"的默认视点在(0,0,0)等。

有OpenGL编程经历的程序员都清楚,没有这些默认值的OpenG程序,

一个参数设置不好,三维窗口里真不知道会看到啥!

关键是根据画面,你还不知道该如何修正程序或参数,因为你根本就不知道问题出在哪。

4、学习建议

作为第一个上手的VTK示例,你可以试着简单调整语句中的相关参数,

如球的边数,颜色等,并运行看看效果。如果有能力,还可以添加些语句,如球的半径等。或在此示例上的几簇号上进一步拓展VTK应用。

如果看完这些注解你还是"丈二和尚摸不着头脑",

请补充阅读一些相关知识点吧

首先是OpenGL,什么是坐标系统,什么是空间变换,什么是"管道",什么是纹理映射等等。

其次,找点VTK的资料,补充理论知识后再动手操作。

目前,有c#版本可以使用,当然最好是使用c++的版本了。

相关推荐
星火开发设计几秒前
二叉树详解及C++实现
java·数据结构·c++·学习·二叉树·知识·期末考试
xiaoxiaoxiaolll10 分钟前
《Light: Science & Applications》超表面偏振态与偏振度完全独立控制新范式
学习
sww_102640 分钟前
JVM基础学习
jvm·学习·测试工具
num_killer1 小时前
小白的Jenkins学习
运维·python·学习·jenkins
Every exam must be1 小时前
12.2 vue学习02
学习
sunfove1 小时前
照度 (E) 与亮度 (L) 的关系
学习
HL_风神2 小时前
设计原则之单一职责原则
c++·学习·设计模式·单一职责原则
CS创新实验室2 小时前
正态分布的深入学习:从数学发现到自然法则的演变
学习·数据挖掘·数据分析·统计学·正态分布
半夏知半秋2 小时前
rust学习-Option与Result
开发语言·笔记·后端·学习·rust
王夏奇2 小时前
Python库学习-标准库
学习