VTK文件格式

VTK文件格式,第1张

什么是vtk文件

Vtk模型是一种以文本方式表示的3D模型文件,其能够表示点面信息,而且能够以人类易读易懂的方式以文本的形式存储下来。在科学研究中,这种文件格式使用得非常多,我们这里详细的讲解一下,这种文件格式。

vtk是3D模型的一种格式,现在版本已经到4.0了。你可以在网上找到这种格式的详细解释,当然最好去google搜索。

打开bunny.vtk文件,我们以它来解释vtk文件的格式,其中#是注释的开始

View Raw Code ?

# 这里表示使用的是vtk的3.0版本。虽然4.0版本已经出来了,不过目前广泛使用的仍然是3.0

# vtkDataFileVersion3.0

# 这一行是输出vtk文件的软件写的文字,无论什么都可以。

vtk output

#ASCII,表示这份vtk使用的标准ASCII码字符集

ASCII

# “DATASETPOLYDATA”表示多边形面集,面是由一个个点组成的

DATASETPOLYDATA

# 这里表示这个模型由35947个点组成,每个坐标的分量是一个浮点型

POINTS35947float

# 下面是35947个点的数据

-0.0378297 0.12794 0.00447467 -0.0447794 0.128887 0.00190497 -0.0680095 0.151244 0.0371953

-0.00228741 0.13015 0.0232201 -0.0226054 0.126675 0.00715587 -0.0251078 0.125921 0.00624226

-0.0371209 0.127449 0.0017956 0.033213 0.112692 0.0276861 0.0380425 0.109755 0.0161689

-0.0255083 0.112568 0.0366767 -0.0245306 0.112636 0.0373469 0.0274031 0.12156 0.0212208

-0.0628961 0.158419 -0.0175871 0.0400813 0.104202 0.0221684 0.0451532 0.0931968 0.0111604

..........................................

..........................................

POLYGONS 69451 277804

3 21216 21215 20399

3 9186 9280 14838

3 16020 13433 5187

3 16021 16020 5187

3 20919 20920 21003

3 23418 15239 23127

3 30553 27378 30502

..................

....................

CELL_DATA 69451

POINT_DATA 35947

你可以在 http://wenku.baidu.com/view/a67cdad049649b6648d747fc.htm 这个网站找到vtk 4.0版本的解释。下面对几个重要的段落进行一下解释。

1、# vtk DataFile Version 3.0表示这个vtk文件的版本是3.0。最新版本是4.0,不过改变不大。

2、vtk output表示该文件是名字,一般写成vtk output就可以了,基本上,你没有必要去改变它。

3、ASCII表示该文件的格式,是ascii版本,该位置也可以写binary,那么这个文件就是二进制格式的了。

4、DATASET POLYDATA中的DATASET是关键字表示数据集的意思,POLYDATA表示数据的类型,可以取STRUCTED_POINTS、STRUCTURED_GRID、UNSTRUCTURED_GRID、POLYDATA、FIELD等。这里取的是POLYDATA,表示三角形或者四边形数据。

5、 POINTS 35947 float 表示这个模型由35947个点组成,每个点的分量,其数据类型是浮点型。这一行后面就是35947*3个float型数字了。每三个数字表示一个点。

6、 POLYGONS 69451 277804,POLYGONS是关键字,69451表示模型有69451个多边形组成,后面行的3 21216 21215 20399中的3表示每个多边形由三个顶点组成,如果等于4,那么每个多边形有4个顶点组成。277804表示整个POLYGONS占据的数组的长度,长度计算公式是69451*4 = 277804,乘数4是3 21216 21215 20399这组元素的长度(一共有4个元素),也就每一行元素的个数,这主要是用来计算存储空间的。

7、 接下来后面是69451行数据,每一行是一个多边形面。每个面由3个顶点组成,如3 21216 21215 20399这一行,后面的21216 21215 20399这三个数字,表示在上面的POINTS 35947 float段的顶点索引。

8、 CELL_DATA 69451 表示面的个数,和上面定义的面数目必须一致。

9、 POINT_DATA 35947表示点的个数,和“POINTS 35947 float”定义的也必须相同。 Ok,vtk格式就这么多精髓了,虽然有些关键字这里我们并没有讲到,但是已经足够了,在以后遇到如果不明白,可以质询我们,也可以查查网上的文档,用一下google。

VTK简介: VTK(Visualization ToolKit)是一个开放源码、自由获取的软件系统,全世界的数以千计的研究人员和开发人员用它来进行3D计算机图形,图像处理,可视化。VTK包含一个c++类库,众多的翻译接口层,包括Tcl/Tk,Java,Python。 Visualization Toolkit 是一个用于可视化应用程序构造与运行的支撑环境,它是在三维函数库OpenGL 的基础上采用面向对象的设计方法发展起来的,它将我们在可视化开发过程中会经常遇到的细节屏蔽起来,并将一些常用的算法封装起来。比如Visualization Toolkit 将我们在表面重建中比较常见的Marching Cubes 算法封装起来,以类的形式给我们以支持,这样我们在对三维规则点阵数据进行表面重建时就不必再重复编写MarchingCubes 算法的代码,而直接使用Visualization Toolkit 中已经提供的vtkMarchingCubes 类。 Visualization Toolkit 是给从事可视化应用程序开发工作的研究人员提供直接的技术支持的一个强大的可视化开发工具,它以用户使用的方便性和灵活性为主要原则,具有如下的特点:

1) 具有强大的三维图形功能。Visualization Toolkit 既支持基于体素Voxel-basedrendering 的体绘制Volume Rendering又保留了传统的面绘制,从而在极大的改善可视化效果的同时又可以充分利用现有的图形库和图形硬件

2) Visualization Toolkit 的体系结构使其具有非常好的流streaming 和高速缓存caching 的能力,在处理大量的数据时不必考虑内存资源的限制

3) Visualization Toolkit 能够更好的支持基于网络的工具比如Java 和VRML 随着Web 和Internet 技术的发展Visualization Toolkit 有着很好的发展前景

4) 能够支持多种着色如OpenGL 等

5) Visualization Toolkit 具有设备无关性使其代码具有良好的可移植性

6) Visualization Toolkit 中定义了许多宏,这些宏极大的简化了编程工作并且加强了一致的对象行为

7) Visualization Toolkit 具有更丰富的数据类型,支持对多种数据类型进行处理

8) 既可以工作于Windows *** 作系统又可以工作于Unix *** 作系统极大的方便了用户

VTK官方网站:http://www.vtk.org/

VTK下载:http://www.vtk.org/get-software.php#latest

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1889238

转的。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11548616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存