vcg::Sampling< MetroMesh > Class Template Reference

#include <sampling.h>

List of all members.

Public Member Functions

void ClearFlag (int flag)
double GetArea ()
double GetDistMax ()
double GetDistMean ()
double GetDistRMS ()
double GetDistVolume ()
Histogram< double > & GetHist ()
unsigned long GetNAreaSamples ()
unsigned long GetNEdgeSamples ()
unsigned long GetNSamples ()
double GetNSamplesPerAreaUnit ()
unsigned long GetNSamplesTarget ()
unsigned long GetNVertexSamples ()
void Hausdorff ()
 Sampling (MetroMesh &_s1, MetroMesh &_s2)
void SetFlags (int flags)
void SetParam (double _n_samp)
void SetSamplesPerAreaUnit (double _n_samp)
void SetSamplesTarget (unsigned long _n_samp)
 ~Sampling ()

Private Types

typedef MetroMesh::CoordType CoordType
typedef MetroMesh::FaceContainer FaceContainer
typedef MetroMesh::FaceIterator FaceIterator
typedef MetroMesh::FaceType FaceType
typedef AABBBinaryTreeIndex
< FaceType, typename
MetroMesh::ScalarType,
vcg::EmptyClass
MetroMeshAABB
typedef GridStaticPtr
< FaceType, typename
MetroMesh::ScalarType
MetroMeshGrid
typedef SpatialHashTable
< FaceType, typename
MetroMesh::ScalarType
MetroMeshHash
typedef Octree< FaceType,
typename MetroMesh::ScalarType
MetroMeshOctree
typedef Point3< typename
MetroMesh::ScalarType
Point3x
typedef MetroMesh::ScalarType ScalarType
typedef MetroMesh::VertexIterator VertexIterator
typedef MetroMesh::VertexPointer VertexPointer
typedef MetroMesh::VertexType VertexType

Private Member Functions

void AddRandomSample (FaceIterator &T)
float AddSample (const Point3x &p)
double ComputeMeshArea (MetroMesh &mesh)
void EdgeSampling ()
void FaceSubdiv (const Point3x &v0, const Point3x &v1, const Point3x &v2, int maxdepth)
void MontecarloFaceSampling ()
void SampleEdge (const Point3x &v0, const Point3x &v1, int n_samples_per_edge)
void SimilarFaceSampling ()
void SimilarTriangles (const Point3x &v0, const Point3x &v1, const Point3x &v2, int n_samples_per_edge)
void SubdivFaceSampling ()
void VertexSampling ()

Private Attributes

double area_S1
float bbox_factor
double dist_upper_bound
int Flags
MetroMeshGrid gS2
Histogram< double > hist
MetroMeshHash hS2
float inflate_percentage
double max_dist
double mean_dist
unsigned int min_size
int n_hist_bins
int n_samples
float n_samples_edge_to_face_ratio
double n_samples_per_area_unit
unsigned int n_samples_per_face
unsigned long n_samples_target
unsigned long n_total_area_samples
unsigned long n_total_edge_samples
unsigned long n_total_samples
unsigned long n_total_vertex_samples
MetroMeshOctree oS2
int print_every_n_elements
int referredBit
double RMS_dist
MetroMesh & S1
MetroMesh & S2
MetroMeshAABB tS2
double volume

Detailed Description

template<class MetroMesh>
class vcg::Sampling< MetroMesh >

Definition at line 137 of file sampling.h.


Member Typedef Documentation

template<class MetroMesh>
typedef MetroMesh::CoordType vcg::Sampling< MetroMesh >::CoordType [private]

Definition at line 142 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::FaceContainer vcg::Sampling< MetroMesh >::FaceContainer [private]

Definition at line 149 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::FaceIterator vcg::Sampling< MetroMesh >::FaceIterator [private]

Definition at line 147 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::FaceType vcg::Sampling< MetroMesh >::FaceType [private]

Definition at line 148 of file sampling.h.

template<class MetroMesh>
typedef AABBBinaryTreeIndex<FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass> vcg::Sampling< MetroMesh >::MetroMeshAABB [private]

Definition at line 153 of file sampling.h.

