VTK学习笔记3:IO操作读取写入xml文件和vtk文件
1.vtu文件
vtk实战(二十四)——读入vtu数据
vtk实战(三十)——写入vtu数据
2.vtp文件
2.1读入vtp文件
2.2 创建vtp文件
从网络示例和在线文档中,我收集了一些信息,创建一个完整的1-piece文件:
调用vtkXMLPloyDataWriter::SetInputData(vtkDataObject)
你传入一个vtkPolyData,你首先使用以下方法设置它:
SetVerts
SetLines
SetPolys
SetStrips
和父方法
SetPoints
但是我还没有弄清楚如何设置vtp字段PointData和CellData。
如何设置vtp字段PointData和CellData???
要设置点数据,您可以先获取点数据对象
vtkPointData* pointData = polydata->GetPointData();
然后你可以向它添加数组:
vtkFloatArray* myArray = vtkFloatArray::New();
myArray->SetName("myArray");
myArray->SetNumberOfComponents(1);
myArray->SetNumberOfTuples(polydata->GetNumberOfPoints());
// 这里设置数组元素...pointData->AddArray(myArray);
单元格数据也是如此,只需将 PointData 替换为 CellData 即可,
并将元组的数量设置为单元格的数量而不是Point的数量
sample1
source.vtp文件包含两个Point,一条Line
Point:
(0,0,0)和(1,0,0)
vtkSmartPointer<vtkPolyData> source = nullptr;if (source == nullptr){vtkNew<vtkPolyData> defaultSource;defaultSource->Allocate();vtkNew<vtkPoints> defaultPoints;defaultPoints->Allocate(6);defaultPoints->InsertNextPoint(0, 0, 0);defaultPoints->InsertNextPoint(1, 0, 0);vtkIdType defaultPointIds[2];defaultPointIds[0] = 0;defaultPointIds[1] = 1;defaultSource->SetPoints(defaultPoints);defaultSource->InsertNextCell(VTK_LINE, 2, defaultPointIds);source = defaultSource;}vtkSmartPointer <vtkXMLPolyDataWriter> polyWriter = vtkSmartPointer <vtkXMLPolyDataWriter>::New();polyWriter->SetFileName("source.vtp");polyWriter->SetInputData(source);polyWriter->SetDataModeToAscii();polyWriter->Write();
生成的vtp文件:
<?xml version="1.0"?>
<VTKFile type="PolyData" version="0.1" byte_order="LittleEndian" header_type="UInt32" compressor="vtkZLibDataCompressor"><PolyData><Piece NumberOfPoints="2" NumberOfVerts="0" NumberOfLines="1" NumberOfStrips="0" NumberOfPolys="0"><PointData></PointData><CellData></CellData><Points><DataArray type="Float32" Name="Points" NumberOfComponents="3" format="ascii" RangeMin="0" RangeMax="1">0 0 0 1 0 0<InformationKey name="L2_NORM_RANGE" location="vtkDataArray" length="2"><Value index="0">0</Value><Value index="1">1</Value></InformationKey></DataArray></Points><Verts><DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="1e+299" RangeMax="-1e+299"></DataArray><DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1e+299" RangeMax="-1e+299"></DataArray></Verts><Lines><DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="0" RangeMax="1">0 1</DataArray><DataArray type="Int64" Name="offsets" format="ascii" RangeMin="2" RangeMax="2">2</DataArray></Lines><Strips><DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="1e+299" RangeMax="-1e+299"></DataArray><DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1e+299" RangeMax="-1e+299"></DataArray></Strips><Polys><DataArray type="Int64" Name="connectivity" format="ascii" RangeMin="1e+299" RangeMax="-1e+299"></DataArray><DataArray type="Int64" Name="offsets" format="ascii" RangeMin="1e+299" RangeMax="-1e+299"></DataArray></Polys></Piece></PolyData>
</VTKFile>
ParaView显示效果:
vtk实战(二十五)——读入vtp数据
vtk实战(三十一)——写入vtp数据
vtk实战(十)—文本格式转vtp格式
VTK学习笔记1:vtkXMLPolyDataWriter
相关文档:
vtk实战(十四)——解析vtk XML 文件的内容
VTK学习笔记3:IO操作读取写入xml文件和vtk文件相关推荐
- java学习笔记(十三)----IO操作
一.文件的创建 ------------------------------------------------------- File类,表示磁盘上的文件或目录,可对文件或目录进行操作. * 常 ...
- tensorflow学习笔记——使用TensorFlow操作MNIST数据(1)
续集请点击我:tensorflow学习笔记--使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有He ...
- VTK学习笔记(三十六)VTK图像填充
VTK学习笔记(三十六)VTK图像填充 1.官方示例 2.其他例子 总结 1.官方示例 来自官方示例代码,自己只是添加了理解. 代码: #include <vtkCamera.h> #in ...
- jQuery学习笔记之DOM操作、事件绑定(2)
jQuery学习笔记之DOM操作.事件绑定(2) --------------------学习目录------------------------ 4.DOM操作 5.事件绑定 源码地址: https ...
- linux oracle流复制文件,【学习笔记】Oracle ASM linux dd命令复制asm中文件 操作磁盘或者分区...
天萃荷净 使用dd复制asm中文件,随着数据库新版本的推广ASM肯定会越来越被重视,最近准备系统的学习下ASM,以备突发情况需要,这是asm深入学习笔记 1.查询ASM某个数据文件AU信息 SQL&g ...
- NetLogo学习笔记3 —— 集合操作与生命游戏
NetLogo学习笔记3 -- 集合操作与生命游戏 (这篇新知识点略多) 上一篇文章我们了解NetLogo模型的基本要素,学习了函数定义与ask语法.并编写了我们的第一个程序! 这一次,我们来编写一个 ...
- R语言小白学习笔记3—R语言读取数据
R语言小白学习笔记3-R语言读取数据 笔记链接 想说的话 学习笔记3-R语言读取数据 3.1 读取CSV文件 3.1.1 read_delim函数 3.1.2 fread函数 3.2 读取Excel数 ...
- VTK学习笔记(二十一)vtk裁剪求截面面积
VTK学习笔记(二十一)vtk裁剪求界面面积 1.代码 2.CMakeLists.txt 3.运行输出 4.面积正确性验证 4.1.代码 4.2.执行结果 1.代码 #pragma once#incl ...
- [导入]Nebula3学习笔记(5): IO系统
Nebula3的IO系统相对于Nebula1和2是一个巨大的进步 使用更标准的机制, 如用URI来定位资源, 用MIME类型来区分数据格式 一个灵活的流模型, 它不关心数据是来自文件, 内存, HTT ...
最新文章
- Android Html.fromHtml 的使用
- 如何备考上海市高等学校计算机一级,计算机一级考试备考攻略
- 软硬兼施极限轻量BERT!能比ALBERT再轻13倍?!
- AspNetPager7.2的基本使用
- Cocoa之NSWindow常用总结
- 赛门铁克公布Q3财报 亏损68亿美元
- vue.js使用例子
- linux 命令tar,Linux下tar命令详解
- hibernate(3)对象关联映射
- 56 MM配置-评估和科目设置-定义评估类
- android.graphics.Color 包含颜色值
- 关掉magiskhide_最新版Magisk-v20.4刷入后找不到Magisk Hide怎么办+Magisk Hide开启教程
- Java神鬼莫测之MyBatis实现分页全过程(三)
- 将netcat-openbsd替换成为netcat-traditional
- 上位机与PLC基于Fins/UDP通信
- selenium爬取维基百科信息
- 创维电信悦me,(YMB0300-CW)卡刷固件及教程
- PowerVR SDK 2020 Release 2发布:多处更新优化,性能更强大
- 前端开发中PC端和移动端网站的区别
- 【前端面经】H5-语义化标签的理解
热门文章
- C# 特性详解(Attribute)
- Python3小说下载、自动转存为TXT、方便自己使用
- 强网杯部分Crypto题解
- 上海交通大学继续教育学院(网络教育)上课时间表
- 卡方线性趋势检验_卡方--有感
- MATLAB:女声转男声
- 019 | 探究布衣上的刺绣图腾文化功能——以贵州册亨县布依族刺绣为例 | 大学生创新训练项目申请书 | 极致技术工厂
- 【论文阅读笔记】CycleISP: Real Image Restoration via Improved Data Synthesis
- 轻松看懂机器学习!3个案例详解聚类、回归、分类算法
- 预制菜迎来“黄金时代”,谁能领跑下一个万亿市场