Geant4_10
|
#include <UVoxelizer.hh>
Public Member Functions | |
void | Voxelize (std::vector< VUSolid * > &solids, std::vector< UTransform3D * > &transforms) |
void | Voxelize (std::vector< VUFacet * > &facets) |
void | DisplayVoxelLimits () |
void | DisplayBoundaries () |
void | DisplayListNodes () |
UVoxelizer () | |
~UVoxelizer () | |
void | GetCandidatesVoxel (std::vector< int > &voxels) |
int | GetCandidatesVoxelArray (const UVector3 &point, std::vector< int > &list, UBits *crossed=NULL) const |
int | GetCandidatesVoxelArray (const std::vector< int > &voxels, const UBits bitmasks[], std::vector< int > &list, UBits *crossed=NULL) const |
int | GetCandidatesVoxelArray (const std::vector< int > &voxels, std::vector< int > &list, UBits *crossed=NULL) const |
const std::vector< UVoxelBox > & | GetBoxes () const |
const std::vector< double > & | GetBoundary (int index) const |
bool | UpdateCurrentVoxel (const UVector3 &point, const UVector3 &direction, std::vector< int > &curVoxel) const |
void | GetVoxel (std::vector< int > &curVoxel, const UVector3 &point) const |
int | GetBitsPerSlice () const |
bool | Contains (const UVector3 &point) const |
double | DistanceToNext (const UVector3 &point, const UVector3 &direction, std::vector< int > &curVoxel) const |
double | DistanceToFirst (const UVector3 &point, const UVector3 &direction) const |
double | SafetyToBoundingBox (const UVector3 &point) const |
int | GetVoxelsIndex (int x, int y, int z) const |
int | GetVoxelsIndex (const std::vector< int > &voxels) const |
bool | GetPointVoxel (const UVector3 &p, std::vector< int > &voxels) const |
int | GetPointIndex (const UVector3 &p) const |
const UBits & | Empty () const |
bool | IsEmpty (int index) const |
void | SetMaxVoxels (int max) |
void | SetMaxVoxels (const UVector3 &reductionRatio) |
int | GetMaxVoxels (UVector3 &ratioOfReduction) |
int | AllocatedMemory () |
long long | GetCountOfVoxels () const |
long long | CountVoxels (std::vector< double > boundaries[]) const |
const std::vector< int > & | GetCandidates (std::vector< int > &curVoxel) const |
int | GetVoxelBoxesSize () const |
const UVoxelBox & | GetVoxelBox (int i) const |
const std::vector< int > & | GetVoxelBoxCandidates (int i) const |
int | GetTotalCandidates () const |
void | BuildBoundingBox () |
void | BuildBoundingBox (UVector3 &amin, UVector3 &amax, double tolerance=0) |
Static Public Member Functions | |
template<typename T > | |
static int | BinarySearch (const std::vector< T > &vec, T value) |
static double | MinDistanceToBox (const UVector3 &aPoint, const UVector3 &f) |
static void | SetDefaultVoxelsCount (int count) |
static int | GetDefaultVoxelsCount () |
Definition at line 49 of file UVoxelizer.hh.
UVoxelizer::UVoxelizer | ( | ) |
UVoxelizer::~UVoxelizer | ( | ) |
Definition at line 45 of file UVoxelizer.cc.
int UVoxelizer::AllocatedMemory | ( | ) |
|
inlinestatic |
void UVoxelizer::BuildBoundingBox | ( | ) |
bool UVoxelizer::Contains | ( | const UVector3 & | point | ) | const |
Definition at line 997 of file UVoxelizer.cc.
|
inline |
void UVoxelizer::DisplayBoundaries | ( | ) |
Definition at line 270 of file UVoxelizer.cc.
void UVoxelizer::DisplayListNodes | ( | ) |
void UVoxelizer::DisplayVoxelLimits | ( | ) |
Definition at line 173 of file UVoxelizer.cc.
double UVoxelizer::DistanceToNext | ( | const UVector3 & | point, |
const UVector3 & | direction, | ||
std::vector< int > & | curVoxel | ||
) | const |
Definition at line 1056 of file UVoxelizer.cc.
|
inline |
Definition at line 164 of file UVoxelizer.hh.
|
inline |
|
inline |
|
inline |
Definition at line 92 of file UVoxelizer.hh.
int UVoxelizer::GetCandidatesVoxelArray | ( | const UVector3 & | point, |
std::vector< int > & | list, | ||
UBits * | crossed = NULL |
||
) | const |
Definition at line 867 of file UVoxelizer.cc.
|
inline |
Definition at line 186 of file UVoxelizer.hh.
|
static |
Definition at line 1156 of file UVoxelizer.cc.
Definition at line 178 of file UVoxelizer.hh.
|
inline |
Definition at line 246 of file UVoxelizer.hh.
Definition at line 236 of file UVoxelizer.hh.
Definition at line 241 of file UVoxelizer.hh.
|
inline |
Definition at line 231 of file UVoxelizer.hh.
|
inline |
Definition at line 169 of file UVoxelizer.hh.
double UVoxelizer::SafetyToBoundingBox | ( | const UVector3 & | point | ) | const |
Definition at line 1151 of file UVoxelizer.cc.
Definition at line 1124 of file UVoxelizer.cc.
Definition at line 1130 of file UVoxelizer.cc.
bool UVoxelizer::UpdateCurrentVoxel | ( | const UVector3 & | point, |
const UVector3 & | direction, | ||
std::vector< int > & | curVoxel | ||
) | const |
void UVoxelizer::Voxelize | ( | std::vector< VUSolid * > & | solids, |
std::vector< UTransform3D * > & | transforms | ||
) |