10 #ifndef vtkm_filter_flow_internal_GridMetaData_h
11 #define vtkm_filter_flow_internal_GridMetaData_h
33 this->cellSet2D =
true;
36 this->Dims =
vtkm::Id3(dims[0], dims[1], 1);
40 this->cellSet2D =
false;
44 this->PlaneSize = Dims[0] * Dims[1];
45 this->RowSize = Dims[0];
49 bool IsCellSet2D()
const {
return this->cellSet2D; }
54 logicalIndex[0] = index % Dims[0];
55 logicalIndex[1] = (index / Dims[0]) % Dims[1];
59 logicalIndex[2] = index / (Dims[0] * Dims[1]);
67 GetLogicalIndex(index, logicalIndex);
70 indices[0] = (logicalIndex[0] == 0) ? index : index - 1;
71 indices[1] = (logicalIndex[0] == Dims[0] - 1) ? index : index + 1;
73 indices[2] = (logicalIndex[1] == 0) ? index : index - RowSize;
74 indices[3] = (logicalIndex[1] == Dims[1] - 1) ? index : index + RowSize;
78 indices[4] = (logicalIndex[2] == 0) ? index : index - PlaneSize;
79 indices[5] = (logicalIndex[2] == Dims[2] - 1) ? index : index + PlaneSize;
85 bool cellSet2D =
false;
96 #endif //vtkm_filter_flow_internal_GridMetaData_h