A.I.M.S algorithms


curv.h File Reference
#include <aims/mesh/texture.h>
#include <aims/mesh/surface.h>
#include <aims/data/data.h>
#include <list>
Include dependency graph for curv.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 aims
 

Typedefs

typedef std::map< unsigned,
std::set< std::pair< unsigned,
float > > > 
aims::LaplacianWeights
 

Functions

float fsign (float x)
 
Point3df cross (Point3df a, Point3df b)
 
TimeTexture< float > AimsMeshCurvature (const AimsSurface< 3, Void > &mesh)
 
float AimsMeshFiniteElementDt (const Texture< float > &tex, const Texture< float > &lapl, float tmax)
 
Texture< float > AimsMeshBoixCurvature (const AimsSurface< 3, Void > &mesh, const std::vector< float > &ALPHA, const std::vector< float > &BETA, const std::vector< std::list< float > > &SURFACE)
 
Texture< float > AimsRegularizeTexture (const Texture< float > &tex, const AimsSurface< 3, Void > &mesh, float alpha)
 
Texture< float > AimsRegularizeTexture (const Texture< float > &tex, float ratio)
 
Texture< float > AimsMeshFiniteElementCurvature (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso, const std::vector< std::list< float > > &PHI, const std::vector< std::list< float > > &THETA, const std::vector< std::list< float > > &SURFACE, const std::vector< std::list< float > > &DOT)
 
std::vector< std::list< float > > AimsMeshFiniteElementPhi (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso, const std::vector< std::list< float > > &surf)
 
std::vector< std::list< float > > AimsMeshFiniteElementTheta (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso, const std::vector< std::list< float > > &surf)
 
std::vector< float > AimsMeshFiniteElementAlpha (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso)
 
std::vector< float > AimsMeshFiniteElementBeta (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso)
 
std::vector< std::list< float > > AimsMeshFiniteElementSurface (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso)
 
std::vector< std::list< float > > AimsMeshFiniteElementDot (const AimsSurface< 3, Void > &mesh, const std::vector< std::list< unsigned > > &neighbourso)
 
std::vector< std::list
< unsigned > > 
AimsMeshOrderNode (const AimsSurface< 3, Void > &mesh)
 
std::vector< std::list
< unsigned > > 
AimsMeshOrderTriangle (const AimsSurface< 3, Void > &mesh)
 
Texture< float > AimsMeshLaplacian (const Texture< float > &inittex, const std::map< unsigned, std::set< std::pair< unsigned, float > > > &lapl)
 
template<typename T >
void AimsMeshLaplacian (const std::vector< T > &inittex, std::vector< T > &outtex, const std::map< unsigned, std::set< std::pair< unsigned, float > > > &lapl)
 
std::map< unsigned, std::set
< std::pair< unsigned, float > > > 
AimsMeshWeightFiniteElementLaplacian (const AimsSurface< 3, Void > &mesh, const float Wmax)
 
void aims::makeLaplacianMatrix (const LaplacianWeights &weights, LaplacianWeights &lmat, float dt)
 
LaplacianWeights * aims::sparseMult (const LaplacianWeights &in1, const LaplacianWeights &in2, float sparseThresh=0)
 
template<typename T >
void aims::applyLaplacianMatrix (const std::vector< T > &inittex, std::vector< T > &outtex, const LaplacianWeights &lapl)
 
void aims::laplacianMatrixThreshold (LaplacianWeights &lmat, float threshold)
 
LaplacianWeights * aims::makeLaplacianSmoothingCoefficients (const LaplacianWeights &weights, unsigned niter, float dt, float sparseThresh=0)
 Compute Laplacian smoothing coefficients matrix for niter smoothing iterations. More...
 

Function Documentation

Texture<float> AimsMeshBoixCurvature ( const AimsSurface< 3, Void > &  mesh,
const std::vector< float > &  ALPHA,
const std::vector< float > &  BETA,
const std::vector< std::list< float > > &  SURFACE 
)
TimeTexture<float> AimsMeshCurvature ( const AimsSurface< 3, Void > &  mesh)
std::vector<float> AimsMeshFiniteElementAlpha ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso 
)
std::vector<float> AimsMeshFiniteElementBeta ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso 
)
Texture<float> AimsMeshFiniteElementCurvature ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso,
const std::vector< std::list< float > > &  PHI,
const std::vector< std::list< float > > &  THETA,
const std::vector< std::list< float > > &  SURFACE,
const std::vector< std::list< float > > &  DOT 
)
std::vector< std::list<float> > AimsMeshFiniteElementDot ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso 
)
float AimsMeshFiniteElementDt ( const Texture< float > &  tex,
const Texture< float > &  lapl,
float  tmax 
)
std::vector< std::list<float> > AimsMeshFiniteElementPhi ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso,
const std::vector< std::list< float > > &  surf 
)
std::vector< std::list<float> > AimsMeshFiniteElementSurface ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso 
)
std::vector< std::list<float> > AimsMeshFiniteElementTheta ( const AimsSurface< 3, Void > &  mesh,
const std::vector< std::list< unsigned > > &  neighbourso,
const std::vector< std::list< float > > &  surf 
)
Texture<float> AimsMeshLaplacian ( const Texture< float > &  inittex,
const std::map< unsigned, std::set< std::pair< unsigned, float > > > &  lapl 
)
template<typename T >
void AimsMeshLaplacian ( const std::vector< T > &  inittex,
std::vector< T > &  outtex,
const std::map< unsigned, std::set< std::pair< unsigned, float > > > &  lapl 
)
std::vector< std::list<unsigned> > AimsMeshOrderNode ( const AimsSurface< 3, Void > &  mesh)
std::vector< std::list<unsigned> > AimsMeshOrderTriangle ( const AimsSurface< 3, Void > &  mesh)
std::map<unsigned, std::set< std::pair<unsigned,float> > > AimsMeshWeightFiniteElementLaplacian ( const AimsSurface< 3, Void > &  mesh,
const float  Wmax 
)
Texture<float> AimsRegularizeTexture ( const Texture< float > &  tex,
const AimsSurface< 3, Void > &  mesh,
float  alpha 
)
Texture<float> AimsRegularizeTexture ( const Texture< float > &  tex,
float  ratio 
)
Point3df cross ( Point3df  a,
Point3df  b 
)
inline

Definition at line 56 of file geometric.h.

float fsign ( float  x)
inline