File CoordinateTransformer.h
-
namespace OpenVDS
Typedefs
-
typedef VDSCoordinateTransformerBase<2> VDSCoordinateTransformer2D
-
typedef VDSCoordinateTransformerBase<3> VDSCoordinateTransformer3D
-
typedef VDSCoordinateTransformerBase<4> VDSCoordinateTransformer4D
-
typedef VDSCoordinateTransformerBase<5> VDSCoordinateTransformer5D
-
typedef VDSCoordinateTransformerBase<6> VDSCoordinateTransformer6D
-
struct IJKGridDefinition
Subclassed by OpenVDS::VDSIJKGridDefinition
Public Functions
-
inline IJKGridDefinition()
-
inline IJKGridDefinition(DoubleVector3 origin, DoubleVector3 iUnitStep, DoubleVector3 jUnitStep, DoubleVector3 kUnitStep)
-
inline bool operator==(const IJKGridDefinition &b) const
Public Members
-
DoubleVector3 origin
-
DoubleVector3 iUnitStep
-
DoubleVector3 jUnitStep
-
DoubleVector3 kUnitStep
-
inline IJKGridDefinition()
-
struct M4
Public Members
-
DoubleVector4 data[4]
-
DoubleVector4 data[4]
-
template<int N>
struct VDSCoordinateTransformerBase Public Functions
-
inline FloatVector<3> VoxelIndexToWorldCoordinates(const IntVector<N> &iVoxelIndex) const
Converts a voxel index to world coordinates using the indexer’s IJK grid definition and IJK dimension map
- Parameters:
iVoxelIndex – the voxel index to convert
- Returns:
the world coordinates
-
inline FloatVector<3> VoxelIndexToWorldCoordinates(const FloatVector<N> &rVoxelIndex) const
Converts a float voxel index to world coordinates using the indexer’s IJK grid definition and IJK dimension map
- Parameters:
rVoxelIndex – the float voxel index to convert
- Returns:
the world coordinates
-
inline IntVector<N> WorldCoordinatesToVoxelIndex(const FloatVector<3> &rWorldCoords, const int (&anVoxelMin)[Dimensionality_Max]) const
Converts world coordinates to a voxel index, rounding to the nearest integer
- Parameters:
rWorldCoords – the world coordinates to convert
anVoxelMin –
- Returns:
the voxel index
-
inline FloatVector<N> WorldCoordinatesToVoxelIndexFloat(const FloatVector<3> &rWorldCoords, const int (&anVoxelMin)[Dimensionality_Max]) const
Converts world coordinates to a float voxel index without rounding
- Parameters:
rWorldCoords – the world coordinates to convert
anVoxelMin –
- Returns:
the float voxel index
-
inline VDSCoordinateTransformerBase(const VDSIJKGridDefinition &vdsIjkGridDefinition)
Constructor
- Parameters:
cIJKGridAndDImensionMap – the IJK grid definition and IJK dimension map
-
inline VDSCoordinateTransformerBase()
Constructor
Public Members
-
float ijkToWorldTransform[3][3]
Coordinate transfrom matrix.
-
float worldToIJKTransform[3][3]
Coordinate transform matrix.
-
float ijkToWorldTranslation[3]
Coordinate translation vector.
-
float worldToIJKTranslation[3]
Coordinate translation vector.
-
int ijkDimensionMap[3]
Map to determine which dimension map to I, J, and K.
Private Functions
-
inline void SetGridDefinition(const VDSIJKGridDefinition &vdsIjkGridDefinition)
Sets the IJK grid definition and IJK dimension map for use in world coordinate conversions
See also
See also
See also
See also
LocalIndexToWorldCoordinates
See also
WorldCoordinatesToLocalIndex
- Parameters:
vdsIjkGridDefinition – the IJK grid definition and IJK dimension map
-
inline FloatVector<3> VoxelIndexToWorldCoordinates(const IntVector<N> &iVoxelIndex) const
-
struct VDSIJKGridDefinition : public OpenVDS::IJKGridDefinition
Public Functions
-
inline VDSIJKGridDefinition()
-
inline VDSIJKGridDefinition(const IJKGridDefinition &ijkGridDefinition, IntVector3 dimensionMap)
-
inline bool operator==(const VDSIJKGridDefinition &b) const
Public Members
-
IntVector3 dimensionMap
-
inline VDSIJKGridDefinition()
-
typedef VDSCoordinateTransformerBase<2> VDSCoordinateTransformer2D