template<class MetroMesh>
typedef GridStaticPtr<FaceType, typename MetroMesh::ScalarType > vcg::Sampling< MetroMesh >::MetroMeshGrid [private]

Definition at line 151 of file sampling.h.

template<class MetroMesh>
typedef SpatialHashTable<FaceType, typename MetroMesh::ScalarType > vcg::Sampling< MetroMesh >::MetroMeshHash [private]

Definition at line 152 of file sampling.h.

template<class MetroMesh>
typedef Octree<FaceType, typename MetroMesh::ScalarType > vcg::Sampling< MetroMesh >::MetroMeshOctree [private]

Definition at line 154 of file sampling.h.

template<class MetroMesh>
typedef Point3<typename MetroMesh::ScalarType> vcg::Sampling< MetroMesh >::Point3x [private]

Definition at line 156 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::ScalarType vcg::Sampling< MetroMesh >::ScalarType [private]

Definition at line 143 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::VertexIterator vcg::Sampling< MetroMesh >::VertexIterator [private]

Definition at line 146 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::VertexPointer vcg::Sampling< MetroMesh >::VertexPointer [private]

Definition at line 145 of file sampling.h.

template<class MetroMesh>
typedef MetroMesh::VertexType vcg::Sampling< MetroMesh >::VertexType [private]

Definition at line 144 of file sampling.h.


Constructor & Destructor Documentation

template<class MetroMesh >
vcg::Sampling< MetroMesh >::Sampling ( MetroMesh &  _s1,
MetroMesh &  _s2 
) [inline]

Definition at line 240 of file sampling.h.

template<class MetroMesh >
vcg::Sampling< MetroMesh >::~Sampling (  )  [inline]

Definition at line 264 of file sampling.h.


Member Function Documentation

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::AddRandomSample ( FaceIterator T  )  [inline, private]

Definition at line 437 of file sampling.h.

template<class MetroMesh >
float vcg::Sampling< MetroMesh >::AddSample ( const Point3x p  )  [inline, private]

Definition at line 301 of file sampling.h.

template<class MetroMesh>
void vcg::Sampling< MetroMesh >::ClearFlag ( int  flag  )  [inline]

Definition at line 230 of file sampling.h.

template<class MetroMesh >
double vcg::Sampling< MetroMesh >::ComputeMeshArea ( MetroMesh &  mesh  )  [inline, private]

Definition at line 288 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::EdgeSampling (  )  [inline, private]

Definition at line 387 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::FaceSubdiv ( const Point3x v0,
const Point3x v1,
const Point3x v2,
int  maxdepth 
) [inline, private]

Definition at line 497 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::GetArea (  )  [inline]

Definition at line 217 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::GetDistMax (  )  [inline]

Definition at line 218 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::GetDistMean (  )  [inline]

Definition at line 219 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::GetDistRMS (  )  [inline]

Definition at line 220 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::GetDistVolume (  )  [inline]

Definition at line 221 of file sampling.h.

template<class MetroMesh>
Histogram<double>& vcg::Sampling< MetroMesh >::GetHist (  )  [inline]

Definition at line 228 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::GetNAreaSamples (  )  [inline]

Definition at line 223 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::GetNEdgeSamples (  )  [inline]

Definition at line 224 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::GetNSamples (  )  [inline]

Definition at line 222 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::GetNSamplesPerAreaUnit (  )  [inline]

Definition at line 226 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::GetNSamplesTarget (  )  [inline]

Definition at line 227 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::GetNVertexSamples (  )  [inline]

Definition at line 225 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::Hausdorff (  )  [inline]

Definition at line 624 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::MontecarloFaceSampling (  )  [inline, private]

Definition at line 465 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::SampleEdge ( const Point3x v0,
const Point3x v1,
int  n_samples_per_edge 
) [inline, private]

Definition at line 372 of file sampling.h.

template<class MetroMesh>
void vcg::Sampling< MetroMesh >::SetFlags ( int  flags  )  [inline]

Definition at line 229 of file sampling.h.

template<class MetroMesh>
void vcg::Sampling< MetroMesh >::SetParam ( double  _n_samp  )  [inline]

Definition at line 231 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::SetSamplesPerAreaUnit ( double  _n_samp  )  [inline]

Definition at line 279 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::SetSamplesTarget ( unsigned long  _n_samp  )  [inline]

Definition at line 272 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::SimilarFaceSampling (  )  [inline, private]

Definition at line 590 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::SimilarTriangles ( const Point3x v0,
const Point3x v1,
const Point3x v2,
int  n_samples_per_edge 
) [inline, private]

Definition at line 573 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::SubdivFaceSampling (  )  [inline, private]

Definition at line 541 of file sampling.h.

template<class MetroMesh >
void vcg::Sampling< MetroMesh >::VertexSampling (  )  [inline, private]

Definition at line 340 of file sampling.h.


Member Data Documentation

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::area_S1 [private]

Definition at line 194 of file sampling.h.

template<class MetroMesh>
float vcg::Sampling< MetroMesh >::bbox_factor [private]

Definition at line 172 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::dist_upper_bound [private]

Definition at line 179 of file sampling.h.

template<class MetroMesh>
int vcg::Sampling< MetroMesh >::Flags [private]

Definition at line 182 of file sampling.h.

template<class MetroMesh>
MetroMeshGrid vcg::Sampling< MetroMesh >::gS2 [private]

Definition at line 164 of file sampling.h.

template<class MetroMesh>
Histogram<double> vcg::Sampling< MetroMesh >::hist [private]

Definition at line 185 of file sampling.h.

template<class MetroMesh>
MetroMeshHash vcg::Sampling< MetroMesh >::hS2 [private]

Definition at line 165 of file sampling.h.

template<class MetroMesh>
float vcg::Sampling< MetroMesh >::inflate_percentage [private]

Definition at line 173 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::max_dist [private]

Definition at line 190 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::mean_dist [private]

Definition at line 191 of file sampling.h.

template<class MetroMesh>
unsigned int vcg::Sampling< MetroMesh >::min_size [private]

Definition at line 174 of file sampling.h.

template<class MetroMesh>
int vcg::Sampling< MetroMesh >::n_hist_bins [private]

Definition at line 175 of file sampling.h.

template<class MetroMesh>
int vcg::Sampling< MetroMesh >::n_samples [private]

Definition at line 197 of file sampling.h.

template<class MetroMesh>
float vcg::Sampling< MetroMesh >::n_samples_edge_to_face_ratio [private]

Definition at line 171 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::n_samples_per_area_unit [private]

Definition at line 180 of file sampling.h.

template<class MetroMesh>
unsigned int vcg::Sampling< MetroMesh >::n_samples_per_face [private]

Definition at line 170 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::n_samples_target [private]

Definition at line 181 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::n_total_area_samples [private]

Definition at line 187 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::n_total_edge_samples [private]

Definition at line 188 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::n_total_samples [private]

Definition at line 186 of file sampling.h.

template<class MetroMesh>
unsigned long vcg::Sampling< MetroMesh >::n_total_vertex_samples [private]

Definition at line 189 of file sampling.h.

template<class MetroMesh>
MetroMeshOctree vcg::Sampling< MetroMesh >::oS2 [private]

Definition at line 167 of file sampling.h.

template<class MetroMesh>
int vcg::Sampling< MetroMesh >::print_every_n_elements [private]

Definition at line 176 of file sampling.h.

template<class MetroMesh>
int vcg::Sampling< MetroMesh >::referredBit [private]

Definition at line 177 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::RMS_dist [private]

Definition at line 192 of file sampling.h.

template<class MetroMesh>
MetroMesh& vcg::Sampling< MetroMesh >::S1 [private]

Definition at line 162 of file sampling.h.

template<class MetroMesh>
MetroMesh& vcg::Sampling< MetroMesh >::S2 [private]

Definition at line 163 of file sampling.h.

template<class MetroMesh>
MetroMeshAABB vcg::Sampling< MetroMesh >::tS2 [private]

Definition at line 166 of file sampling.h.

template<class MetroMesh>
double vcg::Sampling< MetroMesh >::volume [private]

Definition at line 193 of file sampling.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


vcglib
Author(s): Christian Bersch
autogenerated on Fri Jan 11 09:23:04 2013