Namespaces | Classes | Enumerations | Functions | Variables
vcg::tri Namespace Reference

Namespaces

namespace  io

Classes

class  _SphFace
class  _SphMesh
struct  _SphUsedTypes
class  _SphVertex
class  AdvancingFront
class  AdvancingTest
class  Allocator
 Class to safely add and delete elements in a mesh. More...
class  AnisotropicDistance
class  Append
 Class to safely duplicate and append (portion of) meshes. More...
class  AreaPreservingTextureOptimizer
class  AttributeSeam
class  AverageColorCell
class  BallPivoting
struct  BaseInterpolator
struct  BaseMeshTypeHolder
struct  BasicCrossFunctor
class  BasicVertexPair
class  BitQuad
class  BitQuadCreation
class  BitQuadOptimization
struct  CenterPointBarycenter
struct  Centroid
 Allow to compute classical Loop subdivision surface with the same code than LS3. More...
class  Clean
 Class of static functions to clean//restore meshs. More...
class  ClosestFaceEPIterator
class  ClosestVertexIterator
class  Clustering
class  CoM
 A class for managing curves on a 2manifold. More...
class  ConnectedComponentIterator
struct  ContinuityLoopWeight
class  ConvexHull
class  CrossField
class  CylinderClipping
struct  Der
class  Distortion
struct  DummyContainer
class  EdgeCollapser
class  EdgeFlipPriority
 Generic priority for edge rotations. More...
class  EdgeLen
class  EdgeSplSphere
class  EdgeTmark
class  EMCLookUpTable
class  EmptyTMark
struct  EuclideanDistance
struct  EvenPointLoop
struct  EvenPointLoopGeneric
class  ExtendedMarchingCubes
 This class implements the Extended Marching Cubes algorithm. More...
class  ExtrinsicPlaneSymmetry
class  Extrude
class  FaceTmark
class  FeasibilityCheck
 Generic class for checking feasibility of collapses. More...
class  FieldSmoother
class  Fitmaps
class  FitmapsCollapse
 Class that provides methods for checking and weighting collapses using fitmaps. More...
class  FourPCS
class  FrontEdge
class  GenericVertexInterpolator
class  Geodesic
 class for computing approximate geodesic distances on a mesh More...
class  GeometricInterpolator
class  HalfedgeQuadClean
 The class provides methods for detecting doublets and singlets and removing them. More...
class  HalfEdgeTopology
 Class containing functions to modify the topology of a halfedge based mesh. More...
class  Harmonic
class  HausdorffSampler
struct  Hinge
class  Hole
class  Homeometry
 Priority based on minimizing homeometry. More...
class  Inertia
 Methods for computing Polyhedral Mass properties (like inertia tensor, volume, etc) More...
class  Inside
class  IsotropicDistance
struct  LoopWeight
 Weight class for classical Loop's scheme. More...
struct  LS3Projection
class  MarchingCubes
 This class implements the Marching Cubes algorithm. More...
class  MCLookUpTable
class  MeshAssert
 For checking the adequacy of a mesh to a given algorithm. More...
class  MeshSampler
class  MeshToMatrix
struct  MeshTypeHolder
struct  MeshTypeHolder< T, CONT, AllTypes::AEdgeType >
struct  MeshTypeHolder< T, CONT, AllTypes::AFaceType >
struct  MeshTypeHolder< T, CONT, AllTypes::AHEdgeType >
struct  MeshTypeHolder< T, CONT, AllTypes::AVertexType >
struct  MidPoint
struct  MidPointArc
struct  MidPointArcNaive
struct  MidPointButterfly
struct  MidPointButterfly2
struct  MidPointSphere
class  MinimumWeightEar
class  MiQParametrizer
class  NearestToCenter
class  Nring
struct  OddPointLoop
struct  OddPointLoopGeneric
class  OperationWeight
 Generic class for weighting collapses. More...
class  OutlierRemoval
class  OutlineUtil
class  Pivot
class  PlanarEdgeFlip
class  PlanarEdgeFlipParameter
class  PointCloudNormal
 Class of static functions to smooth and fair meshes and their attributes. More...
class  PoissonSolver
class  PolychordCollapse
 The PolychordCollapse class provides methods to semplify a quad mesh, by collapsing the polychords. More...
class  PolygonSupport
 This class is used convert between polygonal meshes and triangular meshes. More...
class  QInfoStandard
class  QuadDiagonalCollapse
 Class implementing simplification of quad meshes by diagonal collapses priority of the operations is weighted with a value computed by class WeightType Feasibility is checked with class CheckType. More...
class  QuadDiagonalCollapseBase
 Class implementing simplification of quad meshes by diagonal collapses. More...
class  Quadrangulator
class  QuadricTexHelper
class  QualityEdgePredicate
class  QualityMidPointFunctor
class  RedetailSampler
class  RefinedFaceData
struct  RegularLoopWeight
 Modified Loop's weight to optimise continuity. More...
class  Resampler
class  SelectionStack
 A stack for saving and restoring selection. More...
class  SelfIntersectionEar
class  Smooth
 Class of static functions to smooth and fair meshes and their attributes. More...
class  Split
class  Stat
class  SurfaceSampling
 Main Class of the Sampling framework. More...
class  TextureOptimizer
class  Tmark
class  TopoEdgeFlip
class  TriEdgeCollapse
class  TriEdgeCollapseQuadric
class  TriEdgeCollapseQuadricParameter
class  TriEdgeCollapseQuadricTex
class  TriEdgeCollapseQuadricTexParameter
class  TriEdgeFlip
class  TriMesh
 The official mesh class. More...
class  TriMeshClipper
class  TriRayIterator
class  TriSplit
 Triangle split Simple templated function for splitting a triangle with a internal point. It can be templated on a CenterPoint class that is used to generate the position of the internal point. More...
class  TrivialEar
class  TrivialPointerSampler
class  TrivialSampler
 A basic sampler class that show the required interface used by the SurfaceSampling class. More...
class  TrivialWalker
class  UpdateBounding
 This class is used to compute or update the bounding box of a mesh.. More...
class  UpdateColor
 Generation and processing of per-vertex and per-face colors according to various strategy. More...
class  UpdateComponentEP
 This class is used to compute or update the precomputed data used to efficiently compute point-face distances. More...
class  UpdateCurvature
 Management, updating and computation of per-vertex and per-face normals. More...
class  UpdateCurvatureFitting
 Computation of per-vertex directions and values of curvature. More...
class  UpdateFlags
 Management, updating and computation of per-vertex and per-face flags (like border flags). More...
class  UpdateHalfEdges
 This class is used to build edge based data structure from indexed data structure and viceversa. More...
struct  UpdateIndexed
class  UpdateNormal
 Management, updating and computation of per-vertex, per-face, and per-wedge normals. More...
class  UpdatePosition
 This class is used to update vertex position according to a transformation matrix. More...
class  UpdateQuality
 Generation of per-vertex and per-face qualities. More...
class  UpdateSelection
 Management, updating and conditional computation of selections (per-vertex, per-edge, and per-face). More...
class  UpdateTexture
 This class is used to update/generate texcoord position according to various critera. . More...
class  UpdateTopology
 Generation of per-vertex and per-face topological information. More...
class  UV_Utils
class  VertReg
 Priority based on maximizing vertices regularity. More...
class  VoronoiAtlas
class  VoronoiProcessing
struct  VoronoiProcessingParameter
class  VoronoiVolumeSampling
class  Zonohedron

Enumerations

enum  SmoothMethod { SMMiq, SMNPoly }

Functions

template<class ScalarType >
static ScalarType _SQfnC (ScalarType a, ScalarType b)
template<class ScalarType >
static ScalarType _SQfnS (ScalarType a, ScalarType b)
template<class MeshType >
void Annulus (MeshType &m, float externalRadius, float internalRadius, int slices)
template<class MeshType >
void Box (MeshType &in, const typename MeshType::BoxType &bb)
template<class MeshType >
void BuildCylinderEdgeShell (MeshType &mIn, MeshType &mOut, float radius=0, int slices=16, int stacks=1)
template<class MeshType >
void BuildCylinderVertexShell (MeshType &mIn, MeshType &mOut, float radius=0, float height=0, int slices=16, int stacks=1)
template<class TriMeshType , class EdgeMeshType >
void BuildFromNonFaux (TriMeshType &in, EdgeMeshType &out)
template<class MeshType , class V >
void BuildMeshFromCoordVector (MeshType &in, const V &v)
template<class MeshType , class V , class F >
void BuildMeshFromCoordVectorIndexVector (MeshType &in, const V &v, const F &f)
template<class MeshType >
void BuildPrismFaceShell (MeshType &mIn, MeshType &mOut, float height=0, float inset=0, bool smoothFlag=true)
template<class MeshType >
void BuildSphereVertexShell (MeshType &mIn, MeshType &mOut, float radius=0, int recDiv=2)
template<class MeshType >
void CapEdgeMesh (MeshType &em, MeshType &cm, bool revertFlag=false)
template<class MeshType >
MeshType::ScalarType ComputePoissonDiskRadius (MeshType &origMesh, int sampleNum)
template<class MeshType >
void Cone (MeshType &in, const typename MeshType::ScalarType r1, const typename MeshType::ScalarType r2, const typename MeshType::ScalarType h, const int SubDiv=36)
 r1 = raggio 1, r2 = raggio2, h = altezza (asse y)
template<class MESH_TYPE >
void CreaseCut (MESH_TYPE &m, float angleRad)
 Open a mesh cutting all the edges where the two faces make an angle *larger* than the indicated threshold.
template<class MESH_TYPE >
void CutMeshAlongNonFauxEdges (MESH_TYPE &m)
 Open a mesh along non-faux edges.
template<class MeshType >
void Cylinder (int slices, int stacks, MeshType &m, bool capped=false)
template<class MeshType >
void Disk (MeshType &m, int slices)
template<class DodMeshType >
void Dodecahedron (DodMeshType &in)
template<class MESH , class GRID >
GRID::ObjPtr DoRay (MESH &mesh, GRID &gr, const Ray3< typename GRID::ScalarType > &_ray, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_t)
template<class MESH , class GRID >
GRID::ObjPtr DoRay (MESH &mesh, GRID &gr, const Ray3< typename GRID::ScalarType > &_ray, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_t, typename GRID::CoordType &_normf)
template<class EdgeType >
bool EdgeVectorHasEEAdjacency (const std::vector< EdgeType > &)
template<class EdgeType >
bool EdgeVectorHasPerEdgeColor (const std::vector< EdgeType > &)
template<class EdgeType >
bool EdgeVectorHasPerEdgeFlags (const std::vector< EdgeType > &)
template<class EdgeType >
bool EdgeVectorHasPerEdgeMark (const std::vector< EdgeType > &)
template<class EdgeType >
bool EdgeVectorHasPerEdgeNormal (const std::vector< EdgeType > &)
template<class EdgeType >
bool EdgeVectorHasPerEdgeQuality (const std::vector< EdgeType > &)
template<class EdgeType >
bool EdgeVectorHasVEAdjacency (const std::vector< EdgeType > &)
template<class MeshType >
void FaceGrid (MeshType &in, int w, int h)
template<class MeshType >
void FaceGrid (MeshType &in, const std::vector< int > &grid, int w, int h)
template<class FaceType >
bool FaceVectorHasFEAdjacency (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasFFAdjacency (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasFFAdjacency (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasFVAdjacency (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceColor (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceColor (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasPerFaceCurvatureDir (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceCurvatureDir (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasPerFaceFlags (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceMark (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceMark (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasPerFaceNormal (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceNormal (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasPerFaceQuality (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerFaceQuality (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasPerWedgeColor (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerWedgeNormal (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerWedgeTexCoord (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasPerWedgeTexCoord (const face::vector_ocf< FaceType > &fv)
template<class FaceType >
bool FaceVectorHasVFAdjacency (const std::vector< FaceType > &)
template<class FaceType >
bool FaceVectorHasVFAdjacency (const face::vector_ocf< FaceType > &fv)
template<class MeshType >
void GenerateCameraMesh (MeshType &in)
template<class MESH , class GRID >
MESH::EdgeType * GetClosestEdge2DBase (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType _maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt)
 this is for meshes with 2D coordinates
template<class MESH , class GRID >
MESH::EdgeType * GetClosestEdgeBase (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType _maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt)
 this is for meshes with 3D coordinates
template<class MESH , class GRID >
MESH::FaceType * GetClosestFaceBase (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType _maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt)
template<class MESH , class GRID >
MESH::FaceType * GetClosestFaceBase (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType _maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt, typename GRID::CoordType &_normf, typename GRID::CoordType &_ip)
template<class MESH , class GRID >
MESH::FaceType * GetClosestFaceEP (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt, typename GRID::CoordType &_normf, typename GRID::CoordType &_ip)
template<class MESH , class GRID >
MESH::FaceType * GetClosestFaceEP (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType _maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt)
template<class MESH , class GRID >
MESH::FaceType * GetClosestFaceNormal (MESH &mesh, GRID &gr, const typename MESH::VertexType &_p, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_minDist, typename GRID::CoordType &_closestPt)
template<class MESH , class GRID >
MESH::VertexType * GetClosestVertex (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_minDist)
template<class MESH , class GRID >
MESH::VertexType * GetClosestVertexNormal (MESH &mesh, GRID &gr, const typename MESH::VertexType &_p, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_minDist)
template<class MESH , class GRID >
MESH::VertexType * GetClosestVertexScale (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename MESH::CoordType &center, const typename GRID::ScalarType &_maxDist, typename GRID::ScalarType &_minDist)
template<class MESH , class GRID , class OBJPTRCONTAINER >
unsigned int GetInBoxFace (MESH &mesh, GRID &gr, const vcg::Box3< typename GRID::ScalarType > _bbox, OBJPTRCONTAINER &_objectPtrs)
template<class MESH , class GRID , class OBJPTRCONTAINER >
unsigned int GetInBoxVertex (MESH &mesh, GRID &gr, const vcg::Box3< typename GRID::ScalarType > _bbox, OBJPTRCONTAINER &_objectPtrs)
template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int GetInSphereFaceBase (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_r, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points)
template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int GetInSphereVertex (MESH &mesh, GRID &gr, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_r, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points)
template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int GetKClosestFaceBase (MESH &mesh, GRID &gr, const unsigned int _k, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_maxDist, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points)
template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int GetKClosestFaceEP (MESH &mesh, GRID &gr, const unsigned int _k, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_maxDist, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points)
template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int GetKClosestVertex (MESH &mesh, GRID &gr, const unsigned int _k, const typename GRID::CoordType &_p, const typename GRID::ScalarType &_maxDist, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points)
template<class MeshType >
void Grid (MeshType &in, int w, int h, float wl, float hl, float *data=0)
template<class TriMeshType >
bool HasEEAdjacency (const TriMeshType &m)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasEFAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasEHAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasEVAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class TriMeshType >
bool HasFEAdjacency (const TriMeshType &m)
template<class TriMeshType >
bool HasFFAdjacency (const TriMeshType &m)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasFHAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class TriMeshType >
bool HasFVAdjacency (const TriMeshType &m)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasHEAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasHFAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasHNextAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasHOppAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasHPrevAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasHVAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class TriMeshType >
bool HasPerEdgeColor (const TriMeshType &m)
template<class TriMeshType >
bool HasPerEdgeFlags (const TriMeshType &m)
template<class TriMeshType >
bool HasPerEdgeMark (const TriMeshType &m)
template<class TriMeshType >
bool HasPerEdgeNormal (const TriMeshType &m)
template<class TriMeshType >
bool HasPerEdgeQuality (const TriMeshType &m)
template<class TriMeshType >
bool HasPerEdgeVEAdjacency (const TriMeshType &m)
template<class MeshType >
bool HasPerFaceAttribute (const MeshType &m, std::string name)
template<class TriMeshType >
bool HasPerFaceColor (const TriMeshType &m)
template<class TriMeshType >
bool HasPerFaceCurvatureDir (const TriMeshType &m)
template<class TriMeshType >
bool HasPerFaceFlags (const TriMeshType &m)
template<class TriMeshType >
bool HasPerFaceMark (const TriMeshType &m)
template<class TriMeshType >
bool HasPerFaceNormal (const TriMeshType &m)
template<class TriMeshType >
bool HasPerFaceQuality (const TriMeshType &m)
template<class TriMeshType >
bool HasPerFaceVFAdjacency (const TriMeshType &m)
template<class MeshType >
bool HasPerMeshAttribute (const MeshType &m, std::string name)
template<class MeshType >
bool HasPerVertexAttribute (const MeshType &m, std::string name)
template<class TriMeshType >
bool HasPerVertexColor (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexCurvature (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexCurvatureDir (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexFlags (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexMark (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexNormal (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexQuality (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexRadius (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexTexCoord (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexVEAdjacency (const TriMeshType &m)
template<class TriMeshType >
bool HasPerVertexVFAdjacency (const TriMeshType &m)
template<class TriMeshType >
bool HasPerWedgeColor (const TriMeshType &m)
template<class TriMeshType >
bool HasPerWedgeNormal (const TriMeshType &m)
template<class TriMeshType >
bool HasPerWedgeTexCoord (const TriMeshType &m)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasPolyInfo (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class TriMeshType >
bool HasVEAdjacency (const TriMeshType &m)
template<class TriMeshType >
bool HasVFAdjacency (const TriMeshType &m)
template<class CType0 , class CType1 , class CType2 , class CType3 >
bool HasVHAdjacency (const TriMesh< CType0, CType1, CType2, CType3 > &)
template<class MeshType >
void Hexahedron (MeshType &in)
template<class IcoMeshType >
void Icosahedron (IcoMeshType &in)
template<class MeshType >
int & IMark (MeshType &m)
 Access function to the incremental mark. You should not use this member directly. In most of the case just use IsMarked() and Mark()
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::VertexType &v)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::FaceType &f)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::EdgeType &e)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::HEdgeType &h)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::VertexType *vp)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::FaceType *fp)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::EdgeType *e)
template<class MeshType >
size_t Index (MeshType &m, const typename MeshType::HEdgeType *h)
template<class MeshType >
void InitFaceIMark (MeshType &m)
 Initialize the imark-system of the faces.
template<class MeshType >
void InitVertexIMark (MeshType &m)
 Initialize the imark-system of the vertices.
template<typename ScalarType >
vcg::Point2< ScalarTypeInterpolateNRosy2D (const std::vector< vcg::Point2< ScalarType > > &V, const std::vector< ScalarType > &W, const int N)
template<typename ScalarType >
vcg::Point3< ScalarTypeInterpolateNRosy3D (const std::vector< vcg::Point3< ScalarType > > &V, const std::vector< vcg::Point3< ScalarType > > &Norm, const std::vector< ScalarType > &W, const int N, const vcg::Point3< ScalarType > &TargetN)
template<class MESH_TYPE >
bool IsFoldFree (MESH_TYPE &m)
template<class MeshType >
bool IsMarked (MeshType &m, typename MeshType::ConstVertexPointer v)
 Check if the vertex incremental mark matches the one of the mesh.
template<class MeshType >
bool IsMarked (MeshType &m, typename MeshType::ConstFacePointer f)
 Check if the face incremental mark matches the one of the mesh.
template<class MeshType >
bool IsValidPointer (MeshType &m, const typename MeshType::VertexType *vp)
template<class MeshType >
bool IsValidPointer (MeshType &m, const typename MeshType::EdgeType *ep)
template<class MeshType >
bool IsValidPointer (MeshType &m, const typename MeshType::FaceType *fp)
template<class MeshType >
bool IsValidPointer (MeshType &m, const typename MeshType::HEdgeType *hp)
template<class MeshType >
void Mark (MeshType &m, typename MeshType::VertexPointer v)
 Set the vertex incremental mark of the vertex to the one of the mesh.
template<class MeshType >
void Mark (MeshType &m, typename MeshType::FacePointer f)
 Set the face incremental mark of the vertex to the one of the mesh.
template<class MESH_TYPE >
int MarkFolds (MESH_TYPE &m)
template<class MeshType >
void MontecarloSampling (MeshType &m, MeshType &mm, int sampleNum)
template<class MeshType >
void MontecarloSampling (MeshType &m, std::vector< Point3f > &montercarloSamples, int sampleNum)
template<class OctMeshType >
void Octahedron (OctMeshType &in)
template<class MeshType >
void OptimizeUV_LSCM (MeshType &m, unsigned int fixedMask=MeshType::VertexType::BORDER|MeshType::VertexType::SELECTED)
template<class MeshType >
void OrientedAnnulus (MeshType &m, Point3f center, Point3f norm, float externalRadius, float internalRadius, int slices)
template<class MeshType >
void OrientedCylinder (MeshType &m, const typename MeshType::CoordType origin, const typename MeshType::CoordType end, float radius, bool capped, int slices=32, int stacks=4)
template<class MeshType >
void OrientedDisk (MeshType &m, int slices, typename MeshType::CoordType center, typename MeshType::CoordType norm, float radius)
template<class MeshType >
void OrientedEllipticPrism (MeshType &m, const typename MeshType::CoordType origin, const typename MeshType::CoordType end, float radius, float xScale, float yScale, bool capped, int slices=32, int stacks=4)
template<class MeshType >
void OrientedRect (MeshType &square, float width, float height, Point3f c, Point3f dir=Point3f(0, 0, 0), float angleDeg=0, Point3f preRotTra=Point3f(0, 0, 0))
template<class MeshType >
void OrientedSquare (MeshType &square, float width, Point3f c, Point3f dir=Point3f(0, 0, 0), float angleDeg=0, Point3f preRotTra=Point3f(0, 0, 0))
template<class MeshType >
void PoissonPruning (MeshType &m, std::vector< typename MeshType::VertexPointer > &poissonSamples, float radius, unsigned int randSeed=0)
 Low level wrapper for Poisson Disk Pruning.
template<class MeshType >
void PoissonPruning (MeshType &m, std::vector< Point3f > &poissonSamples, float radius, unsigned int randSeed=0)
 Low level wrapper for Poisson Disk Pruning.
template<class MeshType >
void PoissonPruningExact (MeshType &m, std::vector< typename MeshType::VertexPointer > &poissonSamples, typename MeshType::ScalarType &radius, int sampleNum, float tolerance=0.04, int maxIter=20, unsigned int randSeed=0)
 Very simple wrapping for the Exact Poisson Disk Pruning.
template<class MeshType >
void PoissonSampling (MeshType &m, std::vector< typename MeshType::CoordType > &poissonSamples, int sampleNum, typename MeshType::ScalarType &radius, typename MeshType::ScalarType radiusVariance=1, typename MeshType::ScalarType PruningByNumberTolerance=0.04f, unsigned int randSeed=0)
template<class MESH , class GRID , class OBJPTRCONTAINER , class COORDCONTAINER >
void RaySpherical (MESH &mesh, GRID &gr, const Ray3< typename GRID::ScalarType > &_ray, const typename GRID::ScalarType &_maxDist, const typename GRID::ScalarType &_theta_interval, const typename GRID::ScalarType &_phi_interval, const int &n_samples, OBJPTRCONTAINER &_objectPtrs, COORDCONTAINER &_pos, COORDCONTAINER &_norm)
template<class MESH_TYPE , class MIDPOINT >
bool Refine (MESH_TYPE &m, MIDPOINT mid, typename MESH_TYPE::ScalarType thr=0, bool RefineSelected=false, CallBackPos *cb=0)
template<class MESH_TYPE , class MIDPOINT , class EDGEPRED >
bool RefineE (MESH_TYPE &m, MIDPOINT &mid, EDGEPRED &ep, bool RefineSelected=false, CallBackPos *cb=0)
template<class MESH_TYPE , class ODD_VERT , class EVEN_VERT >
bool RefineOddEven (MESH_TYPE &m, ODD_VERT odd, EVEN_VERT even, float length, bool RefineSelected=false, CallBackPos *cbOdd=0, CallBackPos *cbEven=0)
template<class MESH_TYPE , class ODD_VERT , class EVEN_VERT , class PREDICATE >
bool RefineOddEvenE (MESH_TYPE &m, ODD_VERT odd, EVEN_VERT even, PREDICATE edgePred, bool RefineSelected=false, CallBackPos *cbOdd=0, CallBackPos *cbEven=0)
 Perform diadic subdivision using given rules for odd and even vertices.
template<class MeshType , class ATTR_CONT >
void ReorderAttribute (ATTR_CONT &c, std::vector< size_t > &newVertIndex, MeshType &)
template<class FaceType >
void ReorderFace (std::vector< size_t > &newFaceIndex, face::vector_ocf< FaceType > &faceVec)
template<class MeshType >
void RequireCompactness (MeshType &m)
template<class MeshType >
void RequireEEAdjacency (MeshType &m)
template<class MeshType >
void RequireFEAdjacency (MeshType &m)
template<class MeshType >
void RequireFFAdjacency (MeshType &m)
template<class MeshType >
void RequireFHAdjacency (MeshType &m)
template<class MeshType >
void RequirePerEdgeAttribute (MeshType &m, const char *name)
template<class MeshType >
void RequirePerEdgeColor (MeshType &m)
template<class MeshType >
void RequirePerEdgeFlags (MeshType &m)
template<class MeshType >
void RequirePerEdgeMark (MeshType &m)
template<class MeshType >
void RequirePerEdgeNormal (MeshType &m)
template<class MeshType >
void RequirePerEdgeQuality (MeshType &m)
template<class MeshType >
void RequirePerFaceAttribute (MeshType &m, const char *name)
template<class MeshType >
void RequirePerFaceColor (MeshType &m)
template<class MeshType >
void RequirePerFaceCurvatureDir (MeshType &m)
template<class MeshType >
void RequirePerFaceFlags (MeshType &m)
template<class MeshType >
void RequirePerFaceMark (MeshType &m)
template<class MeshType >
void RequirePerFaceNormal (MeshType &m)
template<class MeshType >
void RequirePerFaceQuality (MeshType &m)
template<class MeshType >
void RequirePerFaceWedgeColor (MeshType &m)
template<class MeshType >
void RequirePerFaceWedgeNormal (MeshType &m)
template<class MeshType >
void RequirePerFaceWedgeTexCoord (MeshType &m)
template<class MeshType >
void RequirePerMeshAttribute (MeshType &m, const char *name)
template<class MeshType >
void RequirePerVertexAttribute (MeshType &m, const char *name)
template<class MeshType >
void RequirePerVertexColor (MeshType &m)
template<class MeshType >
void RequirePerVertexCurvature (MeshType &m)
template<class MeshType >
void RequirePerVertexCurvatureDir (MeshType &m)
template<class MeshType >
void RequirePerVertexFlags (MeshType &m)
template<class MeshType >
void RequirePerVertexMark (MeshType &m)
template<class MeshType >
void RequirePerVertexNormal (MeshType &m)
template<class MeshType >
void RequirePerVertexQuality (MeshType &m)
template<class MeshType >
void RequirePerVertexRadius (MeshType &m)
template<class MeshType >
void RequirePerVertexTexCoord (MeshType &m)
template<class MeshType >
void RequirePolygonalMesh (MeshType &m)
template<class MeshType >
void RequireTriangularMesh (MeshType &m)
template<class MeshType >
void RequireVEAdjacency (MeshType &m)
template<class MeshType >
void RequireVFAdjacency (MeshType &m)
template<class MeshType , class ATTR_CONT >
void ResizeAttribute (ATTR_CONT &c, size_t sz, MeshType &)
template<class MESH_TYPE >
void SmoothTextureCoords (MESH_TYPE &m)
template<class MeshType >
void Sphere (MeshType &in, const int subdiv=3)
template<class MeshType >
void SphericalCap (MeshType &in, float angleRad, const int subdiv=3)
template<class MeshType >
void Square (MeshType &in)
template<class MeshType >
void SuperEllipsoid (MeshType &m, float rFeature, float sFeature, float tFeature, int hRingDiv=24, int vRingDiv=12)
template<class MeshType >
void SuperToroid (MeshType &m, float hRingRadius, float vRingRadius, float vSquareness, float hSquareness, int hRingDiv=24, int vRingDiv=12)
template<class TetraMeshType >
void Tetrahedron (TetraMeshType &in)
template<class MeshType >
void Torus (MeshType &m, float hRingRadius, float vRingRadius, int hRingDiv=24, int vRingDiv=12)
template<class MeshType >
void TrivialMidPointRefine (MeshType &m)
template<class MeshType >
void UnMarkAll (MeshType &m)
 Unmark, in constant time, all the elements (face and vertices) of a mesh.
template<class VertexType >
bool VertexVectorHasPerVertexColor (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexColor (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasPerVertexCurvature (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexCurvature (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasPerVertexCurvatureDir (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexCurvatureDir (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasPerVertexFlags (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexMark (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexNormal (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexNormal (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasPerVertexQuality (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexQuality (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasPerVertexRadius (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexRadius (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasPerVertexTexCoord (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasPerVertexTexCoord (const vertex::vector_ocf< VertexType > &fv)
template<class VertexType >
bool VertexVectorHasVEAdjacency (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasVFAdjacency (const std::vector< VertexType > &)
template<class VertexType >
bool VertexVectorHasVFAdjacency (const vertex::vector_ocf< VertexType > &fv)

Variables

const Split SplitTab [8]

Enumeration Type Documentation

Enumerator:
SMMiq 
SMNPoly 

Definition at line 45 of file smooth_field.h.


Function Documentation

template<class MeshType >
void vcg::tri::CapEdgeMesh ( MeshType &  em,
MeshType &  cm,
bool  revertFlag = false 
)

Definition at line 15 of file glu_tessellator_cap.h.

template<class MeshType >
MeshType::ScalarType vcg::tri::ComputePoissonDiskRadius ( MeshType &  origMesh,
int  sampleNum 
)

Definition at line 2149 of file point_sampling.h.

template<class MESH_TYPE >
void vcg::tri::CreaseCut ( MESH_TYPE &  m,
float  angleRad 
)

Open a mesh cutting all the edges where the two faces make an angle *larger* than the indicated threshold.

Definition at line 35 of file crease_cut.h.

template<class MESH_TYPE >
void vcg::tri::CutMeshAlongNonFauxEdges ( MESH_TYPE &  m)

Open a mesh along non-faux edges.

Duplicate exisiting vertices so that non-faux edges become boundary edges. It assume FF topology and manifoldness. The idea is that we scan faces around each vertex duplicating it each time we encounter a marked edge.

Definition at line 50 of file crease_cut.h.

template<class MESH , class GRID >
GRID::ObjPtr vcg::tri::DoRay ( MESH &  mesh,
GRID gr,
const Ray3< typename GRID::ScalarType > &  _ray,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _t 
)

Definition at line 352 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
GRID::ObjPtr vcg::tri::DoRay ( MESH &  mesh,
GRID gr,
const Ray3< typename GRID::ScalarType > &  _ray,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _t,
typename GRID::CoordType _normf 
)

Definition at line 366 of file complex/algorithms/closest.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasFFAdjacency ( const face::vector_ocf< FaceType > &  fv)

Definition at line 739 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasPerFaceColor ( const face::vector_ocf< FaceType > &  fv)

Definition at line 751 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasPerFaceCurvatureDir ( const face::vector_ocf< FaceType > &  fv)

Definition at line 769 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasPerFaceMark ( const face::vector_ocf< FaceType > &  fv)

Definition at line 763 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasPerFaceNormal ( const face::vector_ocf< FaceType > &  fv)

Definition at line 775 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasPerFaceQuality ( const face::vector_ocf< FaceType > &  fv)

Definition at line 757 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasPerWedgeTexCoord ( const face::vector_ocf< FaceType > &  fv)

Definition at line 745 of file face/component_ocf.h.

template<class FaceType >
bool vcg::tri::FaceVectorHasVFAdjacency ( const face::vector_ocf< FaceType > &  fv)

Definition at line 733 of file face/component_ocf.h.

template<class MESH , class GRID >
MESH::EdgeType* vcg::tri::GetClosestEdge2DBase ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType  _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt 
)

this is for meshes with 2D coordinates

Definition at line 508 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::FaceType * vcg::tri::GetClosestEdgeBase ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType  _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt 
)

this is for meshes with 3D coordinates

Definition at line 523 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::FaceType* vcg::tri::GetClosestFaceBase ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType  _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt 
)

Definition at line 141 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::FaceType* vcg::tri::GetClosestFaceBase ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType  _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt,
typename GRID::CoordType _normf,
typename GRID::CoordType _ip 
)

Definition at line 155 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::FaceType* vcg::tri::GetClosestFaceEP ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt,
typename GRID::CoordType _normf,
typename GRID::CoordType _ip 
)

Definition at line 112 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::FaceType* vcg::tri::GetClosestFaceEP ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType  _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt 
)

Definition at line 174 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::FaceType* vcg::tri::GetClosestFaceNormal ( MESH &  mesh,
GRID gr,
const typename MESH::VertexType &  _p,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _minDist,
typename GRID::CoordType _closestPt 
)

Definition at line 188 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::VertexType* vcg::tri::GetClosestVertex ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _minDist 
)

Definition at line 203 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::VertexType* vcg::tri::GetClosestVertexNormal ( MESH &  mesh,
GRID gr,
const typename MESH::VertexType &  _p,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _minDist 
)

Definition at line 236 of file complex/algorithms/closest.h.

template<class MESH , class GRID >
MESH::VertexType* vcg::tri::GetClosestVertexScale ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename MESH::CoordType &  center,
const typename GRID::ScalarType _maxDist,
typename GRID::ScalarType _minDist 
)

Definition at line 219 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER >
unsigned int vcg::tri::GetInBoxFace ( MESH &  mesh,
GRID gr,
const vcg::Box3< typename GRID::ScalarType _bbox,
OBJPTRCONTAINER &  _objectPtrs 
)

Definition at line 329 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER >
unsigned int vcg::tri::GetInBoxVertex ( MESH &  mesh,
GRID gr,
const vcg::Box3< typename GRID::ScalarType _bbox,
OBJPTRCONTAINER &  _objectPtrs 
)

Definition at line 340 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int vcg::tri::GetInSphereFaceBase ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _r,
OBJPTRCONTAINER &  _objectPtrs,
DISTCONTAINER &  _distances,
POINTCONTAINER &  _points 
)

Definition at line 294 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int vcg::tri::GetInSphereVertex ( MESH &  mesh,
GRID gr,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _r,
OBJPTRCONTAINER &  _objectPtrs,
DISTCONTAINER &  _distances,
POINTCONTAINER &  _points 
)

Definition at line 311 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int vcg::tri::GetKClosestFaceBase ( MESH &  mesh,
GRID gr,
const unsigned int  _k,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _maxDist,
OBJPTRCONTAINER &  _objectPtrs,
DISTCONTAINER &  _distances,
POINTCONTAINER &  _points 
)

Definition at line 267 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int vcg::tri::GetKClosestFaceEP ( MESH &  mesh,
GRID gr,
const unsigned int  _k,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _maxDist,
OBJPTRCONTAINER &  _objectPtrs,
DISTCONTAINER &  _distances,
POINTCONTAINER &  _points 
)

Definition at line 252 of file complex/algorithms/closest.h.

template<class MESH , class GRID , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER >
unsigned int vcg::tri::GetKClosestVertex ( MESH &  mesh,
GRID gr,
const unsigned int  _k,
const typename GRID::CoordType _p,
const typename GRID::ScalarType _maxDist,
OBJPTRCONTAINER &  _objectPtrs,
DISTCONTAINER &  _distances,
POINTCONTAINER &  _points 
)

Definition at line 280 of file complex/algorithms/closest.h.

template<typename ScalarType >
vcg::Point2<ScalarType> vcg::tri::InterpolateNRosy2D ( const std::vector< vcg::Point2< ScalarType > > &  V,
const std::vector< ScalarType > &  W,
const int  N 
)

Definition at line 38 of file tangent_field_operators.h.

template<typename ScalarType >
vcg::Point3<ScalarType> vcg::tri::InterpolateNRosy3D ( const std::vector< vcg::Point3< ScalarType > > &  V,
const std::vector< vcg::Point3< ScalarType > > &  Norm,
const std::vector< ScalarType > &  W,
const int  N,
const vcg::Point3< ScalarType > &  TargetN 
)

create a reference frame along TargetN

rotate each vector to transform to 2D

rotate the vector to become tangent to the reference plane

trassform to the reference frame

Definition at line 84 of file tangent_field_operators.h.

template<class MESH_TYPE >
bool vcg::tri::IsFoldFree ( MESH_TYPE &  m)

Definition at line 354 of file textcoord_optimization.h.

template<class MESH_TYPE >
int vcg::tri::MarkFolds ( MESH_TYPE &  m)

Definition at line 375 of file textcoord_optimization.h.

template<class MeshType >
void vcg::tri::MontecarloSampling ( MeshType &  m,
MeshType &  mm,
int  sampleNum 
)

Definition at line 2168 of file point_sampling.h.

template<class MeshType >
void vcg::tri::MontecarloSampling ( MeshType &  m,
std::vector< Point3f > &  montercarloSamples,
int  sampleNum 
)

Definition at line 2179 of file point_sampling.h.

template<class MeshType >
void vcg::tri::OptimizeUV_LSCM ( MeshType &  m,
unsigned int  fixedMask = MeshType::VertexType::BORDER | MeshType::VertexType::SELECTED 
)

Definition at line 52 of file lscm_parametrization.h.

template<class MeshType >
void vcg::tri::PoissonPruning ( MeshType &  m,
std::vector< typename MeshType::VertexPointer > &  poissonSamples,
float  radius,
unsigned int  randSeed = 0 
)

Low level wrapper for Poisson Disk Pruning.

This function simply takes a mesh and a radius and returns a vector of vertex pointers listing the "surviving" points.

Definition at line 2242 of file point_sampling.h.

template<class MeshType >
void vcg::tri::PoissonPruning ( MeshType &  m,
std::vector< Point3f > &  poissonSamples,
float  radius,
unsigned int  randSeed = 0 
)

Low level wrapper for Poisson Disk Pruning.

This function simply takes a mesh and a radius and returns a vector of vertex pointers listing the "surviving" points.

Definition at line 2263 of file point_sampling.h.

template<class MeshType >
void vcg::tri::PoissonPruningExact ( MeshType &  m,
std::vector< typename MeshType::VertexPointer > &  poissonSamples,
typename MeshType::ScalarType radius,
int  sampleNum,
float  tolerance = 0.04,
int  maxIter = 20,
unsigned int  randSeed = 0 
)

Very simple wrapping for the Exact Poisson Disk Pruning.

This function simply takes a mesh and an expected number of points and returns vector of points. It performs multiple attempts with varius radii to correctly get the expected number of samples. It is obviously much slower than the other versions...

Parameters:
poissonSamplesthe mesh that has to be pruned
radiusthe vector that will contain the chosen set of points

Definition at line 2282 of file point_sampling.h.

template<class MeshType >
void vcg::tri::PoissonSampling ( MeshType &  m,
std::vector< typename MeshType::CoordType > &  poissonSamples,
int  sampleNum,
typename MeshType::ScalarType radius,
typename MeshType::ScalarType  radiusVariance = 1,
typename MeshType::ScalarType  PruningByNumberTolerance = 0.04f,
unsigned int  randSeed = 0 
)

Definition at line 2191 of file point_sampling.h.

template<class MESH , class GRID , class OBJPTRCONTAINER , class COORDCONTAINER >
void vcg::tri::RaySpherical ( MESH &  mesh,
GRID gr,
const Ray3< typename GRID::ScalarType > &  _ray,
const typename GRID::ScalarType _maxDist,
const typename GRID::ScalarType _theta_interval,
const typename GRID::ScalarType _phi_interval,
const int &  n_samples,
OBJPTRCONTAINER &  _objectPtrs,
COORDCONTAINER &  _pos,
COORDCONTAINER &  _norm 
)

Iteratively Do Ray sampling on spherical coordinates sampling along the two angles

find the normal

Definition at line 399 of file complex/algorithms/closest.h.

template<class MESH_TYPE , class MIDPOINT >
bool vcg::tri::Refine ( MESH_TYPE &  m,
MIDPOINT  mid,
typename MESH_TYPE::ScalarType  thr = 0,
bool  RefineSelected = false,
CallBackPos *  cb = 0 
)

Definition at line 535 of file refine.h.

template<class MESH_TYPE , class MIDPOINT , class EDGEPRED >
bool vcg::tri::RefineE ( MESH_TYPE &  m,
MIDPOINT &  mid,
EDGEPRED &  ep,
bool  RefineSelected = false,
CallBackPos *  cb = 0 
)

Definition at line 331 of file refine.h.

template<class MESH_TYPE , class ODD_VERT , class EVEN_VERT >
bool vcg::tri::RefineOddEven ( MESH_TYPE &  m,
ODD_VERT  odd,
EVEN_VERT  even,
float  length,
bool  RefineSelected = false,
CallBackPos *  cbOdd = 0,
CallBackPos *  cbEven = 0 
)

Definition at line 545 of file refine_loop.h.

template<class MESH_TYPE , class ODD_VERT , class EVEN_VERT , class PREDICATE >
bool vcg::tri::RefineOddEvenE ( MESH_TYPE &  m,
ODD_VERT  odd,
EVEN_VERT  even,
PREDICATE  edgePred,
bool  RefineSelected = false,
CallBackPos *  cbOdd = 0,
CallBackPos *  cbEven = 0 
)

Perform diadic subdivision using given rules for odd and even vertices.

Definition at line 556 of file refine_loop.h.

template<class FaceType >
void vcg::tri::ReorderFace ( std::vector< size_t > &  newFaceIndex,
face::vector_ocf< FaceType > &  faceVec 
)

Definition at line 781 of file face/component_ocf.h.

template<class MESH_TYPE >
void vcg::tri::SmoothTextureCoords ( MESH_TYPE &  m)

Definition at line 414 of file textcoord_optimization.h.

template<class MeshType >
void vcg::tri::TrivialMidPointRefine ( MeshType &  m)

Definition at line 968 of file refine.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexColor ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 604 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexCurvature ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 610 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexCurvatureDir ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 616 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexNormal ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 598 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexQuality ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 592 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexRadius ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 586 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasPerVertexTexCoord ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 623 of file vertex/component_ocf.h.

template<class VertexType >
bool vcg::tri::VertexVectorHasVFAdjacency ( const vertex::vector_ocf< VertexType > &  fv)

Definition at line 580 of file vertex/component_ocf.h.


Variable Documentation

Initial value:
{

        {1, {{0,1,2},{0,0,0},{0,0,0},{0,0,0}}, {{0,0},{0,0}},  {{0,1,2},{0,0,0},{0,0,0},{0,0,0}} },
        {2, {{0,3,2},{3,1,2},{0,0,0},{0,0,0}}, {{0,0},{0,0}},  {{0,3,2},{0,1,3},{0,0,0},{0,0,0}} },
        {2, {{0,1,4},{0,4,2},{0,0,0},{0,0,0}}, {{0,0},{0,0}},  {{0,1,3},{3,1,2},{0,0,0},{0,0,0}} },
        {3, {{3,1,4},{0,3,2},{4,2,3},{0,0,0}}, {{0,4},{3,2}},  {{0,1,3},{0,3,2},{1,3,3},{0,0,0}} },
        {2, {{0,1,5},{5,1,2},{0,0,0},{0,0,0}}, {{0,0},{0,0}},  {{0,3,2},{3,1,2},{0,0,0},{0,0,0}} },
        {3, {{0,3,5},{3,1,5},{2,5,1},{0,0,0}}, {{3,2},{5,1}},  {{0,3,2},{0,3,3},{2,3,1},{0,0,0}} },
        {3, {{2,5,4},{0,1,5},{4,5,1},{0,0,0}}, {{0,4},{5,1}},  {{2,3,1},{0,3,2},{3,3,1},{0,0,0}} },
        
        {4, {{3,4,5},{0,3,5},{3,1,4},{5,4,2}}, {{0,0},{0,0}},  {{3,3,3},{0,3,2},{0,1,3},{3,1,2}} },
}

Definition at line 99 of file refine.h.



shape_reconstruction
Author(s): Roberto Martín-Martín
autogenerated on Sat Jun 8 2019 18:41:52