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文件相关推荐

  1. java学习笔记(十三)----IO操作

    一.文件的创建 ------------------------------------------------------- File类,表示磁盘上的文件或目录,可对文件或目录进行操作.   * 常 ...

  2. tensorflow学习笔记——使用TensorFlow操作MNIST数据(1)

    续集请点击我:tensorflow学习笔记--使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有He ...

  3. VTK学习笔记(三十六)VTK图像填充

    VTK学习笔记(三十六)VTK图像填充 1.官方示例 2.其他例子 总结 1.官方示例 来自官方示例代码,自己只是添加了理解. 代码: #include <vtkCamera.h> #in ...

  4. jQuery学习笔记之DOM操作、事件绑定(2)

    jQuery学习笔记之DOM操作.事件绑定(2) --------------------学习目录------------------------ 4.DOM操作 5.事件绑定 源码地址: https ...

  5. linux oracle流复制文件,【学习笔记】Oracle ASM linux dd命令复制asm中文件 操作磁盘或者分区...

    天萃荷净 使用dd复制asm中文件,随着数据库新版本的推广ASM肯定会越来越被重视,最近准备系统的学习下ASM,以备突发情况需要,这是asm深入学习笔记 1.查询ASM某个数据文件AU信息 SQL&g ...

  6. NetLogo学习笔记3 —— 集合操作与生命游戏

    NetLogo学习笔记3 -- 集合操作与生命游戏 (这篇新知识点略多) 上一篇文章我们了解NetLogo模型的基本要素,学习了函数定义与ask语法.并编写了我们的第一个程序! 这一次,我们来编写一个 ...

  7. R语言小白学习笔记3—R语言读取数据

    R语言小白学习笔记3-R语言读取数据 笔记链接 想说的话 学习笔记3-R语言读取数据 3.1 读取CSV文件 3.1.1 read_delim函数 3.1.2 fread函数 3.2 读取Excel数 ...

  8. VTK学习笔记(二十一)vtk裁剪求截面面积

    VTK学习笔记(二十一)vtk裁剪求界面面积 1.代码 2.CMakeLists.txt 3.运行输出 4.面积正确性验证 4.1.代码 4.2.执行结果 1.代码 #pragma once#incl ...

  9. [导入]Nebula3学习笔记(5): IO系统

    Nebula3的IO系统相对于Nebula1和2是一个巨大的进步 使用更标准的机制, 如用URI来定位资源, 用MIME类型来区分数据格式 一个灵活的流模型, 它不关心数据是来自文件, 内存, HTT ...

最新文章

  1. Android Html.fromHtml 的使用
  2. 如何备考上海市高等学校计算机一级,计算机一级考试备考攻略
  3. 软硬兼施极限轻量BERT!能比ALBERT再轻13倍?!
  4. AspNetPager7.2的基本使用
  5. Cocoa之NSWindow常用总结
  6. 赛门铁克公布Q3财报 亏损68亿美元
  7. vue.js使用例子
  8. linux 命令tar,Linux下tar命令详解
  9. hibernate(3)对象关联映射
  10. 56 MM配置-评估和科目设置-定义评估类
  11. android.graphics.Color 包含颜色值
  12. 关掉magiskhide_最新版Magisk-v20.4刷入后找不到Magisk Hide怎么办+Magisk Hide开启教程
  13. Java神鬼莫测之MyBatis实现分页全过程(三)
  14. 将netcat-openbsd替换成为netcat-traditional
  15. 上位机与PLC基于Fins/UDP通信
  16. selenium爬取维基百科信息
  17. 创维电信悦me,(YMB0300-CW)卡刷固件及教程
  18. PowerVR SDK 2020 Release 2发布:多处更新优化,性能更强大
  19. 前端开发中PC端和移动端网站的区别
  20. 【前端面经】H5-语义化标签的理解

热门文章

  1. C# 特性详解(Attribute)
  2. Python3小说下载、自动转存为TXT、方便自己使用
  3. 强网杯部分Crypto题解
  4. 上海交通大学继续教育学院(网络教育)上课时间表
  5. 卡方线性趋势检验_卡方--有感
  6. MATLAB:女声转男声
  7. 019 | 探究布衣上的刺绣图腾文化功能——以贵州册亨县布依族刺绣为例 | 大学生创新训练项目申请书 | 极致技术工厂
  8. 【论文阅读笔记】CycleISP: Real Image Restoration via Improved Data Synthesis
  9. 轻松看懂机器学习!3个案例详解聚类、回归、分类算法
  10. 预制菜迎来“黄金时代”,谁能领跑下一个万亿市场