ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
PoissonReconLib.cpp File Reference
#include "PoissonReconLib.h"
#include <cassert>
#include "../Src/FEMTree.h"
#include "PointData.h"
Include dependency graph for PoissonReconLib.cpp:

Go to the source code of this file.

Classes

class  Vertex< _Real >
 
class  PointStream< Real >
 
struct  FEMTreeProfiler< Dim, Real >
 
struct  ConstraintDual< Dim, Real >
 
struct  SystemDual< Dim, Real >
 
struct  SystemDual< Dim, double >
 

Functions

template<class Real , unsigned int Dim>
XForm< Real, Dim+1 > GetBoundingBoxXForm (Point< Real, Dim > min, Point< Real, Dim > max, Real scaleFactor)
 
template<class Real , unsigned int Dim>
XForm< Real, Dim+1 > GetBoundingBoxXForm (Point< Real, Dim > min, Point< Real, Dim > max, Real width, Real scaleFactor, int &depth)
 
template<class Real , unsigned int Dim>
XForm< Real, Dim+1 > GetPointXForm (InputPointStream< Real, Dim > &stream, Real width, Real scaleFactor, int &depth)
 
template<class Real , unsigned int Dim>
XForm< Real, Dim+1 > GetPointXForm (InputPointStream< Real, Dim > &stream, Real scaleFactor)
 
template<typename Vertex , typename Real , typename SetVertexFunction , unsigned int... FEMSigs, typename... SampleData>
void ExtractMesh (const PoissonReconLib::Parameters &params, UIntPack< FEMSigs... >, std::tuple< SampleData... >, FEMTree< sizeof...(FEMSigs), Real > &tree, const DenseNodeData< Real, UIntPack< FEMSigs... >> &solution, Real isoValue, const std::vector< typename FEMTree< sizeof...(FEMSigs), Real >::PointSample > *samples, std::vector< PointData< Real >> *sampleData, const typename FEMTree< sizeof...(FEMSigs), Real >::template DensityEstimator< WEIGHT_DEGREE > *density, const SetVertexFunction &SetVertex, XForm< Real, sizeof...(FEMSigs)+1 > iXForm, PoissonReconLib::IMesh< Real > &out_mesh)
 
template<class Real , typename... SampleData, unsigned int... FEMSigs>
static bool Execute (PointStream< Real > &pointStream, PoissonReconLib::IMesh< Real > &out_mesh, const PoissonReconLib::Parameters &params, UIntPack< FEMSigs... >)
 

Function Documentation

◆ Execute()

template<class Real , typename... SampleData, unsigned int... FEMSigs>
static bool Execute ( PointStream< Real > &  pointStream,
PoissonReconLib::IMesh< Real > &  out_mesh,
const PoissonReconLib::Parameters params,
UIntPack< FEMSigs... >   
)
static

◆ ExtractMesh()

template<typename Vertex , typename Real , typename SetVertexFunction , unsigned int... FEMSigs, typename... SampleData>
void ExtractMesh ( const PoissonReconLib::Parameters params,
UIntPack< FEMSigs... >  ,
std::tuple< SampleData... >  ,
FEMTree< sizeof...(FEMSigs), Real > &  tree,
const DenseNodeData< Real, UIntPack< FEMSigs... >> &  solution,
Real  isoValue,
const std::vector< typename FEMTree< sizeof...(FEMSigs), Real >::PointSample > *  samples,
std::vector< PointData< Real >> *  sampleData,
const typename FEMTree< sizeof...(FEMSigs), Real >::template DensityEstimator< WEIGHT_DEGREE > *  density,
const SetVertexFunction &  SetVertex,
XForm< Real, sizeof...(FEMSigs)+1 >  iXForm,
PoissonReconLib::IMesh< Real > &  out_mesh 
)

◆ GetBoundingBoxXForm() [1/2]

template<class Real , unsigned int Dim>
XForm<Real, Dim + 1> GetBoundingBoxXForm ( Point< Real, Dim >  min,
Point< Real, Dim >  max,
Real  scaleFactor 
)

Definition at line 166 of file PoissonReconLib.cpp.

References max(), and min().

Referenced by GetPointXForm().

◆ GetBoundingBoxXForm() [2/2]

template<class Real , unsigned int Dim>
XForm<Real, Dim + 1> GetBoundingBoxXForm ( Point< Real, Dim >  min,
Point< Real, Dim >  max,
Real  width,
Real  scaleFactor,
int &  depth 
)

Definition at line 188 of file PoissonReconLib.cpp.

References max(), min(), and width.

◆ GetPointXForm() [1/2]

template<class Real , unsigned int Dim>
XForm<Real, Dim + 1> GetPointXForm ( InputPointStream< Real, Dim > &  stream,
Real  scaleFactor 
)

Definition at line 230 of file PoissonReconLib.cpp.

References GetBoundingBoxXForm(), max(), and min().

◆ GetPointXForm() [2/2]

template<class Real , unsigned int Dim>
XForm<Real, Dim + 1> GetPointXForm ( InputPointStream< Real, Dim > &  stream,
Real  width,
Real  scaleFactor,
int &  depth 
)

Definition at line 220 of file PoissonReconLib.cpp.

References GetBoundingBoxXForm(), max(), min(), and width.