| LineSegment.h | | LineSegment.h | |
| | | | |
| skipping to change at line 68 | | skipping to change at line 68 | |
| // | | // | |
| virtual bool intersectsShape(const IShape& in) const; | | virtual bool intersectsShape(const IShape& in) const; | |
| virtual bool containsShape(const IShape& in) const; | | virtual bool containsShape(const IShape& in) const; | |
| virtual bool touchesShape(const IShape& in) const; | | virtual bool touchesShape(const IShape& in) const; | |
| virtual void getCenter(Point& out) const; | | virtual void getCenter(Point& out) const; | |
| virtual uint32_t getDimension() const; | | virtual uint32_t getDimension() const; | |
| virtual void getMBR(Region& out) const; | | virtual void getMBR(Region& out) const; | |
| virtual double getArea() const; | | virtual double getArea() const; | |
| virtual double getMinimumDistance(const IShape& in) const; | | virtual double getMinimumDistance(const IShape& in) const; | |
| | | | |
|
| | | virtual bool intersectsLineSegment(const LineSegment& l) con | |
| | | st; | |
| | | virtual bool intersectsRegion(const Region& p) const; | |
| virtual double getMinimumDistance(const Point& p) const; | | virtual double getMinimumDistance(const Point& p) const; | |
| //virtual double getMinimumDistance(const Region& r) const; | | //virtual double getMinimumDistance(const Region& r) const; | |
| virtual double getRelativeMinimumDistance(const Point& p) co
nst; | | virtual double getRelativeMinimumDistance(const Point& p) co
nst; | |
| virtual double getRelativeMaximumDistance(const Region& r) c
onst; | | virtual double getRelativeMaximumDistance(const Region& r) c
onst; | |
| virtual double getAngleOfPerpendicularRay(); | | virtual double getAngleOfPerpendicularRay(); | |
| | | | |
| virtual void makeInfinite(uint32_t dimension); | | virtual void makeInfinite(uint32_t dimension); | |
| virtual void makeDimension(uint32_t dimension); | | virtual void makeDimension(uint32_t dimension); | |
| | | | |
| public: | | public: | |
| uint32_t m_dimension; | | uint32_t m_dimension; | |
| double* m_pStartPoint; | | double* m_pStartPoint; | |
| double* m_pEndPoint; | | double* m_pEndPoint; | |
| | | | |
| friend class Region; | | friend class Region; | |
| friend class Point; | | friend class Point; | |
| friend SIDX_DLL std::ostream& operator<<(std::ostream& os, c
onst LineSegment& pt); | | friend SIDX_DLL std::ostream& operator<<(std::ostream& os, c
onst LineSegment& pt); | |
|
| }; // Point | | | |
| | | protected: | |
| | | | |
| | | //some helpers for intersects methods | |
| | | static double doubleAreaTriangle(const Point& a, const Point& b, co | |
| | | nst Point& c); | |
| | | static bool leftOf(const Point& a, const Point& b, const Point& c); | |
| | | static bool collinear(const Point& a, const Point& b, const Point& | |
| | | c); | |
| | | static bool between(const Point& a, const Point& b, const Point& c) | |
| | | ; | |
| | | static bool between(double a, double b, double c); | |
| | | static bool intersectsProper(const Point& a, const Point& b, const | |
| | | Point& c, const Point& d); | |
| | | static bool intersects(const Point& a, const Point& b, const Point& | |
| | | c, const Point& d); | |
| | | | |
| | | }; // LineSegment | |
| | | | |
| SIDX_DLL std::ostream& operator<<(std::ostream& os, const LineSegmen
t& pt); | | SIDX_DLL std::ostream& operator<<(std::ostream& os, const LineSegmen
t& pt); | |
| } | | } | |
| | | | |
End of changes. 2 change blocks. |
| 1 lines changed or deleted | | 21 lines changed or added | |
|
| Region.h | | Region.h | |
| | | | |
| skipping to change at line 73 | | skipping to change at line 73 | |
| virtual uint32_t getDimension() const; | | virtual uint32_t getDimension() const; | |
| virtual void getMBR(Region& out) const; | | virtual void getMBR(Region& out) const; | |
| virtual double getArea() const; | | virtual double getArea() const; | |
| virtual double getMinimumDistance(const IShape& in) const; | | virtual double getMinimumDistance(const IShape& in) const; | |
| | | | |
| virtual bool intersectsRegion(const Region& in) const; | | virtual bool intersectsRegion(const Region& in) const; | |
| virtual bool containsRegion(const Region& in) const; | | virtual bool containsRegion(const Region& in) const; | |
| virtual bool touchesRegion(const Region& in) const; | | virtual bool touchesRegion(const Region& in) const; | |
| virtual double getMinimumDistance(const Region& in) const; | | virtual double getMinimumDistance(const Region& in) const; | |
| | | | |
|
| | | virtual bool intersectsLineSegment(const LineSegment& in) co | |
| | | nst; | |
| | | | |
| virtual bool containsPoint(const Point& in) const; | | virtual bool containsPoint(const Point& in) const; | |
| virtual bool touchesPoint(const Point& in) const; | | virtual bool touchesPoint(const Point& in) const; | |
| virtual double getMinimumDistance(const Point& in) const; | | virtual double getMinimumDistance(const Point& in) const; | |
| | | | |
| virtual Region getIntersectingRegion(const Region& r) const; | | virtual Region getIntersectingRegion(const Region& r) const; | |
| virtual double getIntersectingArea(const Region& in) const; | | virtual double getIntersectingArea(const Region& in) const; | |
| virtual double getMargin() const; | | virtual double getMargin() const; | |
| | | | |
| virtual void combineRegion(const Region& in); | | virtual void combineRegion(const Region& in); | |
| virtual void combinePoint(const Point& in); | | virtual void combinePoint(const Point& in); | |
| | | | |
End of changes. 1 change blocks. |
| 0 lines changed or deleted | | 3 lines changed or added | |
|
| Tools.h | | Tools.h | |
| | | | |
| skipping to change at line 30 | | skipping to change at line 30 | |
| * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILI
TY, | | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILI
TY, | |
| * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |
| * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTH
ER | | * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTH
ER | |
| * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |
| * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |
| * DEALINGS IN THE SOFTWARE. | | * DEALINGS IN THE SOFTWARE. | |
| ***************************************************************************
***/ | | ***************************************************************************
***/ | |
| | | | |
| #pragma once | | #pragma once | |
| | | | |
|
| #if defined _WIN32 || defined _WIN64 || defined WIN32 || defined WIN64 | | #if (defined _WIN32 || defined _WIN64 || defined WIN32 || defined WIN64) &&
!defined __GNUC__ | |
| typedef __int8 int8_t; | | typedef __int8 int8_t; | |
| typedef __int16 int16_t; | | typedef __int16 int16_t; | |
| typedef __int32 int32_t; | | typedef __int32 int32_t; | |
| typedef __int64 int64_t; | | typedef __int64 int64_t; | |
| typedef unsigned __int8 uint8_t; | | typedef unsigned __int8 uint8_t; | |
| typedef unsigned __int16 uint16_t; | | typedef unsigned __int16 uint16_t; | |
| typedef unsigned __int32 uint32_t; | | typedef unsigned __int32 uint32_t; | |
| typedef unsigned __int64 uint64_t; | | typedef unsigned __int64 uint64_t; | |
| | | | |
| // Nuke this annoying warning. See http://www.unknownroad.com/rtfm/VisualS
tudio/warningC4251.html | | // Nuke this annoying warning. See http://www.unknownroad.com/rtfm/VisualS
tudio/warningC4251.html | |
| #pragma warning( disable: 4251 ) | | #pragma warning( disable: 4251 ) | |
| | | | |
| #else | | #else | |
| #include <stdint.h> | | #include <stdint.h> | |
| #endif | | #endif | |
| | | | |
|
| #if defined _WIN32 || defined _WIN64 || defined WIN32 || defined WIN64 | | #if (defined _WIN32 || defined _WIN64 || defined WIN32 || defined WIN64) &&
!defined __GNUC__ | |
| #ifdef SPATIALINDEX_CREATE_DLL | | #ifdef SPATIALINDEX_CREATE_DLL | |
| #define SIDX_DLL __declspec(dllexport) | | #define SIDX_DLL __declspec(dllexport) | |
| #else | | #else | |
| #define SIDX_DLL __declspec(dllimport) | | #define SIDX_DLL __declspec(dllimport) | |
| #endif | | #endif | |
| #else | | #else | |
| #define SIDX_DLL | | #define SIDX_DLL | |
| #endif | | #endif | |
| | | | |
| #include <assert.h> | | #include <assert.h> | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 2 lines changed or added | |
|
| Version.h | | Version.h | |
|
| // Spatial Index Library | | /************************************************************************** | |
| // | | **** | |
| // Copyright (C) 2003 Navel Ltd. | | * Project: libspatialindex - A C++ library for spatial indexing | |
| // | | * Author: Marios Hadjieleftheriou, mhadji@gmail.com | |
| // 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 | | * Copyright (c) 2003, Marios Hadjieleftheriou | |
| // version 2.1 of the License, or (at your option) any later version. | | * | |
| // | | * All rights reserved. | |
| // This library is distributed in the hope that it will be useful, | | * | |
| // but WITHOUT ANY WARRANTY; without even the implied warranty of | | * Permission is hereby granted, free of charge, to any person obtaining a | |
| // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | | * copy of this software and associated documentation files (the "Software" | |
| // Lesser General Public License for more details. | | ), | |
| // | | * to deal in the Software without restriction, including without limitatio | |
| // You should have received a copy of the GNU Lesser General Public | | n | |
| // License along with this library; if not, write to the Free Software | | * the rights to use, copy, modify, merge, publish, distribute, sublicense, | |
| // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 US | | * and/or sell copies of the Software, and to permit persons to whom the | |
| A | | * Software is furnished to do so, subject to the following conditions: | |
| // | | * | |
| // Email: | | * The above copyright notice and this permission notice shall be included | |
| // mhadji@gmail.com | | * in all copies or substantial portions of the Software. | |
| | | * | |
| | | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | |
| | | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILI | |
| | | TY, | |
| | | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |
| | | * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTH | |
| | | ER | |
| | | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |
| | | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |
| | | * DEALINGS IN THE SOFTWARE. | |
| | | *************************************************************************** | |
| | | ***/ | |
| | | | |
| #pragma once | | #pragma once | |
| | | | |
| #ifndef SIDX_VERSION_MAJOR | | #ifndef SIDX_VERSION_MAJOR | |
| #define SIDX_VERSION_MAJOR 1 | | #define SIDX_VERSION_MAJOR 1 | |
| #define SIDX_VERSION_MINOR 8 | | #define SIDX_VERSION_MINOR 8 | |
|
| #define SIDX_VERSION_REV 0 | | #define SIDX_VERSION_REV 1 | |
| #define SIDX_VERSION_BUILD 0 | | #define SIDX_VERSION_BUILD 0 | |
| #endif | | #endif | |
| | | | |
| #ifndef SIDX_VERSION_NUM | | #ifndef SIDX_VERSION_NUM | |
| #define SIDX_VERSION_NUM (SIDX_VERSION_MAJOR*1000+SIDX_VERSION_MINOR*1
00+SIDX_VERSION_REV*10+SIDX_VERSION_BUILD) | | #define SIDX_VERSION_NUM (SIDX_VERSION_MAJOR*1000+SIDX_VERSION_MINOR*1
00+SIDX_VERSION_REV*10+SIDX_VERSION_BUILD) | |
| #endif | | #endif | |
| | | | |
| #ifndef SIDX_RELEASE_DATE | | #ifndef SIDX_RELEASE_DATE | |
|
| #define SIDX_RELEASE_DATE 20121213 | | #define SIDX_RELEASE_DATE 20130626 | |
| #endif | | #endif | |
| | | | |
| #ifndef SIDX_RELEASE_NAME | | #ifndef SIDX_RELEASE_NAME | |
|
| #define SIDX_RELEASE_NAME "1.8.0" | | #define SIDX_RELEASE_NAME "1.8.1" | |
| #endif | | #endif | |
| | | | |
End of changes. 4 change blocks. |
| 24 lines changed or deleted | | 36 lines changed or added | |
|