#include <math.h>
#include <vcg/space/point3.h>
#include <vcg/space/box3.h>
#include <vcg/space/point4.h>
#include <vcg/space/index/grid_util.h>
#include <vcg/space/index/grid_closest.h>
#include <vcg/math/base.h>
#include <vcg/simplex/face/distance.h>
#include <vcg/simplex/edge/distance.h>
#include <vcg/simplex/vertex/distance.h>
#include <vcg/space/intersection3.h>
#include <vcg/space/index/space_iterators.h>
#include <vcg/complex/complex.h>
Go to the source code of this file.
Classes | |
class | vcg::tri::ClosestFaceEPIterator< GRID, MESH > |
class | vcg::tri::ClosestVertexIterator< GRID, MESH > |
class | vcg::tri::EdgeTmark< MESH_TYPE > |
class | vcg::tri::EmptyTMark< MESH_TYPE > |
class | vcg::tri::FaceTmark< MESH_TYPE > |
class | vcg::tri::Tmark< MESH_TYPE, OBJ_TYPE > |
class | vcg::tri::TriRayIterator< GRID, MESH > |
Namespaces | |
namespace | vcg |
* | |
namespace | vcg::tri |
Functions | |
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) |
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) |
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 | |
template<class MESH , class GRID > | |
MESH::EdgeType * | 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 | |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
template<class MESH , class GRID > | |
MESH::VertexType * | vcg::tri::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 | vcg::tri::GetInBoxFace (MESH &mesh, GRID &gr, const vcg::Box3< typename GRID::ScalarType > _bbox, OBJPTRCONTAINER &_objectPtrs) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |