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 ¢er, 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< ScalarType > | InterpolateNRosy2D (const std::vector< vcg::Point2< ScalarType > > &V, const std::vector< ScalarType > &W, const int N) |
template<typename ScalarType > | |
vcg::Point3< ScalarType > | 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) |
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] |
Definition at line 45 of file smooth_field.h.
void vcg::tri::CapEdgeMesh | ( | MeshType & | em, |
MeshType & | cm, | ||
bool | revertFlag = false |
||
) |
Definition at line 15 of file glu_tessellator_cap.h.
MeshType::ScalarType vcg::tri::ComputePoissonDiskRadius | ( | MeshType & | origMesh, |
int | sampleNum | ||
) |
Definition at line 2149 of file point_sampling.h.
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.
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.
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.
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.
bool vcg::tri::FaceVectorHasFFAdjacency | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 739 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasPerFaceColor | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 751 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasPerFaceCurvatureDir | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 769 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasPerFaceMark | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 763 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasPerFaceNormal | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 775 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasPerFaceQuality | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 757 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasPerWedgeTexCoord | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 745 of file face/component_ocf.h.
bool vcg::tri::FaceVectorHasVFAdjacency | ( | const face::vector_ocf< FaceType > & | fv | ) |
Definition at line 733 of file face/component_ocf.h.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
bool vcg::tri::IsFoldFree | ( | MESH_TYPE & | m | ) |
Definition at line 354 of file textcoord_optimization.h.
int vcg::tri::MarkFolds | ( | MESH_TYPE & | m | ) |
Definition at line 375 of file textcoord_optimization.h.
void vcg::tri::MontecarloSampling | ( | MeshType & | m, |
MeshType & | mm, | ||
int | sampleNum | ||
) |
Definition at line 2168 of file point_sampling.h.
void vcg::tri::MontecarloSampling | ( | MeshType & | m, |
std::vector< Point3f > & | montercarloSamples, | ||
int | sampleNum | ||
) |
Definition at line 2179 of file point_sampling.h.
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.
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.
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.
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...
poissonSamples | the mesh that has to be pruned |
radius | the vector that will contain the chosen set of points |
Definition at line 2282 of file point_sampling.h.
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.
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.
bool vcg::tri::Refine | ( | MESH_TYPE & | m, |
MIDPOINT | mid, | ||
typename MESH_TYPE::ScalarType | thr = 0 , |
||
bool | RefineSelected = false , |
||
CallBackPos * | cb = 0 |
||
) |
bool vcg::tri::RefineE | ( | MESH_TYPE & | m, |
MIDPOINT & | mid, | ||
EDGEPRED & | ep, | ||
bool | RefineSelected = false , |
||
CallBackPos * | cb = 0 |
||
) |
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.
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.
void vcg::tri::ReorderFace | ( | std::vector< size_t > & | newFaceIndex, |
face::vector_ocf< FaceType > & | faceVec | ||
) |
Definition at line 781 of file face/component_ocf.h.
void vcg::tri::SmoothTextureCoords | ( | MESH_TYPE & | m | ) |
Definition at line 414 of file textcoord_optimization.h.
void vcg::tri::TrivialMidPointRefine | ( | MeshType & | m | ) |
bool vcg::tri::VertexVectorHasPerVertexColor | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 604 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasPerVertexCurvature | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 610 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasPerVertexCurvatureDir | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 616 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasPerVertexNormal | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 598 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasPerVertexQuality | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 592 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasPerVertexRadius | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 586 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasPerVertexTexCoord | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 623 of file vertex/component_ocf.h.
bool vcg::tri::VertexVectorHasVFAdjacency | ( | const vertex::vector_ocf< VertexType > & | fv | ) |
Definition at line 580 of file vertex/component_ocf.h.
const Split vcg::tri::SplitTab[8] |
{ {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}} }, }