#include <base.h>
Public Types | |
typedef vcg::Box3< ScalarType > | BoxType |
typedef SpatialIndex< OBJTYPE, SCALARTYPE > | ClassType |
typedef Point3< ScalarType > | CoordType |
typedef ObjType * | ObjPtr |
typedef OBJTYPE | ObjType |
typedef SCALARTYPE | ScalarType |
Public Member Functions | |
template<class OBJRAYISECTFUNCTOR , class OBJMARKER > | |
ObjPtr | DoRay (OBJRAYISECTFUNCTOR &_rayIntersector, OBJMARKER &_marker, const Ray3< ScalarType > &_ray, const ScalarType &_maxDist, ScalarType &_t) |
bool | Empty () |
template<class OBJPOINTDISTFUNCTOR , class OBJMARKER > | |
ObjPtr | GetClosest (OBJPOINTDISTFUNCTOR &_getPointDistance, OBJMARKER &_marker, const CoordType &_p, const ScalarType &_maxDist, ScalarType &_minDist, CoordType &_closestPt) |
template<class OBJMARKER , class OBJPTRCONTAINER > | |
unsigned int | GetInBox (OBJMARKER &_marker, const BoxType _bbox, OBJPTRCONTAINER &_objectPtrs) |
template<class OBJPOINTDISTFUNCTOR , class OBJMARKER , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER > | |
unsigned int | GetInSphere (OBJPOINTDISTFUNCTOR &_getPointDistance, OBJMARKER &_marker, const CoordType &_p, const ScalarType &_r, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points) |
template<class OBJPOINTDISTFUNCTOR , class OBJMARKER , class OBJPTRCONTAINER , class DISTCONTAINER , class POINTCONTAINER > | |
unsigned int | GetKClosest (OBJPOINTDISTFUNCTOR &_getPointDistance, OBJMARKER &_marker, const unsigned int _k, const CoordType &_p, const ScalarType &_maxDist, OBJPTRCONTAINER &_objectPtrs, DISTCONTAINER &_distances, POINTCONTAINER &_points) |
template<class OBJITER > | |
void | Set (const OBJITER &_oBegin, const OBJITER &_oEnd) |
Definition at line 62 of file vcg/space/index/base.h.
typedef vcg::Box3<ScalarType> vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::BoxType |
Definition at line 72 of file vcg/space/index/base.h.
typedef SpatialIndex<OBJTYPE, SCALARTYPE> vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::ClassType |
Reimplemented in vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 67 of file vcg/space/index/base.h.
typedef Point3<ScalarType> vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::CoordType |
Reimplemented in vcg::DynamicSpatialHashTable< ContainerType, FLT >, vcg::Octree< OBJECT_TYPE, SCALAR_TYPE >, vcg::Octree< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< OBJTYPE, FLT >, vcg::SpatialHashTable< ObjType, FLT >, vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, vcg::SpatialHashTable< ContainerType, FLT >, vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 71 of file vcg/space/index/base.h.
typedef ObjType* vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::ObjPtr |
Reimplemented in vcg::DynamicSpatialHashTable< ContainerType, FLT >, vcg::GridStaticPtr< OBJTYPE, FLT >, vcg::SpatialHashTable< ObjType, FLT >, vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, vcg::SpatialHashTable< ContainerType, FLT >, vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 70 of file vcg/space/index/base.h.
typedef OBJTYPE vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::ObjType |
Reimplemented in vcg::DynamicSpatialHashTable< ContainerType, FLT >, vcg::GridStaticPtr< OBJTYPE, FLT >, vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 68 of file vcg/space/index/base.h.
typedef SCALARTYPE vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::ScalarType |
Reimplemented in vcg::Octree< OBJECT_TYPE, SCALAR_TYPE >, vcg::Octree< FaceType, typename MetroMesh::ScalarType >, vcg::PerfectSpatialHashing< OBJECT_TYPE, SCALAR_TYPE >, vcg::GridStaticPtr< OBJTYPE, FLT >, vcg::SpatialHashTable< ObjType, FLT >, vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, vcg::SpatialHashTable< ContainerType, FLT >, vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 69 of file vcg/space/index/base.h.
ObjPtr vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::DoRay | ( | OBJRAYISECTFUNCTOR & | _rayIntersector, |
OBJMARKER & | _marker, | ||
const Ray3< ScalarType > & | _ray, | ||
const ScalarType & | _maxDist, | ||
ScalarType & | _t | ||
) | [inline] |
Reimplemented in vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, vcg::SpatialHashTable< ContainerType, FLT >, vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 319 of file vcg/space/index/base.h.
bool vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::Empty | ( | ) | [inline] |
Reimplemented in vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 107 of file vcg/space/index/base.h.
ObjPtr vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::GetClosest | ( | OBJPOINTDISTFUNCTOR & | _getPointDistance, |
OBJMARKER & | _marker, | ||
const CoordType & | _p, | ||
const ScalarType & | _maxDist, | ||
ScalarType & | _minDist, | ||
CoordType & | _closestPt | ||
) | [inline] |
Reimplemented in vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, and vcg::SpatialHashTable< ContainerType, FLT >.
Definition at line 144 of file vcg/space/index/base.h.
unsigned int vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::GetInBox | ( | OBJMARKER & | _marker, |
const BoxType | _bbox, | ||
OBJPTRCONTAINER & | _objectPtrs | ||
) | [inline] |
Reimplemented in vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, and vcg::SpatialHashTable< ContainerType, FLT >.
Definition at line 280 of file vcg/space/index/base.h.
unsigned int vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::GetInSphere | ( | OBJPOINTDISTFUNCTOR & | _getPointDistance, |
OBJMARKER & | _marker, | ||
const CoordType & | _p, | ||
const ScalarType & | _r, | ||
OBJPTRCONTAINER & | _objectPtrs, | ||
DISTCONTAINER & | _distances, | ||
POINTCONTAINER & | _points | ||
) | [inline] |
Reimplemented in vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, and vcg::SpatialHashTable< ContainerType, FLT >.
Definition at line 245 of file vcg/space/index/base.h.
unsigned int vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::GetKClosest | ( | OBJPOINTDISTFUNCTOR & | _getPointDistance, |
OBJMARKER & | _marker, | ||
const unsigned int | _k, | ||
const CoordType & | _p, | ||
const ScalarType & | _maxDist, | ||
OBJPTRCONTAINER & | _objectPtrs, | ||
DISTCONTAINER & | _distances, | ||
POINTCONTAINER & | _points | ||
) | [inline] |
Reimplemented in vcg::GridStaticPtr< typename MESH::VertexType, typename MESH::ScalarType >, vcg::GridStaticPtr< typename CMesh::VertexType, typename CMesh::ScalarType >, vcg::GridStaticPtr< FaceType, typename MetroMesh::ScalarType >, vcg::GridStaticPtr< FaceType, ScalarType >, vcg::GridStaticPtr< typename MeshType::VertexType, ScalarType >, vcg::GridStaticPtr< VertexType, ScalarType >, vcg::GridStaticPtr< typename MeshType::FaceType, ScalarType >, vcg::GridStaticPtr< OldFaceType, OldScalarType >, vcg::SpatialHashTable< FaceType, typename MetroMesh::ScalarType >, vcg::SpatialHashTable< ContainerType, FLT >, vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 194 of file vcg/space/index/base.h.
void vcg::SpatialIndex< OBJTYPE, SCALARTYPE >::Set | ( | const OBJITER & | _oBegin, |
const OBJITER & | _oEnd | ||
) | [inline] |
Reimplemented in vcg::AABBBinaryTreeIndex< OBJTYPE, SCALARTYPE, NODEAUXDATA >, and vcg::AABBBinaryTreeIndex< FaceType, typename MetroMesh::ScalarType, vcg::EmptyClass >.
Definition at line 92 of file vcg/space/index/base.h.