Paraview热流图:vector可视化算法

相关文档:
Paraview热流图:flux与element关联

paraview热流图(1):添加glyphs

paraview热流图(2):3D glyphs representation


在这里插入图片描述

向量图示符可用于显示附加到数据的附加标注。字形箭头的方向和长度由向量场提供。

Using Paraview to Visualize Scientific Data这个教程不错,!!!!

Hedgehogs刺猬

矢量数据是与数据集中每个点/单元关联的方向和大小的三维表示。矢量数据通常用于描述某些量的变化率。例如,向量可用于描述流体流动。有几种算法可用于可视化矢量数据。
一种用于矢量数据的可视化技术是为每个矢量绘制一条定向的、缩放的线。这些线可以根据矢量大小或一些其他标量(例如温度或压力)进行着色。结果看起来像一只鬃毛刺猬。通常,您需要调整线的比例以控制其视觉表示的大小。
用于创建刺猬的主要Paraview过滤器是Glyph过滤器。在当前示例中,我们看到数据集中每个动量向量的定向、缩放、彩色线。在Glyph过滤器的Properties选项卡下的Object Inspector中,我们将“Scalars”菜单设置为Density,将“Vectors”菜单设置为Momentum,将“Glyph Type”设置为Line,选中“Orient”,将“Scale Mode”设置为scalar,并将“最大点数”设置为50000。
在这里插入图片描述

WarpByVector

创建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的数量

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片