24 #ifndef _SpatialIndex_h_Included_
25 #define _SpatialIndex_h_Included_
29 #ifdef SPATIALINDEX_DLL_EXPORTS
30 #define ODSI_API OD_TOOLKIT_EXPORT
31 #define ODSI_API_STATIC OD_STATIC_EXPORT
33 #define ODSI_API OD_TOOLKIT_IMPORT
34 #define ODSI_API_STATIC OD_STATIC_IMPORT
129 kSiPlanar = (1 << 0),
130 kSiModifyMtAware = (1 << 1),
131 kSiAccessMtAware = (1 << 2),
133 kSiFullMtAware = (kSiModifyMtAware | kSiAccessMtAware)
OdSmartPtr< OdSiSpatialIndex > OdSiSpatialIndexPtr
static OdSiSpatialIndexPtr createObject(OdUInt32 flags, unsigned int initialNumEntity, unsigned int maxDepth=30, unsigned int maxCount=20, double eps=1e-10)
virtual void setTolerance(const OdGeTol &tol)=0
virtual void insert(OdSiEntity *entity)=0
virtual void setMaxNodeSize(unsigned char maxCount)=0
virtual unsigned maxNodeSize() const =0
ODRX_DECLARE_MEMBERS(OdSiSpatialIndex)
virtual unsigned maxTreeDepth() const =0
virtual void query(const OdSiShape &shape, OdSiVisitor &visitor) const =0
virtual bool remove(OdSiEntity *entity)=0
virtual bool extents(OdGeExtents3d &extents) const =0
virtual void setMaxTreeDepth(unsigned char maxDepth)=0
virtual const OdGeTol & tolerance() const =0
bool ODSI_API properExtents(const OdGeExtents3d &ext)
static GE_STATIC_EXPORT OdGeTol gTol
virtual bool extents(OdGeExtents3d &extents) const =0
virtual OdSiShape * clone() const
static ODSI_API_STATIC const OdSiShape & kOverallSpace
virtual bool contains(const OdGeExtents3d &extents, bool planar, const OdGeTol &tol=OdGeContext::gTol) const =0
virtual bool intersects(const OdGeExtents3d &extents, bool planar, const OdGeTol &tol=OdGeContext::gTol) const =0
virtual void transform(const OdGeMatrix3d &)
static ODSI_API_STATIC const OdSiShape & kNoSpace
virtual void visit(OdSiEntity *entity, bool completelyInside)=0