⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rtree.h

📁 一个非常好的GIS开源新版本
💻 H
字号:
// Spatial Index Library//// Copyright (C) 2003 Navel Ltd.//// This library is free software; you can redistribute it and/or// modify it under the terms of the GNU Lesser General Public// License as published by the Free Software Foundation; either// version 2.1 of the License, or (at your option) any later version.//// This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU// Lesser General Public License for more details.//// You should have received a copy of the GNU Lesser General Public// License along with this library; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA////  Email://    mhadji@gmail.com#ifndef __spatialindex_rtree_h#define __spatialindex_rtree_hnamespace SpatialIndex{	namespace RTree	{		enum RTreeVariant		{			RV_LINEAR = 0x0,			RV_QUADRATIC,			RV_RSTAR		};		enum BulkLoadMethod		{			BLM_STR = 0x0		};		enum PersistenObjectIdentifier		{			PersistentIndex = 0x1,			PersistentLeaf = 0x2		};		enum RangeQueryType		{			ContainmentQuery = 0x1,			IntersectionQuery = 0x2		};		class Data : public IData, public Tools::ISerializable		{		public:			Data(unsigned long len, byte* pData, Tools::Geometry::Region& r, long id);			virtual ~Data();			virtual Data* clone();			virtual long getIdentifier() const;			virtual void getShape(IShape** out) const;			virtual void getData(unsigned long& len, byte** data) const;			virtual unsigned long getByteArraySize();			virtual void loadFromByteArray(const byte* data);			virtual void storeToByteArray(byte** data, unsigned long& len);			long m_id;                        Tools::Geometry::Region m_region;			byte* m_pData;			unsigned long m_dataLength;		}; // Data#ifdef _MSC_VER		// MSVC didn't like the difference in parameter names between declaration		// definition		extern ISpatialIndex* returnRTree(IStorageManager& sm, Tools::PropertySet& ps);#else		extern ISpatialIndex* returnRTree(IStorageManager& in0, Tools::PropertySet& in1);#endif//_MSC_VER		extern ISpatialIndex* createNewRTree(			IStorageManager& sm,			double fillFactor,			unsigned long indexCapacity,			unsigned long leafCapacity,			unsigned long dimension,			RTreeVariant rv,			long& indexIdentifier		);		extern ISpatialIndex* createAndBulkLoadNewRTree(			BulkLoadMethod m,			IDataStream& stream,			IStorageManager& sm,			double fillFactor,			unsigned long indexCapacity,			unsigned long leafCapacity,			unsigned long dimension,			RTreeVariant rv,			long& indexIdentifier		);		extern ISpatialIndex* loadRTree(IStorageManager& in, long indexIdentifier);	}}#endif /* __spatialindex_rtree_h */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -