欢迎大家加入社区,雪易VTK社区-CSDN社区云
前言:为区分vtkPoints和vtkPointData的区别,了解vtkFieldData在VTK中的存在意义,从而系统的掌握vtk中关于数据的表达方式。
vtk中通过vtkDataArray进行数据的存储,通过vtkDataObject进行可视化数据的表达,在vtkDataObject内部有一个vtkFieldData的实例,负责对数据的 表达。
vtkFieldData
vtkFieldData存储数据的属性数据,该数据是对拓扑结构和几何结构信息的补充。属性数据可以是某个空间点的温度或某个单元的质量等。在vtk中与数据集的点数据相关联的属性数据用vtkPointData表达,与单元数据相关联的属性数据用vtkCellData表达。
vtkFieldData表示和操作数据的字段。字段的模型是一个m × n的数据值矩阵,其中m是元组的数量,n是组件的数量。(元组是矩阵中包含n个元素的一行。)该字段假定是由一个或多个数据数组组成的集合,其中数组中的数据是不同类型的(例如,int, double, char等),并且每个数组中可能有不同数量的组件。注意,假设每个数据数组的长度为“m”(即元组的数量),这通常对应于数据集中的点或单元格的数量。此外,每个数据数组必须有一个字符串名称。(用于操作数据。)
vtkDataSetAttributes
vtkDataSetAttributes是一个用于表示和操作属性数据(例如,标量、向量、法线、纹理坐标、张量、全局id、谱系id和字段数据)的类。这为vtkFieldData增加了从字段中选择一个数组作为每个属性类型的当前活动数组的能力。
此外,vtkDataSetAttributes提供了筛选调用的方法,这些调用通过字段传递数据、将数据复制到字段中以及从字段中插入数据。PassData将整个数组从源传递到目标。复制将元组的某个子集从源传递到目标。Interpolate使用提供的权重从源数据中选择的元组进行插值,以在目标数据中生成新的元组。每个属性类型都有传递、复制和插值“复制”标志,即可以在目标中设置,以选择将哪些属性数组从源传输到目标。
最后,该类提供了一种机制来确定一组源具有哪些共同属性,并将元组从源复制到目标,只针对所有源都拥有的那些属性。
vtkPointData
描述:vtkPointData是一个用于表示和操作点属性数据(例如,标量、向量、法线、纹理坐标等)的类。大部分功能由vtkDataSetAttributes处理
vtkCellData
描述:vtkCellData是一个用于表示和操作单元格属性数据(例如,标量、向量、法线、纹理坐标等)的类。提供了处理过滤器对象的特殊方法,例如通过过滤器传递数据,将数据从一个单元格复制到另一个单元格,以及在给定单元格插值权重的情况下对数据进行插值。