#include <voronoi_volume_sampling.h>
Classes | |
class | Param |
Public Types | |
typedef MeshType::BoxType | BoxType |
typedef MeshType::CoordType | CoordType |
typedef MeshType::FacePointer | FacePointer |
typedef vcg::GridStaticPtr < typename MeshType::FaceType, ScalarType > | GridType |
typedef FaceTmark< MeshType > | MarkerFace |
typedef tri::VoronoiProcessing < MeshType > ::QuadricSumDistance | QuadricSumDistance |
typedef MeshType::ScalarType | ScalarType |
typedef MeshType::VertexIterator | VertexIterator |
typedef MeshType::VertexPointer | VertexPointer |
typedef vcg::tri::MarchingCubes < MeshType, VVSWalker > | VVSMarchingCubes |
typedef SimpleVolume < SimpleVoxel< ScalarType > > | VVSVolume |
typedef vcg::tri::TrivialWalker < MeshType, VVSVolume > | VVSWalker |
Public Member Functions | |
void | BarycentricRelaxVoronoiSamples (int relaxStep) |
void | BuildMontecarloSampling (int montecarloSampleNum) |
void | BuildScaffoldingMesh (MeshType &scaffoldingMesh, Param &pp) |
void | BuildVolumeSampling (int montecarloSampleNum, int poissonSampleNum, ScalarType &poissonRadius, int randSeed) |
ScalarType | DistanceFromSurface (const CoordType &q, CoordType &closestP) |
ScalarType | DistanceFromVoronoiCorner (const CoordType &p_point) |
ScalarType | DistanceFromVoronoiFace (const CoordType &p_point) |
ScalarType | DistanceFromVoronoiInternalEdge (const CoordType &p_point) |
ScalarType | DistanceFromVoronoiSeed (const CoordType &p_point) |
ScalarType | DistanceFromVoronoiSurfaceEdge (const CoordType &p_point, const CoordType &surfPt) |
ScalarType | ImplicitFunction (const CoordType &p, Param &pp) |
void | Init (ScalarType _poissonRadiusSurface=0) |
void | QuadricRelaxVoronoiSamples (int relaxStep) |
void | RefineSkeletonVolume (MeshType &skelMesh) |
void | ThicknessEvaluator (float distThr, int smoothSize, int smoothIter, MeshType *skelM=0) |
Compute an evaulation of the thickness as distance from the medial axis. It starts from a montecarlo volume sampling and try to search for the samples that can be part of the medial axis. It use a sampled representation of the surface. A volume sample is considered part of the medial axis if there are at least two points that are (almost) the same minimal distance to that point. | |
VoronoiVolumeSampling (MeshType &_baseMesh) | |
Public Attributes | |
MeshType & | baseMesh |
vcg::CallBackPos * | cb |
MarkerFace | mf |
MeshType | montecarloVolumeMesh |
vcg::face::PointDistanceBaseFunctor < ScalarType > | PDistFunct |
ScalarType | poissonRadiusSurface |
MeshType | poissonSurfaceMesh |
KdTree< ScalarType >::PriorityQueue | pq |
bool | restrictedRelaxationFlag |
math::MarsenneTwisterRNG | rng |
MeshType | seedDomainMesh |
KdTree< ScalarType > * | seedDomainTree |
MeshType | seedMesh |
KdTree< ScalarType > * | seedTree |
GridType | surfGrid |
KdTree< ScalarType > * | surfTree |
Definition at line 37 of file voronoi_volume_sampling.h.
typedef MeshType::BoxType vcg::tri::VoronoiVolumeSampling< MeshType >::BoxType |
Definition at line 42 of file voronoi_volume_sampling.h.
typedef MeshType::CoordType vcg::tri::VoronoiVolumeSampling< MeshType >::CoordType |
Definition at line 45 of file voronoi_volume_sampling.h.
typedef MeshType::FacePointer vcg::tri::VoronoiVolumeSampling< MeshType >::FacePointer |
Definition at line 46 of file voronoi_volume_sampling.h.
typedef vcg::GridStaticPtr<typename MeshType::FaceType, ScalarType> vcg::tri::VoronoiVolumeSampling< MeshType >::GridType |
Definition at line 47 of file voronoi_volume_sampling.h.
typedef FaceTmark<MeshType> vcg::tri::VoronoiVolumeSampling< MeshType >::MarkerFace |
Definition at line 84 of file voronoi_volume_sampling.h.
typedef tri::VoronoiProcessing<MeshType>::QuadricSumDistance vcg::tri::VoronoiVolumeSampling< MeshType >::QuadricSumDistance |
Definition at line 40 of file voronoi_volume_sampling.h.
typedef MeshType::ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::ScalarType |
Definition at line 41 of file voronoi_volume_sampling.h.
typedef MeshType::VertexIterator vcg::tri::VoronoiVolumeSampling< MeshType >::VertexIterator |
Definition at line 43 of file voronoi_volume_sampling.h.
typedef MeshType::VertexPointer vcg::tri::VoronoiVolumeSampling< MeshType >::VertexPointer |
Definition at line 44 of file voronoi_volume_sampling.h.
typedef vcg::tri::MarchingCubes<MeshType, VVSWalker> vcg::tri::VoronoiVolumeSampling< MeshType >::VVSMarchingCubes |
Definition at line 51 of file voronoi_volume_sampling.h.
typedef SimpleVolume<SimpleVoxel<ScalarType> > vcg::tri::VoronoiVolumeSampling< MeshType >::VVSVolume |
Definition at line 49 of file voronoi_volume_sampling.h.
typedef vcg::tri::TrivialWalker<MeshType,VVSVolume> vcg::tri::VoronoiVolumeSampling< MeshType >::VVSWalker |
Definition at line 50 of file voronoi_volume_sampling.h.
vcg::tri::VoronoiVolumeSampling< MeshType >::VoronoiVolumeSampling | ( | MeshType & | _baseMesh | ) | [inline] |
Definition at line 70 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::BarycentricRelaxVoronoiSamples | ( | int | relaxStep | ) | [inline] |
Definition at line 276 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::BuildMontecarloSampling | ( | int | montecarloSampleNum | ) | [inline] |
Definition at line 531 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::BuildScaffoldingMesh | ( | MeshType & | scaffoldingMesh, |
Param & | pp | ||
) | [inline] |
Definition at line 424 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::BuildVolumeSampling | ( | int | montecarloSampleNum, |
int | poissonSampleNum, | ||
ScalarType & | poissonRadius, | ||
int | randSeed | ||
) | [inline] |
Definition at line 559 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::DistanceFromSurface | ( | const CoordType & | q, |
CoordType & | closestP | ||
) | [inline] |
Definition at line 135 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::DistanceFromVoronoiCorner | ( | const CoordType & | p_point | ) | [inline] |
Definition at line 253 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::DistanceFromVoronoiFace | ( | const CoordType & | p_point | ) | [inline] |
Definition at line 171 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::DistanceFromVoronoiInternalEdge | ( | const CoordType & | p_point | ) | [inline] |
Definition at line 196 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::DistanceFromVoronoiSeed | ( | const CoordType & | p_point | ) | [inline] |
Definition at line 163 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::DistanceFromVoronoiSurfaceEdge | ( | const CoordType & | p_point, |
const CoordType & | surfPt | ||
) | [inline] |
Definition at line 218 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::ImplicitFunction | ( | const CoordType & | p, |
Param & | pp | ||
) | [inline] |
Definition at line 388 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::Init | ( | ScalarType | _poissonRadiusSurface = 0 | ) | [inline] |
Definition at line 103 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::QuadricRelaxVoronoiSamples | ( | int | relaxStep | ) | [inline] |
Definition at line 328 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::RefineSkeletonVolume | ( | MeshType & | skelMesh | ) | [inline] |
Definition at line 514 of file voronoi_volume_sampling.h.
void vcg::tri::VoronoiVolumeSampling< MeshType >::ThicknessEvaluator | ( | float | distThr, |
int | smoothSize, | ||
int | smoothIter, | ||
MeshType * | skelM = 0 |
||
) | [inline] |
Compute an evaulation of the thickness as distance from the medial axis. It starts from a montecarlo volume sampling and try to search for the samples that can be part of the medial axis. It use a sampled representation of the surface. A volume sample is considered part of the medial axis if there are at least two points that are (almost) the same minimal distance to that point.
Definition at line 461 of file voronoi_volume_sampling.h.
MeshType& vcg::tri::VoronoiVolumeSampling< MeshType >::baseMesh |
Definition at line 88 of file voronoi_volume_sampling.h.
vcg::CallBackPos* vcg::tri::VoronoiVolumeSampling< MeshType >::cb |
Definition at line 94 of file voronoi_volume_sampling.h.
MarkerFace vcg::tri::VoronoiVolumeSampling< MeshType >::mf |
Definition at line 85 of file voronoi_volume_sampling.h.
MeshType vcg::tri::VoronoiVolumeSampling< MeshType >::montecarloVolumeMesh |
Definition at line 92 of file voronoi_volume_sampling.h.
vcg::face::PointDistanceBaseFunctor<ScalarType> vcg::tri::VoronoiVolumeSampling< MeshType >::PDistFunct |
Definition at line 86 of file voronoi_volume_sampling.h.
ScalarType vcg::tri::VoronoiVolumeSampling< MeshType >::poissonRadiusSurface |
Definition at line 91 of file voronoi_volume_sampling.h.
MeshType vcg::tri::VoronoiVolumeSampling< MeshType >::poissonSurfaceMesh |
Definition at line 90 of file voronoi_volume_sampling.h.
KdTree<ScalarType>::PriorityQueue vcg::tri::VoronoiVolumeSampling< MeshType >::pq |
Definition at line 82 of file voronoi_volume_sampling.h.
bool vcg::tri::VoronoiVolumeSampling< MeshType >::restrictedRelaxationFlag |
Definition at line 96 of file voronoi_volume_sampling.h.
math::MarsenneTwisterRNG vcg::tri::VoronoiVolumeSampling< MeshType >::rng |
Definition at line 95 of file voronoi_volume_sampling.h.
MeshType vcg::tri::VoronoiVolumeSampling< MeshType >::seedDomainMesh |
Definition at line 93 of file voronoi_volume_sampling.h.
KdTree<ScalarType>* vcg::tri::VoronoiVolumeSampling< MeshType >::seedDomainTree |
Definition at line 80 of file voronoi_volume_sampling.h.
MeshType vcg::tri::VoronoiVolumeSampling< MeshType >::seedMesh |
Definition at line 89 of file voronoi_volume_sampling.h.
KdTree<ScalarType>* vcg::tri::VoronoiVolumeSampling< MeshType >::seedTree |
Definition at line 79 of file voronoi_volume_sampling.h.
GridType vcg::tri::VoronoiVolumeSampling< MeshType >::surfGrid |
Definition at line 83 of file voronoi_volume_sampling.h.
KdTree<ScalarType>* vcg::tri::VoronoiVolumeSampling< MeshType >::surfTree |
Definition at line 78 of file voronoi_volume_sampling.h.