public interface MiGeometryHexahedronIjk extends MiGeometry
Generic geometry interface representing a 3D grid of hexahedron cells, where each hexahedron is defined explicitly with 8 independent coordinates. Each hexahedron is accessible via 3 indices (i,j,k).
This type of geometry is typically used by the MiVolumeMeshVertexHexahedronIjk interface.
The way the vertices of each hexahedron are numbered is indicated by the
CellStorageLayout
value (see getCellStorageLayout()
).
Modifier and Type | Method and Description |
---|---|
void |
getCellCoords(int i,
int j,
int k,
double[] cellCoords)
Returns the coordinates of the hexahedron (i,j,k) cell.
|
CellStorageLayout |
getCellStorageLayout()
Hint about coordinates organization in a hexahedron cell.
|
StorageLayoutIJK |
getStorageLayout()
Hint about coordinates organization in memory.
|
getTimeStamp
void getCellCoords(int i, int j, int k, double[] cellCoords)
The way the vertices of each hexahedron are numbered is indicated by the
CellStorageLayout
value returned by getCellStorageLayout()
.
i
- the id of this hexahedron on the axis I. 0 <= i <
meshTopologyIjk.getNumCellsI()
.j
- the id of this hexahedron on the axis J. 0 <= j <
meshTopologyIjk.getNumCellsJ()
.k
- the id of this hexahedron on the axis K. 0 <= k <
meshTopologyIjk.getNumCellsK()
.cellCoords
- the array into which the 8 vertices of the hexahedron (i,j,k) are
to be stored.StorageLayoutIJK getStorageLayout()
This information aims at optimizing the geometry traversal for extractors.
Returns the internal coordinates layout in memory as 6 enum values covering
all possible cases. For instance KJI
means that:
The fastest way to go through the coordinates with such layout is to perform the following triple loop:
for each k with 0 <= k < numK
for each j with 0 <= j < numJ
for each i with 0 <= i < numI
coordinates.getCellCoords(i,j,k, cellCoords);
CellStorageLayout getCellStorageLayout()
Generated on January 23, 2025, Copyright © Thermo Fisher Scientific. All rights reserved. http://www.openinventor.com