A finite 3D grid structure, mapping/binning arbitrary 3D cartesian points onto discrete "voxels".
Each such voxel can store an object of type T. The precision of the voxel binning is done with S (float or double).
Definition at line 29 of file TGeoVoxelGrid.h.
Public Member Functions | |
TGeoVoxelGrid (S xmin, S ymin, S zmin, S xmax, S ymax, S zmax, S Lx_, S Ly_, S Lz_) | |
T & | at (int i, int j, int k) |
T & | at (std::array< S, 3 > const &P) |
T * | at (TGeoVoxelGridIndex const &vi) |
S | getDiagonalLength () const |
int | getVoxelCountX () const |
int | getVoxelCountY () const |
int | getVoxelCountZ () const |
std::array< S, 3 > | getVoxelMidpoint (TGeoVoxelGridIndex const &vi) const |
size_t | index (int i, int j, int k) const |
void | indexToIndices (size_t idx, int &i, int &j, int &k) const |
bool | inside (std::array< S, 3 > const &p) const |
TGeoVoxelGridIndex | pointToVoxelIndex (S x, S y, S z) const |
TGeoVoxelGridIndex | pointToVoxelIndex (std::array< S, 3 > const &p) const |
void | pointToVoxelIndex (std::array< S, 3 > const &p, int &i, int &j, int &k) const |
void | set (int i, int j, int k, const T &value) |
void | set (std::array< S, 3 > const &p, const T &value) |
void | set (TGeoVoxelGridIndex const &vi, const T &value) |
Public Attributes | |
std::vector< T > | fGrid |
S | fHalfDiag |
S | finvLx |
S | finvLy |
S | finvLz |
S | fLx |
S | fLy |
S | fLz |
std::array< S, 3 > | fMaxBound |
std::array< S, 3 > | fMinBound |
int | fNx |
int | fNy |
int | fNz |
#include <TGeoVoxelGrid.h>
|
inline |
Definition at line 31 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 50 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 64 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 71 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 110 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 96 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 97 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 98 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 101 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 155 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 157 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 53 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 152 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 134 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 114 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 88 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 80 of file TGeoVoxelGrid.h.
|
inline |
Definition at line 93 of file TGeoVoxelGrid.h.
std::vector<T> TGeoVoxelGrid< T, S >::fGrid |
Definition at line 173 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::fHalfDiag |
Definition at line 170 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::finvLx |
Definition at line 169 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::finvLy |
Definition at line 169 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::finvLz |
Definition at line 169 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::fLx |
Definition at line 168 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::fLy |
Definition at line 168 of file TGeoVoxelGrid.h.
S TGeoVoxelGrid< T, S >::fLz |
Definition at line 168 of file TGeoVoxelGrid.h.
std::array<S, 3> TGeoVoxelGrid< T, S >::fMaxBound |
Definition at line 167 of file TGeoVoxelGrid.h.
std::array<S, 3> TGeoVoxelGrid< T, S >::fMinBound |
Definition at line 166 of file TGeoVoxelGrid.h.
int TGeoVoxelGrid< T, S >::fNx |
Definition at line 172 of file TGeoVoxelGrid.h.
int TGeoVoxelGrid< T, S >::fNy |
Definition at line 172 of file TGeoVoxelGrid.h.
int TGeoVoxelGrid< T, S >::fNz |
Definition at line 172 of file TGeoVoxelGrid.h.