diff -Nru geos-3.6.2/aclocal.m4 geos-3.7.1/aclocal.m4 --- geos-3.6.2/aclocal.m4 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/aclocal.m4 2018-11-29 23:05:14.000000000 +0000 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.15 -*- Autoconf -*- +# generated automatically by aclocal 1.16.1 -*- Autoconf -*- -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -20,7 +20,7 @@ If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -# Copyright (C) 2002-2014 Free Software Foundation, Inc. +# Copyright (C) 2002-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -32,10 +32,10 @@ # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.15' +[am__api_version='1.16' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.15], [], +m4_if([$1], [1.16.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -51,14 +51,14 @@ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.15])dnl +[AM_AUTOMAKE_VERSION([1.16.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -110,7 +110,7 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2014 Free Software Foundation, Inc. +# Copyright (C) 1997-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -141,7 +141,7 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -332,13 +332,12 @@ # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. - # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], @@ -346,49 +345,41 @@ # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac + # TODO: see whether this extra hack can be removed once we start + # requiring Autoconf 2.70 or later. + AS_CASE([$CONFIG_FILES], + [*\'*], [eval set x "$CONFIG_FILES"], + [*], [set x $CONFIG_FILES]) shift - for mf + # Used to flag and report bootstrapping failures. + am_rc=0 + for am_mf do # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line + am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile which includes + # dependency-tracking related rules and includes. + # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`AS_DIRNAME("$mf")` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "$am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done + sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ + || continue + am_dirpart=`AS_DIRNAME(["$am_mf"])` + am_filepart=`AS_BASENAME(["$am_mf"])` + AM_RUN_LOG([cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles]) || am_rc=$? done + if test $am_rc -ne 0; then + AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments + for automatic dependency tracking. Try re-running configure with the + '--disable-dependency-tracking' option to at least be able to build + the package (albeit without support for automatic dependency tracking).]) + fi + AS_UNSET([am_dirpart]) + AS_UNSET([am_filepart]) + AS_UNSET([am_mf]) + AS_UNSET([am_rc]) + rm -f conftest-deps.mk } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS @@ -397,18 +388,17 @@ # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # -# This code is only required when automatic dependency tracking -# is enabled. FIXME. This creates each '.P' file that we will -# need in order to bootstrap the dependency handling code. +# This code is only required when automatic dependency tracking is enabled. +# This creates each '.Po' and '.Plo' makefile fragment that we'll need in +# order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) -]) + [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])]) # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -495,8 +485,8 @@ AC_REQUIRE([AC_PROG_MKDIR_P])dnl # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: -# -# +# +# AC_SUBST([mkdir_p], ['$(MKDIR_P)']) # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. @@ -563,7 +553,7 @@ Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . +that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM @@ -605,7 +595,7 @@ done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -626,7 +616,7 @@ fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2014 Free Software Foundation, Inc. +# Copyright (C) 2003-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -648,7 +638,7 @@ # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -683,7 +673,7 @@ # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -691,49 +681,42 @@ # AM_MAKE_INCLUDE() # ----------------- -# Check to see how make treats includes. +# Check whether make has an 'include' directive that can support all +# the idioms we need for our automatic dependency tracking code. AC_DEFUN([AM_MAKE_INCLUDE], -[am_make=${MAKE-make} -cat > confinc << 'END' +[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive]) +cat > confinc.mk << 'END' am__doit: - @echo this is the am__doit target + @echo this is the am__doit target >confinc.out .PHONY: am__doit END -# If we don't find an include directive, just comment out the code. -AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD - ;; - esac -fi -AC_SUBST([am__include]) -AC_SUBST([am__quote]) -AC_MSG_RESULT([$_am_result]) -rm -f confinc confmf -]) +# BSD make does it like this. +echo '.include "confinc.mk" # ignored' > confmf.BSD +# Other make implementations (GNU, Solaris 10, AIX) do it like this. +echo 'include confinc.mk # ignored' > confmf.GNU +_am_result=no +for s in GNU BSD; do + AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out]) + AS_CASE([$?:`cat confinc.out 2>/dev/null`], + ['0:this is the am__doit target'], + [AS_CASE([$s], + [BSD], [am__include='.include' am__quote='"'], + [am__include='include' am__quote=''])]) + if test "$am__include" != "#"; then + _am_result="yes ($s style)" + break + fi +done +rm -f confinc.* confmf.* +AC_MSG_RESULT([${_am_result}]) +AC_SUBST([am__include])]) +AC_SUBST([am__quote])]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2014 Free Software Foundation, Inc. +# Copyright (C) 1997-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -772,7 +755,7 @@ # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -801,7 +784,7 @@ AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -848,7 +831,7 @@ # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -867,7 +850,7 @@ # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -948,7 +931,7 @@ rm -f conftest.file ]) -# Copyright (C) 2009-2014 Free Software Foundation, Inc. +# Copyright (C) 2009-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1008,7 +991,7 @@ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1036,7 +1019,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2014 Free Software Foundation, Inc. +# Copyright (C) 2006-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1055,7 +1038,7 @@ # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2014 Free Software Foundation, Inc. +# Copyright (C) 2004-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1188,6 +1171,9 @@ m4_include([macros/ac_pkg_swig.m4]) m4_include([macros/ac_python_devel.m4]) +m4_include([macros/ax_check_compile_flag.m4]) +m4_include([macros/ax_cxx_compile_stdcxx.m4]) +m4_include([macros/ax_cxx_compile_stdcxx_11.m4]) m4_include([macros/libtool.m4]) m4_include([macros/ltoptions.m4]) m4_include([macros/ltsugar.m4]) diff -Nru geos-3.6.2/AUTHORS geos-3.7.1/AUTHORS --- geos-3.6.2/AUTHORS 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/AUTHORS 2018-11-09 23:03:28.000000000 +0000 @@ -1,3 +1,29 @@ +2006-Present +GEOS is a project of the OSGEO foundation and is continually improved +and funded by mandy FOSS4G developers as well as corporations all +over the world. + +Developers and Project Steering Committee (PSC): +Active: + Martin Davis (mtnclimb at gmail.com )(PSC) - Architecture + Sandro Santilli (strk@kbt.io) (PSC Chair) - Bug Fixing / Maintenance + Paul Ramsey (pramsey@cleverelephant.ca) (PSC) - Coordination / Build + Regina Obe (lr@pcorp.us) (PSC) - QA / Windows / Coordination + Howard Butler (howard@hobu.co) (PSC) - OS Platform support and testing + Dale Lutz (dale.lutz@safe.com) (PSC) + Daniel Baston (dbaston@gmail.com) - Bug Fixing / New functionality + Kurt Schwehr ( schwehr@gmail.com ) - Bug Fixing / Test hardening + Vicky Vergara (vicky@georepublic.de) - Refactor / Test development + +Not Active: + Mateusz Loskot (mateusz@loskot.net) - Unit testing + Frank Warmerdam (warmerdam@pobox.com) - VStudio porting + Dave Blasby (dblasby@gmail.com) - PostGIS Connectivity + Yury Bychkov (me@yury.ca) - Initial Porting + Sean Gillies (sgillies@frii.com) - Scripting Interface + Fernando Villa (fvilla@zoo.uvm.edu) - GNU Build System + Norman Vine (nvine@cape.com) - Porting / C++ Expertise + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2003-11-06 @@ -8,11 +34,11 @@ British Columbia Advanced Systems Institute (www.asi.bc.ca) GEOS is based on algorithms originally developed in Java -by Martin Davis (mbdavis@refractions.net) in the +by Martin Davis (mbdavis@refractions.net) in the JTS Topology Suite (www.vividsolutions.com/jts/jtshome.htm) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -2004 to 2006 +2004 to 2006 Continued development of GEOS funded by Refractions Research Inc. @@ -21,27 +47,11 @@ Continued development of GEOS funded by Refractions Research Inc. -Inclusion of new JTS functionality in JTS 1.5 to 1.7 funded +Inclusion of new JTS functionality in JTS 1.5 to 1.7 funded by Safe Software and Autodesk. -Improved robustness of geometric operations for GEOS 3.0.0 funded -by the Bavarian State Ministry of Agriculture and Forestry and the +Improved robustness of geometric operations for GEOS 3.0.0 funded +by the Bavarian State Ministry of Agriculture and Forestry and the State Survey of Bavaria. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Developers: - Active: - Martin Davis (mbdavis@refractions.net) - Architecture - Mateusz Loskot (mateusz@loskot.net) - Unit testing - Regina Obe (lr@pcorp.us) - QA / Windows - Paul Ramsey (pramsey@refractions.net) - Coordination / Build - Sandro Santilli (strk@keybit.net) - Bug Fixing / Maintenance - Frank Warmerdam (warmerdam@pobox.com) - VStudio porting - - In Active: - Dave Blasby (dblasby@gmail.com) - PostGIS Connectivity - Yury Bychkov (me@yury.ca) - Initial Porting - Sean Gillies (sgillies@frii.com) - Scripting Interface - Fernando Villa (fvilla@zoo.uvm.edu) - GNU Build System - Norman Vine (nvine@cape.com) - Porting / C++ Expertise - diff -Nru geos-3.6.2/autogen.bat geos-3.7.1/autogen.bat --- geos-3.6.2/autogen.bat 2017-04-04 09:14:26.000000000 +0000 +++ geos-3.7.1/autogen.bat 2018-10-19 22:32:06.000000000 +0000 @@ -11,7 +11,8 @@ set GEOS_HEADERS=include\geos -COPY %GEOS_HEADERS%\version.h.vc %GEOS_HEADERS%\version.h +COPY %GEOS_HEADERS%\version.h.vc %GEOS_HEADERS%\version.h COPY %GEOS_HEADERS%\platform.h.vc %GEOS_HEADERS%\platform.h COPY capi\geos_c.h.in capi\geos_c.h -@ECHO #define GEOS_REVISION "0" > geos_revision.h +REM Empty string as dummy git SHA-1 +@ECHO #define GEOS_REVISION "" > geos_revision.h diff -Nru geos-3.6.2/capi/CMakeLists.txt geos-3.7.1/capi/CMakeLists.txt --- geos-3.6.2/capi/CMakeLists.txt 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/capi/CMakeLists.txt 2018-11-29 22:42:00.000000000 +0000 @@ -6,7 +6,7 @@ # # This is free software; you can redistribute and/or modify it under # the terms of the GNU Lesser General Public Licence as published -# by the Free Software Foundation. +# by the Free Software Foundation. # See the COPYING file for more information. # ################################################################################# @@ -21,9 +21,9 @@ file(GLOB geos_capi_HEADERS ${CMAKE_BINARY_DIR}/capi/*.h) # fix source_group issue -if(NOT GEOS_ENABLE_MACOSX_FRAMEWORK) - # if building OS X framework, CAPI built into C++ library - add_library(geos_c SHARED ${geos_c_SOURCES}) +if(NOT GEOS_ENABLE_MACOSX_FRAMEWORK AND GEOS_BUILD_SHARED) + # if building OS X framework or only building static libs, CAPI built into C++ library + add_library(geos_c SHARED ${geos_c_SOURCES}) target_link_libraries(geos_c geos) @@ -42,6 +42,8 @@ endif() +add_dependencies(geos_c geos_revision) + ################################################################################# # Installation ################################################################################# @@ -55,7 +57,7 @@ DESTINATION include) endif() -if(NOT GEOS_ENABLE_MACOSX_FRAMEWORK) +if(NOT GEOS_ENABLE_MACOSX_FRAMEWORK AND GEOS_BUILD_SHARED) install(TARGETS geos_c RUNTIME DESTINATION bin LIBRARY DESTINATION lib diff -Nru geos-3.6.2/capi/geos_c.cpp geos-3.7.1/capi/geos_c.cpp --- geos-3.6.2/capi/geos_c.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/capi/geos_c.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -3,7 +3,7 @@ * * C-Wrapper for GEOS library * - * Copyright (C) 2010 2011 Sandro Santilli + * Copyright (C) 2010 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -11,7 +11,7 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * ***********************************************************************/ @@ -21,10 +21,10 @@ #include #include #include -#include #include #include #include +#include #include #include @@ -73,7 +73,6 @@ using geos::io::WKTWriter; using geos::io::WKBReader; using geos::io::WKBWriter; -using geos::io::CLocalizer; using geos::index::strtree::STRtree; @@ -81,7 +80,7 @@ using geos::operation::overlay::overlayOp; using geos::operation::geounion::CascadedPolygonUnion; -typedef std::auto_ptr GeomAutoPtr; +typedef std::unique_ptr GeomPtr; //## GLOBALS ################################################ @@ -279,6 +278,12 @@ } int +GEOSDistanceIndexed(const Geometry *g1, const Geometry *g2, double *dist) +{ + return GEOSDistanceIndexed_r( handle, g1, g2, dist ); +} + +int GEOSHausdorffDistance(const Geometry *g1, const Geometry *g2, double *dist) { return GEOSHausdorffDistance_r( handle, g1, g2, dist ); @@ -291,6 +296,18 @@ } int +GEOSFrechetDistance(const Geometry *g1, const Geometry *g2, double *dist) +{ + return GEOSFrechetDistance_r( handle, g1, g2, dist ); +} + +int +GEOSFrechetDistanceDensify(const Geometry *g1, const Geometry *g2, double densifyFrac, double *dist) +{ + return GEOSFrechetDistanceDensify_r( handle, g1, g2, densifyFrac, dist ); +} + +int GEOSArea(const Geometry *g, double *area) { return GEOSArea_r( handle, g, area ); @@ -649,6 +666,16 @@ } /* + * For POINT + * returns 0 on exception, otherwise 1 + */ +int +GEOSGeomGetZ(const Geometry *g1, double *z) +{ + return GEOSGeomGetZ_r(handle, g1, z); +} + +/* * Call only on polygon * Return a copy of the internal Geometry. */ @@ -705,6 +732,12 @@ return GEOSLineMerge_r( handle, g ); } +Geometry * +GEOSReverse(const Geometry *g) +{ + return GEOSReverse_r( handle, g ); +} + int GEOSGetSRID(const Geometry *g) { @@ -832,6 +865,12 @@ return GEOSCoordSeq_getDimensions_r( handle, s, dims ); } +int +GEOSCoordSeq_isCCW(const CoordinateSequence *s, char *is_ccw) +{ + return GEOSCoordSeq_isCCW_r(handle, s, is_ccw); +} + void GEOSCoordSeq_destroy(CoordinateSequence *s) { @@ -898,6 +937,26 @@ return GEOSGeom_getCoordinateDimension_r( handle, g ); } +int GEOS_DLL GEOSGeom_getXMin(const GEOSGeometry* g, double* value) +{ + return GEOSGeom_getXMin_r(handle, g, value); +} + +int GEOS_DLL GEOSGeom_getYMin(const GEOSGeometry* g, double* value) +{ + return GEOSGeom_getYMin_r(handle, g, value); +} + +int GEOS_DLL GEOSGeom_getXMax(const GEOSGeometry* g, double* value) +{ + return GEOSGeom_getXMax_r(handle, g, value); +} + +int GEOS_DLL GEOSGeom_getYMax(const GEOSGeometry* g, double* value) +{ + return GEOSGeom_getYMax_r(handle, g, value); +} + Geometry * GEOSSimplify(const Geometry *g, double tolerance) { @@ -1345,4 +1404,15 @@ return GEOSVoronoiDiagram_r(handle, g, env, tolerance, onlyEdges); } +int +GEOSSegmentIntersection(double ax0, double ay0, double ax1, double ay1, + double bx0, double by0, double bx1, double by1, + double* cx, double* cy) +{ + return GEOSSegmentIntersection_r(handle, + ax0, ay0, ax1, ay1, + bx0, by0, bx1, by1, + cx, cy); +} + } /* extern "C" */ diff -Nru geos-3.6.2/capi/geos_c.h geos-3.7.1/capi/geos_c.h --- geos-3.6.2/capi/geos_c.h 2017-07-25 09:27:33.000000000 +0000 +++ geos-3.7.1/capi/geos_c.h 2018-11-29 23:05:39.000000000 +0000 @@ -3,7 +3,7 @@ * * C-Wrapper for GEOS library * - * Copyright (C) 2010 2011 Sandro Santilli + * Copyright (C) 2010 2011 Sandro Santilli * Copyright (C) 2005 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -11,7 +11,7 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * *********************************************************************** * @@ -21,7 +21,7 @@ * functions, and call finishGEOS() when done. * * - Currently you have to explicitly GEOSGeom_destroy() all - * GEOSGeom objects to avoid memory leaks, and to GEOSFree() + * GEOSGeom objects to avoid memory leaks, and GEOSFree() * all returned char * (unless const). * * - Functions ending with _r are thread safe; see details in RFC 3 @@ -59,30 +59,30 @@ #if defined(_MSC_VER) #include #define GEOS_CAPI_VERSION_MAJOR 1 -#define GEOS_CAPI_VERSION_MINOR 10 -#define GEOS_CAPI_VERSION_PATCH 2 -#define GEOS_CAPI_VERSION "3.6.2-CAPI-1.10.2" +#define GEOS_CAPI_VERSION_MINOR 11 +#define GEOS_CAPI_VERSION_PATCH 0 +#define GEOS_CAPI_VERSION "3.7.0-CAPI-1.11.0" #else #ifndef GEOS_VERSION_MAJOR #define GEOS_VERSION_MAJOR 3 #endif #ifndef GEOS_VERSION_MINOR -#define GEOS_VERSION_MINOR 6 +#define GEOS_VERSION_MINOR 7 #endif #ifndef GEOS_VERSION_PATCH -#define GEOS_VERSION_PATCH 2 +#define GEOS_VERSION_PATCH 1 #endif #ifndef GEOS_VERSION -#define GEOS_VERSION "3.6.2" +#define GEOS_VERSION "3.7.1" #endif #ifndef GEOS_JTS_PORT #define GEOS_JTS_PORT "1.13.0" #endif #define GEOS_CAPI_VERSION_MAJOR 1 -#define GEOS_CAPI_VERSION_MINOR 10 -#define GEOS_CAPI_VERSION_PATCH 2 -#define GEOS_CAPI_VERSION "3.6.2-CAPI-1.10.2" +#define GEOS_CAPI_VERSION_MINOR 11 +#define GEOS_CAPI_VERSION_PATCH 1 +#define GEOS_CAPI_VERSION "3.7.1-CAPI-1.11.1" #endif #define GEOS_CAPI_FIRST_INTERFACE GEOS_CAPI_VERSION_MAJOR @@ -146,7 +146,7 @@ GEOS_GEOMETRYCOLLECTION }; -/* Byte oders exposed via the c api */ +/* Byte orders exposed via the C API */ enum GEOSByteOrders { GEOS_WKB_XDR = 0, /* Big Endian */ GEOS_WKB_NDR = 1 /* Little Endian */ @@ -346,6 +346,14 @@ extern int GEOS_DLL GEOSCoordSeq_getDimensions_r(GEOSContextHandle_t handle, const GEOSCoordSequence* s, unsigned int *dims); +/* + * Check orientation of a CoordinateSequence and set 'is_ccw' to 1 + * if it has counter-clockwise orientation, 0 otherwise. + * Return 0 on exception, 1 on success. + */ +extern int GEOS_DLL GEOSCoordSeq_isCCW_r(GEOSContextHandle_t handle, + const GEOSCoordSequence* s, + char* is_ccw); /************************************************************************ * @@ -638,6 +646,8 @@ extern GEOSGeometry GEOS_DLL *GEOSLineMerge_r(GEOSContextHandle_t handle, const GEOSGeometry* g); +extern GEOSGeometry GEOS_DLL *GEOSReverse_r(GEOSContextHandle_t handle, + const GEOSGeometry* g); extern GEOSGeometry GEOS_DLL *GEOSSimplify_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double tolerance); @@ -696,7 +706,7 @@ * * @param g the input geometry whose vertex will be used as sites. * @param tolerance snapping tolerance to use for improved robustness - * @param onlyEdges whether to return only edges of the voronoi cells + * @param onlyEdges whether to return only edges of the Voronoi cells * @param env clipping envelope for the returned diagram, automatically * determined if NULL. * The diagram will be clipped to the larger @@ -711,6 +721,30 @@ double tolerance, int onlyEdges); +/* + * Computes the coordinate where two line segments intersect, if any + * + * @param ax0 x-coordinate of first point in first segment + * @param ay0 y-coordinate of first point in first segment + * @param ax1 x-coordinate of second point in first segment + * @param ay1 y-coordinate of second point in first segment + * @param bx0 x-coordinate of first point in second segment + * @param by0 y-coordinate of first point in second segment + * @param bx1 x-coordinate of second point in second segment + * @param by1 y-coordinate of second point in second segment + * @param cx x-coordinate of intersection point + * @param cy y-coordinate of intersection point + * + * @return 0 on error, 1 on success, -1 if segments do not intersect + */ + +extern int GEOS_DLL GEOSSegmentIntersection_r( + GEOSContextHandle_t extHandle, + double ax0, double ay0, + double ax1, double ay1, + double bx0, double by0, + double bx1, double by1, + double* cx, double* cy); /************************************************************************ * @@ -1032,9 +1066,10 @@ extern int GEOS_DLL GEOSGeomGetNumPoints_r(GEOSContextHandle_t handle, const GEOSGeometry* g); -/* Return -1 on exception, Geometry must be a Point. */ +/* Return 0 on exception, otherwise 1, Geometry must be a Point. */ extern int GEOS_DLL GEOSGeomGetX_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *x); extern int GEOS_DLL GEOSGeomGetY_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *y); +extern int GEOS_DLL GEOSGeomGetZ_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *z); /* * Return NULL on exception, Geometry must be a Polygon. @@ -1077,6 +1112,13 @@ */ extern int GEOS_DLL GEOSGeom_getCoordinateDimension_r(GEOSContextHandle_t handle, const GEOSGeometry* g); +/* + * Return 0 on exception + */ +extern int GEOS_DLL GEOSGeom_getXMin_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMin_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getXMax_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMax_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); /* * Return NULL on exception. @@ -1100,6 +1142,9 @@ extern int GEOS_DLL GEOSDistance_r(GEOSContextHandle_t handle, const GEOSGeometry* g1, const GEOSGeometry* g2, double *dist); +extern int GEOS_DLL GEOSDistanceIndexed_r(GEOSContextHandle_t handle, + const GEOSGeometry* g1, + const GEOSGeometry* g2, double *dist); extern int GEOS_DLL GEOSHausdorffDistance_r(GEOSContextHandle_t handle, const GEOSGeometry *g1, const GEOSGeometry *g2, @@ -1108,6 +1153,14 @@ const GEOSGeometry *g1, const GEOSGeometry *g2, double densifyFrac, double *dist); +extern int GEOS_DLL GEOSFrechetDistance_r(GEOSContextHandle_t handle, + const GEOSGeometry *g1, + const GEOSGeometry *g2, + double *dist); +extern int GEOS_DLL GEOSFrechetDistanceDensify_r(GEOSContextHandle_t handle, + const GEOSGeometry *g1, + const GEOSGeometry *g2, + double densifyFrac, double *dist); extern int GEOS_DLL GEOSGeomGetLength_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *length); @@ -1352,6 +1405,13 @@ extern int GEOS_DLL GEOSCoordSeq_getDimensions(const GEOSCoordSequence* s, unsigned int *dims); +/* + * Check orientation of a CoordinateSequence and set 'is_ccw' to 1 + * if it has counter-clockwise orientation, 0 otherwise. + * Return 0 on exception, 1 on success. + */ +extern int GEOS_DLL GEOSCoordSeq_isCCW(const GEOSCoordSequence* s, char* is_ccw); + /************************************************************************ * * Linear referencing functions -- there are more, but these are @@ -1585,6 +1645,7 @@ GEOSGeometry** cuts, GEOSGeometry** dangles, GEOSGeometry** invalid); extern GEOSGeometry GEOS_DLL *GEOSLineMerge(const GEOSGeometry* g); +extern GEOSGeometry GEOS_DLL *GEOSReverse(const GEOSGeometry* g); extern GEOSGeometry GEOS_DLL *GEOSSimplify(const GEOSGeometry* g, double tolerance); extern GEOSGeometry GEOS_DLL *GEOSTopologyPreserveSimplify(const GEOSGeometry* g, double tolerance); @@ -1651,6 +1712,29 @@ const GEOSGeometry *env, double tolerance, int onlyEdges); +/* + * Computes the coordinate where two line segments intersect, if any + * + * @param ax0 x-coordinate of first point in first segment + * @param ay0 y-coordinate of first point in first segment + * @param ax1 x-coordinate of second point in first segment + * @param ay1 y-coordinate of second point in first segment + * @param bx0 x-coordinate of first point in second segment + * @param by0 y-coordinate of first point in second segment + * @param bx1 x-coordinate of second point in second segment + * @param by1 y-coordinate of second point in second segment + * @param cx x-coordinate of intersection point + * @param cy y-coordinate of intersection point + * + * @return 0 on error, 1 on success, -1 if segments do not intersect + */ + +extern int GEOS_DLL GEOSSegmentIntersection( + double ax0, double ay0, + double ax1, double ay1, + double bx0, double by0, + double bx1, double by1, + double* cx, double* cy); /************************************************************************ * @@ -1907,9 +1991,10 @@ /* Return -1 on exception, Geometry must be a LineString. */ extern int GEOS_DLL GEOSGeomGetNumPoints(const GEOSGeometry* g); -/* Return -1 on exception, Geometry must be a Point. */ +/* Return 0 on exception, otherwise 1, Geometry must be a Point. */ extern int GEOS_DLL GEOSGeomGetX(const GEOSGeometry *g, double *x); extern int GEOS_DLL GEOSGeomGetY(const GEOSGeometry *g, double *y); +extern int GEOS_DLL GEOSGeomGetZ(const GEOSGeometry *g, double *z); /* * Return NULL on exception, Geometry must be a Polygon. @@ -1945,6 +2030,14 @@ extern int GEOS_DLL GEOSGeom_getCoordinateDimension(const GEOSGeometry* g); /* + * Return 0 on exception + */ +extern int GEOS_DLL GEOSGeom_getXMin(const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMin(const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getXMax(const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMax(const GEOSGeometry* g, double* value); + +/* * Return NULL on exception. * Must be LineString and must be freed by called. */ @@ -1963,10 +2056,16 @@ extern int GEOS_DLL GEOSLength(const GEOSGeometry* g, double *length); extern int GEOS_DLL GEOSDistance(const GEOSGeometry* g1, const GEOSGeometry* g2, double *dist); +extern int GEOS_DLL GEOSDistanceIndexed(const GEOSGeometry* g1, const GEOSGeometry* g2, + double *dist); extern int GEOS_DLL GEOSHausdorffDistance(const GEOSGeometry *g1, const GEOSGeometry *g2, double *dist); extern int GEOS_DLL GEOSHausdorffDistanceDensify(const GEOSGeometry *g1, const GEOSGeometry *g2, double densifyFrac, double *dist); +extern int GEOS_DLL GEOSFrechetDistance(const GEOSGeometry *g1, + const GEOSGeometry *g2, double *dist); +extern int GEOS_DLL GEOSFrechetDistanceDensify(const GEOSGeometry *g1, + const GEOSGeometry *g2, double densifyFrac, double *dist); extern int GEOS_DLL GEOSGeomGetLength(const GEOSGeometry *g, double *length); /* Return 0 on exception, the closest points of the two geometries otherwise. diff -Nru geos-3.6.2/capi/geos_c.h.in geos-3.7.1/capi/geos_c.h.in --- geos-3.6.2/capi/geos_c.h.in 2017-07-25 09:16:16.000000000 +0000 +++ geos-3.7.1/capi/geos_c.h.in 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * * C-Wrapper for GEOS library * - * Copyright (C) 2010 2011 Sandro Santilli + * Copyright (C) 2010 2011 Sandro Santilli * Copyright (C) 2005 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -11,7 +11,7 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * *********************************************************************** * @@ -21,7 +21,7 @@ * functions, and call finishGEOS() when done. * * - Currently you have to explicitly GEOSGeom_destroy() all - * GEOSGeom objects to avoid memory leaks, and to GEOSFree() + * GEOSGeom objects to avoid memory leaks, and GEOSFree() * all returned char * (unless const). * * - Functions ending with _r are thread safe; see details in RFC 3 @@ -59,9 +59,9 @@ #if defined(_MSC_VER) #include #define GEOS_CAPI_VERSION_MAJOR 1 -#define GEOS_CAPI_VERSION_MINOR 10 -#define GEOS_CAPI_VERSION_PATCH 2 -#define GEOS_CAPI_VERSION "3.6.2-CAPI-1.10.2" +#define GEOS_CAPI_VERSION_MINOR 11 +#define GEOS_CAPI_VERSION_PATCH 0 +#define GEOS_CAPI_VERSION "3.7.0-CAPI-1.11.0" #else #ifndef GEOS_VERSION_MAJOR #define GEOS_VERSION_MAJOR @VERSION_MAJOR@ @@ -146,7 +146,7 @@ GEOS_GEOMETRYCOLLECTION }; -/* Byte oders exposed via the c api */ +/* Byte orders exposed via the C API */ enum GEOSByteOrders { GEOS_WKB_XDR = 0, /* Big Endian */ GEOS_WKB_NDR = 1 /* Little Endian */ @@ -346,6 +346,14 @@ extern int GEOS_DLL GEOSCoordSeq_getDimensions_r(GEOSContextHandle_t handle, const GEOSCoordSequence* s, unsigned int *dims); +/* + * Check orientation of a CoordinateSequence and set 'is_ccw' to 1 + * if it has counter-clockwise orientation, 0 otherwise. + * Return 0 on exception, 1 on success. + */ +extern int GEOS_DLL GEOSCoordSeq_isCCW_r(GEOSContextHandle_t handle, + const GEOSCoordSequence* s, + char* is_ccw); /************************************************************************ * @@ -638,6 +646,8 @@ extern GEOSGeometry GEOS_DLL *GEOSLineMerge_r(GEOSContextHandle_t handle, const GEOSGeometry* g); +extern GEOSGeometry GEOS_DLL *GEOSReverse_r(GEOSContextHandle_t handle, + const GEOSGeometry* g); extern GEOSGeometry GEOS_DLL *GEOSSimplify_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double tolerance); @@ -696,7 +706,7 @@ * * @param g the input geometry whose vertex will be used as sites. * @param tolerance snapping tolerance to use for improved robustness - * @param onlyEdges whether to return only edges of the voronoi cells + * @param onlyEdges whether to return only edges of the Voronoi cells * @param env clipping envelope for the returned diagram, automatically * determined if NULL. * The diagram will be clipped to the larger @@ -711,6 +721,30 @@ double tolerance, int onlyEdges); +/* + * Computes the coordinate where two line segments intersect, if any + * + * @param ax0 x-coordinate of first point in first segment + * @param ay0 y-coordinate of first point in first segment + * @param ax1 x-coordinate of second point in first segment + * @param ay1 y-coordinate of second point in first segment + * @param bx0 x-coordinate of first point in second segment + * @param by0 y-coordinate of first point in second segment + * @param bx1 x-coordinate of second point in second segment + * @param by1 y-coordinate of second point in second segment + * @param cx x-coordinate of intersection point + * @param cy y-coordinate of intersection point + * + * @return 0 on error, 1 on success, -1 if segments do not intersect + */ + +extern int GEOS_DLL GEOSSegmentIntersection_r( + GEOSContextHandle_t extHandle, + double ax0, double ay0, + double ax1, double ay1, + double bx0, double by0, + double bx1, double by1, + double* cx, double* cy); /************************************************************************ * @@ -1032,9 +1066,10 @@ extern int GEOS_DLL GEOSGeomGetNumPoints_r(GEOSContextHandle_t handle, const GEOSGeometry* g); -/* Return -1 on exception, Geometry must be a Point. */ +/* Return 0 on exception, otherwise 1, Geometry must be a Point. */ extern int GEOS_DLL GEOSGeomGetX_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *x); extern int GEOS_DLL GEOSGeomGetY_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *y); +extern int GEOS_DLL GEOSGeomGetZ_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *z); /* * Return NULL on exception, Geometry must be a Polygon. @@ -1077,6 +1112,13 @@ */ extern int GEOS_DLL GEOSGeom_getCoordinateDimension_r(GEOSContextHandle_t handle, const GEOSGeometry* g); +/* + * Return 0 on exception + */ +extern int GEOS_DLL GEOSGeom_getXMin_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMin_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getXMax_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMax_r(GEOSContextHandle_t handle, const GEOSGeometry* g, double* value); /* * Return NULL on exception. @@ -1100,6 +1142,9 @@ extern int GEOS_DLL GEOSDistance_r(GEOSContextHandle_t handle, const GEOSGeometry* g1, const GEOSGeometry* g2, double *dist); +extern int GEOS_DLL GEOSDistanceIndexed_r(GEOSContextHandle_t handle, + const GEOSGeometry* g1, + const GEOSGeometry* g2, double *dist); extern int GEOS_DLL GEOSHausdorffDistance_r(GEOSContextHandle_t handle, const GEOSGeometry *g1, const GEOSGeometry *g2, @@ -1108,6 +1153,14 @@ const GEOSGeometry *g1, const GEOSGeometry *g2, double densifyFrac, double *dist); +extern int GEOS_DLL GEOSFrechetDistance_r(GEOSContextHandle_t handle, + const GEOSGeometry *g1, + const GEOSGeometry *g2, + double *dist); +extern int GEOS_DLL GEOSFrechetDistanceDensify_r(GEOSContextHandle_t handle, + const GEOSGeometry *g1, + const GEOSGeometry *g2, + double densifyFrac, double *dist); extern int GEOS_DLL GEOSGeomGetLength_r(GEOSContextHandle_t handle, const GEOSGeometry *g, double *length); @@ -1352,6 +1405,13 @@ extern int GEOS_DLL GEOSCoordSeq_getDimensions(const GEOSCoordSequence* s, unsigned int *dims); +/* + * Check orientation of a CoordinateSequence and set 'is_ccw' to 1 + * if it has counter-clockwise orientation, 0 otherwise. + * Return 0 on exception, 1 on success. + */ +extern int GEOS_DLL GEOSCoordSeq_isCCW(const GEOSCoordSequence* s, char* is_ccw); + /************************************************************************ * * Linear referencing functions -- there are more, but these are @@ -1585,6 +1645,7 @@ GEOSGeometry** cuts, GEOSGeometry** dangles, GEOSGeometry** invalid); extern GEOSGeometry GEOS_DLL *GEOSLineMerge(const GEOSGeometry* g); +extern GEOSGeometry GEOS_DLL *GEOSReverse(const GEOSGeometry* g); extern GEOSGeometry GEOS_DLL *GEOSSimplify(const GEOSGeometry* g, double tolerance); extern GEOSGeometry GEOS_DLL *GEOSTopologyPreserveSimplify(const GEOSGeometry* g, double tolerance); @@ -1651,6 +1712,29 @@ const GEOSGeometry *env, double tolerance, int onlyEdges); +/* + * Computes the coordinate where two line segments intersect, if any + * + * @param ax0 x-coordinate of first point in first segment + * @param ay0 y-coordinate of first point in first segment + * @param ax1 x-coordinate of second point in first segment + * @param ay1 y-coordinate of second point in first segment + * @param bx0 x-coordinate of first point in second segment + * @param by0 y-coordinate of first point in second segment + * @param bx1 x-coordinate of second point in second segment + * @param by1 y-coordinate of second point in second segment + * @param cx x-coordinate of intersection point + * @param cy y-coordinate of intersection point + * + * @return 0 on error, 1 on success, -1 if segments do not intersect + */ + +extern int GEOS_DLL GEOSSegmentIntersection( + double ax0, double ay0, + double ax1, double ay1, + double bx0, double by0, + double bx1, double by1, + double* cx, double* cy); /************************************************************************ * @@ -1907,9 +1991,10 @@ /* Return -1 on exception, Geometry must be a LineString. */ extern int GEOS_DLL GEOSGeomGetNumPoints(const GEOSGeometry* g); -/* Return -1 on exception, Geometry must be a Point. */ +/* Return 0 on exception, otherwise 1, Geometry must be a Point. */ extern int GEOS_DLL GEOSGeomGetX(const GEOSGeometry *g, double *x); extern int GEOS_DLL GEOSGeomGetY(const GEOSGeometry *g, double *y); +extern int GEOS_DLL GEOSGeomGetZ(const GEOSGeometry *g, double *z); /* * Return NULL on exception, Geometry must be a Polygon. @@ -1945,6 +2030,14 @@ extern int GEOS_DLL GEOSGeom_getCoordinateDimension(const GEOSGeometry* g); /* + * Return 0 on exception + */ +extern int GEOS_DLL GEOSGeom_getXMin(const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMin(const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getXMax(const GEOSGeometry* g, double* value); +extern int GEOS_DLL GEOSGeom_getYMax(const GEOSGeometry* g, double* value); + +/* * Return NULL on exception. * Must be LineString and must be freed by called. */ @@ -1963,10 +2056,16 @@ extern int GEOS_DLL GEOSLength(const GEOSGeometry* g, double *length); extern int GEOS_DLL GEOSDistance(const GEOSGeometry* g1, const GEOSGeometry* g2, double *dist); +extern int GEOS_DLL GEOSDistanceIndexed(const GEOSGeometry* g1, const GEOSGeometry* g2, + double *dist); extern int GEOS_DLL GEOSHausdorffDistance(const GEOSGeometry *g1, const GEOSGeometry *g2, double *dist); extern int GEOS_DLL GEOSHausdorffDistanceDensify(const GEOSGeometry *g1, const GEOSGeometry *g2, double densifyFrac, double *dist); +extern int GEOS_DLL GEOSFrechetDistance(const GEOSGeometry *g1, + const GEOSGeometry *g2, double *dist); +extern int GEOS_DLL GEOSFrechetDistanceDensify(const GEOSGeometry *g1, + const GEOSGeometry *g2, double densifyFrac, double *dist); extern int GEOS_DLL GEOSGeomGetLength(const GEOSGeometry *g, double *length); /* Return 0 on exception, the closest points of the two geometries otherwise. diff -Nru geos-3.6.2/capi/geos_ts_c.cpp geos-3.7.1/capi/geos_ts_c.cpp --- geos-3.6.2/capi/geos_ts_c.cpp 2017-04-04 09:15:18.000000000 +0000 +++ geos-3.7.1/capi/geos_ts_c.cpp 2018-11-10 16:21:48.000000000 +0000 @@ -3,7 +3,7 @@ * * C-Wrapper for GEOS library * - * Copyright (C) 2010-2012 Sandro Santilli + * Copyright (C) 2010-2012 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -11,12 +11,13 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * Thread Safety modifications: Chuck Thibert * ***********************************************************************/ #include // for FINITE +#include #include #include #include @@ -27,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -42,6 +44,7 @@ #include #include #include +#include #include #include #include @@ -53,6 +56,7 @@ #include #include #include +#include #include #include #include @@ -122,8 +126,12 @@ // import the most frequently used definitions globally using geos::geom::Geometry; using geos::geom::LineString; +using geos::geom::LinearRing; +using geos::geom::MultiLineString; +using geos::geom::MultiPolygon; using geos::geom::Polygon; using geos::geom::CoordinateSequence; +using geos::geom::GeometryCollection; using geos::geom::GeometryFactory; using geos::io::WKTReader; @@ -134,13 +142,15 @@ using geos::operation::overlay::OverlayOp; using geos::operation::overlay::overlayOp; using geos::operation::geounion::CascadedPolygonUnion; +using geos::operation::distance::IndexedFacetDistance; using geos::operation::buffer::BufferParameters; using geos::operation::buffer::BufferBuilder; using geos::precision::GeometryPrecisionReducer; using geos::util::IllegalArgumentException; using geos::algorithm::distance::DiscreteHausdorffDistance; +using geos::algorithm::distance::DiscreteFrechetDistance; -typedef std::auto_ptr GeomAutoPtr; +typedef std::unique_ptr GeomPtr; typedef struct GEOSContextHandle_HS { @@ -270,7 +280,7 @@ public: CAPI_ItemVisitor (GEOSQueryCallback cb, void *ud) : ItemVisitor(), callback(cb), userdata(ud) {} - void visitItem (void *item) { callback(item, userdata); } + void visitItem (void *item) override { callback(item, userdata); } }; @@ -409,7 +419,7 @@ //----------------------------------------------------------- // relate()-related functions -// return 0 = false, 1 = true, 2 = error occured +// return 0 = false, 1 = true, 2 = error occurred //----------------------------------------------------------- char @@ -1006,14 +1016,14 @@ { if ( 0 == extHandle ) { - return 0; + return 2; } GEOSContextHandleInternal_t *handle = 0; handle = reinterpret_cast(extHandle); if ( 0 == handle->initialized ) { - return 0; + return 2; } try @@ -1158,6 +1168,40 @@ } int +GEOSDistanceIndexed_r(GEOSContextHandle_t extHandle, const Geometry *g1, const Geometry *g2, double *dist) +{ + assert(0 != dist); + + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + *dist = IndexedFacetDistance::distance(g1, g2); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +int GEOSHausdorffDistance_r(GEOSContextHandle_t extHandle, const Geometry *g1, const Geometry *g2, double *dist) { assert(0 != dist); @@ -1226,6 +1270,74 @@ } int +GEOSFrechetDistance_r(GEOSContextHandle_t extHandle, const Geometry *g1, const Geometry *g2, double *dist) +{ + assert(0 != dist); + + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + *dist = DiscreteFrechetDistance::distance(*g1, *g2); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +int +GEOSFrechetDistanceDensify_r(GEOSContextHandle_t extHandle, const Geometry *g1, const Geometry *g2, double densifyFrac, double *dist) +{ + assert(0 != dist); + + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + *dist = DiscreteFrechetDistance::distance(*g1, *g2, densifyFrac); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +int GEOSArea_r(GEOSContextHandle_t extHandle, const Geometry *g, double *area) { assert(0 != area); @@ -1266,7 +1378,7 @@ if ( 0 == extHandle ) { - return 2; + return 0; } GEOSContextHandleInternal_t *handle = 0; @@ -2296,7 +2408,7 @@ try { - GeomAutoPtr g3 ( g->Union() ); + GeomPtr g3 ( g->Union() ); return g3.release(); } catch (const std::exception &e) @@ -2335,7 +2447,7 @@ try { - std::auto_ptr g3 = geos::noding::GeometryNoder::node(*g); + std::unique_ptr g3 = geos::noding::GeometryNoder::node(*g); return g3.release(); } catch (const std::exception &e) @@ -2454,7 +2566,7 @@ using geos::operation::intersection::Rectangle; using geos::operation::intersection::RectangleIntersection; Rectangle rect(xmin, ymin, xmax, ymax); - std::auto_ptr g3 = RectangleIntersection::clip(*g, rect); + std::unique_ptr g3 = RectangleIntersection::clip(*g, rect); return g3.release(); } catch (const std::exception &e) @@ -3087,6 +3199,49 @@ } /* + * For POINT + * returns 0 on exception, otherwise 1 + */ +int +GEOSGeomGetZ_r(GEOSContextHandle_t extHandle, const Geometry *g1, double *z) +{ + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + using geos::geom::Point; + const Point *po = dynamic_cast(g1); + if ( ! po ) + { + handle->ERROR_MESSAGE("Argument is not a Point"); + return 0; + } + *z = po->getZ(); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +/* * Call only on polygon * Return a copy of the internal Geometry. */ @@ -3621,6 +3776,39 @@ return out; } +Geometry * +GEOSReverse_r(GEOSContextHandle_t extHandle, const Geometry *g) +{ + assert(0 != g); + + if ( 0 == extHandle ) + { + return nullptr; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return nullptr; + } + + try + { + return g->reverse(); + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return nullptr; +} + void* GEOSGeom_getUserData_r(GEOSContextHandle_t extHandle, const Geometry *g) { @@ -4059,6 +4247,40 @@ return 0; } +int +GEOSCoordSeq_isCCW_r(GEOSContextHandle_t extHandle, const CoordinateSequence *cs, char *val) +{ + assert(cs != nullptr); + assert(val != nullptr); + + if (extHandle == nullptr) { + return 0; + } + + GEOSContextHandleInternal_t *handle = nullptr; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + try + { + *val = geos::algorithm::CGAlgorithms::isCCW(cs); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + void GEOSCoordSeq_destroy_r(GEOSContextHandle_t extHandle, CoordinateSequence *s) { @@ -4445,10 +4667,10 @@ { const PrecisionModel *pm = g->getPrecisionModel(); double cursize = pm->isFloating() ? 0 : 1.0/pm->getScale(); - std::auto_ptr newpm; + std::unique_ptr newpm; if ( gridSize ) newpm.reset( new PrecisionModel(1.0/gridSize) ); else newpm.reset( new PrecisionModel() ); - GeometryFactory::unique_ptr gf = + GeometryFactory::Ptr gf = GeometryFactory::create( newpm.get(), g->getSRID() ); Geometry *ret; if ( gridSize && cursize != gridSize ) @@ -4577,6 +4799,154 @@ return 0; } +int +GEOSGeom_getXMin_r(GEOSContextHandle_t extHandle, const Geometry *g, double *value) +{ + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + if (g->isEmpty()) + { + return 0; + } + + *value = g->getEnvelopeInternal()->getMinX(); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +int +GEOSGeom_getXMax_r(GEOSContextHandle_t extHandle, const Geometry *g, double *value) +{ + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + if (g->isEmpty()) + { + return 0; + } + + *value = g->getEnvelopeInternal()->getMaxX(); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +int +GEOSGeom_getYMin_r(GEOSContextHandle_t extHandle, const Geometry *g, double *value) +{ + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + if (g->isEmpty()) + { + return 0; + } + + *value = g->getEnvelopeInternal()->getMinY(); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + +int +GEOSGeom_getYMax_r(GEOSContextHandle_t extHandle, const Geometry *g, double *value) +{ + if ( 0 == extHandle ) + { + return 0; + } + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) + { + return 0; + } + + try + { + if (g->isEmpty()) + { + return 0; + } + + *value = g->getEnvelopeInternal()->getMaxY(); + return 1; + } + catch (const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch (...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + Geometry * GEOSSimplify_r(GEOSContextHandle_t extHandle, const Geometry *g1, double tolerance) { @@ -4595,7 +4965,7 @@ try { using namespace geos::simplify; - Geometry::AutoPtr g(DouglasPeuckerSimplifier::simplify(g1, tolerance)); + Geometry::Ptr g(DouglasPeuckerSimplifier::simplify(g1, tolerance)); return g.release(); } catch (const std::exception &e) @@ -4628,7 +4998,7 @@ try { using namespace geos::simplify; - Geometry::AutoPtr g(TopologyPreservingSimplifier::simplify(g1, tolerance)); + Geometry::Ptr g(TopologyPreservingSimplifier::simplify(g1, tolerance)); return g.release(); } catch (const std::exception &e) @@ -6071,7 +6441,7 @@ geos::index::strtree::STRtree *tree, const geos::geom::Geometry* geom) { - return (const GEOSGeometry*) GEOSSTRtree_nearest_generic_r( extHandle, tree, geom, geom->getEnvelope(), NULL, NULL); + return (const GEOSGeometry*) GEOSSTRtree_nearest_generic_r( extHandle, tree, geom, geom, nullptr, nullptr); } const void * @@ -6082,6 +6452,7 @@ GEOSDistanceCallback distancefn, void* userdata) { + using namespace geos::index::strtree; GEOSContextHandleInternal_t *handle = 0; @@ -6092,7 +6463,7 @@ GEOSDistanceCallback m_distancefn; void* m_userdata; - double distance(const ItemBoundable* item1, const ItemBoundable* item2) { + double distance(const ItemBoundable* item1, const ItemBoundable* item2) override { const void* a = item1->getItem(); const void* b = item2->getItem(); double d; @@ -6471,7 +6842,7 @@ const GeometryFactory* factory = g1->getFactory(); size_t count; - std::auto_ptr< std::vector > out1( + std::unique_ptr< std::vector > out1( new std::vector() ); count = forw.size(); @@ -6479,11 +6850,11 @@ for (size_t i=0; ipush_back(forw[i]); } - std::auto_ptr out1g ( + std::unique_ptr out1g ( factory->createMultiLineString(out1.release()) ); - std::auto_ptr< std::vector > out2( + std::unique_ptr< std::vector > out2( new std::vector() ); count = back.size(); @@ -6491,18 +6862,18 @@ for (size_t i=0; ipush_back(back[i]); } - std::auto_ptr out2g ( + std::unique_ptr out2g ( factory->createMultiLineString(out2.release()) ); - std::auto_ptr< std::vector > out( + std::unique_ptr< std::vector > out( new std::vector() ); out->reserve(2); out->push_back(out1g.release()); out->push_back(out2g.release()); - std::auto_ptr outg ( + std::unique_ptr outg ( factory->createGeometryCollection(out.release()) ); @@ -6523,7 +6894,7 @@ try{ GeometrySnapper snapper( *g1 ); - std::auto_ptr ret = snapper.snapTo(*g2, tolerance); + std::unique_ptr ret = snapper.snapTo(*g2, tolerance); return ret.release(); } catch (const std::exception &e) @@ -6800,11 +7171,53 @@ } catch(...) { - handle->ERROR_MESSAGE("Unknow exception thrown"); + handle->ERROR_MESSAGE("Unknown exception thrown"); } return NULL; } +int +GEOSSegmentIntersection_r(GEOSContextHandle_t extHandle, + double ax0, double ay0, double ax1, double ay1, + double bx0, double by0, double bx1, double by1, + double* cx, double* cy) +{ + if ( 0 == extHandle ) return 0; + + GEOSContextHandleInternal_t *handle = 0; + handle = reinterpret_cast(extHandle); + if ( 0 == handle->initialized ) return 0; + + try + { + geos::geom::LineSegment a(ax0, ay0, ax1, ay1); + geos::geom::LineSegment b(bx0, by0, bx1, by1); + geos::geom::Coordinate isect; + + bool intersects = a.intersection(b, isect); + + if (!intersects) + { + return -1; + } + + *cx = isect.x; + *cy = isect.y; + + return 1; + } + catch(const std::exception &e) + { + handle->ERROR_MESSAGE("%s", e.what()); + } + catch(...) + { + handle->ERROR_MESSAGE("Unknown exception thrown"); + } + + return 0; +} + } /* extern "C" */ diff -Nru geos-3.6.2/capi/Makefile.in geos-3.7.1/capi/Makefile.in --- geos-3.6.2/capi/Makefile.in 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/capi/Makefile.in 2018-11-29 23:05:16.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -94,6 +94,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -163,7 +166,9 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/libgeos_c_la-geos_c.Plo \ + ./$(DEPDIR)/libgeos_c_la-geos_ts_c.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -254,6 +259,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -302,6 +308,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -322,6 +330,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -375,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -430,8 +438,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -489,8 +497,14 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgeos_c_la-geos_c.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgeos_c_la-geos_ts_c.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgeos_c_la-geos_c.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgeos_c_la-geos_ts_c.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -606,7 +620,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -679,7 +696,8 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/libgeos_c_la-geos_c.Plo + -rm -f ./$(DEPDIR)/libgeos_c_la-geos_ts_c.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -725,7 +743,8 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/libgeos_c_la-geos_c.Plo + -rm -f ./$(DEPDIR)/libgeos_c_la-geos_ts_c.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -746,9 +765,9 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \ + ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ diff -Nru geos-3.6.2/ChangeLog geos-3.7.1/ChangeLog --- geos-3.6.2/ChangeLog 2017-07-25 09:27:38.000000000 +0000 +++ geos-3.7.1/ChangeLog 2018-11-29 23:35:22.000000000 +0000 @@ -1,291 +1,3244 @@ +2018-11-29 Paul Ramsey + + * NEWS, configure.ac: News and version bump for 3.7.1 + +2018-11-19 Daniel Baston + + * NEWS: Add NEWS entry for #919 + +2018-11-15 Daniel Baston + + * include/geos/index/strtree/SIRtree.h, + src/index/strtree/SIRtree.cpp, tests/unit/Makefile.am, + tests/unit/index/strtree/SIRtreeTest.cpp: Fix memory leak in SIRtree + Resolves #919 + +2018-11-13 Paul Ramsey + + * tests/xmltester/tests/linemerge.xml: Make XML legal + +2018-10-29 Daniel Baston + + * NEWS: Add NEWS entry for #941 + +2018-10-27 Daniel Baston + + * capi/geos_ts_c.cpp: Fix incorrect error return values in CAPI + Fixes #941 + +2018-10-19 Paul Ramsey + + * NEWS: Add news item for #56 + +2018-10-19 pramsey + + Merge branch '3.7' of johnkharvey/geos into 3.7 Going to merge + and manually add NEWS entry so it's done (tm) + +2018-10-07 Regina Obe + + * README.md: Clarify build instructions. Patch by Greg Troxel. + Closes #933 + +2018-10-02 John K. Harvey + + * configure.ac, macros/ax_check_compile_flag.m4: 'make check' passes + with autoconf 2.63. + +2018-09-21 Sergey Fedoseev + + * NEWS, src/operation/union/UnaryUnionOp.cpp, + tests/unit/capi/GEOSUnaryUnionTest.cpp, + tests/unit/operation/union/UnaryUnionOpTest.cpp: Fix #928: Fixed + crash in GEOSUnaryUnion() when used with empty linestring. + +2018-09-21 Sergey Fedoseev + + * NEWS, src/linearref/LinearLocation.cpp, tests/unit/Makefile.am, + tests/unit/capi/GEOSInterpolateTest.cpp, + tests/unit/linearref/LengthIndexedLineTest.cpp: Fix #926: Fixed + crash in GEOSInterpolate() when used with empty LineString. + +2018-09-21 Daniel Baston + + Merge branch '3.7' of https://git.osgeo.org/gitea/geos/geos into + 3.7 + +2018-09-21 Sergey Fedoseev + + * NEWS, src/algorithm/CGAlgorithms.cpp, + tests/unit/capi/GEOSCoordSeqTest.cpp: Fix #927 -- Fixed crash in + GEOSCoordSeq_isCCW() when used with empty coordseq. + +2018-09-18 Sergey Fedoseev + + * capi/geos_c.h.in: Fixed documented return codes of GEOSGeomGetX() + and friends. + +2018-09-10 Regina Obe + + * NEWS, configure.ac: Prepare for 3.7.0 release + +2018-09-03 Regina Obe + + * NEWS, tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp, + tests/unit/util/UniqueCoordinateArrayFilterTest.cpp: Change to + ignore failure in CoordinateArraySequenceFactoryTest. Put back + UniqueCoordinateArrayFilterTest. + +2018-09-03 Regina Obe + + * NEWS, configure.ac: Prep for 3.7.0rc2 release + +2018-09-03 Regina Obe + + * .gitignore: Add platform.h.disabled to git ignore so doesn't + accidentally get committed again + +2018-09-03 Regina Obe + + * include/geos/platform.h.disabled: Remove accidentally committed + file and add to gitignore + +2018-09-03 Regina Obe + + * NEWS, include/geos/platform.h.disabled, + tests/unit/capi/GEOSGeomFromWKBTest.cpp, + tests/unit/util/UniqueCoordinateArrayFilterTest.cpp, + tools/ci/bessie.sh: Take out failing test on FreeBSD/macOS Clang. + References #894 Revert previous change (was wrong test) Will revisit + in 3.8. Put back use of autotools on bessie + +2018-09-02 Regina Obe + + * tools/ci/bessie.sh: Revise bessies to use cmake + +2018-09-02 Regina Obe + + * tests/unit/capi/GEOSGeomFromWKBTest.cpp: Take out failing test on + FreeBSD/macOS Clang. References #894 Will revisit in 3.8 + +2018-09-02 Regina Obe + + * tests/unit/capi/GEOSGeomFromWKBTest.cpp: Take out failing test on + FreeBSD/macOS Clang. References #894 Will revisit in 3.8 + +2018-09-02 Regina Obe + + * NEWS: Take out failing test on FreeBSD/macOS Clang. References + #894 Will revisit in 3.8 + +2018-09-02 Regina Obe + + * tests/unit/capi/GEOSGeomFromWKBTest.cpp: Take out failing test on + FreeBSD/macOS Clang. References #894 Will revisit in 3.8 + +2018-08-27 Regina Obe + + * NEWS: Clarify reason for sed change. References #317 + +2018-08-27 Regina Obe + + * NEWS, configure.ac: revise sed check for parsing version so works + on all sed per Greg Troxel and Bas Cowenberg. Closes #917 for + 3.7.0 Update NEWS credits + +2018-08-23 Regina Obe + + * Makefile.am: Add .editorconfig to distribution, references #920 + for geos 3.7.0 + +2018-08-19 Regina Obe + + * NEWS, configure.ac: Prepping for geos 3.7.0rc1 release + +2018-08-19 Regina Obe + + * capi/CMakeLists.txt, src/CMakeLists.txt: Allow building C API as + static lib for CMake. References #878 for GEOS 3.7.0, closes + https://github.com/libgeos/geos/pull/102 + +2018-08-18 Regina Obe + + * CMakeLists.txt: Revert change in #914 cause breaks travis and + winnie + +2018-08-18 Daniel Baston + + Merge branch 'trac-730' + +2018-08-17 Regina Obe + + Merge branch 'master' of https://git.osgeo.org/gitea/geos/geos + +2018-08-17 Regina Obe + + * CMakeLists.txt: Take out the C++11 enforcement causing issue with + finite - see #914. Also take out dev from pathc, its already in + there + +2018-08-13 Daniel Baston + + * src/index/strtree/AbstractSTRtree.cpp, + tests/unit/capi/GEOSSTRtreeTest.cpp: Avoid segfault when querying + empty tree Closes #730 Closes + https://github.com/libgeos/geos/pull/116 + +2018-08-13 Daniel Baston + + Merge branch 'trac-782' + +2018-08-07 Daniel Baston + + * src/noding/GeometryNoder.cpp: Avoid losing exception message in + GeometryNoder References #864 + +2018-08-07 Daniel Baston + + * include/geos/algorithm/PointLocator.h, + src/algorithm/PointLocator.cpp, + tests/unit/capi/GEOSIntersectsTest.cpp: Fix predicate crash with + empty collection components Fixes #782 Closes + https://github.com/libgeos/geos/pull/114 + +2018-08-06 Kurt Schwehr + + Merge branch 'size-empty-849' of goatbar/geos into master + +2018-08-06 Kurt Schwehr + + * src/geom/CoordinateArraySequence.cpp, + src/geomgraph/EdgeEndStar.cpp, + src/operation/buffer/SubgraphDepthLocater.cpp, + src/operation/linemerge/LineSequencer.cpp, + src/operation/overlay/LineBuilder.cpp: size() == 0 -> empty() (#849) + clang-tidy: readability-container-size-empty size() == 0 can be + replaced with empty() + + ​https://clang.llvm.org/extra/clang-tidy/checks/readability-container-size-empty.html + +2018-08-06 Regina Obe + + * NEWS, tests/perf/Makefile.am, tests/perf/capi/Makefile.am, + tests/perf/operation/Makefile.am, + tests/perf/operation/buffer/Makefile.am, + tests/perf/operation/predicate/Makefile.am: Not all cmake files + included in tar ball. Closes #895 for 3.7.0 + +2018-08-06 Regina Obe + + * NEWS, configure.ac: Prep for 3.7.0beta2 release + +2018-08-01 Regina Obe + + * AUTHORS: Update Martin's email address References #898 for GEOS + 3.7 + +2018-08-01 Regina Obe + + * AUTHORS: Update list of Authors and PSC. Reorder things bringing + newer state to top. References #898 for GEOS 3.7 + +2018-07-30 Daniel Baston + + * src/operation/intersection/RectangleIntersection.cpp, + src/operation/intersection/RectangleIntersectionBuilder.cpp, + tests/unit/operation/intersection/RectangleIntersectionTest.cpp: Fix + infinite loop in GEOSClipByRect Fixes #865 Closes + https://github.com/libgeos/geos/pull/110 + +2018-07-18 Daniel Baston + + * include/geos/util/GEOSException.h: Make GEOSException inherit from + std::runtime_error This avoids a bunch of "thrown exception is not + nothrow copy-constructible" warnings from clang-tidy. A description + of the issue is available at + + https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible Closes https://github.com/libgeos/geos/pull/107 + +2018-07-18 Daniel Baston + + * include/geos/index/strtree/ItemBoundable.h, + src/index/strtree/ItemBoundable.cpp: Simplify definition of + ItemBoundable destructor + +2018-07-17 Daniel Baston + + * capi/geos_c.h.in: Fix typos + +2018-07-10 Daniel Baston + + * NEWS: Fix typo in NEWS Patch by Tobias Dressel Closes + https://github.com/libgeos/geos/pull/106 + +2018-06-27 Kurt Schwehr + + Merge branch 'byteordervalues-b74945003-863' of goatbar/geos + into master + +2018-06-26 Kurt Schwehr + + Merge branch 'readhex-b4945003-862' of goatbar/geos into master + + +2018-06-25 Regina Obe + + * NEWS, configure.ac: 3.7.0beta1 release + +2018-06-24 Regina Obe + + * Makefile.am: Revise to call git log explicitly with format + suitable for conversion by git2cl. This is needed because jenkins + uses git log format not suitable for git2cl Closes #884 + +2018-06-24 Regina Obe + + * README.md: Fix bessie badge link. + +2018-06-24 Regina Obe + + * README.md, tools/ci/bessie.sh, tools/ci/bessie32.sh: Fix travis + badges, add bessies badges. Add bessies (for FreeBSD 32/64-bit + tests). Closes #891 + +2018-06-23 Regina Obe + + * NEWS: Add J Smith to credits. Closes #581 + +2018-06-22 Regina Obe + + Merge branch 'add-GEOSGeomGetZ' of darkpanda/geos into master + +2016-01-19 J Smith + + * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + include/geos/geom/Point.h, src/geom/Point.cpp, + tests/unit/capi/GEOSLineString_PointTest.cpp: Expose getZ to the + CAPI via GEOSGeomGetZ. + +2018-06-19 Daniel Baston + + * NEWS: Add some entries to NEWS References #889 + +2018-06-15 Regina Obe + + * configure.ac: Revise again to strip anything following the version + number. Revised patch from Bas Couwenberg. References #887 + +2018-06-15 Regina Obe + + * configure.ac: Revise remove pre-release suffix to handle lack of + number, and presense of dev. Closes #887 + +2018-06-15 Regina Obe + + * tools/geos-config.in: Apply updated geos-config patch. Closes #742 + + +2018-06-15 Regina Obe + + * NEWS: update credits. References #889 + +2018-06-14 Regina Obe + + Merge branch 'issue742' of cvvergara/geos into master + +2018-06-15 Regina Obe + + * HOWTO_RELEASE: correct reference to configure.ac in HOWTO_RELEASE + + +2018-06-15 Regina Obe + + * configure.ac: Bump version to 3.7.0beta1dev and correct reference + in HOWTO_RELEASE + +2018-06-14 Regina Obe + + * README.md: correct winnie bot links + +2018-06-14 cvvergara + + * doc/Doxyfile.in, macros/ruby.m4, swig/ruby/Makefile.am, + tools/geos-config.in: Applying patches for Closes #742 * + 01-geos-config.patch * Description: Fix library paths. * Author: + Francesco Paolo Lovergine * 02-ruby2.patch * + Description: Update include and libraries paths for Ruby 2.x. * + Fix linking with libruby. * Author: Bas Couwenberg + * 03-disable-docygen-html-timestamp.patch * + Description: Disable HTML timestamps in Doxygen to allow + reproducible builds. * https://wiki.debian.org/ReproducibleBuilds/ + * Author: Bas Couwenberg + +2018-06-14 Daniel Baston + + * README.md: Update Travis badge URLs Now using travis-ci.com, not + travis-ci.org + +2018-06-14 Sandro Santilli + + * Makefile.am: Better skip external sources from checking blanks + Patch by Bas Couwenberg Closes #888 + +2018-06-14 Sandro Santilli + + * configure.ac, src/Makefile.am: Strip pre-release suffix from + library name Patch by Bas Couwenberg Closes #887 + +2018-06-14 Sandro Santilli + + * Makefile.am: Distribute README.md Closes #885 + +2018-06-14 Sandro Santilli + + * capi/geos_ts_c.cpp, tests/xmltester/tinyxml/tinyxml.h: Fix + spelling errors Courtesy of Bas Couwenberg Closes #773 + +2018-06-13 Regina Obe + + * .gitlab-ci.yml: don't use docker, backer more or less as it was. + Works on my gitlab fork. references #881 + +2018-06-12 dbaston + + Merge branch 'getbit-b37538186-834' of goatbar/geos into master + + +2018-06-12 Dan Baston + + Merge branch 'dbaston-trac-882' + +2018-06-11 Daniel Baston + + * CMakeLists.txt, tests/unit/Makefile.am, + tests/unit/capi/GEOSCAPIDefinesTest.cpp: [CMake] Restore + GEOS_VERSION defines in geos_c.h Fixes #882 Closes + https://github.com/OSGeo/geos/pull/105 + +2018-06-11 Kurt Schwehr + + * src/precision/CommonBits.cpp, + tests/unit/precision/CommonBitsTest.cpp: Fix CommonBits::getBit to + correctly handle i >= 32. Found with UBSan + -fsanitize=shift-exponent via ​https://github.com/paulsmith/gogeos + https://trac.osgeo.org/geos/ticket/834 Credit to Han Shen at + Google. + +2018-06-11 Kurt Schwehr + + * src/io/WKBReader.cpp: WKBReader::readHEX: Fix checking of + char_traits::eof of istream Additional changes: - Factored + out the switch statements into HexToUChar - Localize vars - Added + const Fixes https://trac.osgeo.org/geos/ticket/862 + +2018-06-11 Kurt Schwehr + + * src/io/ByteOrderValues.cpp: Fix building with + DEBUG_BYTEORDER_VALUES=1 in ByteOrderValues.cpp Add missing + includes and missing std:: Fixes #863 + +2018-06-11 Regina Obe + + * .gitlab-ci.yml: oops change script to geos specific not PostGIS + specific references #881 + +2018-06-11 Regina Obe + + * .gitlab-ci.yml: commit + https://gitlab.com/postgis/postgis/merge_requests/1 references #881 + + +2018-06-09 Regina Obe + + * .gitlab-ci.yml: break out install into separate sections, in + attempt to resolve #881 + +2018-06-09 Regina Obe + + * .gitlab-ci.yml: Get rid of first line comment in gitlab script, in + attempt to resolve #881 + +2018-06-09 Regina Obe + + * configure.ac: Revert interface increment, was already incremented + after geos 3.6 release + +2018-06-09 Regina Obe + + Merge branch '3.7.0alpha' of robe/geos into master + +2018-06-08 Regina Obe + + Merge branch '3.7.0alpha' of + https://git.osgeo.org/gitea/robe/geos into 3.7.0alpha + +2018-06-08 Regina Obe + + * NEWS, configure.ac: Flip to 3.7.0alpha + +2018-06-08 Raul Marin + + * configure.ac: Drop unavailable flags with clang during + configuration + +2018-06-08 Daniel Baston + + * src/geom/GeometryCollection.cpp: Indentation change Fixes #877 + +2018-06-08 Regina Obe + + * NEWS, configure.ac: Flip to 3.7.0alpha + +2018-05-29 Daniel Baston + + * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + tests/unit/capi/GEOSSegmentIntersectionTest.cpp: Add + GEOSSegmentIntersection to CAPI Closes #873 Closes + https://github.com/OSGeo/geos/pull/101 + +2018-06-01 Daniel Baston + + Merge branch 'reverse-capi' + +2018-05-29 Daniel Baston + + * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + include/geos/geom/Geometry.h, + include/geos/geom/GeometryCollection.h, + include/geos/geom/LineString.h, include/geos/geom/LinearRing.h, + include/geos/geom/MultiLineString.h, + include/geos/geom/MultiPoint.h, include/geos/geom/MultiPolygon.h, + include/geos/geom/Point.h, include/geos/geom/Polygon.h, + src/geom/GeometryCollection.cpp, src/geom/LineString.cpp, + src/geom/LinearRing.cpp, src/geom/MultiLineString.cpp, + src/geom/MultiPolygon.cpp, src/geom/Polygon.cpp, + tests/unit/Makefile.am, tests/unit/capi/GEOSReverseTest.cpp: Add + GEOSReverse to CAPI Closes #872 Closes + https://github.com/OSGeo/geos/pull/100 + +2018-05-31 dbaston + + Merge branch 'trac-874' of dbaston/geos into master + +2018-05-30 Daniel Baston + + * capi/geos_ts_c.cpp: Resolve memory leak in GEOSSTRtree_nearest_r + Closes #874 + +2018-05-30 Daniel Baston + + * NEWS, tests/unit/capi/GEOSContainsTest.cpp, + tests/unit/capi/GEOSPointOnSurfaceTest.cpp, + tests/unit/capi/GEOSPreparedGeometryTest.cpp, + tests/unit/geom/PolygonTest.cpp: Fix memory leaks in unit tests + +2018-05-29 Dan Baston + + * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + tests/unit/Makefile.am, tests/unit/capi/GEOSGeom_extentTest.cpp: Add + GEOSGeom_getXMin and friends Closes #871 Closes + https://github.com/OSGeo/geos/pull/99 + +2018-05-30 dbaston + + Merge branch 'coordseq-isccw' of dbaston/geos into master + +2018-05-29 Dan Baston + + * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + tests/unit/capi/GEOSCoordSeqTest.cpp: Add GEOSCoordSeq_isCCW Closes + #871 Closes https://github.com/OSGeo/geos/pull/98 + +2018-03-28 Regina Obe + + Merge branch 'fix_warning_unstable_cpp_api_cmake' of + rouault/geos into master + +2018-03-28 Even Rouault + + * CMakeLists.txt: CMakeLists.txt: define -DUSE_UNSTABLE_GEOS_CPP_API + to avoid compilation warnings + +2018-02-05 robe + + Merge branch 't-856' of cvvergara/geos into master + +2018-02-05 robe + + Merge branch 't-852' of cvvergara/geos into master + +2018-02-05 cvvergara + + * tests/xmltester/tinyxml/tinyxmlparser.cpp: Suppressing FALLTHRUGH + warning on g++11 when using gcc-7 closes #856 + +2018-01-22 cvvergara + + * include/geos/geom/BinaryOp.h, + tests/unit/capi/GEOSGeom_createCollection.cpp, + tests/unit/geom/CoordinateArraySequenceTest.cpp, + tests/unit/geom/GeometryComponentFilterTest.cpp, + tests/unit/geom/GeometryFilterTest.cpp: fixing conversion warnings + closes #852 + +2018-01-20 robe + + Merge branch 'fixing-warning' of cvvergara/geos into master + +2018-01-20 robe + + Merge branch 'ticket853-from-master' of cvvergara/geos into + master + +2018-01-20 cvvergara + + * include/geos/platform.h.cmake: Updating platform.h.cmake Close + #853 + +2018-01-13 cvvergara + + * include/geos/algorithm/ConvexHull.inl, + include/geos/algorithm/RayCrossingCounter.h, + include/geos/algorithm/distance/DiscreteFrechetDistance.h, + include/geos/algorithm/distance/DiscreteHausdorffDistance.h, + include/geos/algorithm/locate/IndexedPointInAreaLocator.h, + include/geos/geom/prep/PreparedLineStringIntersects.h, + include/geos/geom/prep/PreparedPolygonPredicate.h, + include/geos/geom/util/ComponentCoordinateExtracter.h, + include/geos/geom/util/GeometryCombiner.h, + include/geos/geom/util/GeometryExtracter.h, + include/geos/geom/util/GeometryTransformer.h, + include/geos/geom/util/LinearComponentExtracter.h, + include/geos/geom/util/PointExtracter.h, + include/geos/geom/util/PolygonExtracter.h, + include/geos/geomgraph/GeometryGraph.h, + include/geos/geomgraph/NodeMap.h, + include/geos/index/chain/MonotoneChain.h, + include/geos/io/StringTokenizer.h, include/geos/io/WKBReader.h, + include/geos/linearref/LinearIterator.h, + include/geos/noding/FastNodingValidator.h, + include/geos/noding/IntersectionAdder.h, + include/geos/noding/IntersectionFinderAdder.h, + include/geos/noding/MCIndexNoder.h, + include/geos/noding/MCIndexSegmentSetMutualIntersector.h, + include/geos/noding/NodingValidator.h, + include/geos/noding/ScaledNoder.h, + include/geos/noding/SegmentNode.h, + include/geos/noding/SegmentNodeList.h, + include/geos/noding/SegmentString.h, + include/geos/noding/SingleInteriorIntersectionFinder.h, + include/geos/noding/snapround/HotPixel.h, + include/geos/noding/snapround/MCIndexPointSnapper.h, + include/geos/noding/snapround/MCIndexSnapRounder.h, + include/geos/noding/snapround/SimpleSnapRounder.h, + include/geos/operation/buffer/BufferBuilder.h, + include/geos/operation/buffer/BufferInputLineSimplifier.h, + include/geos/operation/buffer/OffsetCurveBuilder.h, + include/geos/operation/buffer/OffsetCurveSetBuilder.h, + include/geos/operation/overlay/ElevationMatrix.h, + include/geos/operation/overlay/snap/GeometrySnapper.h, + include/geos/operation/overlay/snap/LineStringSnapper.h, + include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h, + include/geos/operation/overlay/snap/SnapOverlayOp.h, + include/geos/operation/overlay/validate/FuzzyPointLocator.h, + include/geos/operation/overlay/validate/OffsetPointGenerator.h, + include/geos/operation/overlay/validate/OverlayResultValidator.h, + include/geos/operation/predicate/RectangleContains.h, + include/geos/operation/predicate/RectangleIntersects.h, + include/geos/operation/sharedpaths/SharedPathsOp.h, + include/geos/operation/valid/ConnectedInteriorTester.h, + include/geos/planargraph/Subgraph.h, + include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h, + include/geos/simplify/DouglasPeuckerLineSimplifier.h, + include/geos/util/UniqueCoordinateArrayFilter.h, + src/noding/ScaledNoder.cpp, + src/noding/snapround/MCIndexPointSnapper.cpp, + src/operation/overlay/OverlayOp.cpp, + src/operation/predicate/RectangleIntersects.cpp, + src/simplify/TopologyPreservingSimplifier.cpp, + tests/unit/geom/CoordinateTest.cpp, + tests/unit/geom/GeometryFactoryTest.cpp, + tests/unit/geom/IntersectionMatrixTest.cpp, + tests/unit/geom/LinearRingTest.cpp, + tests/unit/geom/MultiPointTest.cpp, + tests/unit/geom/PolygonTest.cpp, + tests/unit/operation/buffer/BufferBuilderTest.cpp, + tests/unit/operation/buffer/BufferOpTest.cpp, + tests/unit/operation/buffer/BufferParametersTest.cpp, + tests/unit/operation/linemerge/LineMergerTest.cpp, + tests/unit/operation/linemerge/LineSequencerTest.cpp, + tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: Explicitly + dissallow copy & assignment using c++11 syntax + +2018-01-13 Sandro Santilli + + * src/geom/Polygon.cpp, src/io/WKBWriter.cpp, src/io/WKTReader.cpp, + src/io/WKTWriter.cpp, src/operation/valid/IsValidOp.cpp: Fix + -Wmisleading-indentation warnings + +2018-01-12 cvvergara + + * include/geos/noding/SegmentIntersectionDetector.h: Remove + Wignored-qualifiers warning from SegmentIntersectionDetector.h + +2018-01-12 cvvergara + + * include/geos/geom/BinaryOp.h, + include/geos/noding/BasicSegmentString.h: Remove conversion warning + from include files modified: include/geos/geom/BinaryOp.h + modified: include/geos/noding/BasicSegmentString.h + +2018-01-12 cvvergara + + * src/simplify/TaggedLineString.cpp, + src/triangulate/quadedge/QuadEdgeSubdivision.cpp: Remove conversion + warning from src/simplify and src/triangulate directories + modified: src/simplify/TaggedLineString.cpp modified: + src/triangulate/quadedge/QuadEdgeSubdivision.cpp + +2018-01-12 cvvergara + + * src/precision/PrecisionReducerCoordinateOperation.cpp, + src/precision/SimpleGeometryPrecisionReducer.cpp: Remove conversion + warning from src/precision directory modified: + src/precision/PrecisionReducerCoordinateOperation.cpp + modified: src/precision/SimpleGeometryPrecisionReducer.cpp + +2018-01-12 cvvergara + + * src/operation/distance/DistanceOp.cpp, + src/operation/intersection/RectangleIntersection.cpp, + src/operation/intersection/RectangleIntersectionBuilder.cpp, + src/operation/linemerge/LineMerger.cpp, + src/operation/linemerge/LineSequencer.cpp, + src/operation/overlay/OverlayOp.cpp, + src/operation/predicate/RectangleContains.cpp, + src/operation/valid/IsValidOp.cpp: Remove conversion warning from + src/operation directory modified: + src/operation/distance/DistanceOp.cpp modified: + src/operation/intersection/RectangleIntersection.cpp + modified: + src/operation/intersection/RectangleIntersectionBuilder.cpp + modified: src/operation/linemerge/LineMerger.cpp modified: + src/operation/linemerge/LineSequencer.cpp modified: + src/operation/overlay/OverlayOp.cpp modified: + src/operation/predicate/RectangleContains.cpp modified: + src/operation/valid/IsValidOp.cpp + +2018-01-12 cvvergara + + * src/operation/buffer/OffsetCurveBuilder.cpp, + src/operation/buffer/OffsetCurveSetBuilder.cpp, + src/operation/buffer/SubgraphDepthLocater.cpp, + src/operation/polygonize/Polygonizer.cpp: Remove conversion warning + from src/operation/buffer directory modified: + src/operation/buffer/OffsetCurveBuilder.cpp modified: + src/operation/buffer/OffsetCurveSetBuilder.cpp modified: + src/operation/buffer/SubgraphDepthLocater.cpp + +2018-01-12 cvvergara + + * src/noding/GeometryNoder.cpp, src/noding/IteratedNoder.cpp, + src/noding/MCIndexNoder.cpp, + src/noding/MCIndexSegmentSetMutualIntersector.cpp, + src/noding/NodingValidator.cpp, + src/noding/OrientedCoordinateArray.cpp, + src/noding/SegmentNodeList.cpp, src/noding/SimpleNoder.cpp, + src/noding/snapround/HotPixel.cpp, + src/noding/snapround/MCIndexSnapRounder.cpp, + src/noding/snapround/SimpleSnapRounder.cpp: Remove conversion + warning from src/noding directory modified: + src/noding/GeometryNoder.cpp modified: + src/noding/IteratedNoder.cpp modified: + src/noding/MCIndexNoder.cpp modified: + src/noding/MCIndexSegmentSetMutualIntersector.cpp modified: + src/noding/NodingValidator.cpp modified: + src/noding/OrientedCoordinateArray.cpp modified: + src/noding/SegmentNodeList.cpp modified: + src/noding/SimpleNoder.cpp modified: + src/noding/snapround/HotPixel.cpp modified: + src/noding/snapround/MCIndexSnapRounder.cpp modified: + src/noding/snapround/SimpleSnapRounder.cpp + +2018-01-12 cvvergara + + * src/linearref/ExtractLineByLocation.cpp, + src/linearref/LinearIterator.cpp, src/linearref/LinearLocation.cpp, + src/linearref/LocationIndexOfLine.cpp: Remove conversion warning + from src/linearref directory modified: + src/linearref/ExtractLineByLocation.cpp modified: + src/linearref/LinearIterator.cpp modified: + src/linearref/LinearLocation.cpp modified: + src/linearref/LocationIndexOfLine.cpp + +2018-01-12 cvvergara + + * src/io/WKBReader.cpp, src/io/WKBWriter.cpp, src/io/WKTReader.cpp, + src/io/WKTWriter.cpp: Remove conversion warning from src/io + directory modified: src/io/WKBReader.cpp modified: + src/io/WKBWriter.cpp modified: src/io/WKTReader.cpp + modified: src/io/WKTWriter.cpp + +2018-01-12 cvvergara + + * src/index/chain/MonotoneChain.cpp, + src/index/quadtree/DoubleBits.cpp, src/index/quadtree/NodeBase.cpp: + Remove conversion warning from src/index directory modified: + src/index/chain/MonotoneChain.cpp modified: + src/index/quadtree/DoubleBits.cpp modified: + src/index/quadtree/NodeBase.cpp + +2018-01-12 cvvergara + + * src/geomgraph/Node.cpp, + src/geomgraph/index/MonotoneChainEdge.cpp, + src/geomgraph/index/SimpleEdgeSetIntersector.cpp, + src/geomgraph/index/SimpleMCSweepLineIntersector.cpp, + src/geomgraph/index/SimpleSweepLineIntersector.cpp: Remove + conversion warning from src/geomgraph directory modified: + src/geomgraph/Node.cpp modified: + src/geomgraph/index/MonotoneChainEdge.cpp modified: + src/geomgraph/index/SimpleEdgeSetIntersector.cpp modified: + src/geomgraph/index/SimpleMCSweepLineIntersector.cpp + modified: src/geomgraph/index/SimpleSweepLineIntersector.cpp + +2018-01-12 cvvergara + + * src/geom/LineString.cpp, src/geom/util/GeometryTransformer.cpp: + Remove conversion warning from src/geom directory modified: + src/geom/LineString.cpp modified: + src/geom/util/GeometryTransformer.cpp + +2018-01-12 cvvergara + + * src/algorithm/distance/DiscreteFrechetDistance.cpp, + src/algorithm/distance/DiscreteHausdorffDistance.cpp: Remove + conversion warning from algorithm directory modified: + src/algorithm/distance/DiscreteFrechetDistance.cpp modified: + src/algorithm/distance/DiscreteHausdorffDistance.cpp + +2018-01-10 cvvergara + + * src/operation/overlay/ElevationMatrixCell.cpp, + src/operation/overlay/LineBuilder.cpp, + src/operation/polygonize/Polygonizer.cpp, + src/operation/valid/RepeatedPointTester.cpp: Removed warnings from + src/operation directory modified: + src/operation/overlay/ElevationMatrixCell.cpp modified: + src/operation/overlay/LineBuilder.cpp modified: + src/operation/valid/RepeatedPointTester.cpp modified: + src/operation/polygonize/Polygonizer.cpp + +2018-01-09 cvvergara + + * tests/unit/capi/GEOSDistanceTest.cpp, + tests/unit/geom/GeometryFactoryTest.cpp, + tests/xmltester/XMLTester.cpp: fixing conversion warning on "tests" + directory + +2018-01-09 cvvergara + + * tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp, + tests/unit/capi/GEOSSTRtreeTest.cpp, tests/xmltester/XMLTester.cpp: + fixed unused parameter + +2018-01-10 cvvergara + + * include/geos/profiler.h, src/util/Profiler.cpp: Fixed profiler + warnings + +2018-01-09 cvvergara + + * CMakeLists.txt, HOWTO_RELEASE: cmake: improving handling version + +2018-01-09 cvvergara + + * CMakeLists.txt: getting stricter with warnings + +2018-01-09 cvvergara + + * CMakeLists.txt: removing -ansi and fPIC from C++ compilation + +2018-01-10 Sandro Santilli + + * authors.svn: We don't need authors.svn anymore + +2018-01-06 Sandro Santilli + + * NEWS: Add note about USE_UNSTABLE_GEOS_CPP_API + +2018-01-05 Evgeniy A. Dushistov + + * include/geos/geom/Geometry.h: fix build under Visual Studio + +2017-11-24 Sandro Santilli + + Merge branch 'ml/846' of mloskot/geos into master + +2017-11-24 Mateusz Loskot + + * include/geos/index/strtree/AbstractSTRtree.h, + src/algorithm/CGAlgorithms.cpp, src/algorithm/LineIntersector.cpp, + src/algorithm/RobustDeterminant.cpp, + src/geom/IntersectionMatrix.cpp, src/geom/util/GeometryEditor.cpp, + src/geom/util/ShortCircuitedGeometryVisitor.cpp: Remove BOM mark + Fixes #846 + +2017-11-23 Sandro Santilli + + * include/geos/util/GEOSException.h: Another BOM removed This one + was added in dbc52d41fd43bb9bdec31fc9969a66d05bc4bf95 See #846 + +2017-11-23 Sandro Santilli + + * include/geos/geom/Lineal.h, include/geos/geom/Polygonal.h, + include/geos/geom/Puntal.h: Remove BOM from header files It was + accidentally added by fbb4431f84ba516b873961b373567ae79a1d92e2 + Fixes #846 + +2017-10-11 Sandro Santilli + + Merge branch 'ml/msvs-15.4.0' of mloskot/geos into master + +2017-10-11 Mateusz Loskot + + * nmake.opt: Recognise NMAKE version from VS2017 15.4.0 + +2017-10-04 Sandro Santilli + + * configure.ac, include/geos/geom/Geometry.h, + tests/xmltester/Makefile.am: Emit a warning at compile time about + C++ API being unstable Aware users can remove the warning by + defining macro USE_UNSTABLE_GEOS_CPP_API See discussion + + https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html + +2017-10-04 Sandro Santilli + + * include/geos/noding/OrientedCoordinateArray.h, + src/noding/OrientedCoordinateArray.cpp, + tests/unit/capi/GEOSConvexHullTest.cpp, + tests/unit/capi/GEOSIntersectionTest.cpp, + tests/unit/capi/GEOSisClosedTest.cpp, + tests/unit/geom/Geometry/touchesTest.cpp, + tests/unit/geom/GeometryComponentFilterTest.cpp, + tests/unit/geom/GeometryFilterTest.cpp, + tests/unit/geom/prep/PreparedGeometry/touchesTest.cpp, + tests/unit/operation/buffer/BufferBuilderTest.cpp: Remove line feeds + from left-over files This is a style only change. The line feed + matched th [[:space:]] character class, which is why it was spotted. + Hopefully these are the last LF that'll ever enter the codebase + +2017-10-04 Sandro Santilli + + * Makefile.am: Make trailing blanks check portable + +2017-10-01 Mateusz Loskot + + Merge branch 'ml/clarify-cpp-api-status' of mloskot/geos into + master + +2017-10-01 Mateusz Loskot + + * README.md, src/Makefile.am: Clarify C++ API has not been + deprecated Make it clear it is not a bug for client program to use + the C++ API. Reverts patch submitted in + https://trac.osgeo.org/geos/ticket/553 - merged by mistake, without + RFC proposal, without PSC voting and without public announcement. + Related discussions occurred via the mailing lists + + https://lists.osgeo.org/pipermail/postgis-devel/2017-September/026548.html https://lists.osgeo.org/pipermail/geos-devel/2017-September/008043.html + +2017-09-16 Sandro Santilli + + * include/geos/operation/relate/EdgeEndBundle.h: Mark + operation::relate::EdgeEndBundle::print as override as suggested by + compiler warning + +2017-05-03 nila + + * tests/unit/capi/GEOSGeom_createCollection.cpp: Suppress + GEOSGeom_createCollection:test1 -Wunnamed-type-template-args warning + + +2017-05-03 nila + + * src/geom/GeometryFactory.cpp: Supress + GeometryFactory::buildGeometry -Wpotentially-evaluated-expression + warning + +2017-05-03 nila + + * include/geos/operation/relate/EdgeEndBundle.h, + src/operation/relate/EdgeEndBundle.cpp: Suppress + EdgeEndBundle::print -Woverloaded-virtual warning + +2017-09-14 Sandro Santilli + + * tests/unit/capi/GEOSInterruptTest.cpp: Remove trailing space + +2017-09-14 Mateusz Loskot + + * nmake.opt: [NMAKE] Recognise Visual Studio 2017 version 15.3.4 + +2017-09-14 Sandro Santilli + + * NEWS: Add interruptible snap news item + +2017-09-14 Sandro Santilli + + Merge branch 'snap-interrupt' of pramsey/geos into master + +2017-09-12 Paul Ramsey + + * tests/unit/capi/GEOSInterruptTest.cpp: Renumber units tests + +2017-09-12 Paul Ramsey + + * tests/unit/capi/GEOSInterruptTest.cpp: Add unit test per strk + +2017-09-11 Paul Ramsey + + * src/operation/overlay/snap/LineStringSnapper.cpp: Add interrupts + to the snap operation + +2017-09-11 Mateusz Loskot + + * CMakeLists.txt: [CMake] Remove checks for prehistoric versions of + Visual Studio + +2017-09-11 Mateusz Loskot + + * tools/build-cmake.bat: [CMake] No need to run cmake.exe in VS + command prompt [ci skip] + +2017-09-10 Mateusz Loskot + + * appveyor.yml: [AppVeyor] Fix build environment for VS2017 and + NMAKE + +2017-09-10 Sandro Santilli + + * src/operation/overlay/validate/OverlayResultValidator.cpp: Remove + unused code and protect debug-only used one + +2017-09-09 robe + + * README.md: fix winnies 3.6 badges + +2017-09-09 robe + + * README.md: fix debbie and winnie's badges + +2017-09-10 Mateusz Loskot + + * appveyor.yml: [AppVeyor] Add build jobs with Visual Studio 2017 + Currently, AppVeyor builds with VS 2017 and 2015 Part of GEOS RFC + 5: C++11 Compilation Mode + +2017-09-10 Mateusz Loskot + + * .travis.yml: [Travis] Add build jobs with multiple GCC and clang + versions * GCC 4.8 and 7.x * clang 3.5 and 3.9 Part of GEOS RFC 5: + C++11 Compilation Mode + +2017-09-09 Mateusz Loskot + + * capi/geos_ts_c.cpp, include/geos/algorithm/MCPointInRing.h, + include/geos/algorithm/NotRepresentableException.h, + include/geos/algorithm/SIRtreePointInRing.h, + include/geos/algorithm/SimplePointInRing.h, + include/geos/algorithm/distance/DiscreteHausdorffDistance.h, + include/geos/algorithm/locate/IndexedPointInAreaLocator.h, + include/geos/algorithm/locate/SimplePointInAreaLocator.h, + include/geos/geom/CoordinateArraySequence.h, + include/geos/geom/CoordinateArraySequenceFactory.h, + include/geos/geom/Geometry.h, + include/geos/geom/GeometryCollection.h, + include/geos/geom/LineString.h, include/geos/geom/LinearRing.h, + include/geos/geom/MultiLineString.h, + include/geos/geom/MultiPoint.h, include/geos/geom/MultiPolygon.h, + include/geos/geom/Point.h, include/geos/geom/Polygon.h, + include/geos/geom/prep/AbstractPreparedPolygonContains.h, + include/geos/geom/prep/BasicPreparedGeometry.h, + include/geos/geom/prep/PreparedLineString.h, + include/geos/geom/prep/PreparedPoint.h, + include/geos/geom/prep/PreparedPolygon.h, + include/geos/geom/prep/PreparedPolygonContains.h, + include/geos/geom/prep/PreparedPolygonCovers.h, + include/geos/geom/util/ComponentCoordinateExtracter.h, + include/geos/geom/util/CoordinateOperation.h, + include/geos/geom/util/GeometryExtracter.h, + include/geos/geom/util/LinearComponentExtracter.h, + include/geos/geom/util/PointExtracter.h, + include/geos/geom/util/PolygonExtracter.h, + include/geos/geomgraph/DirectedEdge.h, + include/geos/geomgraph/DirectedEdgeStar.h, + include/geos/geomgraph/Edge.h, + include/geos/geomgraph/GeometryGraph.h, + include/geos/geomgraph/Node.h, + include/geos/geomgraph/index/MonotoneChain.h, + include/geos/geomgraph/index/SimpleEdgeSetIntersector.h, + include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h, + include/geos/geomgraph/index/SimpleSweepLineIntersector.h, + include/geos/geomgraph/index/SweepLineSegment.h, + include/geos/index/bintree/Node.h, + include/geos/index/bintree/Root.h, + include/geos/index/intervalrtree/IntervalRTreeBranchNode.h, + include/geos/index/intervalrtree/IntervalRTreeLeafNode.h, + include/geos/index/quadtree/Node.h, + include/geos/index/quadtree/Quadtree.h, + include/geos/index/quadtree/Root.h, + include/geos/index/strtree/AbstractNode.h, + include/geos/index/strtree/GeometryItemDistance.h, + include/geos/index/strtree/ItemBoundable.h, + include/geos/index/strtree/SIRtree.h, + include/geos/index/strtree/STRtree.h, + include/geos/io/ParseException.h, + include/geos/noding/BasicSegmentString.h, + include/geos/noding/IntersectionAdder.h, + include/geos/noding/IntersectionFinderAdder.h, + include/geos/noding/IteratedNoder.h, + include/geos/noding/MCIndexNoder.h, + include/geos/noding/MCIndexSegmentSetMutualIntersector.h, + include/geos/noding/NodedSegmentString.h, + include/geos/noding/ScaledNoder.h, + include/geos/noding/SegmentIntersectionDetector.h, + include/geos/noding/SimpleNoder.h, + include/geos/noding/SingleInteriorIntersectionFinder.h, + include/geos/noding/SinglePassNoder.h, + include/geos/noding/snapround/MCIndexSnapRounder.h, + include/geos/noding/snapround/SimpleSnapRounder.h, + include/geos/operation/distance/ConnectedElementLocationFilter.h, + include/geos/operation/distance/ConnectedElementPointFilter.h, + include/geos/operation/linemerge/LineMergeGraph.h, + include/geos/operation/overlay/ElevationMatrix.h, + include/geos/operation/overlay/MaximalEdgeRing.h, + include/geos/operation/overlay/MinimalEdgeRing.h, + include/geos/operation/overlay/OverlayNodeFactory.h, + include/geos/operation/overlay/OverlayOp.h, + include/geos/operation/polygonize/PolygonizeGraph.h, + include/geos/operation/polygonize/Polygonizer.h, + include/geos/operation/relate/EdgeEndBundle.h, + include/geos/operation/relate/EdgeEndBundleStar.h, + include/geos/operation/relate/RelateNode.h, + include/geos/operation/relate/RelateNodeFactory.h, + include/geos/operation/relate/RelateOp.h, + include/geos/operation/valid/SweeplineNestedRingTester.h, + include/geos/planargraph/Node.h, + include/geos/precision/PrecisionReducerCoordinateOperation.h, + include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h, + include/geos/util/AssertionFailedException.h, + include/geos/util/GEOSException.h, + include/geos/util/IllegalArgumentException.h, + include/geos/util/IllegalStateException.h, + include/geos/util/TopologyException.h, + include/geos/util/UniqueCoordinateArrayFilter.h, + include/geos/util/UnsupportedOperationException.h, + src/algorithm/BoundaryNodeRule.cpp, src/geom/GeometryFactory.cpp, + src/index/strtree/SIRtree.cpp, src/index/strtree/STRtree.cpp, + src/noding/GeometryNoder.cpp, src/noding/ScaledNoder.cpp, + src/noding/snapround/MCIndexPointSnapper.cpp, + src/operation/distance/FacetSequenceTreeBuilder.cpp, + src/operation/distance/IndexedFacetDistance.cpp, + src/operation/overlay/OverlayOp.cpp, + src/operation/overlay/snap/GeometrySnapper.cpp, + src/operation/predicate/RectangleIntersects.cpp, + src/precision/CommonBitsRemover.cpp, + src/precision/MinimumClearance.cpp, + src/precision/SimpleGeometryPrecisionReducer.cpp, + src/simplify/DouglasPeuckerSimplifier.cpp, + src/simplify/LineSegmentIndex.cpp, + src/simplify/TopologyPreservingSimplifier.cpp, + src/triangulate/quadedge/QuadEdgeSubdivision.cpp, + tests/unit/geom/CoordinateArraySequenceTest.cpp, + tests/unit/geom/GeometryComponentFilterTest.cpp, + tests/unit/geom/GeometryFilterTest.cpp, + tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp, + tests/unit/tut/tut.hpp, tests/unit/tut/tut_console_reporter.hpp, + tests/unit/tut/tut_exception.hpp, tests/unit/tut/tut_result.hpp, + tests/xmltester/tinyxml/tinyxml.h: Apply clang-tidy-4.0 + modernize-use-override Used command: run-clang-tidy.py + -header-filter='.*' -checks='-*,modernize-use-modernize' -fix Part + of GEOS RFC 5: C++11 Compilation Mode + +2017-09-09 Mateusz Loskot + + * include/geos/algorithm/LineIntersector.h, + include/geos/geom/Lineal.h, include/geos/geom/Polygonal.h, + include/geos/geom/Puntal.h, + include/geos/geom/prep/PreparedLineString.h, + include/geos/geomgraph/DirectedEdgeStar.h, + include/geos/geomgraph/GeometryGraph.h, + include/geos/geomgraph/index/SweepLineEvent.h, + include/geos/index/chain/MonotoneChainBuilder.h, + include/geos/index/sweepline/SweepLineInterval.h, + include/geos/io/ByteOrderDataInStream.h, + include/geos/noding/FastNodingValidator.h, + include/geos/noding/IntersectionAdder.h, + include/geos/noding/MCIndexNoder.h, + include/geos/noding/SegmentIntersectionDetector.h, + include/geos/noding/SegmentSetMutualIntersector.h, + include/geos/noding/SimpleNoder.h, + include/geos/noding/SinglePassNoder.h, + include/geos/noding/snapround/MCIndexPointSnapper.h, + include/geos/operation/buffer/BufferBuilder.h, + include/geos/operation/buffer/BufferOp.h, + include/geos/operation/buffer/OffsetSegmentString.h, + include/geos/operation/linemerge/LineSequencer.h, + include/geos/operation/overlay/OverlayOp.h, + include/geos/operation/overlay/PointBuilder.h, + include/geos/operation/union/CascadedPolygonUnion.h, + include/geos/operation/union/CascadedUnion.h, + include/geos/operation/union/GeometryListHolder.h, + include/geos/operation/union/UnaryUnionOp.h, + include/geos/operation/valid/IsValidOp.h, + include/geos/operation/valid/SimpleNestedRingTester.h, + include/geos/operation/valid/SweeplineNestedRingTester.h, + include/geos/precision/GeometryPrecisionReducer.h, + include/geos/profiler.h, src/algorithm/ConvexHull.cpp, + src/algorithm/LineIntersector.cpp, src/algorithm/MCPointInRing.cpp, + src/algorithm/MinimumDiameter.cpp, + src/algorithm/SIRtreePointInRing.cpp, + src/geom/CoordinateSequence.cpp, src/geom/Geometry.cpp, + src/geom/GeometryCollection.cpp, src/geom/GeometryFactory.cpp, + src/geom/LineString.cpp, src/geom/MultiLineString.cpp, + src/geom/Point.cpp, src/geom/Polygon.cpp, + src/geom/prep/PreparedGeometryFactory.cpp, + src/geom/prep/PreparedPolygon.cpp, + src/geom/util/GeometryCombiner.cpp, + src/geom/util/GeometryEditor.cpp, + src/geom/util/GeometryTransformer.cpp, + src/geom/util/SineStarFactory.cpp, src/geomgraph/DirectedEdge.cpp, + src/geomgraph/DirectedEdgeStar.cpp, src/geomgraph/Edge.cpp, + src/geomgraph/EdgeEnd.cpp, src/geomgraph/EdgeEndStar.cpp, + src/geomgraph/EdgeList.cpp, src/geomgraph/EdgeRing.cpp, + src/geomgraph/GeometryGraph.cpp, src/geomgraph/NodeFactory.cpp, + src/geomgraph/NodeMap.cpp, src/geomgraph/PlanarGraph.cpp, + src/geomgraph/index/SimpleMCSweepLineIntersector.cpp, + src/geomgraph/index/SimpleSweepLineIntersector.cpp, + src/geomgraph/index/SweepLineEvent.cpp, + src/index/bintree/Bintree.cpp, src/index/bintree/Key.cpp, + src/index/bintree/Node.cpp, src/index/bintree/NodeBase.cpp, + src/index/bintree/Root.cpp, src/index/chain/MonotoneChain.cpp, + src/index/intervalrtree/SortedPackedIntervalRTree.cpp, + src/index/quadtree/Node.cpp, src/index/quadtree/NodeBase.cpp, + src/index/quadtree/Root.cpp, src/index/strtree/AbstractNode.cpp, + src/index/strtree/AbstractSTRtree.cpp, + src/index/strtree/BoundablePair.cpp, src/index/strtree/SIRtree.cpp, + src/index/strtree/STRtree.cpp, + src/index/sweepline/SweepLineEvent.cpp, + src/index/sweepline/SweepLineIndex.cpp, src/io/CLocalizer.cpp, + src/io/WKBReader.cpp, src/io/WKBWriter.cpp, src/io/WKTReader.cpp, + src/io/WKTWriter.cpp, src/linearref/ExtractLineByLocation.cpp, + src/linearref/LinearGeometryBuilder.cpp, + src/linearref/LinearIterator.cpp, + src/linearref/LocationIndexOfPoint.cpp, + src/noding/GeometryNoder.cpp, src/noding/IteratedNoder.cpp, + src/noding/snapround/HotPixel.cpp, src/operation/IsSimpleOp.cpp, + src/operation/buffer/BufferBuilder.cpp, + src/operation/buffer/BufferOp.cpp, + src/operation/buffer/BufferSubgraph.cpp, + src/operation/buffer/RightmostEdgeFinder.cpp, + src/operation/buffer/SubgraphDepthLocater.cpp, + src/operation/distance/DistanceOp.cpp, + src/operation/intersection/Rectangle.cpp, + src/operation/intersection/RectangleIntersection.cpp, + src/operation/intersection/RectangleIntersectionBuilder.cpp, + src/operation/linemerge/EdgeString.cpp, + src/operation/linemerge/LineMergeDirectedEdge.cpp, + src/operation/linemerge/LineMergeGraph.cpp, + src/operation/linemerge/LineMerger.cpp, + src/operation/linemerge/LineSequencer.cpp, + src/operation/overlay/MaximalEdgeRing.cpp, + src/operation/overlay/OverlayOp.cpp, + src/operation/overlay/PolygonBuilder.cpp, + src/operation/overlay/validate/FuzzyPointLocator.cpp, + src/operation/overlay/validate/OffsetPointGenerator.cpp, + src/operation/polygonize/EdgeRing.cpp, + src/operation/polygonize/PolygonizeDirectedEdge.cpp, + src/operation/polygonize/PolygonizeGraph.cpp, + src/operation/polygonize/Polygonizer.cpp, + src/operation/predicate/RectangleIntersects.cpp, + src/operation/relate/EdgeEndBuilder.cpp, + src/operation/union/CascadedPolygonUnion.cpp, + src/operation/union/CascadedUnion.cpp, + src/operation/valid/ConnectedInteriorTester.cpp, + src/operation/valid/IndexedNestedRingTester.cpp, + src/operation/valid/IndexedNestedRingTester.h, + src/operation/valid/IsValidOp.cpp, + src/operation/valid/QuadtreeNestedRingTester.cpp, + src/operation/valid/SimpleNestedRingTester.cpp, + src/operation/valid/SweeplineNestedRingTester.cpp, + src/planargraph/Edge.cpp, src/planargraph/NodeMap.cpp, + src/planargraph/PlanarGraph.cpp, + src/precision/MinimumClearance.cpp, + src/precision/PrecisionReducerCoordinateOperation.cpp, + src/precision/SimpleGeometryPrecisionReducer.cpp, + src/simplify/TaggedLineSegment.cpp, + src/simplify/TaggedLineStringSimplifier.cpp, + src/triangulate/DelaunayTriangulationBuilder.cpp, + src/triangulate/VoronoiDiagramBuilder.cpp, + src/triangulate/quadedge/LastFoundQuadEdgeLocator.cpp, + src/triangulate/quadedge/QuadEdge.cpp, + src/triangulate/quadedge/QuadEdgeSubdivision.cpp, + src/util/GeometricShapeFactory.cpp, src/util/Interrupt.cpp, + tests/bigtest/GeometryTestFactory.cpp, + tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp, + tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp, + tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp, + tests/unit/algorithm/ConvexHullTest.cpp, + tests/unit/algorithm/MinimumDiameterTest.cpp, + tests/unit/algorithm/RobustLineIntersectionTest.cpp, + tests/unit/capi/GEOSBufferTest.cpp, + tests/unit/capi/GEOSClipByRectTest.cpp, + tests/unit/capi/GEOSContainsTest.cpp, + tests/unit/capi/GEOSConvexHullTest.cpp, + tests/unit/capi/GEOSCoordSeqTest.cpp, + tests/unit/capi/GEOSDelaunayTriangulationTest.cpp, + tests/unit/capi/GEOSDistanceTest.cpp, + tests/unit/capi/GEOSEqualsTest.cpp, + tests/unit/capi/GEOSFrechetDistanceTest.cpp, + tests/unit/capi/GEOSGeomFromWKBTest.cpp, + tests/unit/capi/GEOSGeomToWKTTest.cpp, + tests/unit/capi/GEOSGeom_create.cpp, + tests/unit/capi/GEOSGeom_createCollection.cpp, + tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp, + tests/unit/capi/GEOSGeom_setPrecisionTest.cpp, + tests/unit/capi/GEOSGetCentroidTest.cpp, + tests/unit/capi/GEOSHausdorffDistanceTest.cpp, + tests/unit/capi/GEOSInterruptTest.cpp, + tests/unit/capi/GEOSIntersectionTest.cpp, + tests/unit/capi/GEOSIntersectsTest.cpp, + tests/unit/capi/GEOSLineString_PointTest.cpp, + tests/unit/capi/GEOSMinimumClearanceTest.cpp, + tests/unit/capi/GEOSMinimumRectangleTest.cpp, + tests/unit/capi/GEOSMinimumWidthTest.cpp, + tests/unit/capi/GEOSNearestPointsTest.cpp, + tests/unit/capi/GEOSNodeTest.cpp, + tests/unit/capi/GEOSOffsetCurveTest.cpp, + tests/unit/capi/GEOSPointOnSurfaceTest.cpp, + tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp, + tests/unit/capi/GEOSPreparedGeometryTest.cpp, + tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp, + tests/unit/capi/GEOSSTRtreeTest.cpp, + tests/unit/capi/GEOSSharedPathsTest.cpp, + tests/unit/capi/GEOSSimplifyTest.cpp, + tests/unit/capi/GEOSSnapTest.cpp, + tests/unit/capi/GEOSUnaryUnionTest.cpp, + tests/unit/capi/GEOSUserDataTest.cpp, + tests/unit/capi/GEOSVoronoiDiagramTest.cpp, + tests/unit/capi/GEOSWithinTest.cpp, + tests/unit/capi/GEOSisClosedTest.cpp, + tests/unit/capi/GEOSisValidDetailTest.cpp, + tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp, + tests/unit/geom/DimensionTest.cpp, + tests/unit/geom/Geometry/isRectangleTest.cpp, + tests/unit/geom/GeometryFactoryTest.cpp, + tests/unit/geom/IntersectionMatrixTest.cpp, + tests/unit/geom/LineStringTest.cpp, + tests/unit/geom/LinearRingTest.cpp, + tests/unit/geom/LocationTest.cpp, + tests/unit/geom/MultiPointTest.cpp, tests/unit/geom/PointTest.cpp, + tests/unit/geom/PolygonTest.cpp, + tests/unit/geom/prep/PreparedGeometry/touchesTest.cpp, + tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp, + tests/unit/io/WKBWriterTest.cpp, + tests/unit/noding/BasicSegmentStringTest.cpp, + tests/unit/noding/NodedSegmentStringTest.cpp, + tests/unit/noding/SegmentNodeTest.cpp, + tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp, + tests/unit/operation/buffer/BufferBuilderTest.cpp, + tests/unit/operation/distance/DistanceOpTest.cpp, + tests/unit/operation/linemerge/LineMergerTest.cpp, + tests/unit/operation/linemerge/LineSequencerTest.cpp, + tests/unit/operation/polygonize/PolygonizeTest.cpp, + tests/unit/operation/union/CascadedPolygonUnionTest.cpp, + tests/unit/operation/union/UnaryUnionOpTest.cpp, + tests/unit/operation/valid/IsValidTest.cpp, + tests/unit/operation/valid/ValidClosedRingTest.cpp, + tests/unit/tut/tut.hpp, tests/unit/tut/tut_runner.hpp, + tests/unit/utility.h, tests/xmltester/XMLTester.cpp, + tests/xmltester/tinyxml/tinystr.h, + tests/xmltester/tinyxml/tinyxml.cpp, + tests/xmltester/tinyxml/tinyxml.h, + tests/xmltester/tinyxml/tinyxmlparser.cpp: Apply clang-tidy-4.0 + modernize-use-nullptr Used command: run-clang-tidy.py + -header-filter='.*' -checks='-*,modernize-use-nullptr' -fix Part of + GEOS RFC 5: C++11 Compilation Mode + +2017-09-09 Mateusz Loskot + + * .travis.yml: [Travis CI] Remove branch filter Allow Travis CI + builds for any branch + +2017-09-07 Mateusz Loskot + + * tests/bigtest/CMakeLists.txt, tests/unit/CMakeLists.txt, + tests/xmltester/CMakeLists.txt: [CMake] Rename tests targets using + test_ prefix + +2017-09-07 Mateusz Loskot + + * tests/CMakeLists.txt, tests/perf/CMakeLists.txt, + tests/perf/capi/CMakeLists.txt, + tests/perf/operation/CMakeLists.txt, + tests/perf/operation/buffer/CMakeLists.txt, + tests/perf/operation/predicate/CMakeLists.txt, + tests/unit/CMakeLists.txt, tests/xmltester/CMakeLists.txt: [CMake] + Add tests/perf targets to build configuration + +2017-09-07 Mateusz Loskot + + * include/geos/profiler.h: Add GEOS_DLL to opeartor<< functions in + Profiler + +2017-09-07 Mateusz Loskot + + * tests/perf/operation/buffer/IteratedBufferStressTest.cpp: Replace + GeometryFactory::unique_ptr remains with Ptr + +2017-09-07 Mateusz Loskot + + * tests/perf/operation/buffer/IteratedBufferStressTest.cpp, + tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp: + Avoid copying of std::unique_ptr Prefer T::Ptr instead of + std::unique_ptr. + +2017-09-07 Mateusz Loskot + + * doc/example.cpp: Use GeometryFactory::Ptr instead of old + unique_ptr alias + +2017-09-07 Mateusz Loskot + + * configure.ac: Remove option -ansi conflicting with -std=c++11 + Restore C++11 detection without extensions + +2017-09-07 Mateusz Loskot + + * configure.ac: Allow GCC extension options (-std=gnu++11) + +2017-09-07 Mateusz Loskot + + * include/geos/geom/Makefile.am: Remove GeometryList.h from makefile + Update for: Remove GeometryList class (#9) + +2017-09-07 Sandro Santilli + + Merge branch 'ml/rfc5-cpp11-unique_ptr' of mloskot/geos into + master + +2017-09-07 Sandro Santilli + + Merge branch 'ml/rfc5-cpp11-configure' of mloskot/geos into + master + +2017-09-06 Mateusz Loskot + + * capi/geos_c.cpp, capi/geos_ts_c.cpp, doc/example.cpp, + include/geos/algorithm/Centroid.h, include/geos/geom/BinaryOp.h, + include/geos/geom/CoordinateList.h, + include/geos/geom/CoordinateSequence.h, + include/geos/geom/Envelope.h, include/geos/geom/Geometry.h, + include/geos/geom/GeometryCollection.h, + include/geos/geom/GeometryFactory.h, + include/geos/geom/LineSegment.h, include/geos/geom/LineString.h, + include/geos/geom/LinearRing.h, include/geos/geom/Point.h, + include/geos/geom/Polygon.h, + include/geos/geom/util/GeometryTransformer.h, + include/geos/geom/util/SineStarFactory.h, + include/geos/geomgraph/GeometryGraph.h, + include/geos/index/chain/MonotoneChain.h, + include/geos/index/quadtree/Node.h, + include/geos/index/strtree/AbstractSTRtree.h, + include/geos/index/strtree/SIRtree.h, + include/geos/index/strtree/STRtree.h, + include/geos/linearref/LinearLocation.h, + include/geos/noding/FastNodingValidator.h, + include/geos/noding/GeometryNoder.h, + include/geos/noding/snapround/HotPixel.h, + include/geos/noding/snapround/MCIndexSnapRounder.h, + include/geos/operation/IsSimpleOp.h, + include/geos/operation/buffer/BufferInputLineSimplifier.h, + include/geos/operation/buffer/OffsetCurveBuilder.h, + include/geos/operation/distance/DistanceOp.h, + include/geos/operation/distance/IndexedFacetDistance.h, + include/geos/operation/intersection/RectangleIntersection.h, + include/geos/operation/intersection/RectangleIntersectionBuilder.h, + include/geos/operation/linemerge/LineSequencer.h, + include/geos/operation/overlay/snap/GeometrySnapper.h, + include/geos/operation/overlay/snap/LineStringSnapper.h, + include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h, + include/geos/operation/overlay/snap/SnapOverlayOp.h, + include/geos/operation/overlay/validate/FuzzyPointLocator.h, + include/geos/operation/overlay/validate/OffsetPointGenerator.h, + include/geos/operation/relate/RelateComputer.h, + include/geos/operation/union/CascadedPolygonUnion.h, + include/geos/operation/union/PointGeometryUnion.h, + include/geos/operation/union/UnaryUnionOp.h, + include/geos/operation/valid/ConnectedInteriorTester.h, + include/geos/precision/CommonBitsOp.h, + include/geos/precision/GeometryPrecisionReducer.h, + include/geos/precision/MinimumClearance.h, + include/geos/simplify/DouglasPeuckerLineSimplifier.h, + include/geos/simplify/DouglasPeuckerSimplifier.h, + include/geos/simplify/LineSegmentIndex.h, + include/geos/simplify/TaggedLineString.h, + include/geos/simplify/TaggedLineStringSimplifier.h, + include/geos/simplify/TaggedLinesSimplifier.h, + include/geos/simplify/TopologyPreservingSimplifier.h, + include/geos/triangulate/DelaunayTriangulationBuilder.h, + include/geos/triangulate/VoronoiDiagramBuilder.h, + include/geos/triangulate/quadedge/QuadEdge.h, + include/geos/triangulate/quadedge/QuadEdgeSubdivision.h, + include/geos/triangulate/quadedge/Vertex.h, + include/geos/util/GeometricShapeFactory.h, + src/algorithm/InteriorPointArea.cpp, src/geom/Geometry.cpp, + src/geom/GeometryCollection.cpp, src/geom/GeometryFactory.cpp, + src/geom/LineSegment.cpp, src/geom/LineString.cpp, + src/geom/LinearRing.cpp, src/geom/Point.cpp, src/geom/Polygon.cpp, + src/geom/util/GeometryTransformer.cpp, + src/geom/util/SineStarFactory.cpp, src/geomgraph/GeometryGraph.cpp, + src/geomgraph/PlanarGraph.cpp, src/index/chain/MonotoneChain.cpp, + src/index/quadtree/Node.cpp, src/index/quadtree/Root.cpp, + src/index/strtree/AbstractSTRtree.cpp, + src/index/strtree/BoundablePair.cpp, src/index/strtree/SIRtree.cpp, + src/index/strtree/STRtree.cpp, src/io/WKTReader.cpp, + src/linearref/LinearLocation.cpp, src/noding/GeometryNoder.cpp, + src/noding/snapround/HotPixel.cpp, + src/noding/snapround/MCIndexSnapRounder.cpp, + src/operation/IsSimpleOp.cpp, + src/operation/buffer/BufferBuilder.cpp, + src/operation/buffer/BufferInputLineSimplifier.cpp, + src/operation/buffer/BufferOp.cpp, + src/operation/buffer/OffsetCurveBuilder.cpp, + src/operation/buffer/OffsetCurveSetBuilder.cpp, + src/operation/distance/FacetSequenceTreeBuilder.cpp, + src/operation/distance/IndexedFacetDistance.cpp, + src/operation/intersection/RectangleIntersection.cpp, + src/operation/intersection/RectangleIntersectionBuilder.cpp, + src/operation/linemerge/LineMergeGraph.cpp, + src/operation/linemerge/LineSequencer.cpp, + src/operation/overlay/OverlayOp.cpp, + src/operation/overlay/snap/GeometrySnapper.cpp, + src/operation/overlay/snap/LineStringSnapper.cpp, + src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp, + src/operation/overlay/snap/SnapOverlayOp.cpp, + src/operation/overlay/validate/FuzzyPointLocator.cpp, + src/operation/overlay/validate/OffsetPointGenerator.cpp, + src/operation/overlay/validate/OverlayResultValidator.cpp, + src/operation/relate/RelateComputer.cpp, + src/operation/sharedpaths/SharedPathsOp.cpp, + src/operation/union/CascadedPolygonUnion.cpp, + src/operation/union/CascadedUnion.cpp, + src/operation/union/PointGeometryUnion.cpp, + src/operation/union/UnaryUnionOp.cpp, + src/operation/valid/ConsistentAreaTester.cpp, + src/operation/valid/IndexedNestedRingTester.h, + src/precision/CommonBitsOp.cpp, + src/precision/EnhancedPrecisionOp.cpp, + src/precision/GeometryPrecisionReducer.cpp, + src/precision/MinimumClearance.cpp, + src/simplify/DouglasPeuckerLineSimplifier.cpp, + src/simplify/DouglasPeuckerSimplifier.cpp, + src/simplify/LineSegmentIndex.cpp, + src/simplify/TaggedLineString.cpp, + src/simplify/TaggedLineStringSimplifier.cpp, + src/simplify/TopologyPreservingSimplifier.cpp, + src/triangulate/DelaunayTriangulationBuilder.cpp, + src/triangulate/VoronoiDiagramBuilder.cpp, + src/triangulate/quadedge/QuadEdge.cpp, + src/triangulate/quadedge/QuadEdgeSubdivision.cpp, + src/triangulate/quadedge/Vertex.cpp, + src/util/GeometricShapeFactory.cpp, + tests/bigtest/TestSweepLineSpeed.cpp, tests/bigtest/bug234.cpp, + tests/perf/operation/buffer/IteratedBufferStressTest.cpp, + tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp, + tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp, + tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp, + tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp, + tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp, + tests/unit/algorithm/ConvexHullTest.cpp, + tests/unit/algorithm/InteriorPointAreaTest.cpp, + tests/unit/algorithm/MinimumDiameterTest.cpp, + tests/unit/algorithm/PointLocatorTest.cpp, + tests/unit/algorithm/RobustLineIntersectionTest.cpp, + tests/unit/algorithm/RobustLineIntersectorTest.cpp, + tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp, + tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp, + tests/unit/capi/GEOSContainsTest.cpp, + tests/unit/capi/GEOSPreparedGeometryTest.cpp, + tests/unit/geom/CoordinateArraySequenceTest.cpp, + tests/unit/geom/CoordinateListTest.cpp, + tests/unit/geom/Geometry/clone.cpp, + tests/unit/geom/Geometry/coversTest.cpp, + tests/unit/geom/Geometry/equalsTest.cpp, + tests/unit/geom/Geometry/normalize.cpp, + tests/unit/geom/Geometry/touchesTest.cpp, + tests/unit/geom/GeometryComponentFilterTest.cpp, + tests/unit/geom/GeometryFactoryTest.cpp, + tests/unit/geom/GeometryFilterTest.cpp, + tests/unit/geom/LineStringTest.cpp, + tests/unit/geom/LinearRingTest.cpp, + tests/unit/geom/MultiPointTest.cpp, tests/unit/geom/PointTest.cpp, + tests/unit/geom/PolygonTest.cpp, + tests/unit/geom/prep/PreparedGeometry/touchesTest.cpp, + tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp, + tests/unit/geom/util/GeometryExtracterTest.cpp, + tests/unit/io/WKBReaderTest.cpp, tests/unit/io/WKBWriterTest.cpp, + tests/unit/io/WKTReaderTest.cpp, tests/unit/io/WKTWriterTest.cpp, + tests/unit/linearref/LengthIndexedLineTest.cpp, + tests/unit/noding/BasicSegmentStringTest.cpp, + tests/unit/noding/NodedSegmentStringTest.cpp, + tests/unit/noding/OrientedCoordinateArray.cpp, + tests/unit/noding/SegmentNodeTest.cpp, + tests/unit/noding/SegmentPointComparatorTest.cpp, + tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp, + tests/unit/operation/IsSimpleOpTest.cpp, + tests/unit/operation/buffer/BufferBuilderTest.cpp, + tests/unit/operation/buffer/BufferOpTest.cpp, + tests/unit/operation/distance/DistanceOpTest.cpp, + tests/unit/operation/intersection/RectangleIntersectionTest.cpp, + tests/unit/operation/linemerge/LineMergerTest.cpp, + tests/unit/operation/linemerge/LineSequencerTest.cpp, + tests/unit/operation/overlay/OverlayOpUnionTest.cpp, + tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp, + tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp, + tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp, + tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp, + tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cp + p, tests/unit/operation/polygonize/PolygonizeTest.cpp, + tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp, + tests/unit/operation/union/CascadedPolygonUnionTest.cpp, + tests/unit/operation/union/UnaryUnionOpTest.cpp, + tests/unit/operation/valid/IsValidTest.cpp, + tests/unit/operation/valid/ValidClosedRingTest.cpp, + tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp + , tests/unit/precision/GeometryPrecisionReducerTest.cpp, + tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp, + tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp, + tests/unit/simplify/TopologyPreservingSimplifierTest.cpp, + tests/unit/triangulate/DelaunayTest.cpp, + tests/unit/triangulate/VoronoiTest.cpp, + tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp, + tests/unit/triangulate/quadedge/QuadEdgeTest.cpp, + tests/unit/util/UniqueCoordinateArrayFilterTest.cpp, + tests/unit/utility.h, tests/xmltester/BufferResultMatcher.cpp, + tests/xmltester/SimpleWKTTester.cpp, + tests/xmltester/SingleSidedBufferResultMatcher.cpp, + tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Replace + std::auto_ptr with std::unique_ptr Rename T::AutoPtr to T::Ptr. Add + explicit move of input arguments of unique_ptr type passed to sink + functions. Add explicit move of values of unique_ptr type returned + from source functions which give up class member resource. Comment + source functions with: NOTE: Apparently, this is 'source' method + giving up the object resource. Replace GeometryFactory::unique_ptr + with GeometryFactory::Ptr based on std::unique_ptr with custom + GeometryFactoryDeleter. Remove obscure dynamic_cast_auto_ptr from + test utilities. Part of GEOS RFC 5: C++11 Compilation Mode + +2017-09-07 Mateusz Loskot + + * configure.ac, macros/ax_check_compile_flag.m4, + macros/ax_cxx_compile_stdcxx.m4, macros/ax_cxx_compile_stdcxx_11.m4: + Set C++11 as required standard Add -Wsuggest-override or + -Wmissing-override compiler options. Part of GEOS RFC 5: C++11 + Compilation Mode + +2017-09-07 Mateusz Loskot + + * src/Makefile.vc, src/geom/Makefile.am: Remove GeometryList from + makefiles. Update for: Remove GeometryList class (#9) + +2017-09-07 Sandro Santilli + + Merge branch 'ml/remove-GeometryList' of mloskot/geos into + master + +2017-09-07 Mateusz Loskot + + * include/geos/geom/GeometryList.h, src/geom/GeometryList.cpp: + Remove GeometryList class It is completely unused in GEOS and + becomes deprecated in C++11. Use std::vector instead. + Part of GEOS RFC 5: C++11 Compilation Mode + +2017-09-07 Mateusz Loskot + + * tools/build-cmake.bat: [CMake] Add build-cmake.bat utility for + convenience. Builds GEOS using CMake and Visual Studio 2017 for + 32-bit or 64-bit platform. (eg. cd geos; tools\build-cmake.bat 64) + +2017-09-07 Mateusz Loskot + + * CMakeLists.txt: [CMake] Report CMAKE_CXX_STANDARD value in + configuration output + +2017-09-07 Mateusz Loskot + + * CMakeLists.txt: [CMake] Set CMAKE_CXX_EXTENSIONS to OFF (require + -std=c++11) Move C++ standard settings to top of CMakeLists.txt. + +2017-04-26 nila + + * src/linearref/LinearLocation.cpp: Remove redundant code Closes + #832 + +2017-07-27 Sandro Santilli + + * include/geos/geom/BinaryOp.h, + src/operation/union/CascadedPolygonUnion.cpp: Fix debug print syntax + And add more debugging lines + +2017-08-29 Mateusz Loskot + + * tests/unit/capi/GEOSPointOnSurfaceTest.cpp: Add GEOSPointOnSurface + test for case of three similar polygons Might help to catch + significant changes in algorithm calculating point on surface. + Source https://trac.osgeo.org/geos/ticket/840 + +2017-08-29 Mateusz Loskot + + * CMakeLists.txt: [CMake] Add LANGUAGES property to project command + Note, VERSION property components must be integers, and cannot be + added due to 'dev' suffix in VERSION_PATCH. + +2017-08-29 Mateusz Loskot + + * CMakeLists.txt: [CMake] Set C++11 as required standard GEOS RFC + 5: C++11 Compilation Mode + +2017-08-29 Mateusz Loskot + + * nmake.opt: Add NMAKE version from latest VS 2017 and 2015 + 2017-07-25 Sandro Santilli - * CMakeLists.txt, HOWTO_RELEASE, capi/geos_c.h.in, - include/geos/version.h.vc: Fix 3.6.2 versions in more places + * HOWTO_RELEASE: Indexed steps, configure.ac name fix + +2017-07-19 Sandro Santilli + + * tests/xmltester/Makefile.am, tests/xmltester/XMLTester.cpp, + tests/xmltester/XMLTester.h, tests/xmltester/tests/general/MISSING, + tests/xmltester/tests/general/TestPreparedPointPredicate.xml, + tests/xmltester/tests/general/TestPreparedPolygonPredicate.xml, + tests/xmltester/tests/general/TestPreparedPredicatesWithGeometryCol + lection.xml: Add support for testing prepared geometries operations + in XMLTester Add 3 more tests from JTS testsuite now that they can + be run See #694 + +2017-07-19 Sandro Santilli + + * tests/xmltester/JTSXMLTester.sh: Allow passing switches to JTS + test runner + +2017-07-18 Tamas Szekeres + + * src/io/CLocalizer.cpp: Fix multithreading issue for MSVC caused by + setlocale + +2017-07-18 Tamas Szekeres + + * include/geos/geom/Envelope.h: Fix build error with MSVC + +2017-07-14 Sandro Santilli + + * tests/xmltester/XMLTester.cpp: Use overlay specific result checker + The check just supports some snap-distance based tolerance for exact + match (in addition to topology equality which is needed for some JTS + tests to pass) + +2017-07-14 Sandro Santilli + + * .editorconfig: Stackwalker.cpp uses 2 space indent while + XMLTester.cpp 2 space + +2017-07-14 Sandro Santilli + + * .editorconfig: Stackwalker.cpp also wants spaces + +2017-07-14 Sandro Santilli + + * .editorconfig: XMLTester.cpp wants space indent + +2017-07-14 Sandro Santilli + + * tests/xmltester/JTSXMLTester.sh: Add copyright header + +2017-07-14 Sandro Santilli + + * tests/xmltester/JTSXMLTester.sh: Add JTSXMLTester.sh script + Useful to compare results between GEOS and JTS. Works with newer JTS + versions (Maven-based install, locationtech namespace) + +2017-07-14 Sandro Santilli + + * .editorconfig, + include/geos/operation/union/CascadedPolygonUnion.h, + include/geos/operation/union/GeometryListHolder.h: CascadedUnion + uses spaces indent also in include files Convert the TABS added in + previous commit, and a single spurious tab found in existing file, + secure style in editorconfig + +2017-07-11 Sandro Santilli + + * include/geos/operation/union/CascadedPolygonUnion.h, + src/operation/union/CascadedPolygonUnion.cpp, + tests/xmltester/Makefile.am, + tests/xmltester/tests/ticket/bug837.xml: UnaryUnion: Drop assumption + about union not moving vertices The assumption resulted in invalid + geometries being output by CascadedPolygonUnion intermediary results + and then fed as input by further union calls, which in turn would + fail on first robustness issue. Fixes #837 Includes automated XML + test + +2017-07-14 Sandro Santilli + + * .editorconfig: Institutionalize that CascadedUnion directory uses + spaces indent + +2017-07-11 Sandro Santilli + + * include/geos/geom/BinaryOp.h: Move CBR_BEFORE_SNAPPING macro on + top of the file + +2017-06-30 Sandro Santilli + + * include/geos/geom/Envelope.h, src/geom/Envelope.cpp: Add output + operator for geom::Envelope class + +2017-06-30 Sandro Santilli + + * include/geos/geom/BinaryOp.h: Optionally debug-print invalid + geometry + +2017-06-30 Sandro Santilli + + * include/geos/geom/BinaryOp.h: Add (disabled) code to check + validity of overlay op results + +2017-06-22 Sandro Santilli + + Merge pull request #85 from grizonnetm/master ENH: add + GenerateSourceGroups.cmake to EXTRA_DIST Closes #753 + +2017-06-22 Manuel Grizonnet + + * Makefile.am: ENH: add GenerateSourceGroups.cmake to EXTRA_DIST + +2017-04-29 Mateusz Loskot + + Merge branch 'master' of https://git.osgeo.org/gogs/geos/geos + +2017-04-29 Mateusz Loskot + + * tests/xmltester/XMLTester.cpp: Remove UTF-8 BOM [ci skip] + +2017-04-29 Sandro Santilli + + * .editorconfig: Istitutionalize CR line ending in appveyor.yml + +2017-04-29 Sandro Santilli + + * .editorconfig: Use CRLF line ending for nmake.opt too + +2017-04-29 Mateusz Loskot + + * README.md: Typo in branch name [ci skip] + +2017-04-29 Mateusz Loskot + + * .travis.yml, README.md, appveyor.yml: Rename svn-trunk branch to + master Part of #822 + +2017-04-24 Mateusz Łoskot + + * tests/xmltester/XMLTester.cpp: Avoid use of internal + geos/util/math.h Copy java_math_round geos/util/math.cpp to + xmltester.cpp. Declared functions are internal to the library and + not included in GEOS shared library exports. Fixes #831 + +2017-04-18 Mateusz Łoskot + + * nmake.opt: Add NMAKE_VER from VS 2017 Version 15.1 + +2017-04-12 Kurt Schwehr + + * src/io/WKTReader.cpp, tests/unit/io/WKTReaderTest.cpp: Fix leaks + in WKT parser Cleanup if failing to parse the WKT MultiLineString, + MultiPolygon, and GeometryCollection string. Wrap parsing in try + blocks. Catch any exception, cleanup, and rethrow. Closes #830 + Includes testcase Signed-off-by: Sandro Santilli + +2017-04-12 Sandro Santilli + + * README.md: Update drone build badge url [ci skip] + +2017-04-11 Kurt Schwehr + + * include/geos/io/StringTokenizer.h, src/io/StringTokenizer.cpp: Add + explicit to StringTokenizer ctor and move more to the initializer + list in ctor. Signed-off-by: Sandro Santilli + +2017-04-11 Sandro Santilli + + * tests/xmltester/XMLTester.cpp: Fixed compile error in Microsoft + VS2010 Patch by sunxunfeng See #801 + +2017-04-10 Mateusz Loskot + + * tests/unit/capi/GEOSSTRtreeTest.cpp: Add explicit cast of sqrt + arguments to double Fixes parts of #801 + +2017-04-10 Mateusz Loskot + + * tools/CMakeLists.txt: [CMake] Fix geos-config is not installed on + MinGW/MSYS builds Closes #706 + +2017-04-08 Sandro Santilli + + * TODO: Triangulation API was ported + +2017-04-08 Sandro Santilli + + * HOWTO_RELEASE: Update release howto for SVN -> GIT move See #825 + + +2017-04-08 Sandro Santilli + + * tests/unit/Makefile.am: Distribute all of the new TUT Should fix + #824 + +2017-04-08 Mateusz Loskot + + * tests/CMakeLists.txt, tests/unit2/CMakeLists.txt, + tests/unit2/geom/PointTest.cpp, + tests/unit2/geos_include_all_headers.cpp: Drop pilot of Catch-based + tests + +2017-04-07 Mateusz Loskot + + * tests/unit/CMakeLists.txt, tests/unit/algorithm/AngleTest.cpp, + tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp, + tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp, + tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp, + tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp, + tests/unit/algorithm/ConvexHullTest.cpp, + tests/unit/algorithm/InteriorPointAreaTest.cpp, + tests/unit/algorithm/MinimumDiameterTest.cpp, + tests/unit/algorithm/PointLocatorTest.cpp, + tests/unit/algorithm/RobustLineIntersectionTest.cpp, + tests/unit/algorithm/RobustLineIntersectorTest.cpp, + tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp, + tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp, + tests/unit/capi/GEOSBufferTest.cpp, + tests/unit/capi/GEOSClipByRectTest.cpp, + tests/unit/capi/GEOSContainsTest.cpp, + tests/unit/capi/GEOSConvexHullTest.cpp, + tests/unit/capi/GEOSCoordSeqTest.cpp, + tests/unit/capi/GEOSDelaunayTriangulationTest.cpp, + tests/unit/capi/GEOSDistanceTest.cpp, + tests/unit/capi/GEOSEqualsTest.cpp, + tests/unit/capi/GEOSFrechetDistanceTest.cpp, + tests/unit/capi/GEOSGeomFromWKBTest.cpp, + tests/unit/capi/GEOSGeomToWKTTest.cpp, + tests/unit/capi/GEOSGeom_create.cpp, + tests/unit/capi/GEOSGeom_createCollection.cpp, + tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp, + tests/unit/capi/GEOSGeom_setPrecisionTest.cpp, + tests/unit/capi/GEOSGetCentroidTest.cpp, + tests/unit/capi/GEOSHausdorffDistanceTest.cpp, + tests/unit/capi/GEOSInterruptTest.cpp, + tests/unit/capi/GEOSIntersectionTest.cpp, + tests/unit/capi/GEOSIntersectsTest.cpp, + tests/unit/capi/GEOSLineString_PointTest.cpp, + tests/unit/capi/GEOSMinimumClearanceTest.cpp, + tests/unit/capi/GEOSMinimumRectangleTest.cpp, + tests/unit/capi/GEOSMinimumWidthTest.cpp, + tests/unit/capi/GEOSNearestPointsTest.cpp, + tests/unit/capi/GEOSNodeTest.cpp, + tests/unit/capi/GEOSOffsetCurveTest.cpp, + tests/unit/capi/GEOSOrientationIndex.cpp, + tests/unit/capi/GEOSPointOnSurfaceTest.cpp, + tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp, + tests/unit/capi/GEOSPreparedGeometryTest.cpp, + tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp, + tests/unit/capi/GEOSRelatePatternMatchTest.cpp, + tests/unit/capi/GEOSSTRtreeTest.cpp, + tests/unit/capi/GEOSSharedPathsTest.cpp, + tests/unit/capi/GEOSSimplifyTest.cpp, + tests/unit/capi/GEOSSnapTest.cpp, + tests/unit/capi/GEOSUnaryUnionTest.cpp, + tests/unit/capi/GEOSUserDataTest.cpp, + tests/unit/capi/GEOSVoronoiDiagramTest.cpp, + tests/unit/capi/GEOSWithinTest.cpp, + tests/unit/capi/GEOSisClosedTest.cpp, + tests/unit/capi/GEOSisValidDetailTest.cpp, + tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp, + tests/unit/geom/CoordinateArraySequenceTest.cpp, + tests/unit/geom/CoordinateListTest.cpp, + tests/unit/geom/CoordinateTest.cpp, + tests/unit/geom/DimensionTest.cpp, + tests/unit/geom/EnvelopeTest.cpp, + tests/unit/geom/Geometry/clone.cpp, + tests/unit/geom/Geometry/coversTest.cpp, + tests/unit/geom/Geometry/equalsTest.cpp, + tests/unit/geom/Geometry/isRectangleTest.cpp, + tests/unit/geom/Geometry/normalize.cpp, + tests/unit/geom/Geometry/touchesTest.cpp, + tests/unit/geom/GeometryComponentFilterTest.cpp, + tests/unit/geom/GeometryFactoryTest.cpp, + tests/unit/geom/GeometryFilterTest.cpp, + tests/unit/geom/IntersectionMatrixTest.cpp, + tests/unit/geom/LineSegmentTest.cpp, + tests/unit/geom/LineStringTest.cpp, + tests/unit/geom/LinearRingTest.cpp, + tests/unit/geom/LocationTest.cpp, + tests/unit/geom/MultiLineStringTest.cpp, + tests/unit/geom/MultiPointTest.cpp, + tests/unit/geom/MultiPolygonTest.cpp, + tests/unit/geom/PointTest.cpp, tests/unit/geom/PolygonTest.cpp, + tests/unit/geom/PrecisionModelTest.cpp, + tests/unit/geom/TriangleTest.cpp, + tests/unit/geom/prep/PreparedGeometry/touchesTest.cpp, + tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp, + tests/unit/geom/util/GeometryExtracterTest.cpp, + tests/unit/geos_unit.cpp, + tests/unit/index/quadtree/DoubleBitsTest.cpp, + tests/unit/io/ByteOrderValuesTest.cpp, + tests/unit/io/WKBReaderTest.cpp, tests/unit/io/WKBWriterTest.cpp, + tests/unit/io/WKTReaderTest.cpp, tests/unit/io/WKTWriterTest.cpp, + tests/unit/io/WriterTest.cpp, + tests/unit/linearref/LengthIndexedLineTest.cpp, + tests/unit/noding/BasicSegmentStringTest.cpp, + tests/unit/noding/NodedSegmentStringTest.cpp, + tests/unit/noding/OrientedCoordinateArray.cpp, + tests/unit/noding/SegmentNodeTest.cpp, + tests/unit/noding/SegmentPointComparatorTest.cpp, + tests/unit/noding/snapround/HotPixelTest.cpp, + tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp, + tests/unit/operation/IsSimpleOpTest.cpp, + tests/unit/operation/buffer/BufferBuilderTest.cpp, + tests/unit/operation/buffer/BufferOpTest.cpp, + tests/unit/operation/buffer/BufferParametersTest.cpp, + tests/unit/operation/distance/DistanceOpTest.cpp, + tests/unit/operation/intersection/RectangleIntersectionTest.cpp, + tests/unit/operation/linemerge/LineMergerTest.cpp, + tests/unit/operation/linemerge/LineSequencerTest.cpp, + tests/unit/operation/overlay/OverlayOpUnionTest.cpp, + tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp, + tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp, + tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp, + tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp, + tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cp + p, tests/unit/operation/polygonize/PolygonizeTest.cpp, + tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp, + tests/unit/operation/union/CascadedPolygonUnionTest.cpp, + tests/unit/operation/union/UnaryUnionOpTest.cpp, + tests/unit/operation/valid/IsValidTest.cpp, + tests/unit/operation/valid/ValidClosedRingTest.cpp, + tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp + , tests/unit/precision/GeometryPrecisionReducerTest.cpp, + tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp, + tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp, + tests/unit/simplify/TopologyPreservingSimplifierTest.cpp, + tests/unit/triangulate/DelaunayTest.cpp, + tests/unit/triangulate/VoronoiTest.cpp, + tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp, + tests/unit/triangulate/quadedge/QuadEdgeTest.cpp, + tests/unit/triangulate/quadedge/VertexTest.cpp, + tests/unit/util/UniqueCoordinateArrayFilterTest.cpp, + tests/unit/utility.h: Include buried TUT headers using + + +2017-04-07 Sandro Santilli + + Merge branch 'no-trailing-blanks' of strk/geos into svn-trunk + +2017-04-07 Sandro Santilli + + * Makefile.am: Add "check" rule step to verify no trailing blanks + are found in code + +2017-04-07 Sandro Santilli + + * doc/example.cpp, include/acconfig.h, include/geos.h, + include/geos/algorithm/Angle.h, + include/geos/algorithm/BoundaryNodeRule.h, + include/geos/algorithm/CGAlgorithms.h, + include/geos/algorithm/CentralEndpointIntersector.h, + include/geos/algorithm/Centroid.h, + include/geos/algorithm/CentroidArea.h, + include/geos/algorithm/CentroidLine.h, + include/geos/algorithm/CentroidPoint.h, + include/geos/algorithm/ConvexHull.h, + include/geos/algorithm/HCoordinate.h, + include/geos/algorithm/InteriorPointArea.h, + include/geos/algorithm/InteriorPointLine.h, + include/geos/algorithm/InteriorPointPoint.h, + include/geos/algorithm/LineIntersector.h, + include/geos/algorithm/MCPointInRing.h, + include/geos/algorithm/MinimumDiameter.h, + include/geos/algorithm/NotRepresentableException.h, + include/geos/algorithm/PointInRing.h, + include/geos/algorithm/PointLocator.h, + include/geos/algorithm/RayCrossingCounter.h, + include/geos/algorithm/RobustDeterminant.h, + include/geos/algorithm/SIRtreePointInRing.h, + include/geos/algorithm/SimplePointInRing.h, + include/geos/algorithm/distance/DiscreteHausdorffDistance.h, + include/geos/algorithm/distance/DistanceToPoint.h, + include/geos/algorithm/locate/IndexedPointInAreaLocator.h, + include/geos/algorithm/locate/PointOnGeometryLocator.h, + include/geos/algorithm/locate/SimplePointInAreaLocator.h, + include/geos/geom.h, include/geos/geom/BinaryOp.h, + include/geos/geom/CoordinateArraySequence.h, + include/geos/geom/CoordinateArraySequenceFactory.h, + include/geos/geom/CoordinateFilter.h, + include/geos/geom/CoordinateList.h, + include/geos/geom/CoordinateSequence.h, + include/geos/geom/CoordinateSequenceFactory.h, + include/geos/geom/CoordinateSequenceFilter.h, + include/geos/geom/Dimension.h, include/geos/geom/Envelope.h, + include/geos/geom/GeometryCollection.h, + include/geos/geom/GeometryComponentFilter.h, + include/geos/geom/GeometryFactory.h, + include/geos/geom/GeometryFilter.h, + include/geos/geom/GeometryList.h, + include/geos/geom/IntersectionMatrix.h, + include/geos/geom/LineSegment.h, include/geos/geom/LineString.h, + include/geos/geom/Lineal.h, include/geos/geom/LinearRing.h, + include/geos/geom/Location.h, include/geos/geom/MultiLineString.h, + include/geos/geom/MultiPoint.h, include/geos/geom/MultiPolygon.h, + include/geos/geom/Point.h, include/geos/geom/Polygon.h, + include/geos/geom/Polygonal.h, include/geos/geom/PrecisionModel.h, + include/geos/geom/Puntal.h, include/geos/geom/Triangle.h, + include/geos/geom/prep/AbstractPreparedPolygonContains.h, + include/geos/geom/prep/BasicPreparedGeometry.h, + include/geos/geom/prep/PreparedGeometry.h, + include/geos/geom/prep/PreparedGeometryFactory.h, + include/geos/geom/prep/PreparedLineString.h, + include/geos/geom/prep/PreparedLineStringIntersects.h, + include/geos/geom/prep/PreparedPoint.h, + include/geos/geom/prep/PreparedPolygon.h, + include/geos/geom/prep/PreparedPolygonContains.h, + include/geos/geom/prep/PreparedPolygonContainsProperly.h, + include/geos/geom/prep/PreparedPolygonCovers.h, + include/geos/geom/prep/PreparedPolygonIntersects.h, + include/geos/geom/prep/PreparedPolygonPredicate.h, + include/geos/geom/util/ComponentCoordinateExtracter.h, + include/geos/geom/util/CoordinateOperation.h, + include/geos/geom/util/GeometryCombiner.h, + include/geos/geom/util/GeometryEditor.h, + include/geos/geom/util/GeometryEditorOperation.h, + include/geos/geom/util/GeometryExtracter.h, + include/geos/geom/util/LinearComponentExtracter.h, + include/geos/geom/util/PointExtracter.h, + include/geos/geom/util/PolygonExtracter.h, + include/geos/geom/util/ShortCircuitedGeometryVisitor.h, + include/geos/geom/util/SineStarFactory.h, include/geos/geomPrep.h, + include/geos/geomUtil.h, include/geos/geomgraph.h, + include/geos/geomgraph/Depth.h, + include/geos/geomgraph/DirectedEdge.h, + include/geos/geomgraph/DirectedEdgeStar.h, + include/geos/geomgraph/Edge.h, include/geos/geomgraph/EdgeEnd.h, + include/geos/geomgraph/EdgeEndStar.h, + include/geos/geomgraph/EdgeIntersection.h, + include/geos/geomgraph/EdgeIntersectionList.h, + include/geos/geomgraph/EdgeList.h, + include/geos/geomgraph/EdgeNodingValidator.h, + include/geos/geomgraph/EdgeRing.h, + include/geos/geomgraph/GeometryGraph.h, + include/geos/geomgraph/GraphComponent.h, + include/geos/geomgraph/Label.h, include/geos/geomgraph/Node.h, + include/geos/geomgraph/NodeFactory.h, + include/geos/geomgraph/NodeMap.h, + include/geos/geomgraph/PlanarGraph.h, + include/geos/geomgraph/Position.h, + include/geos/geomgraph/Quadrant.h, + include/geos/geomgraph/TopologyLocation.h, + include/geos/geomgraph/index/EdgeSetIntersector.h, + include/geos/geomgraph/index/MonotoneChain.h, + include/geos/geomgraph/index/MonotoneChainEdge.h, + include/geos/geomgraph/index/MonotoneChainIndexer.h, + include/geos/geomgraph/index/SegmentIntersector.h, + include/geos/geomgraph/index/SimpleEdgeSetIntersector.h, + include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h, + include/geos/geomgraph/index/SimpleSweepLineIntersector.h, + include/geos/geomgraph/index/SweepLineEvent.h, + include/geos/geomgraph/index/SweepLineEventObj.h, + include/geos/geomgraph/index/SweepLineSegment.h, + include/geos/geomgraphindex.h, include/geos/geosAlgorithm.h, + include/geos/index/ItemVisitor.h, + include/geos/index/SpatialIndex.h, + include/geos/index/bintree/Bintree.h, + include/geos/index/bintree/Interval.h, + include/geos/index/bintree/Key.h, + include/geos/index/bintree/Node.h, + include/geos/index/bintree/NodeBase.h, + include/geos/index/bintree/Root.h, + include/geos/index/chain/MonotoneChain.h, + include/geos/index/chain/MonotoneChainBuilder.h, + include/geos/index/chain/MonotoneChainOverlapAction.h, + include/geos/index/chain/MonotoneChainSelectAction.h, + include/geos/index/intervalrtree/IntervalRTreeBranchNode.h, + include/geos/index/intervalrtree/IntervalRTreeLeafNode.h, + include/geos/index/intervalrtree/IntervalRTreeNode.h, + include/geos/index/intervalrtree/SortedPackedIntervalRTree.h, + include/geos/index/quadtree/DoubleBits.h, + include/geos/index/quadtree/IntervalSize.h, + include/geos/index/quadtree/Key.h, + include/geos/index/quadtree/Node.h, + include/geos/index/quadtree/NodeBase.h, + include/geos/index/quadtree/Quadtree.h, + include/geos/index/quadtree/Root.h, + include/geos/index/strtree/AbstractNode.h, + include/geos/index/strtree/AbstractSTRtree.h, + include/geos/index/strtree/Boundable.h, + include/geos/index/strtree/Interval.h, + include/geos/index/strtree/ItemBoundable.h, + include/geos/index/strtree/SIRtree.h, + include/geos/index/strtree/STRtree.h, + include/geos/index/sweepline/SweepLineEvent.h, + include/geos/index/sweepline/SweepLineIndex.h, + include/geos/index/sweepline/SweepLineInterval.h, + include/geos/index/sweepline/SweepLineOverlapAction.h, + include/geos/indexBintree.h, include/geos/indexChain.h, + include/geos/indexIntervalRTree.h, include/geos/indexQuadtree.h, + include/geos/indexStrtree.h, include/geos/indexSweepline.h, + include/geos/inline.h, include/geos/io.h, + include/geos/io/ByteOrderDataInStream.h, + include/geos/io/ByteOrderValues.h, include/geos/io/CLocalizer.h, + include/geos/io/ParseException.h, + include/geos/io/StringTokenizer.h, include/geos/io/WKBConstants.h, + include/geos/io/WKBReader.h, include/geos/io/WKBWriter.h, + include/geos/io/WKTReader.h, include/geos/io/WKTWriter.h, + include/geos/io/Writer.h, + include/geos/linearref/LengthIndexOfPoint.h, + include/geos/linearref/LengthLocationMap.h, + include/geos/linearref/LocationIndexOfLine.h, + include/geos/noding.h, include/geos/noding/BasicSegmentString.h, + include/geos/noding/FastNodingValidator.h, + include/geos/noding/FastSegmentSetIntersectionFinder.h, + include/geos/noding/GeometryNoder.h, + include/geos/noding/IntersectionAdder.h, + include/geos/noding/IntersectionFinderAdder.h, + include/geos/noding/IteratedNoder.h, + include/geos/noding/MCIndexNoder.h, + include/geos/noding/MCIndexSegmentSetMutualIntersector.h, + include/geos/noding/NodableSegmentString.h, + include/geos/noding/NodedSegmentString.h, + include/geos/noding/Noder.h, include/geos/noding/NodingValidator.h, + include/geos/noding/Octant.h, include/geos/noding/ScaledNoder.h, + include/geos/noding/SegmentIntersectionDetector.h, + include/geos/noding/SegmentIntersector.h, + include/geos/noding/SegmentNode.h, + include/geos/noding/SegmentNodeList.h, + include/geos/noding/SegmentPointComparator.h, + include/geos/noding/SegmentSetMutualIntersector.h, + include/geos/noding/SegmentString.h, + include/geos/noding/SegmentStringUtil.h, + include/geos/noding/SimpleNoder.h, + include/geos/noding/SingleInteriorIntersectionFinder.h, + include/geos/noding/SinglePassNoder.h, + include/geos/noding/snapround/HotPixel.h, + include/geos/noding/snapround/MCIndexPointSnapper.h, + include/geos/noding/snapround/MCIndexSnapRounder.h, + include/geos/noding/snapround/SimpleSnapRounder.h, + include/geos/nodingSnapround.h, include/geos/opBuffer.h, + include/geos/opDistance.h, include/geos/opLinemerge.h, + include/geos/opOverlay.h, include/geos/opPolygonize.h, + include/geos/opPredicate.h, include/geos/opRelate.h, + include/geos/opValid.h, include/geos/operation.h, + include/geos/operation/GeometryGraphOperation.h, + include/geos/operation/IsSimpleOp.h, + include/geos/operation/buffer/BufferBuilder.h, + include/geos/operation/buffer/BufferInputLineSimplifier.h, + include/geos/operation/buffer/BufferOp.h, + include/geos/operation/buffer/BufferParameters.h, + include/geos/operation/buffer/BufferSubgraph.h, + include/geos/operation/buffer/OffsetCurveBuilder.h, + include/geos/operation/buffer/OffsetCurveSetBuilder.h, + include/geos/operation/buffer/OffsetSegmentGenerator.h, + include/geos/operation/buffer/OffsetSegmentString.h, + include/geos/operation/buffer/RightmostEdgeFinder.h, + include/geos/operation/buffer/SubgraphDepthLocater.h, + include/geos/operation/distance/ConnectedElementLocationFilter.h, + include/geos/operation/distance/ConnectedElementPointFilter.h, + include/geos/operation/distance/DistanceOp.h, + include/geos/operation/distance/GeometryLocation.h, + include/geos/operation/intersection/Rectangle.h, + include/geos/operation/intersection/RectangleIntersection.h, + include/geos/operation/intersection/RectangleIntersectionBuilder.h, + include/geos/operation/linemerge/EdgeString.h, + include/geos/operation/linemerge/LineMergeDirectedEdge.h, + include/geos/operation/linemerge/LineMergeEdge.h, + include/geos/operation/linemerge/LineMergeGraph.h, + include/geos/operation/linemerge/LineMerger.h, + include/geos/operation/linemerge/LineSequencer.h, + include/geos/operation/overlay/EdgeSetNoder.h, + include/geos/operation/overlay/ElevationMatrix.h, + include/geos/operation/overlay/ElevationMatrixCell.h, + include/geos/operation/overlay/LineBuilder.h, + include/geos/operation/overlay/MaximalEdgeRing.h, + include/geos/operation/overlay/MinimalEdgeRing.h, + include/geos/operation/overlay/OverlayNodeFactory.h, + include/geos/operation/overlay/OverlayOp.h, + include/geos/operation/overlay/PointBuilder.h, + include/geos/operation/overlay/PolygonBuilder.h, + include/geos/operation/overlay/snap/GeometrySnapper.h, + include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h, + include/geos/operation/overlay/snap/SnapOverlayOp.h, + include/geos/operation/overlay/validate/FuzzyPointLocator.h, + include/geos/operation/overlay/validate/OffsetPointGenerator.h, + include/geos/operation/overlay/validate/OverlayResultValidator.h, + include/geos/operation/polygonize/EdgeRing.h, + include/geos/operation/polygonize/PolygonizeDirectedEdge.h, + include/geos/operation/polygonize/PolygonizeEdge.h, + include/geos/operation/polygonize/PolygonizeGraph.h, + include/geos/operation/polygonize/Polygonizer.h, + include/geos/operation/predicate/RectangleContains.h, + include/geos/operation/predicate/RectangleIntersects.h, + include/geos/operation/predicate/SegmentIntersectionTester.h, + include/geos/operation/relate/EdgeEndBuilder.h, + include/geos/operation/relate/EdgeEndBundle.h, + include/geos/operation/relate/EdgeEndBundleStar.h, + include/geos/operation/relate/RelateComputer.h, + include/geos/operation/relate/RelateNode.h, + include/geos/operation/relate/RelateNodeFactory.h, + include/geos/operation/relate/RelateNodeGraph.h, + include/geos/operation/relate/RelateOp.h, + include/geos/operation/sharedpaths/SharedPathsOp.h, + include/geos/operation/union/CascadedPolygonUnion.h, + include/geos/operation/union/CascadedUnion.h, + include/geos/operation/union/GeometryListHolder.h, + include/geos/operation/union/PointGeometryUnion.h, + include/geos/operation/union/UnaryUnionOp.h, + include/geos/operation/valid/ConnectedInteriorTester.h, + include/geos/operation/valid/ConsistentAreaTester.h, + include/geos/operation/valid/IsValidOp.h, + include/geos/operation/valid/QuadtreeNestedRingTester.h, + include/geos/operation/valid/RepeatedPointTester.h, + include/geos/operation/valid/SimpleNestedRingTester.h, + include/geos/operation/valid/SweeplineNestedRingTester.h, + include/geos/operation/valid/TopologyValidationError.h, + include/geos/planargraph.h, + include/geos/planargraph/DirectedEdge.h, + include/geos/planargraph/DirectedEdgeStar.h, + include/geos/planargraph/Edge.h, + include/geos/planargraph/GraphComponent.h, + include/geos/planargraph/Node.h, + include/geos/planargraph/NodeMap.h, + include/geos/planargraph/PlanarGraph.h, + include/geos/planargraph/Subgraph.h, + include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h, + include/geos/platform.h.in, include/geos/precision.h, + include/geos/precision/CommonBits.h, + include/geos/precision/CommonBitsOp.h, + include/geos/precision/CommonBitsRemover.h, + include/geos/precision/EnhancedPrecisionOp.h, + include/geos/precision/GeometryPrecisionReducer.h, + include/geos/precision/PrecisionReducerCoordinateOperation.h, + include/geos/precision/SimpleGeometryPrecisionReducer.h, + include/geos/profiler.h, + include/geos/simplify/DouglasPeuckerLineSimplifier.h, + include/geos/simplify/DouglasPeuckerSimplifier.h, + include/geos/simplify/LineSegmentIndex.h, + include/geos/simplify/TaggedLineSegment.h, + include/geos/simplify/TaggedLineString.h, + include/geos/simplify/TaggedLineStringSimplifier.h, + include/geos/simplify/TaggedLinesSimplifier.h, + include/geos/simplify/TopologyPreservingSimplifier.h, + include/geos/spatialIndex.h, include/geos/timeval.h, + include/geos/triangulate/DelaunayTriangulationBuilder.h, + include/geos/triangulate/IncrementalDelaunayTriangulator.h, + include/geos/triangulate/VoronoiDiagramBuilder.h, + include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h, + include/geos/triangulate/quadedge/LocateFailureException.h, + include/geos/triangulate/quadedge/QuadEdge.h, + include/geos/triangulate/quadedge/QuadEdgeLocator.h, + include/geos/triangulate/quadedge/QuadEdgeSubdivision.h, + include/geos/triangulate/quadedge/TrianglePredicate.h, + include/geos/triangulate/quadedge/TriangleVisitor.h, + include/geos/triangulate/quadedge/Vertex.h, include/geos/unload.h, + include/geos/util.h, include/geos/util/Assert.h, + include/geos/util/AssertionFailedException.h, + include/geos/util/CoordinateArrayFilter.h, + include/geos/util/GEOSException.h, + include/geos/util/GeometricShapeFactory.h, + include/geos/util/IllegalArgumentException.h, + include/geos/util/IllegalStateException.h, + include/geos/util/Interrupt.h, include/geos/util/Machine.h, + include/geos/util/TopologyException.h, + include/geos/util/UniqueCoordinateArrayFilter.h, + include/geos/util/UnsupportedOperationException.h, + include/geos/util/math.h, include/geos/version.h.in, + src/algorithm/Angle.cpp, src/algorithm/BoundaryNodeRule.cpp, + src/algorithm/CGAlgorithms.cpp, src/algorithm/CentroidArea.cpp, + src/algorithm/CentroidLine.cpp, src/algorithm/CentroidPoint.cpp, + src/algorithm/ConvexHull.cpp, src/algorithm/HCoordinate.cpp, + src/algorithm/InteriorPointArea.cpp, + src/algorithm/InteriorPointLine.cpp, + src/algorithm/InteriorPointPoint.cpp, + src/algorithm/MCPointInRing.cpp, + src/algorithm/NotRepresentableException.cpp, + src/algorithm/PointLocator.cpp, + src/algorithm/RayCrossingCounter.cpp, + src/algorithm/RobustDeterminant.cpp, + src/algorithm/SIRtreePointInRing.cpp, + src/algorithm/SimplePointInRing.cpp, + src/algorithm/distance/DiscreteHausdorffDistance.cpp, + src/algorithm/distance/DistanceToPoint.cpp, + src/algorithm/locate/IndexedPointInAreaLocator.cpp, + src/algorithm/locate/PointOnGeometryLocator.cpp, + src/algorithm/locate/SimplePointInAreaLocator.cpp, + src/geom/CoordinateArraySequence.cpp, + src/geom/CoordinateArraySequenceFactory.cpp, + src/geom/CoordinateSequence.cpp, + src/geom/CoordinateSequenceFactory.cpp, src/geom/Dimension.cpp, + src/geom/Envelope.cpp, src/geom/Geometry.cpp, + src/geom/GeometryCollection.cpp, + src/geom/GeometryComponentFilter.cpp, src/geom/GeometryFactory.cpp, + src/geom/GeometryList.cpp, src/geom/IntersectionMatrix.cpp, + src/geom/LineSegment.cpp, src/geom/LineString.cpp, + src/geom/LinearRing.cpp, src/geom/Location.cpp, + src/geom/MultiLineString.cpp, src/geom/MultiPoint.cpp, + src/geom/MultiPolygon.cpp, src/geom/Point.cpp, + src/geom/Polygon.cpp, src/geom/PrecisionModel.cpp, + src/geom/Triangle.cpp, + src/geom/prep/AbstractPreparedPolygonContains.cpp, + src/geom/prep/BasicPreparedGeometry.cpp, + src/geom/prep/PreparedGeometry.cpp, + src/geom/prep/PreparedGeometryFactory.cpp, + src/geom/prep/PreparedLineString.cpp, + src/geom/prep/PreparedLineStringIntersects.cpp, + src/geom/prep/PreparedPoint.cpp, src/geom/prep/PreparedPolygon.cpp, + src/geom/prep/PreparedPolygonContains.cpp, + src/geom/prep/PreparedPolygonContainsProperly.cpp, + src/geom/prep/PreparedPolygonCovers.cpp, + src/geom/prep/PreparedPolygonIntersects.cpp, + src/geom/prep/PreparedPolygonPredicate.cpp, + src/geom/util/ComponentCoordinateExtracter.cpp, + src/geom/util/CoordinateOperation.cpp, + src/geom/util/GeometryCombiner.cpp, + src/geom/util/GeometryEditor.cpp, + src/geom/util/LinearComponentExtracter.cpp, + src/geom/util/PointExtracter.cpp, + src/geom/util/PolygonExtracter.cpp, + src/geom/util/ShortCircuitedGeometryVisitor.cpp, + src/geom/util/SineStarFactory.cpp, src/geomgraph/Depth.cpp, + src/geomgraph/DirectedEdge.cpp, src/geomgraph/DirectedEdgeStar.cpp, + src/geomgraph/Edge.cpp, src/geomgraph/EdgeEnd.cpp, + src/geomgraph/EdgeIntersectionList.cpp, src/geomgraph/EdgeList.cpp, + src/geomgraph/EdgeNodingValidator.cpp, src/geomgraph/EdgeRing.cpp, + src/geomgraph/GeometryGraph.cpp, src/geomgraph/GraphComponent.cpp, + src/geomgraph/Label.cpp, src/geomgraph/Node.cpp, + src/geomgraph/NodeFactory.cpp, src/geomgraph/NodeMap.cpp, + src/geomgraph/PlanarGraph.cpp, src/geomgraph/Position.cpp, + src/geomgraph/Quadrant.cpp, src/geomgraph/TopologyLocation.cpp, + src/geomgraph/index/MonotoneChainEdge.cpp, + src/geomgraph/index/MonotoneChainIndexer.cpp, + src/geomgraph/index/SegmentIntersector.cpp, + src/geomgraph/index/SimpleEdgeSetIntersector.cpp, + src/geomgraph/index/SimpleMCSweepLineIntersector.cpp, + src/geomgraph/index/SimpleSweepLineIntersector.cpp, + src/geomgraph/index/SweepLineEvent.cpp, + src/geomgraph/index/SweepLineSegment.cpp, + src/index/bintree/Bintree.cpp, src/index/bintree/Interval.cpp, + src/index/bintree/Key.cpp, src/index/bintree/Node.cpp, + src/index/bintree/NodeBase.cpp, src/index/bintree/Root.cpp, + src/index/chain/MonotoneChain.cpp, + src/index/chain/MonotoneChainBuilder.cpp, + src/index/chain/MonotoneChainOverlapAction.cpp, + src/index/chain/MonotoneChainSelectAction.cpp, + src/index/intervalrtree/IntervalRTreeBranchNode.cpp, + src/index/intervalrtree/IntervalRTreeLeafNode.cpp, + src/index/intervalrtree/IntervalRTreeNode.cpp, + src/index/intervalrtree/SortedPackedIntervalRTree.cpp, + src/index/quadtree/DoubleBits.cpp, + src/index/quadtree/IntervalSize.cpp, src/index/quadtree/Key.cpp, + src/index/quadtree/Node.cpp, src/index/quadtree/NodeBase.cpp, + src/index/quadtree/Quadtree.cpp, src/index/quadtree/Root.cpp, + src/index/strtree/AbstractNode.cpp, + src/index/strtree/AbstractSTRtree.cpp, + src/index/strtree/Interval.cpp, + src/index/strtree/ItemBoundable.cpp, src/index/strtree/SIRtree.cpp, + src/index/strtree/STRtree.cpp, + src/index/sweepline/SweepLineEvent.cpp, + src/index/sweepline/SweepLineIndex.cpp, + src/index/sweepline/SweepLineInterval.cpp, src/inlines.cpp, + src/io/ByteOrderDataInStream.cpp, src/io/ByteOrderValues.cpp, + src/io/CLocalizer.cpp, src/io/ParseException.cpp, + src/io/StringTokenizer.cpp, src/io/Unload.cpp, + src/io/WKBReader.cpp, src/io/WKBWriter.cpp, src/io/WKTReader.cpp, + src/io/WKTWriter.cpp, src/io/Writer.cpp, + src/linearref/ExtractLineByLocation.cpp, + src/linearref/LengthIndexOfPoint.cpp, + src/linearref/LengthLocationMap.cpp, + src/linearref/LinearLocation.cpp, + src/noding/BasicSegmentString.cpp, + src/noding/FastNodingValidator.cpp, + src/noding/FastSegmentSetIntersectionFinder.cpp, + src/noding/GeometryNoder.cpp, src/noding/IntersectionAdder.cpp, + src/noding/IntersectionFinderAdder.cpp, + src/noding/IteratedNoder.cpp, src/noding/MCIndexNoder.cpp, + src/noding/MCIndexSegmentSetMutualIntersector.cpp, + src/noding/NodedSegmentString.cpp, src/noding/NodingValidator.cpp, + src/noding/Octant.cpp, src/noding/ScaledNoder.cpp, + src/noding/SegmentIntersectionDetector.cpp, + src/noding/SegmentNode.cpp, src/noding/SegmentNodeList.cpp, + src/noding/SegmentString.cpp, src/noding/SegmentStringUtil.cpp, + src/noding/SimpleNoder.cpp, + src/noding/SingleInteriorIntersectionFinder.cpp, + src/noding/snapround/HotPixel.cpp, + src/noding/snapround/MCIndexPointSnapper.cpp, + src/noding/snapround/MCIndexSnapRounder.cpp, + src/noding/snapround/SimpleSnapRounder.cpp, + src/operation/GeometryGraphOperation.cpp, + src/operation/IsSimpleOp.cpp, src/operation/buffer/BufferOp.cpp, + src/operation/buffer/BufferParameters.cpp, + src/operation/buffer/BufferSubgraph.cpp, + src/operation/buffer/OffsetCurveBuilder.cpp, + src/operation/buffer/OffsetCurveSetBuilder.cpp, + src/operation/buffer/RightmostEdgeFinder.cpp, + src/operation/buffer/SubgraphDepthLocater.cpp, + src/operation/distance/ConnectedElementLocationFilter.cpp, + src/operation/distance/ConnectedElementPointFilter.cpp, + src/operation/distance/DistanceOp.cpp, + src/operation/distance/GeometryLocation.cpp, + src/operation/intersection/Rectangle.cpp, + src/operation/intersection/RectangleIntersection.cpp, + src/operation/intersection/RectangleIntersectionBuilder.cpp, + src/operation/linemerge/EdgeString.cpp, + src/operation/linemerge/LineMergeDirectedEdge.cpp, + src/operation/linemerge/LineMergeEdge.cpp, + src/operation/linemerge/LineMergeGraph.cpp, + src/operation/linemerge/LineMerger.cpp, + src/operation/linemerge/LineSequencer.cpp, + src/operation/overlay/EdgeSetNoder.cpp, + src/operation/overlay/ElevationMatrix.cpp, + src/operation/overlay/ElevationMatrixCell.cpp, + src/operation/overlay/LineBuilder.cpp, + src/operation/overlay/MaximalEdgeRing.cpp, + src/operation/overlay/MinimalEdgeRing.cpp, + src/operation/overlay/OverlayNodeFactory.cpp, + src/operation/overlay/PointBuilder.cpp, + src/operation/overlay/PolygonBuilder.cpp, + src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp, + src/operation/overlay/snap/SnapOverlayOp.cpp, + src/operation/overlay/validate/FuzzyPointLocator.cpp, + src/operation/overlay/validate/OffsetPointGenerator.cpp, + src/operation/overlay/validate/OverlayResultValidator.cpp, + src/operation/polygonize/EdgeRing.cpp, + src/operation/polygonize/PolygonizeDirectedEdge.cpp, + src/operation/polygonize/PolygonizeEdge.cpp, + src/operation/polygonize/PolygonizeGraph.cpp, + src/operation/polygonize/Polygonizer.cpp, + src/operation/predicate/RectangleContains.cpp, + src/operation/predicate/RectangleIntersects.cpp, + src/operation/predicate/SegmentIntersectionTester.cpp, + src/operation/relate/EdgeEndBuilder.cpp, + src/operation/relate/EdgeEndBundle.cpp, + src/operation/relate/EdgeEndBundleStar.cpp, + src/operation/relate/RelateComputer.cpp, + src/operation/relate/RelateNode.cpp, + src/operation/relate/RelateNodeFactory.cpp, + src/operation/relate/RelateNodeGraph.cpp, + src/operation/relate/RelateOp.cpp, + src/operation/sharedpaths/SharedPathsOp.cpp, + src/operation/union/CascadedPolygonUnion.cpp, + src/operation/union/CascadedUnion.cpp, + src/operation/union/PointGeometryUnion.cpp, + src/operation/union/UnaryUnionOp.cpp, + src/operation/valid/ConnectedInteriorTester.cpp, + src/operation/valid/ConsistentAreaTester.cpp, + src/operation/valid/IndexedNestedRingTester.cpp, + src/operation/valid/IndexedNestedRingTester.h, + src/operation/valid/IsValidOp.cpp, + src/operation/valid/QuadtreeNestedRingTester.cpp, + src/operation/valid/RepeatedPointTester.cpp, + src/operation/valid/SimpleNestedRingTester.cpp, + src/operation/valid/SweeplineNestedRingTester.cpp, + src/operation/valid/TopologyValidationError.cpp, + src/planargraph/DirectedEdge.cpp, + src/planargraph/DirectedEdgeStar.cpp, src/planargraph/Edge.cpp, + src/planargraph/Node.cpp, src/planargraph/NodeMap.cpp, + src/planargraph/PlanarGraph.cpp, src/planargraph/Subgraph.cpp, + src/planargraph/algorithm/ConnectedSubgraphFinder.cpp, + src/precision/CommonBits.cpp, src/precision/CommonBitsOp.cpp, + src/precision/CommonBitsRemover.cpp, + src/precision/EnhancedPrecisionOp.cpp, + src/precision/GeometryPrecisionReducer.cpp, + src/precision/PrecisionReducerCoordinateOperation.cpp, + src/precision/SimpleGeometryPrecisionReducer.cpp, + src/simplify/DouglasPeuckerLineSimplifier.cpp, + src/simplify/LineSegmentIndex.cpp, + src/simplify/TaggedLineSegment.cpp, + src/simplify/TaggedLineString.cpp, + src/simplify/TaggedLineStringSimplifier.cpp, + src/simplify/TaggedLinesSimplifier.cpp, + src/simplify/TopologyPreservingSimplifier.cpp, + src/triangulate/DelaunayTriangulationBuilder.cpp, + src/triangulate/IncrementalDelaunayTriangulator.cpp, + src/triangulate/VoronoiDiagramBuilder.cpp, + src/triangulate/quadedge/LastFoundQuadEdgeLocator.cpp, + src/triangulate/quadedge/LocateFailureException.cpp, + src/triangulate/quadedge/QuadEdge.cpp, + src/triangulate/quadedge/QuadEdgeLocator.cpp, + src/triangulate/quadedge/QuadEdgeSubdivision.cpp, + src/triangulate/quadedge/TrianglePredicate.cpp, + src/triangulate/quadedge/TriangleVisitor.cpp, + src/triangulate/quadedge/Vertex.cpp, src/util/Assert.cpp, + src/util/GeometricShapeFactory.cpp, src/util/Interrupt.cpp, + src/util/Profiler.cpp, src/util/math.cpp, + tests/bigtest/GeometryTestFactory.cpp, + tests/bigtest/TestSweepLineSpeed.cpp, tests/bigtest/bigtest.h, + tests/bigtest/bug234.cpp, tests/perf/ClassSizes.cpp, + tests/perf/operation/buffer/IteratedBufferStressTest.cpp, + tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp, + tests/unit/algorithm/AngleTest.cpp, + tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp, + tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp, + tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp, + tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp, + tests/unit/algorithm/ConvexHullTest.cpp, + tests/unit/algorithm/InteriorPointAreaTest.cpp, + tests/unit/algorithm/PointLocatorTest.cpp, + tests/unit/algorithm/RobustLineIntersectionTest.cpp, + tests/unit/algorithm/RobustLineIntersectorTest.cpp, + tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp, + tests/unit/capi/GEOSBufferTest.cpp, + tests/unit/capi/GEOSClipByRectTest.cpp, + tests/unit/capi/GEOSContainsTest.cpp, + tests/unit/capi/GEOSCoordSeqTest.cpp, + tests/unit/capi/GEOSDelaunayTriangulationTest.cpp, + tests/unit/capi/GEOSDistanceTest.cpp, + tests/unit/capi/GEOSEqualsTest.cpp, + tests/unit/capi/GEOSGeomFromWKBTest.cpp, + tests/unit/capi/GEOSGeomToWKTTest.cpp, + tests/unit/capi/GEOSGeom_create.cpp, + tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp, + tests/unit/capi/GEOSGeom_setPrecisionTest.cpp, + tests/unit/capi/GEOSGetCentroidTest.cpp, + tests/unit/capi/GEOSInterruptTest.cpp, + tests/unit/capi/GEOSIntersectsTest.cpp, + tests/unit/capi/GEOSNearestPointsTest.cpp, + tests/unit/capi/GEOSNodeTest.cpp, + tests/unit/capi/GEOSOffsetCurveTest.cpp, + tests/unit/capi/GEOSOrientationIndex.cpp, + tests/unit/capi/GEOSPointOnSurfaceTest.cpp, + tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp, + tests/unit/capi/GEOSPreparedGeometryTest.cpp, + tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp, + tests/unit/capi/GEOSRelatePatternMatchTest.cpp, + tests/unit/capi/GEOSSharedPathsTest.cpp, + tests/unit/capi/GEOSSimplifyTest.cpp, + tests/unit/capi/GEOSSnapTest.cpp, + tests/unit/capi/GEOSUnaryUnionTest.cpp, + tests/unit/capi/GEOSUserDataTest.cpp, + tests/unit/capi/GEOSVoronoiDiagramTest.cpp, + tests/unit/capi/GEOSWithinTest.cpp, + tests/unit/capi/GEOSisValidDetailTest.cpp, + tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp, + tests/unit/geom/CoordinateArraySequenceTest.cpp, + tests/unit/geom/CoordinateListTest.cpp, + tests/unit/geom/CoordinateTest.cpp, + tests/unit/geom/DimensionTest.cpp, + tests/unit/geom/EnvelopeTest.cpp, + tests/unit/geom/Geometry/clone.cpp, + tests/unit/geom/Geometry/coversTest.cpp, + tests/unit/geom/Geometry/equalsTest.cpp, + tests/unit/geom/Geometry/isRectangleTest.cpp, + tests/unit/geom/GeometryFactoryTest.cpp, + tests/unit/geom/IntersectionMatrixTest.cpp, + tests/unit/geom/LineSegmentTest.cpp, + tests/unit/geom/LineStringTest.cpp, + tests/unit/geom/LinearRingTest.cpp, + tests/unit/geom/LocationTest.cpp, + tests/unit/geom/MultiLineStringTest.cpp, + tests/unit/geom/MultiPointTest.cpp, + tests/unit/geom/MultiPolygonTest.cpp, + tests/unit/geom/PointTest.cpp, + tests/unit/geom/PrecisionModelTest.cpp, + tests/unit/geom/TriangleTest.cpp, + tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp, + tests/unit/geom/util/GeometryExtracterTest.cpp, + tests/unit/geos_unit.cpp, + tests/unit/index/quadtree/DoubleBitsTest.cpp, + tests/unit/io/ByteOrderValuesTest.cpp, + tests/unit/io/WKBReaderTest.cpp, tests/unit/io/WKBWriterTest.cpp, + tests/unit/io/WKTReaderTest.cpp, tests/unit/io/WKTWriterTest.cpp, + tests/unit/io/WriterTest.cpp, + tests/unit/linearref/LengthIndexedLineTest.cpp, + tests/unit/noding/BasicSegmentStringTest.cpp, + tests/unit/noding/NodedSegmentStringTest.cpp, + tests/unit/noding/OrientedCoordinateArray.cpp, + tests/unit/noding/SegmentNodeTest.cpp, + tests/unit/noding/SegmentPointComparatorTest.cpp, + tests/unit/noding/snapround/HotPixelTest.cpp, + tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp, + tests/unit/operation/IsSimpleOpTest.cpp, + tests/unit/operation/buffer/BufferOpTest.cpp, + tests/unit/operation/buffer/BufferParametersTest.cpp, + tests/unit/operation/distance/DistanceOpTest.cpp, + tests/unit/operation/intersection/RectangleIntersectionTest.cpp, + tests/unit/operation/linemerge/LineMergerTest.cpp, + tests/unit/operation/linemerge/LineSequencerTest.cpp, + tests/unit/operation/overlay/OverlayOpUnionTest.cpp, + tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp, + tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp, + tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp, + tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp, + tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cp + p, tests/unit/operation/polygonize/PolygonizeTest.cpp, + tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp, + tests/unit/operation/union/CascadedPolygonUnionTest.cpp, + tests/unit/operation/union/UnaryUnionOpTest.cpp, + tests/unit/operation/valid/IsValidTest.cpp, + tests/unit/operation/valid/ValidClosedRingTest.cpp, + tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp + , tests/unit/precision/GeometryPrecisionReducerTest.cpp, + tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp, + tests/unit/simplify/TopologyPreservingSimplifierTest.cpp, + tests/unit/triangulate/DelaunayTest.cpp, + tests/unit/triangulate/VoronoiTest.cpp, + tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp, + tests/unit/triangulate/quadedge/QuadEdgeTest.cpp, + tests/unit/triangulate/quadedge/VertexTest.cpp, + tests/unit/util/UniqueCoordinateArrayFilterTest.cpp, + tests/unit/utility.h, tests/unit2/geom/PointTest.cpp, + tests/xmltester/BufferResultMatcher.cpp, + tests/xmltester/BufferResultMatcher.h, tests/xmltester/CTS.cpp, + tests/xmltester/SimpleWKTTester.cpp, + tests/xmltester/SingleSidedBufferResultMatcher.cpp, + tests/xmltester/SingleSidedBufferResultMatcher.h, + tests/xmltester/Stackwalker.cpp, tests/xmltester/Stackwalker.h, + tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Remove + trailing blanks in internal geos code + +2017-04-07 Mateusz Loskot + + * CMakeLists.txt, autogen.bat, capi/CMakeLists.txt, + tools/geos_revision_cmake.h.in: [CMake] Simplify generation of + geos_revision.h Remove tools/geos_revision_cmake.h.in as no longer + required - geos_revision.h is generated on-fly. Add geos_revision + target set as dependency of geos_c target. Fix autogen.bat to + generate string instead of integer constant. + +2017-04-07 Mateusz Loskot -2017-07-25 Sandro Santilli + * .travis.yml: [travis] Build only svn-trunk and svn-3.{5|6} + branches [ci skip] - * NEWS, configure.ac: Set release date for 3.6.2 +2017-04-06 Mateusz Loskot -2017-07-25 Sandro Santilli + * README.md: [README] Fix branches vs URLs mix-up [ci skip] - * HOWTO_RELEASE: Indexed steps, configure.ac name fix +2017-04-06 Daniel Baston -2017-07-19 Sandro Santilli + * src/operation/distance/FacetSequence.cpp: Fix invalid read in + FacetSequence - * tests/xmltester/Makefile.am, tests/xmltester/XMLTester.cpp, - tests/xmltester/XMLTester.h, tests/xmltester/tests/general/MISSING, - tests/xmltester/tests/general/TestPreparedPointPredicate.xml, - tests/xmltester/tests/general/TestPreparedPolygonPredicate.xml, - tests/xmltester/tests/general/TestPreparedPredicatesWithGeometryCol - lection.xml: Add support for testing prepared geometries operations - in XMLTester Add 3 more tests from JTS testsuite now that they can be run See - #694 for 3.6 branch +2017-04-06 Mateusz Loskot -2017-07-14 Sandro Santilli + * README.md: [README] Switch Travis CI and AppVeyor URLs to + /OSGeo/geos Add svn-trunk to CI build status table. [ci skip] - * tests/xmltester/XMLTester.cpp: Use overlay specific result checker The check just supports some snap-distance based tolerance for exact - match (in addition to topology equality which is needed for some JTS - tests to pass) Closes #837 (backport of tolerant test checker to 3.6 branch) +2017-04-06 Mateusz Loskot -2017-07-11 Sandro Santilli + * tests/unit/tut/tut.hpp, tests/unit/tut/tut_assert.hpp, + tests/unit/tut/tut_config.hpp, + tests/unit/tut/tut_console_reporter.hpp, + tests/unit/tut/tut_cppunit_reporter.hpp, + tests/unit/tut/tut_exception.hpp, tests/unit/tut/tut_fpt.hpp, + tests/unit/tut/tut_macros.hpp, tests/unit/tut/tut_main.hpp, + tests/unit/tut/tut_posix.hpp, tests/unit/tut/tut_reporter.hpp, + tests/unit/tut/tut_restartable.hpp, tests/unit/tut/tut_result.hpp, + tests/unit/tut/tut_runner.hpp, tests/unit/tut/tut_xml_reporter.hpp: + Update TUT to latest release 2016-12-19. Source: + https://github.com/mrzechonek/tut-framework/releases/tag/2016-12-19 + Fixes #639 Fixes #804 - * NEWS, include/geos/operation/union/CascadedPolygonUnion.h, - include/geos/operation/union/GeometryListHolder.h, - src/operation/union/CascadedPolygonUnion.cpp, - tests/xmltester/Makefile.am, - tests/xmltester/tests/ticket/bug837.xml: UnaryUnion: Drop assumption - about union not moving vertices The assumption resulted in invalid geometries being output by - CascadedPolygonUnion intermediary results and then fed as input by - further union calls, which in turn would fail on first robustness - issue. Fixes #837 in 3.6 branch Includes automated XML test +2017-04-05 Sandro Santilli -2017-07-14 Sandro Santilli + * README.md: Fix markdown table (hopefully) - * .editorconfig: Institutionalize that CascadedUnion directories - uses spaces indent +2017-04-05 Sandro Santilli -2017-04-24 Mateusz Łoskot + * README.md: Add winnie badge, move dronie to the left - * tests/xmltester/XMLTester.cpp: Avoid use of internal - geos/util/math.h Copy java_math_round geos/util/math.cpp to xmltester.cpp. Declared - functions are internal to the library and not included in GEOS - shared library exports. Fixes #831 +2017-04-05 Sandro Santilli -2017-04-18 Mateusz Łoskot + * README.md: Use svg badge for travis - * nmake.opt: Add NMAKE_VER from VS 2017 Version 15.1 +2017-04-05 Sandro Santilli -2017-04-15 Sandro Santilli + * README.md: Quotes around otherwise ambiguous (underline + containing) name git-svn-id: http://svn.osgeo.org/geos/trunk@4397 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * NEWS: Add NEWS item about WKTReader leak fixes +2017-04-02 Sandro Santilli -2017-04-12 Kurt Schwehr + * capi/geos_c.cpp: Remove unused include git-svn-id: + http://svn.osgeo.org/geos/trunk@4395 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * src/io/WKTReader.cpp, tests/unit/io/WKTReaderTest.cpp: Fix leaks - in WKT parser Cleanup if failing to parse the WKT MultiLineString, MultiPolygon, - and GeometryCollection string. Wrap parsing in try blocks. Catch any exception, cleanup, and - rethrow. Closes #830 Includes testcase Signed-off-by: Sandro Santilli +2017-04-01 Sandro Santilli -2017-04-12 Sandro Santilli + * tools/geos_revision_cmake.h.in: Fix cmake build git-svn-id: + http://svn.osgeo.org/geos/trunk@4394 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * README.md: Update drone build badge url +2017-04-01 Sandro Santilli -2017-04-11 Sandro Santilli + * tools/repo_revision.sh: Use git describe as revision code if SVN + metadata is not available Fixes #794 git-svn-id: + http://svn.osgeo.org/geos/trunk@4393 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * tests/xmltester/XMLTester.cpp: Fixed compile error in Microsoft - VS2010 Patch by sunxunfeng Closes #801 in 3.6 branch +2017-04-01 Sandro Santilli -2017-04-10 Mateusz Loskot + * capi/geos_ts_c.cpp, tools/repo_revision.sh: Turn GEOS_REVISION + value into a string Propedeutic to optionally use an hash in there, + or other non-SVN identifiers (see #794) git-svn-id: + http://svn.osgeo.org/geos/trunk@4392 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * tests/unit/capi/GEOSSTRtreeTest.cpp: Add explicit cast of sqrt - arguments to double Fixes parts of #801 +2017-04-01 Sandro Santilli -2017-04-10 Mateusz Loskot + * tools/repo_revision.sh: Remove trailing blanks git-svn-id: + http://svn.osgeo.org/geos/trunk@4391 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * tools/CMakeLists.txt: [CMake] Fix geos-config is not installed on - MinGW/MSYS builds Closes #706 +2017-03-31 Sandro Santilli -2017-04-10 Sandro Santilli + * CMakeLists.txt, autogen.bat, capi/geos_ts_c.cpp, + tools/geos_revision_cmake.h.in, tools/geos_svn_revision_cmake.h.in, + tools/repo_revision.sh: Rename GEOS_SVN_REVISION macro and cmake + script to GEOS_REVISION ... even if it's still just the SVN + revision that it contains See #794 git-svn-id: + http://svn.osgeo.org/geos/trunk@4390 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * TODO: Triangulation API was ported +2017-03-31 Sandro Santilli -2017-04-08 Sandro Santilli + * CMakeLists.txt, Makefile.am, tools/Makefile.am, + tools/{svn_repo_revision.sh => repo_revision.sh}: Rename + svn_repo_revision.sh to repo_revision.sh .. even if it still only + extracts the *SVN* revision (also from git log). See #794 + git-svn-id: http://svn.osgeo.org/geos/trunk@4389 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * HOWTO_RELEASE: Update release howto for SVN -> GIT move Closes #825 +2017-03-31 Sandro Santilli -2017-04-08 Sandro Santilli + * .gitignore, CMakeLists.txt, Makefile.am, autogen.bat, + capi/geos_ts_c.cpp, tools/svn_repo_revision.sh: Rename + geos_svn_revision.h to geos_revision.h See #794 git-svn-id: + http://svn.osgeo.org/geos/trunk@4388 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * tests/unit/Makefile.am: Distribute all of the new TUT Fixes #824 +2017-03-30 Mateusz Loskot -2017-04-06 Mateusz Loskot + * tests/unit/.editorconfig: Remove tests/unit/.editorconfig as + useless. The tests use mixture of whitespaces and indentation + rules. git-svn-id: http://svn.osgeo.org/geos/trunk@4387 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * README.md: [README] Fix branches vs URLs mix-up [ci skip] +2017-03-28 Sandro Santilli -2017-04-06 Mateusz Loskot + * tests/unit/.editorconfig: Use spaces under tests/unit git-svn-id: + http://svn.osgeo.org/geos/trunk@4386 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-28 Mateusz Loskot + + * CMakeLists.txt: CMake: Use CMAKE_CXX_STANDARD to require C++98 + git-svn-id: http://svn.osgeo.org/geos/trunk@4384 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-28 Mateusz Loskot + + * .travis.yml: Travis CI: Add ppa:george-edison55/precise-backports + with CMake 3+ git-svn-id: http://svn.osgeo.org/geos/trunk@4383 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-28 Mateusz Loskot + + * .editorconfig: Add indent_size = 2 for .yml files [ci skip] + git-svn-id: http://svn.osgeo.org/geos/trunk@4382 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-28 Mateusz Loskot + + * CMakeLists.txt: CMake: Bump cmake_minimum_required to 3.0.0 + Closes #817 git-svn-id: http://svn.osgeo.org/geos/trunk@4380 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-28 Mateusz Loskot + + * build.bat: Remove build.bat script There is no point in + maintaining such specific build script while there are better, more + flexible tools for CMake users who wish to build/test/develop GEOS. + git-svn-id: http://svn.osgeo.org/geos/trunk@4379 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-27 Mateusz Loskot + + * CMakeLists.txt, tests/CMakeLists.txt, tests/unit2/CMakeLists.txt, + tests/unit2/geom/PointTest.cpp, + tests/unit2/geos_include_all_headers.cpp: First stab at tests/uni2 + with Catch-based tests Add Point test. Add CMake configuration. + Build unit2 tests only if GEOS_ENABLE_TESTS_UNIT2_ONLY=ON. Add + automatic download of Catch header. Require C++11 to build + Catch-based tests git-svn-id: http://svn.osgeo.org/geos/trunk@4378 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-27 Mateusz Loskot + + * .editorconfig: Add CMake files editing config git-svn-id: + http://svn.osgeo.org/geos/trunk@4377 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * tests/unit/geom/Geometry/touchesTest.cpp: Adjust test comment + git-svn-id: http://svn.osgeo.org/geos/trunk@4376 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * tests/unit/geom/Geometry/touchesTest.cpp: Add disjoint and + intersects checks to 2-segment test added in r4371 git-svn-id: + http://svn.osgeo.org/geos/trunk@4375 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * tests/unit/geom/Geometry/touchesTest.cpp: Add test of two almost + and touching segments git-svn-id: + http://svn.osgeo.org/geos/trunk@4371 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * CMakeLists.txt: Enable target debugging for CMake Tools in Visual + Studio Code CMake Tools at + https://github.com/vector-of-bool/vscode-cmake-tools git-svn-id: + http://svn.osgeo.org/geos/trunk@4370 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * src/operation/distance/IndexedFacetDistance.cpp: Avoid anonymous + class types It is not C and compatibility with C is not required. + git-svn-id: http://svn.osgeo.org/geos/trunk@4369 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * .gitignore: .gitignore: add CMake build and Visual Studio Code + directories. git-svn-id: http://svn.osgeo.org/geos/trunk@4368 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-26 Mateusz Loskot + + * : Ignore CMake build and Visual Studio Code directories. + git-svn-id: http://svn.osgeo.org/geos/trunk@4367 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-24 Mateusz Loskot + + * src/algorithm/RobustDeterminant.cpp: Update URL to "Exact sign of + determinant computation" by Olivier Devillers et al. [ci skip] + git-svn-id: http://svn.osgeo.org/geos/trunk@4366 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-23 Mateusz Loskot + + * appveyor.yml: AppVeyor: Add x86 build using NMake git-svn-id: + http://svn.osgeo.org/geos/trunk@4365 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-23 Mateusz Loskot + + * autogen.bat: Add step generating geos_svn_revision.h template with + revision 0 Simplifies CI build steps. [ci skip] git-svn-id: + http://svn.osgeo.org/geos/trunk@4364 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * appveyor.yml: AppVeyor: bring back NMake x64 (really) git-svn-id: + http://svn.osgeo.org/geos/trunk@4362 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * src/geom/util/GeometryEditor.cpp, + src/geom/util/GeometryTransformer.cpp, + src/geom/util/ShortCircuitedGeometryVisitor.cpp: Fix warning about + signed/unsigned int mismatch. git-svn-id: + http://svn.osgeo.org/geos/trunk@4361 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * appveyor.yml: AppVeyor: bring back NMake x64 git-svn-id: + http://svn.osgeo.org/geos/trunk@4360 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * CMakeLists.txt: Copy .editorconfig to build directory next to VS + IDE .sln. git-svn-id: http://svn.osgeo.org/geos/trunk@4359 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * appveyor.yml: AppVeyor: disable x64 for NMake (temp) git-svn-id: + http://svn.osgeo.org/geos/trunk@4358 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * README.md: Update AppVeyor URL [ci skip] git-svn-id: + http://svn.osgeo.org/geos/trunk@4357 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * src/algorithm/LineIntersector.cpp: Fix warnings about variables + aliasing within scope git-svn-id: + http://svn.osgeo.org/geos/trunk@4356 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * appveyor.yml: AppVeyor: Add platform x86 for NMake git-svn-id: + http://svn.osgeo.org/geos/trunk@4355 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-21 Mateusz Loskot + + * appveyor.yml: AppVeyor: Remove -DGEOS_ENABLE_TESTS=OFF + git-svn-id: http://svn.osgeo.org/geos/trunk@4354 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * README.md: [README] Switch Travis CI and AppVeyor URLs to - /OSGeo/geos Add svn-trunk to CI build status table. [ci skip] +2017-03-21 Mateusz Loskot -2017-04-06 Mateusz Loskot + * appveyor.yml: AppVeyor: Add NMake Makefiles-based build + git-svn-id: http://svn.osgeo.org/geos/trunk@4353 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * tests/unit/tut/tut.hpp, tests/unit/tut/tut_assert.hpp, - tests/unit/tut/tut_config.hpp, - tests/unit/tut/tut_console_reporter.hpp, - tests/unit/tut/tut_cppunit_reporter.hpp, - tests/unit/tut/tut_exception.hpp, tests/unit/tut/tut_fpt.hpp, - tests/unit/tut/tut_macros.hpp, tests/unit/tut/tut_main.hpp, - tests/unit/tut/tut_posix.hpp, tests/unit/tut/tut_reporter.hpp, - tests/unit/tut/tut_restartable.hpp, tests/unit/tut/tut_result.hpp, - tests/unit/tut/tut_runner.hpp, tests/unit/tut/tut_xml_reporter.hpp: - Update TUT to latest release 2016-12-19. Source: - https://github.com/mrzechonek/tut-framework/releases/tag/2016-12-19 Fixes #639 Fixes #804 +2017-03-21 Mateusz Loskot -2017-04-05 Sandro Santilli + * appveyor.yml: AppVeyor: Add missing ps1 color git-svn-id: + http://svn.osgeo.org/geos/trunk@4352 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * README.md: Remove alt tag (confuses github) +2017-03-21 Mateusz Loskot -2017-04-05 Sandro Santilli + * appveyor.yml: AppVeyor: Remove -DDGEOS_BUILD_SHARED=OFF as + currently tests link against shared git-svn-id: + http://svn.osgeo.org/geos/trunk@4351 + 5242fede-7e19-0410-aef8-94bd7d2200fb - * README.md: Fix markdown table +2017-03-20 Mateusz Loskot -2017-04-05 Sandro Santilli + * include/geos/geom/Lineal.h, include/geos/geom/Polygonal.h, + include/geos/geom/Puntal.h: Disable false warning C4589 : + Constructor of abstract class A ignores initializer for virtual base + class B (Details at - * README.md: Add winnie badge, move Dronie to the left + https://connect.microsoft.com/VisualStudio/feedback/details/1581706/false-warning-c4589-constructor-of-abstract-class-class2-ignores-initializer-for-virtual-base-class-class1) git-svn-id: http://svn.osgeo.org/geos/trunk@4350 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-04-05 Sandro Santilli +2017-03-20 Mateusz Loskot - * README.md: Fix build badge urls, drop drone + * appveyor.yml: AppVeyor: Replace build step with build_script + git-svn-id: http://svn.osgeo.org/geos/trunk@4349 + 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-04-05 Sandro Santilli +2017-03-20 Mateusz Loskot - * README.md: Quotes in markdown git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4398 + * appveyor.yml: AppVeyor: Fix cmake command line git-svn-id: + http://svn.osgeo.org/geos/trunk@4348 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-04-04 Sandro Santilli +2017-03-20 Mateusz Loskot - * .gitignore, CMakeLists.txt, Makefile.am, autogen.bat, - capi/geos_ts_c.cpp, tools/Makefile.am, - tools/geos_revision_cmake.h.in, tools/geos_svn_revision_cmake.h.in, - tools/{svn_repo_revision.sh => repo_revision.sh}: Add support for - GIT only revision references Backports revisions 4388-4396 from trunk Fixes #794 for 3.6 branch git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4396 + * appveyor.yml: AppVeyor: Fix platform names git-svn-id: + http://svn.osgeo.org/geos/trunk@4347 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-28 Mateusz Loskot +2017-03-20 Mateusz Loskot - * .editorconfig, .travis.yml, CMakeLists.txt: Merged revision(s) - 4382-4384 from trunk: Add indent_size = 2 for .yml files ........ - Travis CI: Add ppa:george-edison55/precise-backports with CMake 3+ - ........ CMake: Use CMAKE_CXX_STANDARD to require C++98 ........ git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4385 + * include/geos/index/strtree/AbstractSTRtree.h, + src/algorithm/CGAlgorithms.cpp, src/algorithm/LineIntersector.cpp: + Fix warnings about variables aliasing within scope git-svn-id: + http://svn.osgeo.org/geos/trunk@4346 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-28 Mateusz Loskot +2017-03-20 Mateusz Loskot - * CMakeLists.txt, NEWS: Merged revision(s) 4380 from trunk: CMake: - Bump cmake_minimum_required to 3.0.0 Closes #817 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4381 + * include/geos/util/GEOSException.h: Disable warning C4275: + non-DLL-interface std::exception used as base for DLL-interface + GEOSException git-svn-id: http://svn.osgeo.org/geos/trunk@4345 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-26 Mateusz Loskot +2017-03-20 Mateusz Loskot - * NEWS: Update NEWS with r4372 and r4373: - AppVeyor CI build added (#813) - Clean up numerous MSVC warnings, notably C4275 and C4589 (#814) git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4374 + * src/geom/IntersectionMatrix.cpp: Fix warning: conversion from + size_t to int git-svn-id: http://svn.osgeo.org/geos/trunk@4344 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-26 Mateusz Loskot +2017-03-20 Mateusz Loskot - * autogen.bat, include/geos/geom/Lineal.h, - include/geos/geom/Polygonal.h, include/geos/geom/Puntal.h, - include/geos/index/strtree/AbstractSTRtree.h, - include/geos/util/GEOSException.h, src/algorithm/CGAlgorithms.cpp, - src/algorithm/LineIntersector.cpp, src/geom/IntersectionMatrix.cpp: - Merged revision(s) 4344-4346, 4350, 4356, 4364 from trunk: Fix - warning: conversion from size_t to int ........ Disable warning - C4275: non-DLL-interface std::exception used as base for - DLL-interface GEOSException ........ Fix warnings about variables - aliasing within scope ........ Disable false warning C4589 : - Constructor of abstract class A ignores initializer for virtual base - class B (Details at + * appveyor.yml: AppVeyor: Fixing the current failures - Disable + running tests - Disable shared targets - Build all in Release + configuration git-svn-id: http://svn.osgeo.org/geos/trunk@4343 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-03-17 Mateusz Loskot - https://connect.microsoft.com/VisualStudio/feedback/details/1581706/false-warning-c4589-constructor-of-abstract-class-class2-ignores-initializer-for-virtual-base-class-class1)........ Fix warnings about variables aliasing within scope - ........ Add step generating geos_svn_revision.h template with - revision 0 Simplifies CI build steps. ........ git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4373 + * src/Makefile.vc: Add missing .cpp files git-svn-id: + http://svn.osgeo.org/geos/trunk@4342 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-26 Mateusz Loskot +2017-03-17 Mateusz Loskot - * appveyor.yml: Merged revision(s) 4343, 4347-4349, 4351-4355, 4358, - 4360, 4362, 4365 from trunk: AppVeyor: Sync CI builds configuration - with trunk git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4372 + * nmake.opt: Add NMAKE version from VS2017 RTM git-svn-id: + http://svn.osgeo.org/geos/trunk@4340 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-21 Mateusz Loskot +2017-02-16 Mateusz Loskot - * appveyor.yml: AppVeyor: Restore and fix build configuration git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4363 + * README.md: Remove CI builds on drone.io The hosted version of + Drone has closed down (https://archive.drone.io/). git-svn-id: + http://svn.osgeo.org/geos/trunk@4339 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-03-17 Mateusz Loskot +2017-02-15 Mateusz Loskot - * nmake.opt: Merged revision(s) 4340 from trunk: Add NMAKE version - from VS2017 RTM git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4341 + * tests/unit/geom/PolygonTest.cpp: Add basic test of convex + Polygon::buffer(0) result. git-svn-id: + http://svn.osgeo.org/geos/trunk@4338 5242fede-7e19-0410-aef8-94bd7d2200fb 2017-02-14 Sandro Santilli - * NEWS, include/geos/geomgraph/DirectedEdge.h, + * include/geos/geomgraph/DirectedEdge.h, include/geos/geomgraph/DirectedEdgeStar.h, src/geomgraph/DirectedEdge.cpp, src/geomgraph/DirectedEdgeStar.cpp: - Fix overloaded virtual print in DirectedEdge*. - Make print() method of child classes also const - Make getDepthDelta() const - Add virtual. For C++11 and newer this eventually should be - overload. e.g. geos::geomgraph::DirectedEdge::print' hides overloaded virtual - function [-Woverloaded-virtual] Patch by Kurt Schwehr Closes #812 in 3.6 branch - (for 3.6.2) git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4337 + Fix overloaded virtual print in DirectedEdge*. - Make print() + method of child classes also const - Make getDepthDelta() const - + Add virtual. For C++11 and newer this eventually should be + overload. e.g. geos::geomgraph::DirectedEdge::print' hides + overloaded virtual function [-Woverloaded-virtual] Patch by Kurt + Schwehr Fixes #812 in trunk (3.7.0) + git-svn-id: http://svn.osgeo.org/geos/trunk@4336 5242fede-7e19-0410-aef8-94bd7d2200fb 2017-02-14 Sandro Santilli - * NEWS, src/algorithm/LineIntersector.cpp, + * src/algorithm/LineIntersector.cpp, src/operation/overlay/OverlayOp.cpp: Protect from computations - against NaN numbers Fixes an unhandled exception: 0xC0000090: Floating-point invalid - operation. Closes #811 for 3.6 branch - thanks sunxunfeng git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4335 + against NaN numbers Fixes an unhandled exception: 0xC0000090: + Floating-point invalid operation. Closes #811 - thanks sunxunfeng + git-svn-id: http://svn.osgeo.org/geos/trunk@4334 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2017-02-14 Sandro Santilli + + * src/algorithm/LineIntersector.cpp, + src/operation/overlay/OverlayOp.cpp: Remove trailing blanks + git-svn-id: http://svn.osgeo.org/geos/trunk@4333 5242fede-7e19-0410-aef8-94bd7d2200fb 2017-02-01 Sandro Santilli - * NEWS, src/geom/util/GeometryEditor.cpp, + * src/geom/util/GeometryEditor.cpp, src/index/strtree/AbstractSTRtree.cpp, src/linearref/ExtractLineByLocation.cpp, src/operation/union/CascadedPolygonUnion.cpp, src/operation/union/CascadedUnion.cpp: Add static_assert to - strings inside of assert calls Allows compiling with -Wpointer-bool-conversion. Patch by Kurt Schwehr Closes #638 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4332 + strings inside of assert calls Allows compiling with + -Wpointer-bool-conversion. Patch by Kurt Schwehr + Closes #638 git-svn-id: + http://svn.osgeo.org/geos/trunk@4331 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-01-18 Sandro Santilli +2017-01-31 Sandro Santilli - * NEWS, src/algorithm/MinimumDiameter.cpp: Fix build for android-ndk Closes #799 (and #802) git-svn-id: https://svn.osgeo.org/geos/branches/3.6@4327 + * tests/unit/tut/README: Record upstream of tut library git-svn-id: + http://svn.osgeo.org/geos/trunk@4330 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-01-18 Sandro Santilli +2017-01-31 Sandro Santilli - * src/algorithm/MinimumDiameter.cpp: Remove trailing spaces git-svn-id: https://svn.osgeo.org/geos/branches/3.6@4326 + * .gitignore: Unignore README git-svn-id: + http://svn.osgeo.org/geos/trunk@4329 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-01-05 Sandro Santilli +2017-01-18 Sandro Santilli - * NEWS: Add python3 support item git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4324 + * NEWS: Add 3.6.1 section git-svn-id: + http://svn.osgeo.org/geos/trunk@4328 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-01-05 Sandro Santilli +2017-01-12 Sandro Santilli - * macros/python.m4: Update python m4 macro, should fix #774 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4323 + * include/geos/operation/distance/FacetSequenceTreeBuilder.h, + tests/unit/capi/GEOSDistanceTest.cpp: Missing GEOS_DLL and + USE_MATH_DEFINES for MSVC compilation Patch by Escande Adrien + via + https://github.com/libgeos/libgeos/pull/76 git-svn-id: + http://svn.osgeo.org/geos/trunk@4325 5242fede-7e19-0410-aef8-94bd7d2200fb 2017-01-05 Sandro Santilli - * HOWTO_RELEASE, Makefile.am: Print a warning if ChangeLog isn't - found on make dist Tweak HOWTO_RELEASE file to make sure a ChangeLog is included git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4322 + * macros/python.m4: Update python m4 macro, should fix #774 + git-svn-id: http://svn.osgeo.org/geos/trunk@4320 5242fede-7e19-0410-aef8-94bd7d2200fb -2017-01-05 Sandro Santilli +2016-12-29 Sandro Santilli - * CMakeLists.txt, NEWS, configure.ac: Target 3.6.2 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4321 + * src/algorithm/MinimumDiameter.cpp: Include for fabs use, + see #799 git-svn-id: http://svn.osgeo.org/geos/trunk@4319 5242fede-7e19-0410-aef8-94bd7d2200fb -2016-12-24 Sandro Santilli +2016-12-29 Sandro Santilli - * CMakeLists.txt, NEWS, configure.ac: Set 3.6.1 version and release - date git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4316 + * src/algorithm/MinimumDiameter.cpp: Drop trailing blanks + git-svn-id: http://svn.osgeo.org/geos/trunk@4318 5242fede-7e19-0410-aef8-94bd7d2200fb -2016-12-13 Sandro Santilli +2016-12-05 Sandro Santilli - * NEWS: Remove yet-to-define 3.6.1 release date git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4315 + * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + include/geos/algorithm/distance/DiscreteFrechetDistance.h, + include/geos/algorithm/distance/Makefile.am, + include/geos/algorithm/distance/PointPairDistance.h, + src/Makefile.vc, + src/algorithm/distance/DiscreteFrechetDistance.cpp, + src/algorithm/distance/Makefile.am, tests/geostest/geostest.c, + tests/geostest/test.expected, tests/unit/Makefile.am, + tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp, + tests/unit/capi/GEOSFrechetDistanceTest.cpp, + tests/unit/capi/GEOSHausdorffDistanceTest.cpp: Add + DiscreteFrechetDistance Patch by Shinichi SUGIYAMA + Closes #797 git-svn-id: + http://svn.osgeo.org/geos/trunk@4314 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-12-02 Sandro Santilli - * NEWS, include/geos/geom/util/GeometryTransformer.h, + * include/geos/geom/util/GeometryTransformer.h, src/geom/util/GeometryTransformer.cpp, src/simplify/DouglasPeuckerSimplifier.cpp, tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: Fix empty - GEOSSimplify return on inner ring collapse Patch by Even Rouault Closes #741 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4313 + GEOSSimplify return on inner ring collapse Patch by Even Rouault + See #741 git-svn-id: http://svn.osgeo.org/geos/trunk@4311 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-12-02 Sandro Santilli @@ -294,121 +3247,350 @@ src/geom/util/GeometryTransformer.cpp, src/simplify/DouglasPeuckerSimplifier.cpp, tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: Style only - change, trim trailing blanks and fix indents git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4312 + change, trim trailing blanks and fix indents git-svn-id: + http://svn.osgeo.org/geos/trunk@4310 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-12-01 Sandro Santilli - * NEWS, src/io/WKBWriter.cpp, tests/unit/io/WKBWriterTest.cpp: Fix - WKB representation of empty polygon. Patch by Sergey Fedoseev Closes #680. git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4309 + * src/io/WKBWriter.cpp, tests/unit/io/WKBWriterTest.cpp: Fixed WKB + representation of empty polygon. Patch by Sergey Fedoseev Closes + #680. git-svn-id: http://svn.osgeo.org/geos/trunk@4308 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-11-22 Sandro Santilli - * NEWS, tools/geos-config.in: Fix --static-clibs and --static-cclibs - returns from geos-config Patch by Edzer Pebesma git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4306 + * tools/geos-config.in: Fix --static-clibs and --static-cclibs + returns from geos-config Patch by Edzer Pebesma + git-svn-id: + http://svn.osgeo.org/geos/trunk@4307 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-11-10 Sandro Santilli - * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Fix - GEOSSTRtree_nearest_r signature and add missing implementation Closes #796 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4304 + * AUTHORS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + include/geos/algorithm/Angle.h, + include/geos/algorithm/BoundaryNodeRule.h, + include/geos/algorithm/CGAlgorithms.h, + include/geos/algorithm/Centroid.h, + include/geos/algorithm/ConvexHull.h, + include/geos/algorithm/HCoordinate.h, + include/geos/algorithm/InteriorPointArea.h, + include/geos/algorithm/distance/DiscreteHausdorffDistance.h, + include/geos/algorithm/distance/DistanceToPoint.h, + include/geos/algorithm/distance/PointPairDistance.h, + include/geos/geom/BinaryOp.h, include/geos/geom/CoordinateList.h, + include/geos/geom/CoordinateSequenceFilter.h, + include/geos/geom/Geometry.h, include/geos/geom/GeometryFactory.h, + include/geos/geom/LineSegment.h, include/geos/geom/LineSegment.inl, + include/geos/geom/LineString.h, include/geos/geom/Lineal.h, + include/geos/geom/MultiLineString.h, + include/geos/geom/MultiLineString.inl, + include/geos/geom/MultiPoint.h, include/geos/geom/MultiPolygon.h, + include/geos/geom/Point.h, include/geos/geom/Polygon.h, + include/geos/geom/Polygonal.h, include/geos/geom/PrecisionModel.h, + include/geos/geom/PrecisionModel.inl, include/geos/geom/Puntal.h, + include/geos/geom/util/GeometryEditor.h, + include/geos/geom/util/GeometryExtracter.h, + include/geos/geom/util/GeometryTransformer.h, + include/geos/geom/util/SineStarFactory.h, + include/geos/geomgraph/DirectedEdge.h, + include/geos/geomgraph/DirectedEdge.inl, + include/geos/geomgraph/DirectedEdgeStar.h, + include/geos/geomgraph/Edge.h, include/geos/geomgraph/EdgeEnd.h, + include/geos/geomgraph/EdgeEndStar.h, + include/geos/geomgraph/EdgeIntersection.h, + include/geos/geomgraph/EdgeIntersectionList.h, + include/geos/geomgraph/EdgeRing.h, + include/geos/geomgraph/GeometryGraph.h, + include/geos/geomgraph/GeometryGraph.inl, + include/geos/geomgraph/GraphComponent.h, + include/geos/geomgraph/Node.h, include/geos/index/quadtree/Key.h, + include/geos/io/WKTWriter.h, + include/geos/linearref/LengthIndexedLine.h, + include/geos/linearref/LengthLocationMap.h, + include/geos/linearref/LinearLocation.h, + include/geos/linearref/LocationIndexOfPoint.h, + include/geos/linearref/LocationIndexedLine.h, + include/geos/noding/BasicSegmentString.h, + include/geos/noding/GeometryNoder.h, + include/geos/noding/NodedSegmentString.h, + include/geos/noding/OrientedCoordinateArray.h, + include/geos/noding/SegmentString.h, + include/geos/operation/IsSimpleOp.h, + include/geos/operation/buffer/BufferBuilder.h, + include/geos/operation/buffer/BufferInputLineSimplifier.h, + include/geos/operation/buffer/BufferOp.h, + include/geos/operation/buffer/BufferParameters.h, + include/geos/operation/buffer/OffsetCurveBuilder.h, + include/geos/operation/buffer/OffsetCurveSetBuilder.h, + include/geos/operation/buffer/OffsetSegmentGenerator.h, + include/geos/operation/buffer/OffsetSegmentString.h, + include/geos/operation/distance/DistanceOp.h, + include/geos/operation/linemerge/EdgeString.h, + include/geos/operation/linemerge/LineMergeGraph.h, + include/geos/operation/linemerge/LineSequencer.h, + include/geos/operation/overlay/snap/GeometrySnapper.h, + include/geos/operation/overlay/snap/LineStringSnapper.h, + include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h, + include/geos/operation/overlay/snap/SnapOverlayOp.h, + include/geos/operation/polygonize/Polygonizer.h, + include/geos/operation/predicate/RectangleIntersects.h, + include/geos/operation/predicate/SegmentIntersectionTester.h, + include/geos/operation/relate/RelateComputer.h, + include/geos/operation/sharedpaths/SharedPathsOp.h, + include/geos/operation/union/CascadedPolygonUnion.h, + include/geos/operation/union/CascadedUnion.h, + include/geos/operation/union/GeometryListHolder.h, + include/geos/operation/union/PointGeometryUnion.h, + include/geos/operation/union/UnaryUnionOp.h, + include/geos/operation/valid/IsValidOp.h, + include/geos/precision/GeometryPrecisionReducer.h, + include/geos/precision/PrecisionReducerCoordinateOperation.h, + include/geos/util/IllegalStateException.h, + include/geos/util/Interrupt.h, src/algorithm/Angle.cpp, + src/algorithm/BoundaryNodeRule.cpp, src/algorithm/CGAlgorithms.cpp, + src/algorithm/Centroid.cpp, src/algorithm/ConvexHull.cpp, + src/algorithm/HCoordinate.cpp, src/algorithm/InteriorPointArea.cpp, + src/algorithm/distance/DiscreteHausdorffDistance.cpp, + src/algorithm/distance/DistanceToPoint.cpp, src/geom/Geometry.cpp, + src/geom/GeometryFactory.cpp, src/geom/LineSegment.cpp, + src/geom/LineString.cpp, src/geom/MultiLineString.cpp, + src/geom/MultiPoint.cpp, src/geom/MultiPolygon.cpp, + src/geom/Point.cpp, src/geom/Polygon.cpp, + src/geom/PrecisionModel.cpp, src/geom/util/GeometryEditor.cpp, + src/geom/util/GeometryTransformer.cpp, + src/geom/util/SineStarFactory.cpp, src/geomgraph/DirectedEdge.cpp, + src/geomgraph/DirectedEdgeStar.cpp, src/geomgraph/Edge.cpp, + src/geomgraph/EdgeEnd.cpp, src/geomgraph/EdgeEndStar.cpp, + src/geomgraph/EdgeIntersectionList.cpp, src/geomgraph/EdgeRing.cpp, + src/geomgraph/GeometryGraph.cpp, src/geomgraph/GraphComponent.cpp, + src/geomgraph/Node.cpp, src/index/quadtree/Key.cpp, + src/io/WKTWriter.cpp, src/linearref/LengthIndexedLine.cpp, + src/linearref/LengthLocationMap.cpp, + src/linearref/LinearLocation.cpp, + src/linearref/LocationIndexOfPoint.cpp, + src/noding/BasicSegmentString.cpp, src/noding/GeometryNoder.cpp, + src/noding/NodedSegmentString.cpp, + src/noding/OrientedCoordinateArray.cpp, + src/noding/SegmentString.cpp, src/operation/IsSimpleOp.cpp, + src/operation/buffer/BufferBuilder.cpp, + src/operation/buffer/BufferInputLineSimplifier.cpp, + src/operation/buffer/BufferOp.cpp, + src/operation/buffer/BufferParameters.cpp, + src/operation/buffer/OffsetCurveBuilder.cpp, + src/operation/buffer/OffsetCurveSetBuilder.cpp, + src/operation/buffer/OffsetSegmentGenerator.cpp, + src/operation/distance/DistanceOp.cpp, + src/operation/linemerge/EdgeString.cpp, + src/operation/linemerge/LineMergeGraph.cpp, + src/operation/linemerge/LineSequencer.cpp, + src/operation/overlay/snap/GeometrySnapper.cpp, + src/operation/overlay/snap/LineStringSnapper.cpp, + src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp, + src/operation/overlay/snap/SnapOverlayOp.cpp, + src/operation/polygonize/Polygonizer.cpp, + src/operation/predicate/RectangleIntersects.cpp, + src/operation/predicate/SegmentIntersectionTester.cpp, + src/operation/relate/RelateComputer.cpp, + src/operation/sharedpaths/SharedPathsOp.cpp, + src/operation/union/CascadedPolygonUnion.cpp, + src/operation/union/CascadedUnion.cpp, + src/operation/union/PointGeometryUnion.cpp, + src/operation/union/UnaryUnionOp.cpp, + src/operation/valid/IndexedNestedRingTester.cpp, + src/operation/valid/IndexedNestedRingTester.h, + src/operation/valid/IsValidOp.cpp, + src/precision/PrecisionReducerCoordinateOperation.cpp, + src/util/Interrupt.cpp, tests/geostest/geostest.c, + tests/perf/ClassSizes.cpp, + tests/perf/operation/buffer/IteratedBufferStressTest.cpp, + tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp, + tests/thread/badthreadtest.c, tests/thread/threadtest.c, + tests/unit/algorithm/InteriorPointAreaTest.cpp, + tests/xmltester/BufferResultMatcher.cpp, + tests/xmltester/BufferResultMatcher.h, + tests/xmltester/SingleSidedBufferResultMatcher.cpp, + tests/xmltester/SingleSidedBufferResultMatcher.h, + tests/xmltester/safe_to_xml.sh: Update my email address git-svn-id: + http://svn.osgeo.org/geos/trunk@4305 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-11-10 Sandro Santilli - * NEWS: Fix NEWS git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4302 + * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Fix + GEOSSTRtree_nearest_r signature and add missing implementation See + #796 git-svn-id: http://svn.osgeo.org/geos/trunk@4303 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-11-08 Sandro Santilli + + * include/geos/geom/Geometry.h: Made equalsExact description more + specific. Patch by Sergey Fedoseev via + https://github.com/libgeos/libgeos/pull/72 git-svn-id: + http://svn.osgeo.org/geos/trunk@4301 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-10-31 Sandro Santilli + + * include/geos/operation/distance/IndexedFacetDistance.h, + src/operation/distance/IndexedFacetDistance.cpp: Fix memory leak in + IndexedFacetDistance Patch by Dan Baston (see #795) git-svn-id: + http://svn.osgeo.org/geos/trunk@4300 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-10-28 Sandro Santilli + + * .drone.yml: Update drone yml to 0.5 version See + https://git.osgeo.org/gogs/sac/gogs-service/issues/14 git-svn-id: + http://svn.osgeo.org/geos/trunk@4296 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-28 Sandro Santilli - * .drone.yml: Update drone yml to 0.5 version See https://git.osgeo.org/gogs/sac/gogs-service/issues/14 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4297 + * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + include/geos/index/strtree/BoundablePair.h, + include/geos/index/strtree/STRtree.h, + include/geos/operation/distance/FacetSequence.h, + include/geos/operation/distance/FacetSequenceTreeBuilder.h, + include/geos/operation/distance/IndexedFacetDistance.h, + include/geos/operation/distance/Makefile.am, + src/index/strtree/BoundablePair.cpp, src/index/strtree/STRtree.cpp, + src/operation/distance/FacetSequence.cpp, + src/operation/distance/FacetSequenceTreeBuilder.cpp, + src/operation/distance/IndexedFacetDistance.cpp, + src/operation/distance/Makefile.am, + src/precision/MinimumClearance.cpp, + tests/unit/capi/GEOSDistanceTest.cpp: Port IndexedFacetDistance from + JTS Contributed by Dan Baston Closes #795 git-svn-id: + http://svn.osgeo.org/geos/trunk@4295 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-27 Sandro Santilli - * .gitlab-ci.yml: Install a fake git2cl in gitlab-ci This fixes "distcheck" step git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4292 + * .gitlab-ci.yml: Install a fake git2cl in gitlab-ci This fixes + "distcheck" step git-svn-id: http://svn.osgeo.org/geos/trunk@4291 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-27 Sandro Santilli * HOWTO_RELEASE: Update release procedure to drop manual ChangeLog - generation git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4287 + generation git-svn-id: http://svn.osgeo.org/geos/trunk@4288 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-10-27 Sandro Santilli + + * autogen.sh: Stop symlinking README.md as README ... now that our + Makefile.am is setting the "foreign" option we don't need that + anymore git-svn-id: http://svn.osgeo.org/geos/trunk@4281 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-27 Sandro Santilli - * ChangeLog, Makefile.am: Remove ChangeLog from repository. The file will be created by "make dist" from either git (if .git - exists) or svn (if .svn exists). Tested with builds from package, from source dir and from external - build dir. Only automake. See #778 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4282 + * ChangeLog, Makefile.am: Remove ChangeLog from repository. The + file will be created by "make dist" from either git (if .git exists) + or svn (if .svn exists). Tested with builds from package, from + source dir and from external build dir. Only automake. See #788 + git-svn-id: http://svn.osgeo.org/geos/trunk@4280 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-10-25 Sandro Santilli + + * NEWS: Fix release date for 3.6.0, start 3.7.0 section git-svn-id: + http://svn.osgeo.org/geos/trunk@4275 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-10-25 Sandro Santilli + + * .editorconfig: Keep carriage-returns in *.vc files git-svn-id: + http://svn.osgeo.org/geos/trunk@4273 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-25 Sandro Santilli * CMakeLists.txt, HOWTO_RELEASE, capi/geos_c.h.in, configure.ac, - include/geos/version.h.vc: Prepare for 3.6.1 git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4274 + include/geos/version.h.vc: Increment version to 3.7.0dev + git-svn-id: http://svn.osgeo.org/geos/trunk@4272 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2016-10-25 Sandro Santilli + + * : Drop web subdir git-svn-id: + http://svn.osgeo.org/geos/trunk@4270 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-25 Sandro Santilli - * : Branched 3.6 from trunk git-svn-id: http://svn.osgeo.org/geos/branches/3.6@4271 + * : Drop php subdir git-svn-id: + http://svn.osgeo.org/geos/trunk@4269 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-25 Sandro Santilli - * : Drop php subdir git-svn-id: http://svn.osgeo.org/geos/trunk@4269 + * CMakeLists.txt, configure.ac: Fix version to 3.6.0 (drop "dev" + suffix) git-svn-id: http://svn.osgeo.org/geos/trunk@4264 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-25 Sandro Santilli - * ChangeLog: Update ChangeLog for 3.6.0 release git-svn-id: http://svn.osgeo.org/geos/trunk@4263 + * ChangeLog: Update ChangeLog for 3.6.0 release git-svn-id: + http://svn.osgeo.org/geos/trunk@4263 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-25 Sandro Santilli - * NEWS: Tweak NEWS, in preparation for 3.6.0 release git-svn-id: http://svn.osgeo.org/geos/trunk@4262 + * NEWS: Tweak NEWS, in preparation for 3.6.0 release git-svn-id: + http://svn.osgeo.org/geos/trunk@4262 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-04 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp: And more - trailing spaces git-svn-id: http://svn.osgeo.org/geos/trunk@4261 + trailing spaces git-svn-id: http://svn.osgeo.org/geos/trunk@4261 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-04 Sandro Santilli * include/geos/operation/overlay/snap/LineStringSnapper.h: Remove - more trailing blanks git-svn-id: http://svn.osgeo.org/geos/trunk@4260 + more trailing blanks git-svn-id: + http://svn.osgeo.org/geos/trunk@4260 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-10-04 Sandro Santilli * src/operation/overlay/snap/GeometrySnapper.cpp: Drop trailing - blanks git-svn-id: http://svn.osgeo.org/geos/trunk@4259 + blanks git-svn-id: http://svn.osgeo.org/geos/trunk@4259 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-27 Sandro Santilli - * capi/geos_c.h.in: wrong GEOS_DLL position Should not be type* GEOS_DLL function(), but type GEOS_DLL - *function(). Doesn't build on windows before the modif Patch by @bartoli Closes https://github.com/libgeos/libgeos/pull/70 git-svn-id: http://svn.osgeo.org/geos/trunk@4258 + * capi/geos_c.h.in: wrong GEOS_DLL position Should not be type* + GEOS_DLL function(), but type GEOS_DLL *function(). Doesn't build on + windows before the modif Patch by @bartoli Closes + https://github.com/libgeos/libgeos/pull/70 git-svn-id: + http://svn.osgeo.org/geos/trunk@4258 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-07 Sandro Santilli * include/geos/geom/Geometry.h, include/geos/geom/LineString.h: Fix - documentation typos. Courtesy of Todd Trimble git-svn-id: http://svn.osgeo.org/geos/trunk@4257 + documentation typos. Courtesy of Todd Trimble + git-svn-id: + http://svn.osgeo.org/geos/trunk@4257 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-07 Sandro Santilli * tests/unit/capi/GEOSGeom_createCollection.cpp: Fix initialization - order warning git-svn-id: http://svn.osgeo.org/geos/trunk@4256 + order warning git-svn-id: http://svn.osgeo.org/geos/trunk@4256 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-07 Sandro Santilli * CMakeLists.txt: CMake: generate geos_svn_revision.h in binary - directory if not exists Patch by Rashad Kanavath git-svn-id: http://svn.osgeo.org/geos/trunk@4255 + directory if not exists Patch by Rashad Kanavath + git-svn-id: + http://svn.osgeo.org/geos/trunk@4255 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-07 Sandro Santilli @@ -416,24 +3598,29 @@ * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, include/geos/geom/Geometry.h, tests/unit/Makefile.am, tests/unit/capi/GEOSUserDataTest.cpp: Add GEOSGeom_setUserData and - GEOSGeom_getUserData Patch by Rashad Kanavath git-svn-id: http://svn.osgeo.org/geos/trunk@4254 + GEOSGeom_getUserData Patch by Rashad Kanavath + git-svn-id: + http://svn.osgeo.org/geos/trunk@4254 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-02 Sandro Santilli * CMakeLists.txt, src/CMakeLists.txt: Add option to build static and - shared. (default is build both) Fixes #788 Patch by Rashad Kanavath git-svn-id: http://svn.osgeo.org/geos/trunk@4253 + shared. (default is build both) Fixes #788 Patch by Rashad Kanavath + git-svn-id: + http://svn.osgeo.org/geos/trunk@4253 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-09-02 Sandro Santilli - * authors.svn: Fix my email address git-svn-id: http://svn.osgeo.org/geos/trunk@4252 + * authors.svn: Fix my email address git-svn-id: + http://svn.osgeo.org/geos/trunk@4252 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-08-24 Mateusz Loskot * CMakeLists.txt: CMake now sets GEOS_BUILD_PACKAGED to FALSE on CI - services git-svn-id: http://svn.osgeo.org/geos/trunk@4251 + services git-svn-id: http://svn.osgeo.org/geos/trunk@4251 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-08-24 Mateusz Loskot @@ -442,58 +3629,69 @@ directories for geos_ts.cpp which does #include "../geos_svn_revision.h", whereas CMake generates geos_svn_revision.h in build directory, to not to pollute source - tree. git-svn-id: http://svn.osgeo.org/geos/trunk@4250 + tree. git-svn-id: http://svn.osgeo.org/geos/trunk@4250 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-08-24 Mateusz Loskot * build.bat: Add convenient build.bat for Visual Studio and CMake - users: * Runs CMake to configure 32-bit or 64-bit build with the latest - release of Visual Studio. * Runs MSBuild to build the generated solution. git-svn-id: http://svn.osgeo.org/geos/trunk@4249 + users: * Runs CMake to configure 32-bit or 64-bit build with the + latest release of Visual Studio. * Runs MSBuild to build the + generated solution. git-svn-id: + http://svn.osgeo.org/geos/trunk@4249 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-08-03 Mateusz Loskot - * src/Makefile.vc: Add missing .cpp files added in r4203 git-svn-id: http://svn.osgeo.org/geos/trunk@4245 + * src/Makefile.vc: Add missing .cpp files added in r4203 + git-svn-id: http://svn.osgeo.org/geos/trunk@4245 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-08-03 Mateusz Loskot - * nmake.opt: Add NMAKE version from VS2015 Update 3 git-svn-id: http://svn.osgeo.org/geos/trunk@4244 + * nmake.opt: Add NMAKE version from VS2015 Update 3 git-svn-id: + http://svn.osgeo.org/geos/trunk@4244 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-21 Sandro Santilli - * .drone.yml: Only run "make check", not "make distcheck" ... distcheck can be run manually just before a release git-svn-id: http://svn.osgeo.org/geos/trunk@4243 + * .drone.yml: Only run "make check", not "make distcheck" ... + distcheck can be run manually just before a release git-svn-id: + http://svn.osgeo.org/geos/trunk@4243 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-21 Sandro Santilli * .drone.yml, docker/README, docker/build-test/Dockerfile, - docker/build-test/Makefile: Remove docker config Docker configurations are not hosted on - https://git.osgeo.org/gogs/geos/geos-docker/ git-svn-id: http://svn.osgeo.org/geos/trunk@4242 + docker/build-test/Makefile: Remove docker config Docker + configurations are not hosted on + https://git.osgeo.org/gogs/geos/geos-docker/ git-svn-id: + http://svn.osgeo.org/geos/trunk@4242 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-21 Sandro Santilli - * src/operation/buffer/BufferOp.cpp: Do not define unused function git-svn-id: http://svn.osgeo.org/geos/trunk@4241 + * src/operation/buffer/BufferOp.cpp: Do not define unused function + git-svn-id: http://svn.osgeo.org/geos/trunk@4241 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-21 Sandro Santilli - * .drone.yml: Fix test-image variable use git-svn-id: http://svn.osgeo.org/geos/trunk@4240 + * .drone.yml: Fix test-image variable use git-svn-id: + http://svn.osgeo.org/geos/trunk@4240 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-21 Sandro Santilli * .drone.yml: Turn off optimization while building, reduce clone - depth git-svn-id: http://svn.osgeo.org/geos/trunk@4239 + depth git-svn-id: http://svn.osgeo.org/geos/trunk@4239 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-19 Sandro Santilli - * web/index.html, web/style.css: Remove website content Moved to https://git.osgeo.org/gogs/geos/website (was obsoleted and - unused anyway) git-svn-id: http://svn.osgeo.org/geos/trunk@4238 + * web/index.html, web/style.css: Remove website content Moved to + https://git.osgeo.org/gogs/geos/website (was obsoleted and unused + anyway) git-svn-id: http://svn.osgeo.org/geos/trunk@4238 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-19 Sandro Santilli @@ -501,106 +3699,125 @@ * .gitignore, Makefile.am, NEWS, README.md, configure.ac, php/Makefile.am, php/README, php/TODO, php/geos.c, php/php_geos.h, php/test/Makefile.am, php/test/crashme.php, php/test/test.php: - Remove PHP bindings, leave refs to separate repository Closes #765 git-svn-id: http://svn.osgeo.org/geos/trunk@4237 + Remove PHP bindings, leave refs to separate repository Closes #765 + git-svn-id: http://svn.osgeo.org/geos/trunk@4237 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-19 Sandro Santilli - * docker/build-test/Dockerfile: Reduce size of build-test image git-svn-id: http://svn.osgeo.org/geos/trunk@4236 + * docker/build-test/Dockerfile: Reduce size of build-test image + git-svn-id: http://svn.osgeo.org/geos/trunk@4236 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-16 Sandro Santilli - * README.md: Add link to build status table on trac git-svn-id: http://svn.osgeo.org/geos/trunk@4235 + * README.md: Add link to build status table on trac git-svn-id: + http://svn.osgeo.org/geos/trunk@4235 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-16 Sandro Santilli * .gitignore, docker/README, docker/build-test/Dockerfile, docker/build-test/Makefile: Add configuration to make dockers for - build-testing GEOS git-svn-id: http://svn.osgeo.org/geos/trunk@4234 + build-testing GEOS git-svn-id: http://svn.osgeo.org/geos/trunk@4234 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-15 Sandro Santilli - * README.md: Add OSGeo/Drone badge git-svn-id: http://svn.osgeo.org/geos/trunk@4233 + * README.md: Add OSGeo/Drone badge git-svn-id: + http://svn.osgeo.org/geos/trunk@4233 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-15 Sandro Santilli - * .drone.yml: Add a "make check" step to the drone config git-svn-id: http://svn.osgeo.org/geos/trunk@4231 + * .drone.yml: Add a "make check" step to the drone config + git-svn-id: http://svn.osgeo.org/geos/trunk@4231 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-15 Sandro Santilli - * README.md: Adds all the currently supported Visual Studio versions Patch by gmasetti@ccom.unh.edu git-svn-id: http://svn.osgeo.org/geos/trunk@4230 + * README.md: Adds all the currently supported Visual Studio versions + Patch by gmasetti@ccom.unh.edu git-svn-id: + http://svn.osgeo.org/geos/trunk@4230 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-14 Sandro Santilli * include/geos/platform.h.in: Fully qualify isnan call when - HAVE_ISNAN is defined Fixes build with GCC-5.3.0 and higher. Closes #784 git-svn-id: http://svn.osgeo.org/geos/trunk@4224 + HAVE_ISNAN is defined Fixes build with GCC-5.3.0 and higher. Closes + #784 git-svn-id: http://svn.osgeo.org/geos/trunk@4224 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-12 Sandro Santilli - * .drone.yml: Add .drone.yml git-svn-id: http://svn.osgeo.org/geos/trunk@4221 + * .drone.yml: Add .drone.yml git-svn-id: + http://svn.osgeo.org/geos/trunk@4221 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-07-09 Sandro Santilli - * tests/perf/Makefile.am: Add missing LIBS Thanks Andrew Watkins for spotting this git-svn-id: http://svn.osgeo.org/geos/trunk@4220 + * tests/perf/Makefile.am: Add missing LIBS Thanks Andrew Watkins + for spotting this git-svn-id: http://svn.osgeo.org/geos/trunk@4220 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-29 Mateusz Loskot * tests/unit/capi/GEOSMinimumClearanceTest.cpp: Compare inf == inf - instead of ensure_equals(inf, inf). The latter compares the difference, but inf minus inf result is - indeterminate. git-svn-id: http://svn.osgeo.org/geos/trunk@4219 + instead of ensure_equals(inf, inf). The latter compares the + difference, but inf minus inf result is indeterminate. git-svn-id: + http://svn.osgeo.org/geos/trunk@4219 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-09 Mateusz Loskot - * CMakeLists.txt: Fix CMake syntax. git-svn-id: http://svn.osgeo.org/geos/trunk@4218 + * CMakeLists.txt: Fix CMake syntax. git-svn-id: + http://svn.osgeo.org/geos/trunk@4218 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-09 Mateusz Loskot * CMakeLists.txt: CI builds (Travis CI, AppVeyor, etc.) perform git - clone, not svn checkout. So, CI environment needs a dummy revision - (e.g. 999999) to generate the required header. git-svn-id: http://svn.osgeo.org/geos/trunk@4217 + clone, not svn checkout. So, CI environment needs a dummy revision + (e.g. 999999) to generate the required header. git-svn-id: + http://svn.osgeo.org/geos/trunk@4217 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-08 Mateusz Loskot - * README.md: Fix Markdown syntax for build status table. git-svn-id: http://svn.osgeo.org/geos/trunk@4216 + * README.md: Fix Markdown syntax for build status table. + git-svn-id: http://svn.osgeo.org/geos/trunk@4216 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-08 Mateusz Loskot - * appveyor.yml: AppVeyor: add some colours git-svn-id: http://svn.osgeo.org/geos/trunk@4215 + * appveyor.yml: AppVeyor: add some colours git-svn-id: + http://svn.osgeo.org/geos/trunk@4215 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-07 Mateusz Loskot - * README.md: Add AppVeyor and Drone.io badge status. Reformat build - status into table by service X branch. git-svn-id: http://svn.osgeo.org/geos/trunk@4214 + * README.md: Add AppVeyor and Drone.io badge status. Reformat build + status into table by service X branch. git-svn-id: + http://svn.osgeo.org/geos/trunk@4214 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-07 Mateusz Loskot - * appveyor.yml: AppVeyor: Fix CMake build folder location git-svn-id: http://svn.osgeo.org/geos/trunk@4213 + * appveyor.yml: AppVeyor: Fix CMake build folder location + git-svn-id: http://svn.osgeo.org/geos/trunk@4213 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-07 Mateusz Loskot - * appveyor.yml: First stab at AppVeyor configuration git-svn-id: http://svn.osgeo.org/geos/trunk@4212 + * appveyor.yml: First stab at AppVeyor configuration git-svn-id: + http://svn.osgeo.org/geos/trunk@4212 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-07 Mateusz Loskot * CMakeLists.txt: Merged revision(s) 4210 from branches/3.5: Update - CMake configuration based on trunk/CMakeLists.txt git-svn-id: http://svn.osgeo.org/geos/trunk@4211 + CMake configuration based on trunk/CMakeLists.txt git-svn-id: + http://svn.osgeo.org/geos/trunk@4211 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-06-07 Mateusz Loskot @@ -608,23 +3825,29 @@ * capi/geos_c.h.in, include/geos/index/strtree/GeometryItemDistance.h, include/geos/precision/MinimumClearance.h, src/Makefile.vc: Fix - Visual C++ builds with NMAKE and CMake (Ticket #777): * Correct __declspec specifier placement in C API function - prototypes. * Add GEOS_DLL missing from new classes added recently. * Update makefile.vc with implementation files added recently. git-svn-id: http://svn.osgeo.org/geos/trunk@4209 + Visual C++ builds with NMAKE and CMake (Ticket #777): * Correct + __declspec specifier placement in C API function prototypes. * Add + GEOS_DLL missing from new classes added recently. * Update + makefile.vc with implementation files added recently. git-svn-id: + http://svn.osgeo.org/geos/trunk@4209 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-05-12 Sandro Santilli - * README.md: Revert "Cips" This reverts commit c816b6747129a59f82c6ebc9a952bc11b32a48f6. Sorry, was a debug commit pushed in error git-svn-id: http://svn.osgeo.org/geos/trunk@4208 + * README.md: Revert "Cips" This reverts commit + c816b6747129a59f82c6ebc9a952bc11b32a48f6. Sorry, was a debug commit + pushed in error git-svn-id: http://svn.osgeo.org/geos/trunk@4208 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-05-12 Sandro Santilli - * README.md: Use https for debbie links git-svn-id: http://svn.osgeo.org/geos/trunk@4207 + * README.md: Use https for debbie links git-svn-id: + http://svn.osgeo.org/geos/trunk@4207 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-05-12 Sandro Santilli - * README.md: Cips git-svn-id: http://svn.osgeo.org/geos/trunk@4205 + * README.md: Cips git-svn-id: http://svn.osgeo.org/geos/trunk@4205 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-25 Sandro Santilli @@ -635,7 +3858,8 @@ src/operation/distance/FacetSequence.cpp, src/operation/distance/FacetSequenceTreeBuilder.cpp, src/precision/MinimumClearance.cpp: Include hash in Last Port for - MinimumClearance classes git-svn-id: http://svn.osgeo.org/geos/trunk@4204 + MinimumClearance classes git-svn-id: + http://svn.osgeo.org/geos/trunk@4204 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-25 Sandro Santilli @@ -654,87 +3878,106 @@ src/operation/distance/Makefile.am, src/precision/Makefile.am, src/precision/MinimumClearance.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSMinimumClearanceTest.cpp: Implement - GEOSMinimumClearance and GEOSMinimumClearanceLine Includes tests and C-API exposure. Patch by Daniel Baston via - https://github.com/libgeos/libgeos/pull/65 Closes #776 git-svn-id: http://svn.osgeo.org/geos/trunk@4203 + GEOSMinimumClearance and GEOSMinimumClearanceLine Includes tests + and C-API exposure. Patch by Daniel Baston + via https://github.com/libgeos/libgeos/pull/65 Closes #776 + git-svn-id: http://svn.osgeo.org/geos/trunk@4203 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-24 Sandro Santilli * .gitignore, Makefile.am, autogen.sh: Symlink README to README.md - at autogen.sh time Should fix distcheck git-svn-id: http://svn.osgeo.org/geos/trunk@4202 + at autogen.sh time Should fix distcheck git-svn-id: + http://svn.osgeo.org/geos/trunk@4202 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-23 Sandro Santilli - * Makefile.am: Add rule to make README from README.md README is a standard GNU file that ends up in the distribution git-svn-id: http://svn.osgeo.org/geos/trunk@4201 + * Makefile.am: Add rule to make README from README.md README is a + standard GNU file that ends up in the distribution git-svn-id: + http://svn.osgeo.org/geos/trunk@4201 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-23 Sandro Santilli - * README.md: Drop drone.io badge The service times out before our tests complete, not a good one. git-svn-id: http://svn.osgeo.org/geos/trunk@4200 + * README.md: Drop drone.io badge The service times out before our + tests complete, not a good one. git-svn-id: + http://svn.osgeo.org/geos/trunk@4200 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-23 Sandro Santilli - * README, README.md: Merge README into README.md Thanks Mike Toews for the kickstart on this git-svn-id: http://svn.osgeo.org/geos/trunk@4199 + * README, README.md: Merge README into README.md Thanks Mike Toews + for the kickstart on this git-svn-id: + http://svn.osgeo.org/geos/trunk@4199 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-23 Sandro Santilli * tests/unit/capi/GEOSSTRtreeTest.cpp: Correctly initialize strtree - in test Patch by dbaston git-svn-id: http://svn.osgeo.org/geos/trunk@4198 + in test Patch by dbaston git-svn-id: + http://svn.osgeo.org/geos/trunk@4198 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * include/geos/index/strtree/Makefile.am: Fix distcheck (#768) Patch by Daniel Baston git-svn-id: http://svn.osgeo.org/geos/trunk@4197 + * include/geos/index/strtree/Makefile.am: Fix distcheck (#768) + Patch by Daniel Baston git-svn-id: + http://svn.osgeo.org/geos/trunk@4197 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * README.md: Add drone.io badge git-svn-id: http://svn.osgeo.org/geos/trunk@4196 + * README.md: Add drone.io badge git-svn-id: + http://svn.osgeo.org/geos/trunk@4196 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * README.md: Add Debbie badge git-svn-id: http://svn.osgeo.org/geos/trunk@4195 + * README.md: Add Debbie badge git-svn-id: + http://svn.osgeo.org/geos/trunk@4195 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * README.md: Add project homepage url git-svn-id: http://svn.osgeo.org/geos/trunk@4191 + * README.md: Add project homepage url git-svn-id: + http://svn.osgeo.org/geos/trunk@4191 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * .travis.yml: Fix typo git-svn-id: http://svn.osgeo.org/geos/trunk@4190 + * .travis.yml: Fix typo git-svn-id: + http://svn.osgeo.org/geos/trunk@4190 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * README.md: Put build badges on the same line git-svn-id: http://svn.osgeo.org/geos/trunk@4189 + * README.md: Put build badges on the same line git-svn-id: + http://svn.osgeo.org/geos/trunk@4189 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * README.md: Add gitlab-ci badge git-svn-id: http://svn.osgeo.org/geos/trunk@4188 + * README.md: Add gitlab-ci badge git-svn-id: + http://svn.osgeo.org/geos/trunk@4188 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-22 Sandro Santilli - * .gitlab-ci.yml: Add gitlab-ci configuration git-svn-id: http://svn.osgeo.org/geos/trunk@4187 + * .gitlab-ci.yml: Add gitlab-ci configuration git-svn-id: + http://svn.osgeo.org/geos/trunk@4187 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-19 Sandro Santilli * capi/geos_ts_c.cpp: Move CustomItemDistance defn some contexts - higher git-svn-id: http://svn.osgeo.org/geos/trunk@4186 + higher git-svn-id: http://svn.osgeo.org/geos/trunk@4186 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-19 Sandro Santilli * capi/geos_ts_c.cpp: Trim trailing whitespaces (as per - .editorconfig) git-svn-id: http://svn.osgeo.org/geos/trunk@4185 + .editorconfig) git-svn-id: http://svn.osgeo.org/geos/trunk@4185 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-19 Sandro Santilli @@ -749,87 +3992,106 @@ src/index/strtree/GeometryItemDistance.cpp, src/index/strtree/Makefile.am, src/index/strtree/STRtree.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSSTRtreeTest.cpp: Add - GEOSSTRtree_nearest API Includes tests for the new API and pre-existing STRtree API Closes - #768 Patch by Daniel Baston via - https://github.com/libgeos/libgeos/pull/61 git-svn-id: http://svn.osgeo.org/geos/trunk@4184 + GEOSSTRtree_nearest API Includes tests for the new API and + pre-existing STRtree API Closes #768 Patch by Daniel Baston + via https://github.com/libgeos/libgeos/pull/61 + git-svn-id: http://svn.osgeo.org/geos/trunk@4184 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-12 Sandro Santilli - * include/geos/geom/LineSegment.h: Fix 'Segemnt' typo. Patch by Todd Trimble Closes https://github.com/libgeos/libgeos/pull/63 git-svn-id: http://svn.osgeo.org/geos/trunk@4183 + * include/geos/geom/LineSegment.h: Fix 'Segemnt' typo. Patch by + Todd Trimble Closes + https://github.com/libgeos/libgeos/pull/63 git-svn-id: + http://svn.osgeo.org/geos/trunk@4183 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-12 Sandro Santilli * include/geos/geom/LineSegment.h: Match .h declaration parameter - name with .cpp definitiion. Patch by Todd Trimble See https://github.com/libgeos/libgeos/pull/63 git-svn-id: http://svn.osgeo.org/geos/trunk@4182 + name with .cpp definitiion. Patch by Todd Trimble + See + https://github.com/libgeos/libgeos/pull/63 git-svn-id: + http://svn.osgeo.org/geos/trunk@4182 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-06 Sandro Santilli - * .editorconfig: Stub an EditorConfig file See http://editorconfig.org git-svn-id: http://svn.osgeo.org/geos/trunk@4181 + * .editorconfig: Stub an EditorConfig file See + http://editorconfig.org git-svn-id: + http://svn.osgeo.org/geos/trunk@4181 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-04-05 Sandro Santilli - * nmake.opt: Handle nmake builds with the latest MSVC Patch by Jeff McKenna Closes #775 git-svn-id: http://svn.osgeo.org/geos/trunk@4180 + * nmake.opt: Handle nmake builds with the latest MSVC Patch by Jeff + McKenna Closes #775 git-svn-id: + http://svn.osgeo.org/geos/trunk@4180 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-12 Mateusz Loskot * tests/unit/geom/prep/PreparedGeometry/touchesTest.cpp: Add test - for PreparedGeometry::touches git-svn-id: http://svn.osgeo.org/geos/trunk@4179 + for PreparedGeometry::touches git-svn-id: + http://svn.osgeo.org/geos/trunk@4179 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-12 Mateusz Loskot - * tests/unit/geom/Geometry/touchesTest.cpp: Remove unused header git-svn-id: http://svn.osgeo.org/geos/trunk@4178 + * tests/unit/geom/Geometry/touchesTest.cpp: Remove unused header + git-svn-id: http://svn.osgeo.org/geos/trunk@4178 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-12 Mateusz Loskot * tests/unit/geom/Geometry/touchesTest.cpp: Add test for - Geometry::touches git-svn-id: http://svn.osgeo.org/geos/trunk@4177 + Geometry::touches git-svn-id: http://svn.osgeo.org/geos/trunk@4177 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-12 Mateusz Loskot - * tests/unit/geom/Geometry/coversTest.cpp: Revert r4175 (wrong file) git-svn-id: http://svn.osgeo.org/geos/trunk@4176 + * tests/unit/geom/Geometry/coversTest.cpp: Revert r4175 (wrong file) + git-svn-id: http://svn.osgeo.org/geos/trunk@4176 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-12 Mateusz Loskot * tests/unit/geom/Geometry/coversTest.cpp: Add test for - Geometry::touches git-svn-id: http://svn.osgeo.org/geos/trunk@4175 + Geometry::touches git-svn-id: http://svn.osgeo.org/geos/trunk@4175 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-07 Mateusz Loskot * tests/xmltester/CMakeLists.txt: Update CMakeLists.txt after - bugXXX.xml moved into tickets subfolder git-svn-id: http://svn.osgeo.org/geos/trunk@4174 + bugXXX.xml moved into tickets subfolder git-svn-id: + http://svn.osgeo.org/geos/trunk@4174 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-07 Sandro Santilli - * Makefile.am: Add "valgrindcheck" Makefile rule, currently fails git-svn-id: http://svn.osgeo.org/geos/trunk@4173 + * Makefile.am: Add "valgrindcheck" Makefile rule, currently fails + git-svn-id: http://svn.osgeo.org/geos/trunk@4173 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-07 Sandro Santilli * .travis.yml: Report build activity in #postgis-activity (not - #postgis) Also do not use notices git-svn-id: http://svn.osgeo.org/geos/trunk@4170 + #postgis) Also do not use notices git-svn-id: + http://svn.osgeo.org/geos/trunk@4170 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-07 Sandro Santilli - * configure.ac: Look for isnan in std:: namespace Tested with gcc 4.8.4 git-svn-id: http://svn.osgeo.org/geos/trunk@4169 + * configure.ac: Look for isnan in std:: namespace Tested with gcc + 4.8.4 git-svn-id: http://svn.osgeo.org/geos/trunk@4169 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-06 Mateusz Loskot * include/geos/geom/Coordinate.h, include/geos/geom/Geometry.h, src/geom/Coordinate.cpp, src/geom/Geometry.cpp: Rename class private - members according to _x naming convention. git-svn-id: http://svn.osgeo.org/geos/trunk@4168 + members according to _x naming convention. git-svn-id: + http://svn.osgeo.org/geos/trunk@4168 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-06 Mateusz Loskot @@ -837,12 +4099,13 @@ * src/algorithm/Centroid.cpp, src/geomgraph/EdgeEndStar.cpp, src/operation/buffer/BufferBuilder.cpp: Clean up a bunch of MSVC++ 14.0 warning C4456: declaration of 'x' hides previous local - declaration git-svn-id: http://svn.osgeo.org/geos/trunk@4167 + declaration git-svn-id: http://svn.osgeo.org/geos/trunk@4167 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-06 Mateusz Loskot - * .travis.yml: Change Travis CI webhook notifications to 'always' git-svn-id: http://svn.osgeo.org/geos/trunk@4166 + * .travis.yml: Change Travis CI webhook notifications to 'always' + git-svn-id: http://svn.osgeo.org/geos/trunk@4166 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-06 Mateusz Loskot @@ -850,67 +4113,75 @@ * src/operation/buffer/BufferBuilder.cpp, tests/unit/geom/GeometryFactoryTest.cpp: Clean up some compiler warnings on truncating conversions between size_t and double or - unsigned in git-svn-id: http://svn.osgeo.org/geos/trunk@4165 + unsigned in git-svn-id: http://svn.osgeo.org/geos/trunk@4165 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-06 Mateusz Loskot * .travis.yml: Clean up to address some issues reported by - lint.travis-ci.org. Enable mailing list notification. Add Gitter - notification. git-svn-id: http://svn.osgeo.org/geos/trunk@4164 + lint.travis-ci.org. Enable mailing list notification. Add Gitter + notification. git-svn-id: http://svn.osgeo.org/geos/trunk@4164 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-05 Mateusz Loskot * tests/unit/geom/GeometryComponentFilterTest.cpp, tests/unit/geom/GeometryFilterTest.cpp: Fix repeated test groups - definitions (introduced in r4162). git-svn-id: http://svn.osgeo.org/geos/trunk@4163 + definitions (introduced in r4162). git-svn-id: + http://svn.osgeo.org/geos/trunk@4163 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-05 Mateusz Loskot * tests/unit/geom/GeometryComponentFilterTest.cpp, tests/unit/geom/GeometryFilterTest.cpp: Add test for GeometryFilter - class. Add test for GeometryComponentFilter class. Both tests are based on common filter with intention to compare - behaviour both GeometryFilter vs GeometryComponentFilter, with - related discussion at - http://lists.osgeo.org/pipermail/geos-devel/2016-March/007441.html git-svn-id: http://svn.osgeo.org/geos/trunk@4162 + class. Add test for GeometryComponentFilter class. Both tests are + based on common filter with intention to compare behaviour both + GeometryFilter vs GeometryComponentFilter, with related discussion + at + http://lists.osgeo.org/pipermail/geos-devel/2016-March/007441.html + git-svn-id: http://svn.osgeo.org/geos/trunk@4162 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-02 Mateusz Loskot * tests/unit/operation/linemerge/LineMergerTest.cpp: Describe test - cases git-svn-id: http://svn.osgeo.org/geos/trunk@4161 + cases git-svn-id: http://svn.osgeo.org/geos/trunk@4161 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-02 Mateusz Loskot * tests/unit/operation/linemerge/LineMergerTest.cpp, tests/unit/operation/overlay/OverlayOpUnionTest.cpp: Test merging - MultiLineString result of union. Remove unnecessary FIXED precision model from the triangle test in - OverlayOpUnionTest.cpp. Add comment to link corresponding tests in - OverlayOpUnionTest.cpp and LineMergerTest.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@4160 + MultiLineString result of union. Remove unnecessary FIXED precision + model from the triangle test in OverlayOpUnionTest.cpp. Add comment + to link corresponding tests in OverlayOpUnionTest.cpp and + LineMergerTest.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@4160 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-01 Mateusz Loskot * tests/unit/operation/overlay/OverlayOpUnionTest.cpp: Add comment - explaining the expected test result Since the union operation makes no effort to simplify and drop nodes - of degree 2 from the built topology, do not expect GEOS_LINESTRING. - https://lists.osgeo.org/pipermail/geos-devel/2016-March/007429.html git-svn-id: http://svn.osgeo.org/geos/trunk@4159 + explaining the expected test result Since the union operation makes + no effort to simplify and drop nodes of degree 2 from the built + topology, do not expect GEOS_LINESTRING. + https://lists.osgeo.org/pipermail/geos-devel/2016-March/007429.html + git-svn-id: http://svn.osgeo.org/geos/trunk@4159 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-01 Mateusz Loskot * tests/unit/capi/GEOSContainsTest.cpp: Unify GEOSContains test cases added in r4156 with corresponding tests in - GEOSPreparedGeometryTest git-svn-id: http://svn.osgeo.org/geos/trunk@4158 + GEOSPreparedGeometryTest git-svn-id: + http://svn.osgeo.org/geos/trunk@4158 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-01 Mateusz Loskot * tests/unit/capi/GEOSContainsTest.cpp: Test check refinement - missing from r4156 git-svn-id: http://svn.osgeo.org/geos/trunk@4157 + missing from r4156 git-svn-id: http://svn.osgeo.org/geos/trunk@4157 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-03-01 Mateusz Loskot @@ -918,24 +4189,30 @@ * tests/unit/capi/GEOSContainsTest.cpp, tests/unit/capi/GEOSPreparedGeometryTest.cpp: Add test for polygon containment where two polygons share some of vertices or vertices of - inner polygon lay on boundary of outer polygon. Tests also compare results depending on used precision model. git-svn-id: http://svn.osgeo.org/geos/trunk@4156 + inner polygon lay on boundary of outer polygon. Tests also compare + results depending on used precision model. git-svn-id: + http://svn.osgeo.org/geos/trunk@4156 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-29 Mateusz Loskot - * tests/unit/Makefile.am: Add OverlayOpUnionTest.cpp to Makefile.am git-svn-id: http://svn.osgeo.org/geos/trunk@4155 + * tests/unit/Makefile.am: Add OverlayOpUnionTest.cpp to Makefile.am + git-svn-id: http://svn.osgeo.org/geos/trunk@4155 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-29 Mateusz Loskot * tests/unit/operation/overlay/OverlayOpUnionTest.cpp: Add clean-up - missing from r4153. It should fix the failing build on Travis SI. git-svn-id: http://svn.osgeo.org/geos/trunk@4154 + missing from r4153. It should fix the failing build on Travis SI. + git-svn-id: http://svn.osgeo.org/geos/trunk@4154 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-29 Mateusz Loskot * tests/unit/operation/overlay/OverlayOpUnionTest.cpp: Add basic - test for geos::operation::OverlayOp with UNION. Test union of four segments (linestrings) of a suqare. git-svn-id: http://svn.osgeo.org/geos/trunk@4153 + test for geos::operation::OverlayOp with UNION. Test union of four + segments (linestrings) of a suqare. git-svn-id: + http://svn.osgeo.org/geos/trunk@4153 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-29 Mateusz Loskot @@ -943,7 +4220,8 @@ * capi/geos_ts_c.cpp, src/operation/intersection/RectangleIntersectionBuilder.cpp, src/operation/overlay/PolygonBuilder.cpp: Fix build with - preprocessor symbol GEOS_DEBUG defined. git-svn-id: http://svn.osgeo.org/geos/trunk@4152 + preprocessor symbol GEOS_DEBUG defined. git-svn-id: + http://svn.osgeo.org/geos/trunk@4152 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-24 Sandro Santilli @@ -951,37 +4229,44 @@ * include/geos/algorithm/PointLocator.h, src/algorithm/PointLocator.cpp, src/geom/prep/PreparedPoint.cpp, tests/unit/algorithm/PointLocatorTest.cpp: Fix incorrect return from - PreparedPoint::intersects Includes unit test Patch by Daniel Baston via - https://github.com/libgeos/libgeos/pull/60 See #764 Reverts r4081 git-svn-id: http://svn.osgeo.org/geos/trunk@4149 + PreparedPoint::intersects Includes unit test Patch by Daniel + Baston via https://github.com/libgeos/libgeos/pull/60 See #764 + Reverts r4081 git-svn-id: http://svn.osgeo.org/geos/trunk@4149 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-22 Sandro Santilli * src/algorithm/RobustDeterminant.cpp: ! FINITE already includes - NAN, duplicate test unneeded git-svn-id: http://svn.osgeo.org/geos/trunk@4147 + NAN, duplicate test unneeded git-svn-id: + http://svn.osgeo.org/geos/trunk@4147 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-17 Mateusz Loskot * tests/unit/capi/GEOSGeom_createCollection.cpp: #include - only if C++0x is available (refines r4145) git-svn-id: http://svn.osgeo.org/geos/trunk@4146 + only if C++0x is available (refines r4145) git-svn-id: + http://svn.osgeo.org/geos/trunk@4146 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-17 Mateusz Loskot * tests/unit/capi/GEOSGeom_createCollection.cpp: Enable test case - using std::array only if C++0x is available. git-svn-id: http://svn.osgeo.org/geos/trunk@4145 + using std::array only if C++0x is available. git-svn-id: + http://svn.osgeo.org/geos/trunk@4145 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-17 Mateusz Loskot * tests/unit/capi/GEOSGeom_createCollection.cpp: Add test for - GEOSGeom_createCollection function git-svn-id: http://svn.osgeo.org/geos/trunk@4144 + GEOSGeom_createCollection function git-svn-id: + http://svn.osgeo.org/geos/trunk@4144 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-02-05 Sandro Santilli - * src/io/StringTokenizer.cpp: Include in StringTokenizer Patch by Jeff Mckenna See #766 git-svn-id: http://svn.osgeo.org/geos/trunk@4142 + * src/io/StringTokenizer.cpp: Include in StringTokenizer + Patch by Jeff Mckenna See #766 git-svn-id: + http://svn.osgeo.org/geos/trunk@4142 5242fede-7e19-0410-aef8-94bd7d2200fb 2016-01-20 Paul Ramsey @@ -994,54 +4279,61 @@ src/geomgraph/index/SimpleMCSweepLineIntersector.cpp, src/operation/valid/ConsistentAreaTester.cpp, src/operation/valid/IsValidOp.cpp: #757, fix memory exhaustion case - in isvalid git-svn-id: http://svn.osgeo.org/geos/trunk@4141 + in isvalid git-svn-id: http://svn.osgeo.org/geos/trunk@4141 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-31 Sandro Santilli - * NEWS: Add missing 3.3.9 section git-svn-id: http://svn.osgeo.org/geos/trunk@4138 + * NEWS: Add missing 3.3.9 section git-svn-id: + http://svn.osgeo.org/geos/trunk@4138 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-18 Sandro Santilli * tests/xmltester/XMLTester.cpp: Add support for "relatestring" test - operation git-svn-id: http://svn.osgeo.org/geos/trunk@4136 + operation git-svn-id: http://svn.osgeo.org/geos/trunk@4136 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-17 Sandro Santilli - * CMakeLists.txt: Fix cmake build with Visual Studio 2015 Patch by Stefan Hacker Closes - https://github.com/libgeos/libgeos/pull/49 git-svn-id: http://svn.osgeo.org/geos/trunk@4135 + * CMakeLists.txt: Fix cmake build with Visual Studio 2015 Patch by + Stefan Hacker Closes + https://github.com/libgeos/libgeos/pull/49 git-svn-id: + http://svn.osgeo.org/geos/trunk@4135 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-14 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp, tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp: Fix - snapping of last segment in a closed linestring See #758 git-svn-id: http://svn.osgeo.org/geos/trunk@4129 + snapping of last segment in a closed linestring See #758 + git-svn-id: http://svn.osgeo.org/geos/trunk@4129 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-14 Sandro Santilli * tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp: - Enable a commented-out test (works) git-svn-id: http://svn.osgeo.org/geos/trunk@4128 + Enable a commented-out test (works) git-svn-id: + http://svn.osgeo.org/geos/trunk@4128 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-14 Sandro Santilli * tests/unit/io/WKBWriterTest.cpp: Tweak WKB output test to do - what's really said in the comments git-svn-id: http://svn.osgeo.org/geos/trunk@4127 + what's really said in the comments git-svn-id: + http://svn.osgeo.org/geos/trunk@4127 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-12-14 Sandro Santilli - * tests/unit/io/WKBReaderTest.cpp: Add test for parsing EWKB git-svn-id: http://svn.osgeo.org/geos/trunk@4126 + * tests/unit/io/WKBReaderTest.cpp: Add test for parsing EWKB + git-svn-id: http://svn.osgeo.org/geos/trunk@4126 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-30 Sandro Santilli * tests/unit/capi/GEOSMinimumWidthTest.cpp: Add another test for - GEOSMinimumWidth git-svn-id: http://svn.osgeo.org/geos/trunk@4125 + GEOSMinimumWidth git-svn-id: http://svn.osgeo.org/geos/trunk@4125 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-30 Sandro Santilli @@ -1050,7 +4342,8 @@ tests/unit/Makefile.am, tests/unit/capi/{GEOSMinimumDiameterTest.cpp => GEOSMinimumWidthTest.cpp}: Rename GEOSMinimumDiameter to - GEOSMinimumWidth, add docs Patch by Nyall Dawson git-svn-id: http://svn.osgeo.org/geos/trunk@4124 + GEOSMinimumWidth, add docs Patch by Nyall Dawson git-svn-id: + http://svn.osgeo.org/geos/trunk@4124 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-30 Sandro Santilli @@ -1061,38 +4354,46 @@ tests/unit/algorithm/MinimumDiameterTest.cpp, tests/unit/capi/GEOSMinimumDiameterTest.cpp, tests/unit/capi/GEOSMinimumRectangleTest.cpp: Port - MinimumDiameter::getMinimumRectangle algorithm from JTS Also add GEOSMinimumRotatedRectangle and GEOSMinimumDiameter to C - API, and re-sync MinimumDiameter with JTS r966. Includes testcases. Fixes #729. Patch by: Nyall Dawson Signed-off-by: - Sandro Santilli git-svn-id: http://svn.osgeo.org/geos/trunk@4123 + MinimumDiameter::getMinimumRectangle algorithm from JTS Also add + GEOSMinimumRotatedRectangle and GEOSMinimumDiameter to C API, and + re-sync MinimumDiameter with JTS r966. Includes testcases. Fixes + #729. Patch by: Nyall Dawson + Signed-off-by: Sandro Santilli git-svn-id: + http://svn.osgeo.org/geos/trunk@4123 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-30 Sandro Santilli * capi/geos_ts_c.cpp, include/geos/algorithm/SIRtreePointInRing.h, src/algorithm/SIRtreePointInRing.cpp: Fix some leaks identified by - Coverity Patch by Nyall Dawson git-svn-id: http://svn.osgeo.org/geos/trunk@4122 + Coverity Patch by Nyall Dawson + git-svn-id: http://svn.osgeo.org/geos/trunk@4122 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-30 Sandro Santilli * include/geos/triangulate/quadedge/Vertex.h, src/triangulate/quadedge/Vertex.cpp: Fix incorrect logic in - Vertex::classify, sync to r705 Patch by Nyall Dawson git-svn-id: http://svn.osgeo.org/geos/trunk@4121 + Vertex::classify, sync to r705 Patch by Nyall Dawson + git-svn-id: + http://svn.osgeo.org/geos/trunk@4121 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-21 Sandro Santilli * include/geos/triangulate/quadedge/QuadEdgeSubdivision.h, src/triangulate/quadedge/QuadEdgeSubdivision.cpp: use std::vector - instead of std::list to avoid size() bottleneck Patch by Daniel Baston via - https://github.com/libgeos/libgeos/pull/55 git-svn-id: http://svn.osgeo.org/geos/trunk@4119 + instead of std::list to avoid size() bottleneck Patch by Daniel + Baston via https://github.com/libgeos/libgeos/pull/55 git-svn-id: + http://svn.osgeo.org/geos/trunk@4119 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-16 Sandro Santilli * include/geos/geomgraph/EdgeEnd.h, include/geos/geomgraph/EdgeEndStar.h, src/geomgraph/EdgeEnd.cpp, - src/geomgraph/EdgeEndStar.cpp: Fix output operator for EdgeEndStar git-svn-id: http://svn.osgeo.org/geos/trunk@4118 + src/geomgraph/EdgeEndStar.cpp: Fix output operator for EdgeEndStar + git-svn-id: http://svn.osgeo.org/geos/trunk@4118 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-13 Sandro Santilli @@ -1100,32 +4401,34 @@ * include/geos/geomgraph/EdgeEndStar.h, src/geomgraph/EdgeEndStar.cpp, src/operation/relate/RelateComputer.cpp: Add output operator for - EdgeEndStar git-svn-id: http://svn.osgeo.org/geos/trunk@4117 + EdgeEndStar git-svn-id: http://svn.osgeo.org/geos/trunk@4117 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-04 Mateusz Loskot - * include/geos/platform.h.cmake: Add #define NOMINMAX for Visual C++ git-svn-id: http://svn.osgeo.org/geos/trunk@4114 + * include/geos/platform.h.cmake: Add #define NOMINMAX for Visual C++ + git-svn-id: http://svn.osgeo.org/geos/trunk@4114 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-03 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSEqualsTest.cpp: Add - test for GEOSEquals Includes disabled test for #752 git-svn-id: http://svn.osgeo.org/geos/trunk@4113 + test for GEOSEquals Includes disabled test for #752 git-svn-id: + http://svn.osgeo.org/geos/trunk@4113 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-11-02 Mateusz Loskot * CMakeLists.txt: CMake should not try to generate - geos_svn_revision.h if GEOS is built from packaged sources. Fixes - #753 git-svn-id: http://svn.osgeo.org/geos/trunk@4112 + geos_svn_revision.h if GEOS is built from packaged sources. Fixes + #753 git-svn-id: http://svn.osgeo.org/geos/trunk@4112 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-31 Sandro Santilli * include/geos/geom/GeometryFactory.h, src/geom/Geometry.cpp, src/geom/GeometryFactory.cpp: Make GeometryFactory refcount - geometry-agnostic git-svn-id: http://svn.osgeo.org/geos/trunk@4111 + geometry-agnostic git-svn-id: http://svn.osgeo.org/geos/trunk@4111 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-13 Sandro Santilli @@ -1133,41 +4436,47 @@ * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, php/geos.c, php/test/test.php, src/geom/util/GeometryEditor.cpp, tests/unit/capi/GEOSGeom_setPrecisionTest.cpp: Add a - GEOSGeom_setPrecision funciton in C-API and PHP Also fixes a bug in GeometryEditor that failed to update - GeometryFactory for empty polygons (#749) git-svn-id: http://svn.osgeo.org/geos/trunk@4109 + GEOSGeom_setPrecision funciton in C-API and PHP Also fixes a bug in + GeometryEditor that failed to update GeometryFactory for empty + polygons (#749) git-svn-id: http://svn.osgeo.org/geos/trunk@4109 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-07 Sandro Santilli * CMakeLists.txt, capi/geos_c.h.in, configure.ac: Fix CAPI - versioning (broke in r4085, after release) git-svn-id: http://svn.osgeo.org/geos/trunk@4108 + versioning (broke in r4085, after release) git-svn-id: + http://svn.osgeo.org/geos/trunk@4108 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-05 Mateusz Loskot * src/geomgraph/PlanarGraph.cpp: Use std::auto_ptr to simplify r4100 - fix of a memory leak potential git-svn-id: http://svn.osgeo.org/geos/trunk@4104 + fix of a memory leak potential git-svn-id: + http://svn.osgeo.org/geos/trunk@4104 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-04 Sandro Santilli * src/operation/buffer/BufferBuilder.cpp: Fix a few potential (one - confirmed) leak in single sided buffer See #747 git-svn-id: http://svn.osgeo.org/geos/trunk@4103 + confirmed) leak in single sided buffer See #747 git-svn-id: + http://svn.osgeo.org/geos/trunk@4103 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-04 Mateusz Loskot * src/geomgraph/PlanarGraph.cpp: Make adding edges a bit more exception safe and helps to avoid memory leaks when - PlanarGraph::add(de1) throws, leaving de2 behind. This also fixes + PlanarGraph::add(de1) throws, leaving de2 behind. This also fixes memory leak in case of self-union with NaN coordinates, revealed by - GEOSUnaryUnionTest/test<9>. git-svn-id: http://svn.osgeo.org/geos/trunk@4100 + GEOSUnaryUnionTest/test<9>. git-svn-id: + http://svn.osgeo.org/geos/trunk@4100 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot * tests/unit/triangulate/DelaunayTest.cpp: Fix memory leaks (two) - due to misuse of CoordinateArraySequence git-svn-id: http://svn.osgeo.org/geos/trunk@4099 + due to misuse of CoordinateArraySequence git-svn-id: + http://svn.osgeo.org/geos/trunk@4099 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot @@ -1183,36 +4492,50 @@ src/operation/overlay/validate/OverlayResultValidator.cpp: Clean up Windows-specific extra parenthesis around std::min/std::max which worked around min/max macros causing syntax error. The workaround is - no loner necessary since NOMINMAX placement has been corrected. git-svn-id: http://svn.osgeo.org/geos/trunk@4098 + no loner necessary since NOMINMAX placement has been corrected. + git-svn-id: http://svn.osgeo.org/geos/trunk@4098 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot * CMakeLists.txt, include/geos/timeval.h: Move Windows-specific - NOMINMAX preprocessor definition from CMake to timeval.h. Assume + NOMINMAX preprocessor definition from CMake to timeval.h. Assume timeval.h is the only place where Windows-specific headers are included. git-svn-id: http://svn.osgeo.org/geos/trunk@4097 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot - * CMakeLists.txt: Clean up CMake variables mismatch git-svn-id: http://svn.osgeo.org/geos/trunk@4096 + * CMakeLists.txt: Clean up CMake variables mismatch git-svn-id: + http://svn.osgeo.org/geos/trunk@4096 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot - * CMakeLists.txt: Tell CMake to use GEOS instead geos. git-svn-id: http://svn.osgeo.org/geos/trunk@4095 + * CMakeLists.txt: Tell CMake to use GEOS instead geos. git-svn-id: + http://svn.osgeo.org/geos/trunk@4095 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot * CMakeLists.txt: Remove CDash configuration which generates - unnecessary targets (Experimental, Nightly, Continuous) git-svn-id: http://svn.osgeo.org/geos/trunk@4094 + unnecessary targets (Experimental, Nightly, Continuous) git-svn-id: + http://svn.osgeo.org/geos/trunk@4094 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-03 Mateusz Loskot - * : Ignore .obj and some other patterns git-svn-id: http://svn.osgeo.org/geos/trunk@4093 + * : Ignore .obj and some other patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@4093 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2015-10-02 Sandro Santilli + + * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + php/geos.c, php/test/test.php, tests/unit/Makefile.am, + tests/unit/capi/GEOSGeom_setPrecisionTest.cpp: Add + GEOSGeom_setPrecision function to C-API (#713) Include unit tests + and PHP bindings git-svn-id: http://svn.osgeo.org/geos/trunk@4092 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-02 Sandro Santilli @@ -1278,93 +4601,112 @@ tests/unit/util/UniqueCoordinateArrayFilterTest.cpp, tests/xmltester/SimpleWKTTester.cpp, tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Prevent stack allocation of - GeometryFactory Geometry factory objects can be created by static methods returning - a smart pointer with automatic ownership transfer semantic. The - so-created GeometryFactory will be kept alive as long as Geometry - objects referencing it will be alive. git-svn-id: http://svn.osgeo.org/geos/trunk@4091 + GeometryFactory Geometry factory objects can be created by static + methods returning a smart pointer with automatic ownership transfer + semantic. The so-created GeometryFactory will be kept alive as long + as Geometry objects referencing it will be alive. git-svn-id: + http://svn.osgeo.org/geos/trunk@4091 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-10-01 Sandro Santilli * src/operation/buffer/BufferBuilder.cpp: Fix a memory leak in - bufferLineSingleSided The leak was exposed by an existing unit test git-svn-id: http://svn.osgeo.org/geos/trunk@4090 + bufferLineSingleSided The leak was exposed by an existing unit test + git-svn-id: http://svn.osgeo.org/geos/trunk@4090 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-09-10 Sandro Santilli - * .travis.yml: 64bit builds do not fail anymore on travis git-svn-id: http://svn.osgeo.org/geos/trunk@4089 + * .travis.yml: 64bit builds do not fail anymore on travis + git-svn-id: http://svn.osgeo.org/geos/trunk@4089 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-16 Paul Ramsey * CMakeLists.txt, HOWTO_RELEASE, NEWS, capi/geos_c.h.in, - configure.ac, include/geos/version.h.vc: Bump trunk versions to 3.6 git-svn-id: http://svn.osgeo.org/geos/trunk@4085 + configure.ac, include/geos/version.h.vc: Bump trunk versions to 3.6 + git-svn-id: http://svn.osgeo.org/geos/trunk@4085 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-14 Paul Ramsey - * : Ignore build artefacts git-svn-id: http://svn.osgeo.org/geos/trunk@4082 + * : Ignore build artefacts git-svn-id: + http://svn.osgeo.org/geos/trunk@4082 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2015-08-12 Paul Ramsey + + * src/geom/prep/PreparedPoint.cpp: Fix corner case of comparing + preparedpoint to point git-svn-id: + http://svn.osgeo.org/geos/trunk@4081 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-12 Paul Ramsey - * src/algorithm/ConvexHull.cpp: Include interrupt header, dummy git-svn-id: http://svn.osgeo.org/geos/trunk@4080 + * src/algorithm/ConvexHull.cpp: Include interrupt header, dummy + git-svn-id: http://svn.osgeo.org/geos/trunk@4080 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-12 Paul Ramsey * src/algorithm/ConvexHull.cpp: Add some interrupt checks to - ConvexHull git-svn-id: http://svn.osgeo.org/geos/trunk@4079 + ConvexHull git-svn-id: http://svn.osgeo.org/geos/trunk@4079 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-12 Paul Ramsey * include/geos/geom/prep/PreparedPoint.h, src/geom/prep/PreparedPoint.cpp: Quiet clang warning and match const - signatures on PreparedPolygon git-svn-id: http://svn.osgeo.org/geos/trunk@4078 + signatures on PreparedPolygon git-svn-id: + http://svn.osgeo.org/geos/trunk@4078 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-12 Paul Ramsey * configure.ac: Quiet 64-bit errors in OSX build by preferring - longlongint defn of 64bit to longint git-svn-id: http://svn.osgeo.org/geos/trunk@4077 + longlongint defn of 64bit to longint git-svn-id: + http://svn.osgeo.org/geos/trunk@4077 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-12 Regina Obe * src/inlines.cpp: #736 3.5.0-dev compilation errors on MinGW - okay committed too fast. This one works but may screw up real mingw - people git-svn-id: http://svn.osgeo.org/geos/trunk@4076 + people git-svn-id: http://svn.osgeo.org/geos/trunk@4076 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-11 Regina Obe - * src/inlines.cpp: #736 3.5.0-dev compilation errors on MinGW git-svn-id: http://svn.osgeo.org/geos/trunk@4075 + * src/inlines.cpp: #736 3.5.0-dev compilation errors on MinGW + git-svn-id: http://svn.osgeo.org/geos/trunk@4075 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-06 Mateusz Loskot - * .travis.yml: Allow failure for CMake x64 build on Travis CI. This should eliminate unimportant signal and keep the core GEOS - builds green. git-svn-id: http://svn.osgeo.org/geos/trunk@4072 + * .travis.yml: Allow failure for CMake x64 build on Travis CI. This + should eliminate unimportant signal and keep the core GEOS builds + green. git-svn-id: http://svn.osgeo.org/geos/trunk@4072 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-05 Mateusz Loskot * tools/ci/before_install.sh, tools/ci/before_install_autotools.sh, tools/ci/before_install_cmake.sh: Delete scripts no longer used in - container-based Travis CI git-svn-id: http://svn.osgeo.org/geos/trunk@4069 + container-based Travis CI git-svn-id: + http://svn.osgeo.org/geos/trunk@4069 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-05 Mateusz Loskot * .travis.yml: First stab at migrating travis builds to container - architecture (#739) git-svn-id: http://svn.osgeo.org/geos/trunk@4068 + architecture (#739) git-svn-id: + http://svn.osgeo.org/geos/trunk@4068 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-08-04 Sandro Santilli * NEWS, php/geos.c, php/test/test.php: Expose clipByRect to PHP - bindings (#734) git-svn-id: http://svn.osgeo.org/geos/trunk@4067 + bindings (#734) git-svn-id: http://svn.osgeo.org/geos/trunk@4067 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-28 Mateusz Loskot @@ -1372,38 +4714,42 @@ * src/algorithm/LineIntersector.cpp, src/io/WKTWriter.cpp, src/operation/buffer/BufferOp.cpp, src/operation/buffer/OffsetCurveSetBuilder.cpp: Include - which defines NOMINMAX on Windows/VC++. Closes + which defines NOMINMAX on Windows/VC++. Closes ticket #701. git-svn-id: http://svn.osgeo.org/geos/trunk@4064 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-28 Mateusz Loskot * src/Makefile.vc, src/dirlist.mk: Add operation/intersection/*.cpp - to NMAKE makefiles git-svn-id: http://svn.osgeo.org/geos/trunk@4063 + to NMAKE makefiles git-svn-id: http://svn.osgeo.org/geos/trunk@4063 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-28 Mateusz Loskot - * nmake.opt: Add NMAKE version from released Visual Studio 2015 git-svn-id: http://svn.osgeo.org/geos/trunk@4062 + * nmake.opt: Add NMAKE version from released Visual Studio 2015 + git-svn-id: http://svn.osgeo.org/geos/trunk@4062 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-20 Sandro Santilli * capi/geos_ts_c.cpp: Initialize all members of GEOSContextHandle_HS - on construction git-svn-id: http://svn.osgeo.org/geos/trunk@4061 + on construction git-svn-id: http://svn.osgeo.org/geos/trunk@4061 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-20 Sandro Santilli * NEWS, capi/geos_c.h.in, capi/geos_ts_c.cpp: Extend error and - notice notification with threadsafe variants (#663) Patch by Pepijn Van Eeckhoudt Tested by - Alessandro Furieri Signed-off-by: Sandro Santilli git-svn-id: http://svn.osgeo.org/geos/trunk@4060 + notice notification with threadsafe variants (#663) Patch by Pepijn + Van Eeckhoudt Tested by Alessandro Furieri + Signed-off-by: Sandro Santilli + git-svn-id: http://svn.osgeo.org/geos/trunk@4060 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-19 Sandro Santilli * src/operation/intersection/RectangleIntersectionBuilder.cpp: Add - missing include (thanks Alessandro Furieri) git-svn-id: http://svn.osgeo.org/geos/trunk@4059 + missing include (thanks Alessandro Furieri) git-svn-id: + http://svn.osgeo.org/geos/trunk@4059 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-07-07 Mateusz Loskot @@ -1415,18 +4761,20 @@ 2015-05-18 Mateusz Loskot * nmake.opt: Merged revision(s) 4056 from branches/3.4: Fixed build - configuration for NMAKE with Visual Leak Detector enabled (#715) git-svn-id: http://svn.osgeo.org/geos/trunk@4057 + configuration for NMAKE with Visual Leak Detector enabled (#715) + git-svn-id: http://svn.osgeo.org/geos/trunk@4057 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-04-30 Mateusz Loskot - * nmake.opt: Add NMAKE version from Visual Studio 2015 RC git-svn-id: http://svn.osgeo.org/geos/trunk@4054 + * nmake.opt: Add NMAKE version from Visual Studio 2015 RC + git-svn-id: http://svn.osgeo.org/geos/trunk@4054 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-04-20 Sandro Santilli * tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp: Fix unused - variables warnings git-svn-id: http://svn.osgeo.org/geos/trunk@4053 + variables warnings git-svn-id: http://svn.osgeo.org/geos/trunk@4053 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-04-20 Sandro Santilli @@ -1440,49 +4788,58 @@ src/operation/linemerge/EdgeString.cpp, src/operation/polygonize/EdgeRing.cpp, tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp: Cleanup - CoordinateSequenceFactory interface Adds method for creating empty sequence. Syncronizes - CoordinateArraySequenceFactory methods. Patch by Sandro Mani, see https://github.com/libgeos/libgeos/pull/46 git-svn-id: http://svn.osgeo.org/geos/trunk@4052 + CoordinateSequenceFactory interface Adds method for creating empty + sequence. Syncronizes CoordinateArraySequenceFactory methods. Patch + by Sandro Mani, see https://github.com/libgeos/libgeos/pull/46 + git-svn-id: http://svn.osgeo.org/geos/trunk@4052 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-04-16 Mateusz Loskot * tests/unit/capi/GEOSPreparedGeometryTest.cpp: Replace geos.h with - specific headers from C++ API. Replace WKBReader with - GEOSGeomFromHEX_buf where the former is unnecessary. This addresses Sandro's review comment from + specific headers from C++ API. Replace WKBReader with + GEOSGeomFromHEX_buf where the former is unnecessary. This addresses + Sandro's review comment from - https://github.com/libgeos/libgeos/commit/7196b9a2e5a3ebc393a1810f6c7d841a00b50844#commitcomment-10731724git-svn-id: http://svn.osgeo.org/geos/trunk@4051 - 5242fede-7e19-0410-aef8-94bd7d2200fb + https://github.com/libgeos/libgeos/commit/7196b9a2e5a3ebc393a1810f6c7d841a00b50844#commitcomment-10731724 git-svn-id: http://svn.osgeo.org/geos/trunk@4051 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-04-10 Sandro Santilli - * tests/unit/Makefile.am: Enable GEOSisClosed test git-svn-id: http://svn.osgeo.org/geos/trunk@4050 + * tests/unit/Makefile.am: Enable GEOSisClosed test git-svn-id: + http://svn.osgeo.org/geos/trunk@4050 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-04-10 Sandro Santilli * NEWS, capi/geos_ts_c.cpp, tests/unit/capi/GEOSisClosedTest.cpp: - Support for MultiLineString->isClosed() in C API Includes tests for GEOSisClosed() in C API Patch by Benjamin Morel git-svn-id: http://svn.osgeo.org/geos/trunk@4049 + Support for MultiLineString->isClosed() in C API Includes tests for + GEOSisClosed() in C API Patch by Benjamin Morel + git-svn-id: + http://svn.osgeo.org/geos/trunk@4049 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-03-02 Sandro Santilli * src/operation/overlay/OverlayOp.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSIntersectionTest.cpp: Fix memory leak in - extent-limited overlay operations The leak was introduced by recent enhancement of the class to - support extent-limited operation. It was spotted by Mick Orridge who - also provided the testcase, thanks ! Fixes #719 git-svn-id: http://svn.osgeo.org/geos/trunk@4048 + extent-limited overlay operations The leak was introduced by recent + enhancement of the class to support extent-limited operation. It was + spotted by Mick Orridge who also provided the testcase, thanks ! + Fixes #719 git-svn-id: http://svn.osgeo.org/geos/trunk@4048 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-02-03 Sandro Santilli - * README.md: Add github-friendly README.md file contains travis build status and reference to actual README git-svn-id: http://svn.osgeo.org/geos/trunk@4047 + * README.md: Add github-friendly README.md file contains travis + build status and reference to actual README git-svn-id: + http://svn.osgeo.org/geos/trunk@4047 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-01-23 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug569.xml: Add (succeeding) test for - reported bug #569 git-svn-id: http://svn.osgeo.org/geos/trunk@4046 + reported bug #569 git-svn-id: http://svn.osgeo.org/geos/trunk@4046 5242fede-7e19-0410-aef8-94bd7d2200fb 2015-01-19 Sandro Santilli @@ -1491,21 +4848,25 @@ src/algorithm/CGAlgorithms.cpp, src/algorithm/RayCrossingCounter.cpp, tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug716.xml: Improve robustness of - intersection testing (#716) RayCrossingCounter uses orientationIndex to handle floating point - precision errors the same way as LineIntersector. Includes testcase for ticket #716 with CW and CCW polygons Patch by Asmund Tokheim git-svn-id: http://svn.osgeo.org/geos/trunk@4040 + intersection testing (#716) RayCrossingCounter uses + orientationIndex to handle floating point precision errors the same + way as LineIntersector. Includes testcase for ticket #716 with CW + and CCW polygons Patch by Asmund Tokheim + git-svn-id: http://svn.osgeo.org/geos/trunk@4040 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-12-05 Mateusz Loskot * tests/unit/algorithm/RobustLineIntersectorTest.cpp, tests/unit/capi/GEOSPreparedGeometryTest.cpp: Add two test cases, - point-on-segment and point-on-vertex. Curious detail of the tests is that points of interest have nearly - exact X of tested points, the values differ after 14th decimal - place. The tests provided test geometries for intersection with and - without coordinates trimming after the 14th place (as per Martin - Davis suggestion). It has been extensively discussed in Ticket #591 - and https://github.com/libgeos/libgeos/pull/40 with Martin Davis' - input. git-svn-id: http://svn.osgeo.org/geos/trunk@4038 + point-on-segment and point-on-vertex. Curious detail of the tests + is that points of interest have nearly exact X of tested points, the + values differ after 14th decimal place. The tests provided test + geometries for intersection with and without coordinates trimming + after the 14th place (as per Martin Davis suggestion). It has been + extensively discussed in Ticket #591 and + https://github.com/libgeos/libgeos/pull/40 with Martin Davis' input. + git-svn-id: http://svn.osgeo.org/geos/trunk@4038 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-26 Mateusz Loskot @@ -1514,85 +4875,101 @@ Paul Kohut for the patch submitted as part of https://github.com/libgeos/libgeos/pull/31/) Apparently, it solves the long running INF/NAN parsing issues on Windows and enables - GEOSisValidDetail test pass again. It should also solve problems - reported as part of ticket #509. git-svn-id: http://svn.osgeo.org/geos/trunk@4037 + GEOSisValidDetail test pass again. It should also solve problems + reported as part of ticket #509. git-svn-id: + http://svn.osgeo.org/geos/trunk@4037 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-26 Mateusz Loskot * CMakeLists.txt, cmake/modules/GenerateSourceGroups.cmake, include/CMakeLists.txt, src/CMakeLists.txt, tests/CMakeLists.txt, - tests/unit/CMakeLists.txt: Add GenerateSourceGroups macro. Attempt - to generate source_group for IDEs reflecting folders structure. No - functional changes to build configuration included. git-svn-id: http://svn.osgeo.org/geos/trunk@4036 + tests/unit/CMakeLists.txt: Add GenerateSourceGroups macro. Attempt + to generate source_group for IDEs reflecting folders structure. No + functional changes to build configuration included. git-svn-id: + http://svn.osgeo.org/geos/trunk@4036 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-12 Sandro Santilli * tools/svn_repo_revision.sh: Fix revision extracter for calls from - external build dir git-svn-id: http://svn.osgeo.org/geos/trunk@4035 + external build dir git-svn-id: http://svn.osgeo.org/geos/trunk@4035 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-12 Sandro Santilli * tests/xmltester/XMLTester.cpp: Add interruptability support to - XMLTester (trigger with SIGTERM) git-svn-id: http://svn.osgeo.org/geos/trunk@4034 + XMLTester (trigger with SIGTERM) git-svn-id: + http://svn.osgeo.org/geos/trunk@4034 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-12 Sandro Santilli - * .gitignore: Ignore more generated files git-svn-id: http://svn.osgeo.org/geos/trunk@4033 + * .gitignore: Ignore more generated files git-svn-id: + http://svn.osgeo.org/geos/trunk@4033 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-11 Sandro Santilli * src/geomgraph/GeometryGraph.cpp, src/geomgraph/PlanarGraph.cpp, src/operation/relate/RelateComputer.cpp: Further enhance RelateOp - interruptibility (#711) Adds interruptibility calls in GeometryGraph and RelateComputer Funded by CartoDB git-svn-id: http://svn.osgeo.org/geos/trunk@4031 + interruptibility (#711) Adds interruptibility calls in + GeometryGraph and RelateComputer Funded by CartoDB git-svn-id: + http://svn.osgeo.org/geos/trunk@4031 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-10 Sandro Santilli * src/geomgraph/index/SimpleMCSweepLineIntersector.cpp: Make - RelateComputer interruptible (#711) Injects interruptibility calls in SimpleMCSweepLineIntersector Funded by CartoDB git-svn-id: http://svn.osgeo.org/geos/trunk@4030 + RelateComputer interruptible (#711) Injects interruptibility calls + in SimpleMCSweepLineIntersector Funded by CartoDB git-svn-id: + http://svn.osgeo.org/geos/trunk@4030 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-11-04 Sandro Santilli * php/geos.c, php/test/test.php: Fix build of PHP bindings with PHP - < 5.3.99 (#709) Tested with php 5.3.2 Thanks KayMadejski for the report git-svn-id: http://svn.osgeo.org/geos/trunk@4027 + < 5.3.99 (#709) Tested with php 5.3.2 Thanks KayMadejski for the + report git-svn-id: http://svn.osgeo.org/geos/trunk@4027 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-25 Sandro Santilli * tests/unit/operation/intersection/RectangleIntersectionTest.cpp: - Reduce max number of tests to 255, in case it makes clang happier See https://travis-ci.org/libgeos/libgeos/jobs/36269669 git-svn-id: http://svn.osgeo.org/geos/trunk@4026 + Reduce max number of tests to 255, in case it makes clang happier + See https://travis-ci.org/libgeos/libgeos/jobs/36269669 git-svn-id: + http://svn.osgeo.org/geos/trunk@4026 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-25 Sandro Santilli * src/operation/intersection/RectangleIntersection.cpp, tests/unit/operation/intersection/RectangleIntersectionTest.cpp: Fix - another boundary bug in RectangleIntersection git-svn-id: http://svn.osgeo.org/geos/trunk@4025 + another boundary bug in RectangleIntersection git-svn-id: + http://svn.osgeo.org/geos/trunk@4025 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-25 Sandro Santilli * src/operation/intersection/RectangleIntersection.cpp: Fix bug in - RectangleIntersection on finding rect fully contained git-svn-id: http://svn.osgeo.org/geos/trunk@4024 + RectangleIntersection on finding rect fully contained git-svn-id: + http://svn.osgeo.org/geos/trunk@4024 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-25 Sandro Santilli * src/operation/intersection/RectangleIntersection.cpp: Fix bug in - RectangleIntersection (was cought by testsuite too!) git-svn-id: http://svn.osgeo.org/geos/trunk@4023 + RectangleIntersection (was cought by testsuite too!) git-svn-id: + http://svn.osgeo.org/geos/trunk@4023 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-25 Sandro Santilli * src/geomgraph/GeometryGraph.cpp, src/operation/overlay/OverlayOp.cpp: Remove debugging lines, reduce - cost of envelope filter ... when the filter envelope fully convers the geometry envelope git-svn-id: http://svn.osgeo.org/geos/trunk@4022 + cost of envelope filter ... when the filter envelope fully convers + the geometry envelope git-svn-id: + http://svn.osgeo.org/geos/trunk@4022 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-25 Sandro Santilli @@ -1610,22 +4987,28 @@ src/operation/intersection/RectangleIntersectionBuilder.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSClipByRectTest.cpp, tests/unit/operation/intersection/RectangleIntersectionTest.cpp: Add - optimized RectangleIntersection functionality Includes: C++ API, with tests C-API GEOSClipByRect, with tests Initial C++ code provided by Mika Heiskanen. Modified by me to work - with arbitrarily ordered polygon ring vertices. See #699 for background git-svn-id: http://svn.osgeo.org/geos/trunk@4021 + optimized RectangleIntersection functionality Includes: C++ API, + with tests C-API GEOSClipByRect, with tests Initial C++ code + provided by Mika Heiskanen. Modified by me to work with arbitrarily + ordered polygon ring vertices. See #699 for background git-svn-id: + http://svn.osgeo.org/geos/trunk@4021 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-24 Sandro Santilli - * php/geos.c: Fixed compilation against thread-safe PHP (ZTS) Closes #541 Patch-by: Benjamin Morel - Signed-off-by: Sandro Santilli git-svn-id: http://svn.osgeo.org/geos/trunk@4019 + * php/geos.c: Fixed compilation against thread-safe PHP (ZTS) + Closes #541 Patch-by: Benjamin Morel + Signed-off-by: Sandro Santilli git-svn-id: + http://svn.osgeo.org/geos/trunk@4019 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-23 Sandro Santilli * include/geos/operation/overlay/OverlayOp.h, src/operation/overlay/OverlayOp.cpp: Further speedup - difference/intersection at the validating phase This avoids to insert to the output graph edges which do not - intersect the target envelope. git-svn-id: http://svn.osgeo.org/geos/trunk@4018 + difference/intersection at the validating phase This avoids to + insert to the output graph edges which do not intersect the target + envelope. git-svn-id: http://svn.osgeo.org/geos/trunk@4018 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-23 Sandro Santilli @@ -1635,100 +5018,118 @@ include/geos/operation/overlay/OverlayOp.h, src/geomgraph/GeometryGraph.cpp, src/operation/overlay/OverlayOp.cpp: OverlayOp: restrict - intersection computations to the target extent Speeds up INTERSECTION and DIFFERENCE operations between geometries - with small bounding box overlap. git-svn-id: http://svn.osgeo.org/geos/trunk@4017 + intersection computations to the target extent Speeds up + INTERSECTION and DIFFERENCE operations between geometries with small + bounding box overlap. git-svn-id: + http://svn.osgeo.org/geos/trunk@4017 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-22 Sandro Santilli - * php/test/test.php: Refactored PHP bindings tests Patch by Benjamin Morel git-svn-id: http://svn.osgeo.org/geos/trunk@4016 + * php/test/test.php: Refactored PHP bindings tests Patch by + Benjamin Morel git-svn-id: + http://svn.osgeo.org/geos/trunk@4016 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-22 Sandro Santilli * NEWS, php/geos.c, php/test/test.php: Add WKBReader::read() & - WKBWriter::write() PHP bindings Includes tests. Patch by Benjamin Morel Signed-off-by: Sandro Santilli git-svn-id: http://svn.osgeo.org/geos/trunk@4015 + WKBWriter::write() PHP bindings Includes tests. Patch by Benjamin + Morel Signed-off-by: Sandro Santilli + git-svn-id: http://svn.osgeo.org/geos/trunk@4015 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-19 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Report - time it took to run each test git-svn-id: http://svn.osgeo.org/geos/trunk@4014 + time it took to run each test git-svn-id: + http://svn.osgeo.org/geos/trunk@4014 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-19 Sandro Santilli * php/test/test.php: Normalize voronoi diagram results for comparing - to expected output git-svn-id: http://svn.osgeo.org/geos/trunk@4013 + to expected output git-svn-id: http://svn.osgeo.org/geos/trunk@4013 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-19 Sandro Santilli * src/operation/overlay/Makefile.am, src/planargraph/Makefile.am, tests/unit/Makefile.am, tests/xmltester/Makefile.am: Add - AUTOMAKE_OPTIONS = subdir-objects, to please automake 1.14.1 git-svn-id: http://svn.osgeo.org/geos/trunk@4012 + AUTOMAKE_OPTIONS = subdir-objects, to please automake 1.14.1 + git-svn-id: http://svn.osgeo.org/geos/trunk@4012 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-17 Sandro Santilli * php/test/test.php: Accept differently-structured but point-set - equivalent intersection result git-svn-id: http://svn.osgeo.org/geos/trunk@4011 + equivalent intersection result git-svn-id: + http://svn.osgeo.org/geos/trunk@4011 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-17 Sandro Santilli * tests/xmltester/tests/testLeaksBig.xml: Remove more duplicated - tests Tests were found in TestFunctionAA.xml, TestFunctionLA.xml + tests Tests were found in TestFunctionAA.xml, TestFunctionLA.xml TestFunctionPA.xml TestFunctionPL.xml TestFunctionPP.xml - TestFunctionLLPrec.xml, TestRelatePP.xml git-svn-id: http://svn.osgeo.org/geos/trunk@4010 + TestFunctionLLPrec.xml, TestRelatePP.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@4010 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-16 Sandro Santilli - * tests/xmltester/tests/testLeaksBig.xml: Remove duplicated tests The removed tests are already present in other xml files under - general/ There's more to drop here too... git-svn-id: http://svn.osgeo.org/geos/trunk@4009 + * tests/xmltester/tests/testLeaksBig.xml: Remove duplicated tests + The removed tests are already present in other xml files under + general/ There's more to drop here too... git-svn-id: + http://svn.osgeo.org/geos/trunk@4009 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-16 Sandro Santilli * tests/unit/capi/GEOSVoronoiDiagramTest.cpp: Add some tolerance to - VoronoiDiagram tester git-svn-id: http://svn.osgeo.org/geos/trunk@4008 + VoronoiDiagram tester git-svn-id: + http://svn.osgeo.org/geos/trunk@4008 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-16 Sandro Santilli * src/triangulate/quadedge/QuadEdgeSubdivision.cpp, tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp: Do not - output duplicated vertices from QuadEdgeSubdivision class (#705) Includes testcase git-svn-id: http://svn.osgeo.org/geos/trunk@4007 + output duplicated vertices from QuadEdgeSubdivision class (#705) + Includes testcase git-svn-id: http://svn.osgeo.org/geos/trunk@4007 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-16 Sandro Santilli * tests/unit/Makefile.am, tests/unit/geom/Geometry/normalize.cpp: - Add tests for Geometry->normalize() git-svn-id: http://svn.osgeo.org/geos/trunk@4006 + Add tests for Geometry->normalize() git-svn-id: + http://svn.osgeo.org/geos/trunk@4006 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-16 Sandro Santilli * tests/unit/triangulate/VoronoiTest.cpp: Have VoronoiTest print - expected/obtained on failure git-svn-id: http://svn.osgeo.org/geos/trunk@4005 + expected/obtained on failure git-svn-id: + http://svn.osgeo.org/geos/trunk@4005 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-15 Sandro Santilli * NEWS, php/geos.c, php/test/test.php: Expose Geometry->normalize() - method in PHP binding git-svn-id: http://svn.osgeo.org/geos/trunk@4004 + method in PHP binding git-svn-id: + http://svn.osgeo.org/geos/trunk@4004 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-15 Sandro Santilli * tests/unit/capi/GEOSVoronoiDiagramTest.cpp: Normalize result - before comparing git-svn-id: http://svn.osgeo.org/geos/trunk@4003 + before comparing git-svn-id: http://svn.osgeo.org/geos/trunk@4003 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-12 Sandro Santilli - * .gitignore: More ignores... git-svn-id: http://svn.osgeo.org/geos/trunk@4002 + * .gitignore: More ignores... git-svn-id: + http://svn.osgeo.org/geos/trunk@4002 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-09-09 Sandro Santilli @@ -1737,68 +5138,81 @@ tests/unit/Makefile.am, tests/unit/geom/EnvelopeTest.cpp, tests/unit/geom/Geometry/equalsTest.cpp, tests/unit/geom/PointTest.cpp: Fix Empty to Empty equals response - (#703) git-svn-id: http://svn.osgeo.org/geos/trunk@4001 + (#703) git-svn-id: http://svn.osgeo.org/geos/trunk@4001 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-08-25 Sandro Santilli - * include/geos/platform.h.in: Fix OpenBSD build (#700) git-svn-id: http://svn.osgeo.org/geos/trunk@3996 + * include/geos/platform.h.in: Fix OpenBSD build (#700) git-svn-id: + http://svn.osgeo.org/geos/trunk@3996 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-08-09 Regina Obe - * CMakeLists.txt: #698 patch to support MSVC12 and MSVC13 git-svn-id: http://svn.osgeo.org/geos/trunk@3995 + * CMakeLists.txt: #698 patch to support MSVC12 and MSVC13 + git-svn-id: http://svn.osgeo.org/geos/trunk@3995 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-30 Sandro Santilli * tests/xmltester/tests/general/MISSING: TestUnaryUnion.xml was - ported git-svn-id: http://svn.osgeo.org/geos/trunk@3992 + ported git-svn-id: http://svn.osgeo.org/geos/trunk@3992 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-30 Sandro Santilli * NEWS, capi/geos_c.h.in: Allow C-API users to hide non-reentrant - section Define GEOS_USE_ONLY_R_API to obtain a compile-time error when - trying to use non-reentrant functions. Patch by Even Rouault (#695) git-svn-id: http://svn.osgeo.org/geos/trunk@3991 + section Define GEOS_USE_ONLY_R_API to obtain a compile-time error + when trying to use non-reentrant functions. Patch by Even Rouault + (#695) git-svn-id: http://svn.osgeo.org/geos/trunk@3991 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-29 Sandro Santilli * include/geos/util/IllegalArgumentException.h, include/geos/util/UnsupportedOperationException.h: Typoes fixed in - comments Patches by Jochen Topf: https://github.com/libgeos/libgeos/pull/34 https://github.com/libgeos/libgeos/pull/35 git-svn-id: http://svn.osgeo.org/geos/trunk@3990 + comments Patches by Jochen Topf: + https://github.com/libgeos/libgeos/pull/34 + https://github.com/libgeos/libgeos/pull/35 git-svn-id: + http://svn.osgeo.org/geos/trunk@3990 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-20 Sandro Santilli * include/geos/geom/prep/PreparedPoint.h, src/geom/prep/PreparedPoint.cpp: Revert "Fix - PreparedPoint::intersects signature to match the upper virtual" This reverts commit r3988 The non-broken signature introduces a + PreparedPoint::intersects signature to match the upper virtual" + This reverts commit r3988 The non-broken signature introduces a discrepancy between PreparedPoint::intersects and Point::intersects - See http://trac.osgeo.org/geos/ticket/694 git-svn-id: http://svn.osgeo.org/geos/trunk@3989 + See http://trac.osgeo.org/geos/ticket/694 git-svn-id: + http://svn.osgeo.org/geos/trunk@3989 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-20 Sandro Santilli * include/geos/geom/prep/PreparedPoint.h, src/geom/prep/PreparedPoint.cpp: Fix PreparedPoint::intersects - signature to match the upper virtual Thanks Mikhail Veltishchev for pointing out See - https://github.com/libgeos/libgeos/pull/33 git-svn-id: http://svn.osgeo.org/geos/trunk@3988 + signature to match the upper virtual Thanks Mikhail Veltishchev for + pointing out See https://github.com/libgeos/libgeos/pull/33 + git-svn-id: http://svn.osgeo.org/geos/trunk@3988 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-20 Sandro Santilli * macros/ruby.m4, swig/ruby/Makefile.am, swig/ruby/geos_wrap.cxx: - Update ruby binding build scripts Build succeeds with ruby1.9.1-dev. Swig wrapper updated. See - https://github.com/libgeos/libgeos/pull/22 git-svn-id: http://svn.osgeo.org/geos/trunk@3987 + Update ruby binding build scripts Build succeeds with + ruby1.9.1-dev. Swig wrapper updated. See + https://github.com/libgeos/libgeos/pull/22 git-svn-id: + http://svn.osgeo.org/geos/trunk@3987 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-06-20 Sandro Santilli * include/geos/index/strtree/Interval.h, src/index/strtree/Interval.cpp, src/index/strtree/SIRtree.cpp: Clean - up strtree::Interval interface Set const-correctness, drop useless copy-ctor-like method git-svn-id: http://svn.osgeo.org/geos/trunk@3986 + up strtree::Interval interface Set const-correctness, drop useless + copy-ctor-like method git-svn-id: + http://svn.osgeo.org/geos/trunk@3986 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-05-21 Sandro Santilli @@ -1807,13 +5221,15 @@ capi/geos_ts_c.cpp, php/geos.c, php/test/test.php, swig/python/geos.py, swig/python/geos_wrap.cxx, tests/unit/capi/GEOSVoronoiDiagramTest.cpp: Change - GEOSVoronoiDiagram signature to accept optional clip extent With this change I'll consider voronoi API final git-svn-id: http://svn.osgeo.org/geos/trunk@3985 + GEOSVoronoiDiagram signature to accept optional clip extent With + this change I'll consider voronoi API final git-svn-id: + http://svn.osgeo.org/geos/trunk@3985 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-05-21 Sandro Santilli * php/geos.c, php/test/test.php: Expose Geometry.voronoiDiagram in - PHP interface git-svn-id: http://svn.osgeo.org/geos/trunk@3984 + PHP interface git-svn-id: http://svn.osgeo.org/geos/trunk@3984 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-05-21 Sandro Santilli @@ -1824,9 +5240,10 @@ src/triangulate/VoronoiDiagramBuilder.cpp, src/triangulate/quadedge/QuadEdgeSubdivision.cpp, tests/unit/capi/GEOSVoronoiDiagramTest.cpp: Fix GEOSVoronoiDiagram - on requesting edges only Before this fix asking for edges would return the edges of the - triangle used as abase for the Voronoi diagram. After, we return - the actual voronoi cell edges. git-svn-id: http://svn.osgeo.org/geos/trunk@3983 + on requesting edges only Before this fix asking for edges would + return the edges of the triangle used as abase for the Voronoi + diagram. After, we return the actual voronoi cell edges. + git-svn-id: http://svn.osgeo.org/geos/trunk@3983 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-05-07 Mateusz Loskot @@ -1834,37 +5251,43 @@ * nmake.opt, src/algorithm/LineIntersector.cpp, src/geom/LineSegment.cpp, src/io/WKTWriter.cpp, src/operation/buffer/OffsetCurveSetBuilder.cpp: Apply minimal - changes to enable building with Visual Studio 2013 (Ticket #691) git-svn-id: http://svn.osgeo.org/geos/trunk@3981 + changes to enable building with Visual Studio 2013 (Ticket #691) + git-svn-id: http://svn.osgeo.org/geos/trunk@3981 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-03-29 Sandro Santilli * src/operation/polygonize/EdgeRing.cpp: Polygonizer: do not pretend - all exceptions are due to edge invalidity git-svn-id: http://svn.osgeo.org/geos/trunk@3978 + all exceptions are due to edge invalidity git-svn-id: + http://svn.osgeo.org/geos/trunk@3978 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-03-28 Sandro Santilli * src/operation/polygonize/Polygonizer.cpp: Make polygonize - operation interruptable git-svn-id: http://svn.osgeo.org/geos/trunk@3977 + operation interruptable git-svn-id: + http://svn.osgeo.org/geos/trunk@3977 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-03-17 Sandro Santilli - * src/Makefile.vc: Fix nmake build (#689) git-svn-id: http://svn.osgeo.org/geos/trunk@3976 + * src/Makefile.vc: Fix nmake build (#689) git-svn-id: + http://svn.osgeo.org/geos/trunk@3976 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-03-16 Sandro Santilli * tests/unit/geom/CoordinateArraySequenceTest.cpp, tests/unit/io/WKBWriterTest.cpp: Include from unit tests - (#686) git-svn-id: http://svn.osgeo.org/geos/trunk@3975 + (#686) git-svn-id: http://svn.osgeo.org/geos/trunk@3975 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-02-11 Sandro Santilli - * capi/Makefile.am: Include AM_CPPFLAGS in target-specific CPPFLAGS Attempt to fix build on travis (with automake 1.11.3) See - http://travis-ci.org/libgeos/libgeos/jobs/18602776#L2519 git-svn-id: http://svn.osgeo.org/geos/trunk@3974 + * capi/Makefile.am: Include AM_CPPFLAGS in target-specific CPPFLAGS + Attempt to fix build on travis (with automake 1.11.3) See + http://travis-ci.org/libgeos/libgeos/jobs/18602776#L2519 + git-svn-id: http://svn.osgeo.org/geos/trunk@3974 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-02-10 Sandro Santilli @@ -1898,51 +5321,60 @@ tests/perf/operation/buffer/Makefile.am, tests/perf/operation/predicate/Makefile.am, tests/thread/Makefile.am, tests/unit/Makefile.am, - tests/xmltester/Makefile.am: Rename INCLUDES to AM_CPPFLAGS Fixes aclocal 1.13.3 warning: 'INCLUDES' is the old name for - 'AM_CPPFLAGS' (or '*_CPPFLAGS') Also tested with aclocal 1.11.1 git-svn-id: http://svn.osgeo.org/geos/trunk@3973 + tests/xmltester/Makefile.am: Rename INCLUDES to AM_CPPFLAGS Fixes + aclocal 1.13.3 warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' + (or '*_CPPFLAGS') Also tested with aclocal 1.11.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@3973 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-02-10 Sandro Santilli * configure.in => configure.ac: Renamed configure.in to configure.ac - (#683) Tested with GNU automake 1.13.3 and 1.11.1 git-svn-id: http://svn.osgeo.org/geos/trunk@3972 + (#683) Tested with GNU automake 1.13.3 and 1.11.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@3972 5242fede-7e19-0410-aef8-94bd7d2200fb 2014-02-10 Mateusz Loskot * src/inlines.cpp: Replace use of non-existent DLL_EXPORT with - GEOS_DLL_EXPORT (Ticket #681) git-svn-id: http://svn.osgeo.org/geos/trunk@3971 + GEOS_DLL_EXPORT (Ticket #681) git-svn-id: + http://svn.osgeo.org/geos/trunk@3971 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-12-10 Sandro Santilli - * swig/ruby/Makefile.am: Fix Ruby automake There is a typo or error in the automake file that prevents the Ruby - library from being found or properly linked in. Patch by "J. Ryan Earl" See - https://github.com/libgeos/libgeos/pull/32 git-svn-id: http://svn.osgeo.org/geos/trunk@3966 + * swig/ruby/Makefile.am: Fix Ruby automake There is a typo or error + in the automake file that prevents the Ruby library from being found + or properly linked in. Patch by "J. Ryan Earl" + See https://github.com/libgeos/libgeos/pull/32 git-svn-id: + http://svn.osgeo.org/geos/trunk@3966 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-12-10 Sandro Santilli * src/io/WKBReader.cpp, tests/unit/io/WKBReaderTest.cpp: Throw a - ParseException on missing chars from HEXWKB string (#675) Includes testcase. git-svn-id: http://svn.osgeo.org/geos/trunk@3964 + ParseException on missing chars from HEXWKB string (#675) Includes + testcase. git-svn-id: http://svn.osgeo.org/geos/trunk@3964 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-11-19 Mateusz Loskot - * nmake.opt: Add NMAKE version from VS2012 Update 4 git-svn-id: http://svn.osgeo.org/geos/trunk@3963 + * nmake.opt: Add NMAKE version from VS2012 Update 4 git-svn-id: + http://svn.osgeo.org/geos/trunk@3963 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-11-19 Sandro Santilli * src/triangulate/VoronoiDiagramBuilder.cpp, tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp: Prefer - std::max over fmax (#674) Should fix MSVC11 builds. Patches by Twiddeldidu. git-svn-id: http://svn.osgeo.org/geos/trunk@3962 + std::max over fmax (#674) Should fix MSVC11 builds. Patches by + Twiddeldidu. git-svn-id: http://svn.osgeo.org/geos/trunk@3962 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-11-19 Sandro Santilli * configure.in: Do not try to build python and ruby bindings without - swig (#673) git-svn-id: http://svn.osgeo.org/geos/trunk@3961 + swig (#673) git-svn-id: http://svn.osgeo.org/geos/trunk@3961 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-11-19 Sandro Santilli @@ -1956,27 +5388,32 @@ src/geom/util/LinearComponentExtracter.cpp, src/geom/util/Makefile.am, src/geom/util/PointExtracter.cpp, src/geom/util/PolygonExtracter.cpp: Define - ComponentCoordinateExtracter classes in .cpp file (#535) This is a workaround for a bug in GCC 4.4 failing to properly encode + ComponentCoordinateExtracter classes in .cpp file (#535) This is a + workaround for a bug in GCC 4.4 failing to properly encode inheritance info in the shared library when the class is fully - inlined. Patch by Daniel Komisar git-svn-id: http://svn.osgeo.org/geos/trunk@3960 + inlined. Patch by Daniel Komisar git-svn-id: + http://svn.osgeo.org/geos/trunk@3960 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-13 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/capi/GEOSVoronoiDiagramTest.cpp: Added onlyEdges - parameter to GEOSVoronoiDiagram (#627) Contributed by Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3959 + parameter to GEOSVoronoiDiagram (#627) Contributed by Vishal Tiwari + git-svn-id: http://svn.osgeo.org/geos/trunk@3959 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-13 Sandro Santilli * include/geos/platform.h.in: Temptative fix for ISFINITE imple with - UP-UX 11.23 build (#664) git-svn-id: http://svn.osgeo.org/geos/trunk@3957 + UP-UX 11.23 build (#664) git-svn-id: + http://svn.osgeo.org/geos/trunk@3957 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-13 Sandro Santilli - * .gitignore: ignore generated svn revision header git-svn-id: http://svn.osgeo.org/geos/trunk@3956 + * .gitignore: ignore generated svn revision header git-svn-id: + http://svn.osgeo.org/geos/trunk@3956 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-13 Sandro Santilli @@ -1984,9 +5421,10 @@ * NEWS, include/geos/triangulate/VoronoiDiagramBuilder.h, src/triangulate/VoronoiDiagramBuilder.cpp, tests/unit/triangulate/VoronoiTest.cpp: Cleanup - VoronoiDiagramBuilder interface, add NEWS item (#627) Cleanups involved removing all explicit "delete" calls trough - auto_ptr uses, moving some allocations from heap to stack and - reducing object copies. git-svn-id: http://svn.osgeo.org/geos/trunk@3955 + VoronoiDiagramBuilder interface, add NEWS item (#627) Cleanups + involved removing all explicit "delete" calls trough auto_ptr uses, + moving some allocations from heap to stack and reducing object + copies. git-svn-id: http://svn.osgeo.org/geos/trunk@3955 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-13 Sandro Santilli @@ -1995,7 +5433,8 @@ tests/unit/Makefile.am, tests/unit/capi/{GEOSVoronoiDiagramBuilderTest.cpp => GEOSVoronoiDiagramTest.cpp}: Rename CAPI method - GEOSVoronoiDiagramBuilder to GEOSVoronoiDiagram See #627 git-svn-id: http://svn.osgeo.org/geos/trunk@3954 + GEOSVoronoiDiagramBuilder to GEOSVoronoiDiagram See #627 + git-svn-id: http://svn.osgeo.org/geos/trunk@3954 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-13 Sandro Santilli @@ -2003,12 +5442,14 @@ * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSVoronoiDiagramBuilderTest.cpp: capi Voronoi - Diagram Builder + tests git-svn-id: http://svn.osgeo.org/geos/trunk@3953 + Diagram Builder + tests git-svn-id: + http://svn.osgeo.org/geos/trunk@3953 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-10 Sandro Santilli - * src/triangulate/VoronoiDiagramBuilder.cpp: Remove unneeded include git-svn-id: http://svn.osgeo.org/geos/trunk@3952 + * src/triangulate/VoronoiDiagramBuilder.cpp: Remove unneeded include + git-svn-id: http://svn.osgeo.org/geos/trunk@3952 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-10 Sandro Santilli @@ -2018,18 +5459,22 @@ src/triangulate/Makefile.am, src/triangulate/VoronoiDiagramBuilder.cpp, tests/unit/Makefile.am, tests/unit/triangulate/VoronoiTest.cpp: VoronoiDigramBuilder class + - test Contributed by Vishal Tiwari See https://github.com/libgeos/libgeos/pull/25 git-svn-id: http://svn.osgeo.org/geos/trunk@3951 + test Contributed by Vishal Tiwari See + https://github.com/libgeos/libgeos/pull/25 git-svn-id: + http://svn.osgeo.org/geos/trunk@3951 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-10 Sandro Santilli - * COPYING: Fix FSF address in license file (#662) git-svn-id: http://svn.osgeo.org/geos/trunk@3946 + * COPYING: Fix FSF address in license file (#662) git-svn-id: + http://svn.osgeo.org/geos/trunk@3946 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-07 Sandro Santilli * tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp: Hush - still-reachable valgrind report by avoiding singletons git-svn-id: http://svn.osgeo.org/geos/trunk@3945 + still-reachable valgrind report by avoiding singletons git-svn-id: + http://svn.osgeo.org/geos/trunk@3945 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-07 Sandro Santilli @@ -2037,47 +5482,68 @@ * include/geos/triangulate/quadedge/QuadEdgeSubdivision.h, src/triangulate/quadedge/QuadEdgeSubdivision.cpp, tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp: Voronoi - APIs added to QuadEdgeSubdivision class, with test added Contributed by Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3944 + APIs added to QuadEdgeSubdivision class, with test added + Contributed by Vishal Tiwari git-svn-id: + http://svn.osgeo.org/geos/trunk@3944 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-04 Mateusz Loskot - * .travis.yml: Remove myself from travis-ci notification targets git-svn-id: http://svn.osgeo.org/geos/trunk@3942 + * .travis.yml: Remove myself from travis-ci notification targets + git-svn-id: http://svn.osgeo.org/geos/trunk@3942 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-09-02 Sandro Santilli * .gitignore, .travis.yml, tools/ci/before_install.sh, - tools/ci/script.sh: Add 32-bit build in travis-ci config (#658) - Add 32-bit builds to Travis CI matrix - Install gcc-multilib on Travis CI for -m32 - Add IRC use_notice to Travis CI notifications - Set on_success and on_failure separately for IRC and email - Ignore _build - convenient for CMake builds Patch by Mateusz Loskot git-svn-id: http://svn.osgeo.org/geos/trunk@3934 + tools/ci/script.sh: Add 32-bit build in travis-ci config (#658) - + Add 32-bit builds to Travis CI matrix - Install gcc-multilib on + Travis CI for -m32 - Add IRC use_notice to Travis CI notifications - + Set on_success and on_failure separately for IRC and email - Ignore + _build - convenient for CMake builds Patch by Mateusz Loskot + git-svn-id: http://svn.osgeo.org/geos/trunk@3934 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-31 Mateusz Loskot - * : Ignore geos_svn_revision.h, compile and test-driver files git-svn-id: http://svn.osgeo.org/geos/trunk@3933 + * : Ignore geos_svn_revision.h, compile and test-driver files + git-svn-id: http://svn.osgeo.org/geos/trunk@3933 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2013-08-28 Mateusz Loskot + + * include/geos/triangulate/quadedge/QuadEdge.h, + include/geos/triangulate/quadedge/QuadEdgeSubdivision.h: Declare + QuadEdge and QuadEdgeSubdivision constructors as virtual to correct + deleting object of polymorphic type. git-svn-id: + http://svn.osgeo.org/geos/trunk@3932 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-28 Mateusz Loskot - * tests/xmltester/XMLTester.cpp: Untabify git-svn-id: http://svn.osgeo.org/geos/trunk@3931 + * tests/xmltester/XMLTester.cpp: Untabify git-svn-id: + http://svn.osgeo.org/geos/trunk@3931 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-28 Mateusz Loskot * src/operation/polygonize/EdgeRing.cpp, src/triangulate/IncrementalDelaunayTriangulator.cpp, - src/triangulate/quadedge/QuadEdgeSubdivision.cpp: * Replace while(true) with canonical for(;;) * Warnings clean-up * Untabify git-svn-id: http://svn.osgeo.org/geos/trunk@3930 + src/triangulate/quadedge/QuadEdgeSubdivision.cpp: * Replace while(true) with canonical for(;;) * Warnings clean-up * + Untabify git-svn-id: http://svn.osgeo.org/geos/trunk@3930 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-28 Mateusz Loskot * include/geos/geom/BinaryOp.h: Add explicit cast from double to - long unsigned int git-svn-id: http://svn.osgeo.org/geos/trunk@3929 + long unsigned int git-svn-id: http://svn.osgeo.org/geos/trunk@3929 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-28 Mateusz Loskot * tests/xmltester/XMLTester.cpp: Clean unsafe mix of type 'int' and - type 'bool' in operation git-svn-id: http://svn.osgeo.org/geos/trunk@3928 + type 'bool' in operation git-svn-id: + http://svn.osgeo.org/geos/trunk@3928 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-28 Mateusz Loskot @@ -2090,17 +5556,20 @@ 2013-08-28 Mateusz Loskot * tests/unit/capi/GEOSNodeTest.cpp: Replace implicit boolean - conversion with explicit nullptr test git-svn-id: http://svn.osgeo.org/geos/trunk@3926 + conversion with explicit nullptr test git-svn-id: + http://svn.osgeo.org/geos/trunk@3926 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-28 Mateusz Loskot - * include/geos/geom/BinaryOp.h: Ignore unused label git-svn-id: http://svn.osgeo.org/geos/trunk@3925 + * include/geos/geom/BinaryOp.h: Ignore unused label git-svn-id: + http://svn.osgeo.org/geos/trunk@3925 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-26 Regina Obe - * NEWS: copy over 3.4 branch news items git-svn-id: http://svn.osgeo.org/geos/trunk@3924 + * NEWS: copy over 3.4 branch news items git-svn-id: + http://svn.osgeo.org/geos/trunk@3924 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-22 Sandro Santilli @@ -2109,56 +5578,68 @@ tools/ci/before_install_autotools.sh, tools/ci/before_install_cmake.sh, tools/ci/common.sh, tools/ci/script.sh, tools/ci/script_autotools.sh, - tools/ci/script_cmake.sh: Configure Travis CI for GEOS (#657) Configurations for GCC and clang with both Autotools and CMake. - Enable IRC notifications Contributed by Mateusz Loskot git-svn-id: http://svn.osgeo.org/geos/trunk@3914 + tools/ci/script_cmake.sh: Configure Travis CI for GEOS (#657) + Configurations for GCC and clang with both Autotools and CMake. + Enable IRC notifications Contributed by Mateusz Loskot + git-svn-id: + http://svn.osgeo.org/geos/trunk@3914 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-22 Sandro Santilli - * NEWS: Stub 3.5.0 section git-svn-id: http://svn.osgeo.org/geos/trunk@3913 + * NEWS: Stub 3.5.0 section git-svn-id: + http://svn.osgeo.org/geos/trunk@3913 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-22 Sandro Santilli * include/geos/geom/Triangle.h, src/geom/Triangle.cpp, tests/unit/geom/TriangleTest.cpp: circumcentre() and det() methods - added to class Triangle Includes test for circumcentre() Contributed by Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3912 + added to class Triangle Includes test for circumcentre() + Contributed by Vishal Tiwari git-svn-id: + http://svn.osgeo.org/geos/trunk@3912 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-22 Sandro Santilli * tests/unit/capi/GEOSisValidDetailTest.cpp: Accept multiple NaN - representations (#656) git-svn-id: http://svn.osgeo.org/geos/trunk@3910 + representations (#656) git-svn-id: + http://svn.osgeo.org/geos/trunk@3910 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-21 Sandro Santilli - * CMakeLists.txt: Set JTS_PORT for CMake in sync with others .. we should really reduce the number of places version is set git-svn-id: http://svn.osgeo.org/geos/trunk@3908 + * CMakeLists.txt: Set JTS_PORT for CMake in sync with others .. we + should really reduce the number of places version is set + git-svn-id: http://svn.osgeo.org/geos/trunk@3908 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-21 Sandro Santilli * include/geos/geom/BinaryOp.h: Use a double for PrecisionModel - scale, avoiding overflows Fixes #652 git-svn-id: http://svn.osgeo.org/geos/trunk@3907 + scale, avoiding overflows Fixes #652 git-svn-id: + http://svn.osgeo.org/geos/trunk@3907 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-21 Regina Obe * include/geos/platform.h.in: #650 isnan workaround OS detection - missing NetBSD, DragonFly, Sun nuance git-svn-id: http://svn.osgeo.org/geos/trunk@3902 + missing NetBSD, DragonFly, Sun nuance git-svn-id: + http://svn.osgeo.org/geos/trunk@3902 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-20 Sandro Santilli * include/geos/triangulate/quadedge/Vertex.h, src/triangulate/quadedge/Vertex.cpp: Change operator< for Vertex to - be inlined and use Coordinate operator< git-svn-id: http://svn.osgeo.org/geos/trunk@3901 + be inlined and use Coordinate operator< git-svn-id: + http://svn.osgeo.org/geos/trunk@3901 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-20 Sandro Santilli * tests/unit/triangulate/quadedge/VertexTest.cpp: Simplify Vertext - test git-svn-id: http://svn.osgeo.org/geos/trunk@3900 + test git-svn-id: http://svn.osgeo.org/geos/trunk@3900 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-20 Sandro Santilli @@ -2166,79 +5647,96 @@ * include/geos/triangulate/quadedge/Vertex.h, src/triangulate/quadedge/Vertex.cpp, tests/unit/Makefile.am, tests/unit/triangulate/quadedge/VertexTest.cpp: operator< for Vertex - added Includes test Path by Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3899 + added Includes test Path by Vishal Tiwari git-svn-id: + http://svn.osgeo.org/geos/trunk@3899 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-19 Sandro Santilli * include/geos/Makefile.am: Install but do not distribute generated - headers These are platform.h and version.h Fixes bug #601 and the lack of - C++ headers install in releases 3.4.0 and 3.4.1 git-svn-id: http://svn.osgeo.org/geos/trunk@3896 + headers These are platform.h and version.h Fixes bug #601 and the + lack of C++ headers install in releases 3.4.0 and 3.4.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@3896 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-17 Regina Obe * CMakeLists.txt: #644 Can't build using cmake with tar ball only do svn check if there is a .svn file in source folder to ensure it - works with tar ball git-svn-id: http://svn.osgeo.org/geos/trunk@3889 + works with tar ball git-svn-id: + http://svn.osgeo.org/geos/trunk@3889 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-16 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp, tests/unit/capi/GEOSSnapTest.cpp: Fix assertion failure in snapping - code (#649) The bug affected attempts to snapping lines to the points of a - rectangle with a side smaller than the tolerance. git-svn-id: http://svn.osgeo.org/geos/trunk@3885 + code (#649) The bug affected attempts to snapping lines to the + points of a rectangle with a side smaller than the tolerance. + git-svn-id: http://svn.osgeo.org/geos/trunk@3885 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-14 Regina Obe * CMakeLists.txt, HOWTO_RELEASE: update HOWTO_RELEASE to include - bumping revision numbrs in CMake and also bump numbers in CMake. git-svn-id: http://svn.osgeo.org/geos/trunk@3883 + bumping revision numbrs in CMake and also bump numbers in CMake. + git-svn-id: http://svn.osgeo.org/geos/trunk@3883 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2013-08-11 Sandro Santilli + + * : Set correct eol-style for geos-config and testrunner (#645) + git-svn-id: http://svn.osgeo.org/geos/trunk@3879 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Sandro Santilli - * : Set correct eol-style for geos-config and testrunner (#645) git-svn-id: http://svn.osgeo.org/geos/trunk@3879 + * : Set LF eol-style property for platform.h.in (#645) git-svn-id: + http://svn.osgeo.org/geos/trunk@3878 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Regina Obe - * capi/geos_c.h.in: bump to 3.5.0 and capi to next git-svn-id: http://svn.osgeo.org/geos/trunk@3877 + * capi/geos_c.h.in: bump to 3.5.0 and capi to next git-svn-id: + http://svn.osgeo.org/geos/trunk@3877 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Regina Obe - * NEWS: update date on news git-svn-id: http://svn.osgeo.org/geos/trunk@3876 + * NEWS: update date on news git-svn-id: + http://svn.osgeo.org/geos/trunk@3876 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Regina Obe * configure.in, include/geos/version.h.vc: bump all revisions with plan we will have Voronoi ported over (strk change if I did this - wrong) git-svn-id: http://svn.osgeo.org/geos/trunk@3873 + wrong) git-svn-id: http://svn.osgeo.org/geos/trunk@3873 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Regina Obe * include/geos/version.h.vc: update version numbers to agree with - configure.in - huh why are the version numbers all old in this file? git-svn-id: http://svn.osgeo.org/geos/trunk@3870 + configure.in - huh why are the version numbers all old in this file? + git-svn-id: http://svn.osgeo.org/geos/trunk@3870 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Regina Obe - * configure.in: get rid of dev in version# in prep for 3.4.0 release git-svn-id: http://svn.osgeo.org/geos/trunk@3869 + * configure.in: get rid of dev in version# in prep for 3.4.0 release + git-svn-id: http://svn.osgeo.org/geos/trunk@3869 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-11 Regina Obe - * ChangeLog: update change log in prep for 3.4.0 release git-svn-id: http://svn.osgeo.org/geos/trunk@3868 + * ChangeLog: update change log in prep for 3.4.0 release + git-svn-id: http://svn.osgeo.org/geos/trunk@3868 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-08 Regina Obe * ChangeLog, NEWS: update news and change log in prep for Aug 10 - release of 3.4.0 git-svn-id: http://svn.osgeo.org/geos/trunk@3867 + release of 3.4.0 git-svn-id: http://svn.osgeo.org/geos/trunk@3867 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-04 Regina Obe @@ -2250,13 +5748,15 @@ 2013-08-04 Sandro Santilli * src/triangulate/DelaunayTriangulationBuilder.cpp: Avoid Coordinate - copies in DelaunayTriangulationBuilder::envelope git-svn-id: http://svn.osgeo.org/geos/trunk@3864 + copies in DelaunayTriangulationBuilder::envelope git-svn-id: + http://svn.osgeo.org/geos/trunk@3864 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-04 Sandro Santilli * tests/unit/triangulate/DelaunayTest.cpp: Simplify testcase for - DelaunayTriangulationBuilder::envelope git-svn-id: http://svn.osgeo.org/geos/trunk@3863 + DelaunayTriangulationBuilder::envelope git-svn-id: + http://svn.osgeo.org/geos/trunk@3863 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-04 Sandro Santilli @@ -2264,36 +5764,42 @@ * include/geos/triangulate/DelaunayTriangulationBuilder.h, src/triangulate/DelaunayTriangulationBuilder.cpp, tests/unit/triangulate/DelaunayTest.cpp: envelope() method added to - DelaunayTriangulationBuilder class Includes testcase. Patch by Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3862 + DelaunayTriangulationBuilder class Includes testcase. Patch by + Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3862 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-03 Mateusz Loskot * CMakeLists.txt, tools/geos_svn_revision_cmake.h.in: Add - geos_svn_revision.h generator to CMake config Patch from David Burken attached to #643 git-svn-id: http://svn.osgeo.org/geos/trunk@3861 + geos_svn_revision.h generator to CMake config Patch from David + Burken attached to #643 git-svn-id: + http://svn.osgeo.org/geos/trunk@3861 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-02 Regina Obe - * src/Makefile.vc: #607 Makefile.vc 'clean' step leaks obj files git-svn-id: http://svn.osgeo.org/geos/trunk@3860 + * src/Makefile.vc: #607 Makefile.vc 'clean' step leaks obj files + git-svn-id: http://svn.osgeo.org/geos/trunk@3860 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-08-01 Regina Obe * NEWS: updates add some missing ticket items and add ticket - numbers where missing git-svn-id: http://svn.osgeo.org/geos/trunk@3858 + numbers where missing git-svn-id: + http://svn.osgeo.org/geos/trunk@3858 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-31 Sean Gillies * src/operation/polygonize/EdgeRing.cpp: Print to stderr only in - debug mode git-svn-id: http://svn.osgeo.org/geos/trunk@3857 + debug mode git-svn-id: http://svn.osgeo.org/geos/trunk@3857 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-31 Regina Obe * AUTHORS: #641 - distinguish between active and inactive group and - add Regina Obe to list. git-svn-id: http://svn.osgeo.org/geos/trunk@3856 + add Regina Obe to list. git-svn-id: + http://svn.osgeo.org/geos/trunk@3856 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-31 Regina Obe @@ -2303,7 +5809,8 @@ 2013-07-31 Regina Obe - * authors.svn: add myself to author list git-svn-id: http://svn.osgeo.org/geos/trunk@3854 + * authors.svn: add myself to author list git-svn-id: + http://svn.osgeo.org/geos/trunk@3854 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-31 Sandro Santilli @@ -2315,49 +5822,65 @@ tests/xmltester/tests/ticket/bug459.xml, tests/xmltester/tests/ticket/bug527.xml, tests/xmltester/tests/ticket/bug586.xml, - tests/xmltester/tests/ticket/bug599.xml: Improve overlay robustness - Validate CBR results before accepting them - Enable overlay node validator even for FIXED precision - Enable geometry-reduction policy - Bail out on exception from overlay if any input is invalid Fixes bug #459 git-svn-id: http://svn.osgeo.org/geos/trunk@3853 + tests/xmltester/tests/ticket/bug599.xml: Improve overlay robustness + - Validate CBR results before accepting them - Enable overlay node + validator even for FIXED precision - Enable geometry-reduction + policy - Bail out on exception from overlay if any input is invalid + Fixes bug #459 git-svn-id: http://svn.osgeo.org/geos/trunk@3853 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-31 Sandro Santilli * tests/xmltester/tests/buffer.xml: Do not expect invalid output - from buffer The test verification code is tollerant, but better fix this git-svn-id: http://svn.osgeo.org/geos/trunk@3852 + from buffer The test verification code is tollerant, but better fix + this git-svn-id: http://svn.osgeo.org/geos/trunk@3852 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-31 Sandro Santilli * tests/xmltester/tests/ticket/bug275.xml: Turn test for ticket 275 - into an "area test". Area test checks that the area of the Union between two geometries - is about the same as the sum of area of symdifference + area of - intersection. git-svn-id: http://svn.osgeo.org/geos/trunk@3851 + into an "area test". Area test checks that the area of the Union + between two geometries is about the same as the sum of area of + symdifference + area of intersection. git-svn-id: + http://svn.osgeo.org/geos/trunk@3851 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-25 Sandro Santilli * include/geos/geom/CoordinateList.h: Fix CoordinateList.closeRing() - use of past-the-end operator git-svn-id: http://svn.osgeo.org/geos/trunk@3850 + use of past-the-end operator git-svn-id: + http://svn.osgeo.org/geos/trunk@3850 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-25 Sandro Santilli * include/geos/geom/CoordinateList.h, tests/unit/geom/CoordinateListTest.cpp: closeRing() method added in - CoordinateList class Patch by Vishal Tiwari git-svn-id: http://svn.osgeo.org/geos/trunk@3849 + CoordinateList class Patch by Vishal Tiwari + git-svn-id: + http://svn.osgeo.org/geos/trunk@3849 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-23 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in: Cosmetic changes into the CAPI - code, by Mike Toews - Replace "reader" with "writer" in prototypes - describe "_r" functions - Function arguments with only one geometry changed from g1 to g - Rename nf -> ef for - GEOSContext_setErrorHandler_rsetErrorHandler_r - Move GEOSBuffer* declaration to top of buffer related function - section - Change char* mat to char *mat - Fix typos in comments - Clip trailing white space, and other white space consistencies - Other minor rearrangements for consistency git-svn-id: http://svn.osgeo.org/geos/trunk@3848 + code, by Mike Toews - Replace "reader" with "writer" in prototypes + - describe "_r" functions - Function arguments with only one + geometry changed from g1 to g - Rename nf -> ef for + GEOSContext_setErrorHandler_rsetErrorHandler_r - Move GEOSBuffer* + declaration to top of buffer related function section - Change + char* mat to char *mat - Fix typos in comments - Clip trailing + white space, and other white space consistencies - Other minor + rearrangements for consistency git-svn-id: + http://svn.osgeo.org/geos/trunk@3848 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-17 Sandro Santilli * src/operation/buffer/OffsetCurveBuilder.cpp, tests/unit/capi/GEOSOffsetCurveTest.cpp: Make GEOSOffsetCurve - survive single-point input (with an exception) git-svn-id: http://svn.osgeo.org/geos/trunk@3846 + survive single-point input (with an exception) git-svn-id: + http://svn.osgeo.org/geos/trunk@3846 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-17 Sandro Santilli @@ -2365,36 +5888,39 @@ * src/operation/buffer/BufferInputLineSimplifier.cpp, src/operation/buffer/OffsetSegmentGenerator.cpp, tests/unit/capi/GEOSOffsetCurveTest.cpp: Fix OffsetCurve op in - presence of duplicated vertices (#602) git-svn-id: http://svn.osgeo.org/geos/trunk@3845 + presence of duplicated vertices (#602) git-svn-id: + http://svn.osgeo.org/geos/trunk@3845 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-17 Sandro Santilli * src/simplify/LineSegmentIndex.cpp: Fix LineSegmentVisitor copy - ctor (#636) git-svn-id: http://svn.osgeo.org/geos/trunk@3844 + ctor (#636) git-svn-id: http://svn.osgeo.org/geos/trunk@3844 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-15 Sandro Santilli * src/geom/GeometryCollection.cpp, tests/unit/io/WKBWriterTest.cpp: - Drop SRID from geometrycollection elements (#583) git-svn-id: http://svn.osgeo.org/geos/trunk@3840 + Drop SRID from geometrycollection elements (#583) git-svn-id: + http://svn.osgeo.org/geos/trunk@3840 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-12 Sandro Santilli * tests/unit/geom/Geometry/coversTest.cpp: Add test for #580 - (successful) git-svn-id: http://svn.osgeo.org/geos/trunk@3839 + (successful) git-svn-id: http://svn.osgeo.org/geos/trunk@3839 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli * tests/unit/capi/GEOSOffsetCurveTest.cpp: Fix memory leak in - testcase git-svn-id: http://svn.osgeo.org/geos/trunk@3837 + testcase git-svn-id: http://svn.osgeo.org/geos/trunk@3837 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli - * tests/unit/capi/GEOSOffsetCurveTest.cpp: Drop carriage returns git-svn-id: http://svn.osgeo.org/geos/trunk@3836 + * tests/unit/capi/GEOSOffsetCurveTest.cpp: Drop carriage returns + git-svn-id: http://svn.osgeo.org/geos/trunk@3836 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli @@ -2404,57 +5930,66 @@ include/geos/triangulate/quadedge/Vertex.h, src/triangulate/quadedge/QuadEdgeSubdivision.cpp, tests/unit/triangulate/DelaunayTest.cpp: Fix memory in - QuadEdgeSubdivision (#604) git-svn-id: http://svn.osgeo.org/geos/trunk@3835 + QuadEdgeSubdivision (#604) git-svn-id: + http://svn.osgeo.org/geos/trunk@3835 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli * NEWS, php/geos.c, php/test/test.php: Expose Delaunay triangulation - to PHP API (#567) git-svn-id: http://svn.osgeo.org/geos/trunk@3834 + to PHP API (#567) git-svn-id: http://svn.osgeo.org/geos/trunk@3834 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli - * php/test/test.php: Fix test after changes in PointOnSurface git-svn-id: http://svn.osgeo.org/geos/trunk@3833 + * php/test/test.php: Fix test after changes in PointOnSurface + git-svn-id: http://svn.osgeo.org/geos/trunk@3833 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli * NEWS, tools/geos-config.in: Add --cclibs, --static-clibs and - --static-cclibs to geos-config (#497) git-svn-id: http://svn.osgeo.org/geos/trunk@3832 + --static-cclibs to geos-config (#497) git-svn-id: + http://svn.osgeo.org/geos/trunk@3832 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli - * NEWS: Add 3.3.1 to 3.3.8 section git-svn-id: http://svn.osgeo.org/geos/trunk@3831 + * NEWS: Add 3.3.1 to 3.3.8 section git-svn-id: + http://svn.osgeo.org/geos/trunk@3831 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-11 Sandro Santilli - * NEWS: Cleanup NEWS file confused in r3816 git-svn-id: http://svn.osgeo.org/geos/trunk@3830 + * NEWS: Cleanup NEWS file confused in r3816 git-svn-id: + http://svn.osgeo.org/geos/trunk@3830 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-07-05 Sandro Santilli * include/geos/linearref/Makefile.am: Fix install location of - linearref headers (#624) git-svn-id: http://svn.osgeo.org/geos/trunk@3829 + linearref headers (#624) git-svn-id: + http://svn.osgeo.org/geos/trunk@3829 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-28 Mateusz Loskot - * nmake.opt: Add NMAKE version from Visual Studio 2012 Update 3 RTM git-svn-id: http://svn.osgeo.org/geos/trunk@3827 + * nmake.opt: Add NMAKE version from Visual Studio 2012 Update 3 RTM + git-svn-id: http://svn.osgeo.org/geos/trunk@3827 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-26 Sandro Santilli * src/noding/snapround/HotPixel.cpp, tests/unit/noding/snapround/HotPixelTest.cpp: Fix typo in HotPixel - corners initializer Patch by Mickael BORNE git-svn-id: http://svn.osgeo.org/geos/trunk@3826 + corners initializer Patch by Mickael BORNE + git-svn-id: http://svn.osgeo.org/geos/trunk@3826 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-26 Mateusz Loskot - * nmake.opt: Add another NMAKE version from Visual Studio 2012 git-svn-id: http://svn.osgeo.org/geos/trunk@3824 + * nmake.opt: Add another NMAKE version from Visual Studio 2012 + git-svn-id: http://svn.osgeo.org/geos/trunk@3824 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-12 Mateusz Loskot @@ -2463,9 +5998,11 @@ src/operation/buffer/BufferBuilder.cpp, tests/unit/operation/buffer/BufferBuilderTest.cpp: Final clarification of BufferBuilder::bufferLineSingleSided behaviour - (ticket #633) * Ignore BufferParameters::setSingleSided() parameter as it is - specific to areal geometries. * Document semantic of input parameters. * Document order of coordinates in generated output (conforms to - PostGIS behaviour). * Add test for coordinates order assumptions. git-svn-id: http://svn.osgeo.org/geos/trunk@3823 + (ticket #633) * Ignore BufferParameters::setSingleSided() parameter + as it is specific to areal geometries. * Document semantic of input + parameters. * Document order of coordinates in generated output + (conforms to PostGIS behaviour). * Add test for coordinates order + assumptions. git-svn-id: http://svn.osgeo.org/geos/trunk@3823 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-12 Mateusz Loskot @@ -2474,14 +6011,16 @@ side offset curve tests to check uniform coordinates order in output (ticket #633). We need to decide if BufferBuilder::bufferLineSingleSided should take care of reversing - coordinates if necessary. git-svn-id: http://svn.osgeo.org/geos/trunk@3822 + coordinates if necessary. git-svn-id: + http://svn.osgeo.org/geos/trunk@3822 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-12 Mateusz Loskot * tests/unit/Makefile.am, tests/unit/operation/buffer/BufferBuilderTest.cpp: Add updated C++ - API test case for the left/right offset curve (ticket #633) git-svn-id: http://svn.osgeo.org/geos/trunk@3821 + API test case for the left/right offset curve (ticket #633) + git-svn-id: http://svn.osgeo.org/geos/trunk@3821 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-12 Mateusz Loskot @@ -2496,7 +6035,8 @@ based on GEOSOffsetCurve from C-API. Passing negative distance for right-sided offset curve generates correct/expected output. Interestingly, equivalent test using BufferBuilder directly, from - C++ API, does not pass. git-svn-id: http://svn.osgeo.org/geos/trunk@3819 + C++ API, does not pass. git-svn-id: + http://svn.osgeo.org/geos/trunk@3819 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-11 Mateusz Loskot @@ -2504,7 +6044,8 @@ * src/operation/buffer/OffsetCurveBuilder.cpp, tests/unit/Makefile.am, tests/unit/operation/buffer/BufferBuilderTest.cpp: Revert r3817 as - partial or incorrect fix. See ticket #633 for details. git-svn-id: http://svn.osgeo.org/geos/trunk@3818 + partial or incorrect fix. See ticket #633 for details. git-svn-id: + http://svn.osgeo.org/geos/trunk@3818 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-11 Mateusz Loskot @@ -2512,19 +6053,22 @@ * src/operation/buffer/OffsetCurveBuilder.cpp, tests/unit/Makefile.am, tests/unit/operation/buffer/BufferBuilderTest.cpp: * Fix bug in OffsetCurveBuilder case for right-side offset curve - used left-side flag to initialise the side segments. * Corresponding test case attached. git-svn-id: http://svn.osgeo.org/geos/trunk@3817 + used left-side flag to initialise the side segments. * Corresponding + test case attached. git-svn-id: + http://svn.osgeo.org/geos/trunk@3817 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-11 Sandro Santilli * NEWS, include/geos/profiler.h: Fix for mingw64 compile, by Regina - Obe (#630) git-svn-id: http://svn.osgeo.org/geos/trunk@3816 + Obe (#630) git-svn-id: http://svn.osgeo.org/geos/trunk@3816 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-07 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp: Simplify code - looking for closer vertex snap git-svn-id: http://svn.osgeo.org/geos/trunk@3814 + looking for closer vertex snap git-svn-id: + http://svn.osgeo.org/geos/trunk@3814 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-07 Mateusz Loskot @@ -2542,12 +6086,15 @@ src/operation/buffer/BufferInputLineSimplifier.cpp, src/operation/linemerge/LineSequencer.cpp, src/operation/polygonize/PolygonizeGraph.cpp: Correct int and - std::size_t mismatch for 64-bit target. git-svn-id: http://svn.osgeo.org/geos/trunk@3812 + std::size_t mismatch for 64-bit target. git-svn-id: + http://svn.osgeo.org/geos/trunk@3812 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-07 Mateusz Loskot - * src/algorithm/InteriorPointArea.cpp: * Disable copy constructor and assignment operator. * Correct int and std::size_t mismatch for 64-bit target. git-svn-id: http://svn.osgeo.org/geos/trunk@3811 + * src/algorithm/InteriorPointArea.cpp: * Disable copy constructor and assignment operator. * Correct int + and std::size_t mismatch for 64-bit target. git-svn-id: + http://svn.osgeo.org/geos/trunk@3811 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-07 Mateusz Loskot @@ -2556,13 +6103,15 @@ include/geos/precision/GeometryPrecisionReducer.h, include/geos/precision/PrecisionReducerCoordinateOperation.h, src/noding/GeometryNoder.cpp: Disable copy constructor and - assignment operator git-svn-id: http://svn.osgeo.org/geos/trunk@3810 + assignment operator git-svn-id: + http://svn.osgeo.org/geos/trunk@3810 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-07 Mateusz Loskot * include/geos/operation/buffer/OffsetSegmentString.h: Correct - return type of OffsetSegmentString::size() to be size_t git-svn-id: http://svn.osgeo.org/geos/trunk@3809 + return type of OffsetSegmentString::size() to be size_t git-svn-id: + http://svn.osgeo.org/geos/trunk@3809 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-06 Sandro Santilli @@ -2572,13 +6121,15 @@ examples/CustomCoordinateSequenceExample.cpp, examples/CustomCoordinateSequenceExample.h, examples/CustomPointCoordinateSequence.cpp, examples/Makefile.am: - Drop obsoleted files git-svn-id: http://svn.osgeo.org/geos/trunk@3808 + Drop obsoleted files git-svn-id: + http://svn.osgeo.org/geos/trunk@3808 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-06 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp: Drop commented - out / disabled code git-svn-id: http://svn.osgeo.org/geos/trunk@3807 + out / disabled code git-svn-id: + http://svn.osgeo.org/geos/trunk@3807 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-05 Mateusz Loskot @@ -2590,13 +6141,15 @@ 2013-06-05 Mateusz Loskot * CMakeLists.txt: Make Visual C++ 11.0 recognised by CMake - configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3805 + configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3805 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-06-03 Sandro Santilli * src/geom/prep/PreparedPolygonIntersects.cpp: Short-circuit - prepared polygon/point intersection Reduces memory fragmentation for area-puntal ops git-svn-id: http://svn.osgeo.org/geos/trunk@3803 + prepared polygon/point intersection Reduces memory fragmentation + for area-puntal ops git-svn-id: + http://svn.osgeo.org/geos/trunk@3803 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-05-30 Sandro Santilli @@ -2604,42 +6157,52 @@ * include/geos/operation/overlay/snap/LineStringSnapper.h, src/operation/overlay/snap/LineStringSnapper.cpp, tests/unit/capi/GEOSSnapTest.cpp: Improve snap algorithm reducing - likelyhood of invalid output - Snap input vertices to closest snap point (#629) - Do not snap segments to external points (#501) - Never snap multiple vertices to the same snap point Work funded by Tuscany Region - SITA. Contract "Support to the use - of GFOSS (Geographic Free and Open Source Software) Desktop tools" - (CIG Z3B06FA6D7). git-svn-id: http://svn.osgeo.org/geos/trunk@3800 + likelyhood of invalid output - Snap input vertices to closest snap + point (#629) - Do not snap segments to external points (#501) - + Never snap multiple vertices to the same snap point Work funded by + Tuscany Region - SITA. Contract "Support to the use of GFOSS + (Geographic Free and Open Source Software) Desktop tools" (CIG + Z3B06FA6D7). git-svn-id: http://svn.osgeo.org/geos/trunk@3800 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-05-23 Sandro Santilli * Makefile.am, tools/svn_repo_revision.sh: Create - geos_svn_revision.h in the source tree It's a generated source, should always be in the tarball anyway git-svn-id: http://svn.osgeo.org/geos/trunk@3799 + geos_svn_revision.h in the source tree It's a generated source, + should always be in the tarball anyway git-svn-id: + http://svn.osgeo.org/geos/trunk@3799 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-05-23 Sandro Santilli - * tools/Makefile.am: Distribute svn_repo_revision.sh git-svn-id: http://svn.osgeo.org/geos/trunk@3798 + * tools/Makefile.am: Distribute svn_repo_revision.sh git-svn-id: + http://svn.osgeo.org/geos/trunk@3798 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-05-10 Mateusz Loskot * nmake.opt: Add NMAKE option WIN64 to simplify x64 build - configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3797 + configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3797 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-05-09 Mateusz Loskot - * nmake.opt: Add NMAKE version from Visual Studio 2012 Update 3 git-svn-id: http://svn.osgeo.org/geos/trunk@3796 + * nmake.opt: Add NMAKE version from Visual Studio 2012 Update 3 + git-svn-id: http://svn.osgeo.org/geos/trunk@3796 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-04-02 Mateusz Loskot - * src/dirlist.mk: Add missing directories git-svn-id: http://svn.osgeo.org/geos/trunk@3795 + * src/dirlist.mk: Add missing directories git-svn-id: + http://svn.osgeo.org/geos/trunk@3795 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-04-02 Mateusz Loskot * nmake.opt, src/Makefile.vc, src/geom/Geometry.cpp: Add Visual Leak - Detector (VLD) support to GEOS core * Add MSVC_VLD_DIR option to nmake.opt to enable/disable VLD * Add optional #include to Geometry.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@3794 + Detector (VLD) support to GEOS core * Add MSVC_VLD_DIR option to + nmake.opt to enable/disable VLD * Add optional #include to + Geometry.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@3794 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-15 Sandro Santilli @@ -2647,30 +6210,35 @@ * tests/unit/algorithm/RobustLineIntersectionTest.cpp, tests/unit/capi/GEOSConvexHullTest.cpp, tests/unit/capi/GEOSUnaryUnionTest.cpp: Fix memory leaks in unit - tests git-svn-id: http://svn.osgeo.org/geos/trunk@3793 + tests git-svn-id: http://svn.osgeo.org/geos/trunk@3793 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-15 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSNearestPointsTest.cpp: - Add GEOSNearestPoints CAPI function Contributed by Richard Frith-Macdonald git-svn-id: http://svn.osgeo.org/geos/trunk@3792 + Add GEOSNearestPoints CAPI function Contributed by Richard + Frith-Macdonald git-svn-id: + http://svn.osgeo.org/geos/trunk@3792 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-15 Mateusz Loskot - * nmake.opt: Add x64 NMAKE version from Visual Studio 2012 Update 1 git-svn-id: http://svn.osgeo.org/geos/trunk@3791 + * nmake.opt: Add x64 NMAKE version from Visual Studio 2012 Update 1 + git-svn-id: http://svn.osgeo.org/geos/trunk@3791 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-12 Sandro Santilli - * macros/ruby.m4: Fix "puts puts" typo in ruby macro (#625) git-svn-id: http://svn.osgeo.org/geos/trunk@3790 + * macros/ruby.m4: Fix "puts puts" typo in ruby macro (#625) + git-svn-id: http://svn.osgeo.org/geos/trunk@3790 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-11 Sandro Santilli * tests/unit/algorithm/RobustLineIntersectionTest.cpp: Port new - RobustLineIntersection test from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3789 + RobustLineIntersection test from JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@3789 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-08 Sandro Santilli @@ -2678,24 +6246,29 @@ * include/geos/algorithm/LineIntersector.h, src/algorithm/LineIntersector.cpp, tests/unit/algorithm/RobustLineIntersectionTest.cpp: Fix - RobustLineIntersector handling of invalid intersection points (#622) Adds new testcases. Many of them fail, probably due to the lack of + RobustLineIntersector handling of invalid intersection points (#622) + Adds new testcases. Many of them fail, probably due to the lack of double double use, but one of them only fails with the old - RobustLineIntersector heuristic handling invalid intersection points git-svn-id: http://svn.osgeo.org/geos/trunk@3787 + RobustLineIntersector heuristic handling invalid intersection points + git-svn-id: http://svn.osgeo.org/geos/trunk@3787 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-08 Mateusz Loskot - * src/Makefile.vc: Add algorithm/Centroid.obj git-svn-id: http://svn.osgeo.org/geos/trunk@3786 + * src/Makefile.vc: Add algorithm/Centroid.obj git-svn-id: + http://svn.osgeo.org/geos/trunk@3786 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-08 Mateusz Loskot - * include/geos/algorithm/Centroid.h: Untabify git-svn-id: http://svn.osgeo.org/geos/trunk@3785 + * include/geos/algorithm/Centroid.h: Untabify git-svn-id: + http://svn.osgeo.org/geos/trunk@3785 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-08 Mateusz Loskot - * nmake.opt: Add NMAKE version from Visual Studio 2012 Update 1 git-svn-id: http://svn.osgeo.org/geos/trunk@3784 + * nmake.opt: Add NMAKE version from Visual Studio 2012 Update 1 + git-svn-id: http://svn.osgeo.org/geos/trunk@3784 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-08 Sandro Santilli @@ -2704,100 +6277,125 @@ src/algorithm/Centroid.cpp, src/algorithm/InteriorPointArea.cpp, tests/unit/capi/GEOSPointOnSurfaceTest.cpp, tests/xmltester/tests/general/TestInteriorPoint.xml: Fix - GEOSPointOnSurface returning point on boundary (#623) Ports SafeBisector for InteriorPointArea from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3781 + GEOSPointOnSurface returning point on boundary (#623) Ports + SafeBisector for InteriorPointArea from JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@3781 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-05 Sandro Santilli - * capi/geos_ts_c.cpp: Speedup GEOSWKBWriter_read_r (#621) Patch by Daniel Zeitlin git-svn-id: http://svn.osgeo.org/geos/trunk@3779 + * capi/geos_ts_c.cpp: Speedup GEOSWKBWriter_read_r (#621) Patch by + Daniel Zeitlin git-svn-id: http://svn.osgeo.org/geos/trunk@3779 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-03-01 Sandro Santilli - * HOWTO_RELEASE: Add wiki update and announce steps git-svn-id: http://svn.osgeo.org/geos/trunk@3778 + * HOWTO_RELEASE: Add wiki update and announce steps git-svn-id: + http://svn.osgeo.org/geos/trunk@3778 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-28 Sandro Santilli * src/algorithm/CentroidArea.cpp, tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug582.xml: Fix centroid computation - for collections with empty components Fixes bug #582 git-svn-id: http://svn.osgeo.org/geos/trunk@3773 + for collections with empty components Fixes bug #582 git-svn-id: + http://svn.osgeo.org/geos/trunk@3773 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-25 Sandro Santilli * macros/ruby.m4, swig/ruby/geos_wrap.cxx: Update macros/ruby.m4 for - ruby 1.9.x Used RbConfig instead of obsolete and deprecated Config. Updated - SWIG generated files. Patch by Kashif Rasul git-svn-id: http://svn.osgeo.org/geos/trunk@3772 + ruby 1.9.x Used RbConfig instead of obsolete and deprecated Config. + Updated SWIG generated files. Patch by Kashif Rasul + git-svn-id: + http://svn.osgeo.org/geos/trunk@3772 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-25 Sandro Santilli - * include/geos/platform.h.in: Fix build under cygwin (#595) Thanks Jason Huntley git-svn-id: http://svn.osgeo.org/geos/trunk@3771 + * include/geos/platform.h.in: Fix build under cygwin (#595) Thanks + Jason Huntley git-svn-id: http://svn.osgeo.org/geos/trunk@3771 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-25 Sandro Santilli * include/geos/io/WKTReader.h, include/geos/io/WKTReader.inl: - Deprecate WKTReader constructor taking GeometryFactory by pointer Add constructor taking it by reference, for consistency with - WKBReader Closes #310 git-svn-id: http://svn.osgeo.org/geos/trunk@3770 + Deprecate WKTReader constructor taking GeometryFactory by pointer + Add constructor taking it by reference, for consistency with + WKBReader Closes #310 git-svn-id: + http://svn.osgeo.org/geos/trunk@3770 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-25 Sandro Santilli * NEWS, include/geos/io/Writer.h, src/io/Writer.cpp, tests/unit/io/WriterTest.cpp: New ::reserve(size_t) method for - io::Writer class git-svn-id: http://svn.osgeo.org/geos/trunk@3769 + io::Writer class git-svn-id: http://svn.osgeo.org/geos/trunk@3769 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-25 Sandro Santilli * NEWS, include/geos/io/Writer.h, src/io/Writer.cpp, tests/unit/Makefile.am, tests/unit/io/WriterTest.cpp: io::Writer: - take and give strings by const ref, use .append, testcase git-svn-id: http://svn.osgeo.org/geos/trunk@3768 + take and give strings by const ref, use .append, testcase + git-svn-id: http://svn.osgeo.org/geos/trunk@3768 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-21 Sandro Santilli - * src/io/WKTWriter.cpp: WKTWriter::appendCoordinate optimisation Modified the WKTWriter::appendCoordinate method to not create an + * src/io/WKTWriter.cpp: WKTWriter::appendCoordinate optimisation + Modified the WKTWriter::appendCoordinate method to not create an intermediate std::string, but instead write directly into the Writer - object. The result is a small performance improvement. Patch by Mats Taraldsvik git-svn-id: http://svn.osgeo.org/geos/trunk@3767 + object. The result is a small performance improvement. Patch by + Mats Taraldsvik git-svn-id: + http://svn.osgeo.org/geos/trunk@3767 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-15 Mateusz Loskot - * : Update svn:ignore property git-svn-id: http://svn.osgeo.org/geos/trunk@3765 + * : Update svn:ignore property git-svn-id: + http://svn.osgeo.org/geos/trunk@3765 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2013-02-01 Sandro Santilli + + * include/geos/io/CLocalizer.h: Add header guard to CLocalizer + (#619) git-svn-id: http://svn.osgeo.org/geos/trunk@3762 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-01 Sandro Santilli * include/geos/linearref/LocationIndexOfLine.h, src/linearref/LocationIndexOfLine.cpp: Fix header guard and port - info in LocatioNIndexOfLine (#618) git-svn-id: http://svn.osgeo.org/geos/trunk@3760 + info in LocatioNIndexOfLine (#618) git-svn-id: + http://svn.osgeo.org/geos/trunk@3760 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-02-01 Sandro Santilli * include/geos/geom/util/GeometryExtracter.h: Fix header guard in - GeometryExtracter (#617) git-svn-id: http://svn.osgeo.org/geos/trunk@3758 + GeometryExtracter (#617) git-svn-id: + http://svn.osgeo.org/geos/trunk@3758 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-25 Sandro Santilli * src/operation/valid/IsValidOp.cpp: IsValidOp: throw proper error - on nested shells (#608) Thanks geomworx git-svn-id: http://svn.osgeo.org/geos/trunk@3755 + on nested shells (#608) Thanks geomworx git-svn-id: + http://svn.osgeo.org/geos/trunk@3755 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-17 Sandro Santilli * include/geos/geom/BinaryOp.h, tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug615.xml: Only attempt to fix - self-intersection between multiple components Doing this reduces the likelyhood of entering an infinite recursion - whereas UnaryUnion (meant to fix that) would enter the - self-intersection attempt again. Fixes #615 for which a test is - added. This also gives us back an exception with the input of ticket #488, - which is the same behavior JTS exposes. The (bogus) test for it is - disabled by this commit. git-svn-id: http://svn.osgeo.org/geos/trunk@3751 + self-intersection between multiple components Doing this reduces + the likelyhood of entering an infinite recursion whereas UnaryUnion + (meant to fix that) would enter the self-intersection attempt again. + Fixes #615 for which a test is added. This also gives us back an + exception with the input of ticket #488, which is the same behavior + JTS exposes. The (bogus) test for it is disabled by this commit. + git-svn-id: http://svn.osgeo.org/geos/trunk@3751 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-14 Sandro Santilli @@ -2810,7 +6408,9 @@ src/algorithm/Makefile.am, src/geom/Geometry.cpp, tests/xmltester/XMLTester.cpp, tests/xmltester/tests/general/TestCentroid.xml: Fix EMPTY return - from single-point lines and zero-length polygons This commit ports new Centroid class from JTS (#612) git-svn-id: http://svn.osgeo.org/geos/trunk@3749 + from single-point lines and zero-length polygons This commit ports + new Centroid class from JTS (#612) git-svn-id: + http://svn.osgeo.org/geos/trunk@3749 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-14 Sandro Santilli @@ -2818,162 +6418,188 @@ * include/geos/algorithm/InteriorPointArea.h, src/algorithm/InteriorPointArea.cpp, tests/xmltester/tests/general/TestInteriorPoint.xml: Fix EMPTY - return from zero-area polygon (#613) git-svn-id: http://svn.osgeo.org/geos/trunk@3748 + return from zero-area polygon (#613) git-svn-id: + http://svn.osgeo.org/geos/trunk@3748 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-14 Sandro Santilli * tests/xmltester/XMLTester.cpp: Have XMLTester use POINT EMPTY for - a null return from getInteriorPoint git-svn-id: http://svn.osgeo.org/geos/trunk@3747 + a null return from getInteriorPoint git-svn-id: + http://svn.osgeo.org/geos/trunk@3747 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-14 Sandro Santilli * include/geos/util/Interrupt.h, src/util/Interrupt.cpp: Move static - class members of Interrupt out of header (#611) Patch by Mateusz Loskot git-svn-id: http://svn.osgeo.org/geos/trunk@3744 + class members of Interrupt out of header (#611) Patch by Mateusz + Loskot git-svn-id: http://svn.osgeo.org/geos/trunk@3744 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-11 Mateusz Loskot * tests/unit/triangulate/DelaunayTest.cpp: Missing QuadEdge.h - causing incomplete types. git-svn-id: http://svn.osgeo.org/geos/trunk@3743 + causing incomplete types. git-svn-id: + http://svn.osgeo.org/geos/trunk@3743 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-11 Mateusz Loskot - * nmake.opt: Report general and custom flags separately git-svn-id: http://svn.osgeo.org/geos/trunk@3742 + * nmake.opt: Report general and custom flags separately git-svn-id: + http://svn.osgeo.org/geos/trunk@3742 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-11 Sandro Santilli * src/algorithm/InteriorPointLine.cpp, tests/unit/capi/GEOSPointOnSurfaceTest.cpp: Fix GEOSPointOnSurface - with zero-length linestring (#609) git-svn-id: http://svn.osgeo.org/geos/trunk@3741 + with zero-length linestring (#609) git-svn-id: + http://svn.osgeo.org/geos/trunk@3741 5242fede-7e19-0410-aef8-94bd7d2200fb 2013-01-11 Mateusz Loskot * tests/unit/io/WKTReaderTest.cpp: Added test<7>() for the poorly - reported bug ticket #610 - bug not reproducible. git-svn-id: http://svn.osgeo.org/geos/trunk@3740 + reported bug ticket #610 - bug not reproducible. git-svn-id: + http://svn.osgeo.org/geos/trunk@3740 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-06 Sandro Santilli - * configure.in: See if AC_CONFIG_HEADERS makes winnie happier ... and also how many other builds it breaks, if any git-svn-id: http://svn.osgeo.org/geos/trunk@3737 + * configure.in: See if AC_CONFIG_HEADERS makes winnie happier ... + and also how many other builds it breaks, if any git-svn-id: + http://svn.osgeo.org/geos/trunk@3737 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-06 Sandro Santilli * src/Makefile.vc: Add missing classes to build script for evil - compiler Curtesy of Geoff Evans git-svn-id: http://svn.osgeo.org/geos/trunk@3736 + compiler Curtesy of Geoff Evans git-svn-id: + http://svn.osgeo.org/geos/trunk@3736 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-05 Sandro Santilli * src/operation/buffer/BufferOp.cpp: Add note about rounding in - fixed precision buffer op (#605) git-svn-id: http://svn.osgeo.org/geos/trunk@3734 + fixed precision buffer op (#605) git-svn-id: + http://svn.osgeo.org/geos/trunk@3734 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-05 Sandro Santilli * src/operation/buffer/BufferOp.cpp: Do not reduce precision below 6 - significant digits. Avoids gross results (preferring an exception) See - http://trac.osgeo.org/geos/ticket/605 git-svn-id: http://svn.osgeo.org/geos/trunk@3733 + significant digits. Avoids gross results (preferring an exception) + See http://trac.osgeo.org/geos/ticket/605 git-svn-id: + http://svn.osgeo.org/geos/trunk@3733 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-04 Sandro Santilli - * NEWS: Add note about BufferOp robustness improvement git-svn-id: http://svn.osgeo.org/geos/trunk@3731 + * NEWS: Add note about BufferOp robustness improvement git-svn-id: + http://svn.osgeo.org/geos/trunk@3731 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-04 Sandro Santilli * src/operation/buffer/BufferOp.cpp, tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug605.xml: Reduce coordinates - precision on robustness issues in BufferOp Fixes #605, adds test for it git-svn-id: http://svn.osgeo.org/geos/trunk@3728 + precision on robustness issues in BufferOp Fixes #605, adds test + for it git-svn-id: http://svn.osgeo.org/geos/trunk@3728 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-04 Sandro Santilli * src/operation/buffer/RightmostEdgeFinder.cpp: Fix an abort in - Buffer op (RightmostEdgeFinder) Rather than abort we throw a TopologyException, because the problem - seems to occur when noding isn't correct. See - http://trac.osgeo.org/geos/ticket/605 git-svn-id: http://svn.osgeo.org/geos/trunk@3727 + Buffer op (RightmostEdgeFinder) Rather than abort we throw a + TopologyException, because the problem seems to occur when noding + isn't correct. See http://trac.osgeo.org/geos/ticket/605 + git-svn-id: http://svn.osgeo.org/geos/trunk@3727 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-12-04 Sandro Santilli * tests/unit/Makefile.am, tests/unit/noding/OrientedCoordinateArray.cpp: Add unit test for - OrientedCoordinateArray git-svn-id: http://svn.osgeo.org/geos/trunk@3726 + OrientedCoordinateArray git-svn-id: + http://svn.osgeo.org/geos/trunk@3726 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-11-15 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug599.xml: Add automated test for #599 - (succeeds) git-svn-id: http://svn.osgeo.org/geos/trunk@3720 + (succeeds) git-svn-id: http://svn.osgeo.org/geos/trunk@3720 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-10-26 Sandro Santilli - * Makefile.am: Fix building outside the source tree git-svn-id: http://svn.osgeo.org/geos/trunk@3719 + * Makefile.am: Fix building outside the source tree git-svn-id: + http://svn.osgeo.org/geos/trunk@3719 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-09-10 Sandro Santilli * NEWS, src/triangulate/quadedge/QuadEdgeSubdivision.cpp, tests/unit/triangulate/DelaunayTest.cpp: Add Z support in delaunay - triangulation (#570) Thanks Benjamin Campbell git-svn-id: http://svn.osgeo.org/geos/trunk@3716 + triangulation (#570) Thanks Benjamin Campbell git-svn-id: + http://svn.osgeo.org/geos/trunk@3716 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-09-10 Sandro Santilli * tests/xmltester/tests/ticket/bug586.xml: Tweak the test for bug - 586 to succeed while still being small git-svn-id: http://svn.osgeo.org/geos/trunk@3715 + 586 to succeed while still being small git-svn-id: + http://svn.osgeo.org/geos/trunk@3715 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-09-10 Sandro Santilli * tests/xmltester/Makefile.am, - tests/xmltester/tests/ticket/bug586.xml: Add test for bug #586 git-svn-id: http://svn.osgeo.org/geos/trunk@3712 + tests/xmltester/tests/ticket/bug586.xml: Add test for bug #586 + git-svn-id: http://svn.osgeo.org/geos/trunk@3712 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-09-10 Sandro Santilli * include/geos/geom/BinaryOp.h: Do not try to fix valid geometries - (#586) git-svn-id: http://svn.osgeo.org/geos/trunk@3711 + (#586) git-svn-id: http://svn.osgeo.org/geos/trunk@3711 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-09-07 Sandro Santilli * swig/python/geos.py, swig/python/geos_wrap.cxx: Regenerate swig - files with swig 2.0.4 git-svn-id: http://svn.osgeo.org/geos/trunk@3710 + files with swig 2.0.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@3710 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-09-06 Sandro Santilli * php/README, php/test/test.php: Add support for phpunit 3.6 (not - loosing support for 3.4) I don't have phpunit-3.4 anymore so if anyone does please see if - "make check" still works (with php enabled) NOTE: Ubuntu 10.04 ships phpunit 3.4 git-svn-id: http://svn.osgeo.org/geos/trunk@3708 + loosing support for 3.4) I don't have phpunit-3.4 anymore so if + anyone does please see if "make check" still works (with php + enabled) NOTE: Ubuntu 10.04 ships phpunit 3.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@3708 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-07-27 Mateusz Loskot * src/Makefile.vc: Updated NMAKE makefile with recently added source - files (Ticket #574) git-svn-id: http://svn.osgeo.org/geos/trunk@3705 + files (Ticket #574) git-svn-id: + http://svn.osgeo.org/geos/trunk@3705 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-07-26 Sandro Santilli * include/geos/Makefile.am: Don't live triangulate includes out of - build (#573) Thanks Sandro Furieri git-svn-id: http://svn.osgeo.org/geos/trunk@3704 + build (#573) Thanks Sandro Furieri git-svn-id: + http://svn.osgeo.org/geos/trunk@3704 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-27 Sandro Santilli * tests/unit/capi/GEOSDelaunayTriangulationTest.cpp: Add test for - Delaunay triangulation with a tolerance git-svn-id: http://svn.osgeo.org/geos/trunk@3703 + Delaunay triangulation with a tolerance git-svn-id: + http://svn.osgeo.org/geos/trunk@3703 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-27 Sandro Santilli @@ -2981,19 +6607,22 @@ * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSDelaunayTriangulationTest.cpp: Expose Delaunay - triangulation to C-API (#565) git-svn-id: http://svn.osgeo.org/geos/trunk@3702 + triangulation to C-API (#565) git-svn-id: + http://svn.osgeo.org/geos/trunk@3702 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-27 Sandro Santilli * include/geos/triangulate/DelaunayTriangulationBuilder.h, src/triangulate/DelaunayTriangulationBuilder.cpp: Const-correct - getTriangles / getEdges and move to proper namespace git-svn-id: http://svn.osgeo.org/geos/trunk@3701 + getTriangles / getEdges and move to proper namespace git-svn-id: + http://svn.osgeo.org/geos/trunk@3701 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-27 Sandro Santilli - * include/geos/triangulate/IncrementalDelaunayTriangulator.h: indent git-svn-id: http://svn.osgeo.org/geos/trunk@3700 + * include/geos/triangulate/IncrementalDelaunayTriangulator.h: indent + git-svn-id: http://svn.osgeo.org/geos/trunk@3700 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-27 Sandro Santilli @@ -3015,23 +6644,33 @@ src/triangulate/quadedge/QuadEdgeSubdivision.cpp, src/triangulate/quadedge/TrianglePredicate.cpp, src/triangulate/quadedge/TriangleVisitor.cpp, - src/triangulate/quadedge/Vertex.cpp: Indent and port info style git-svn-id: http://svn.osgeo.org/geos/trunk@3699 + src/triangulate/quadedge/Vertex.cpp: Indent and port info style + git-svn-id: http://svn.osgeo.org/geos/trunk@3699 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-26 Mateusz Loskot * CMakeLists.txt: [CMake] Corrected description of default value for - GEOS_ENABLE_MACOSX_FRAMEWORK option git-svn-id: http://svn.osgeo.org/geos/trunk@3697 + GEOS_ENABLE_MACOSX_FRAMEWORK option git-svn-id: + http://svn.osgeo.org/geos/trunk@3697 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-26 Mateusz Loskot - * NEWS: Updated NEWS file with changes related to ticket #446 git-svn-id: http://svn.osgeo.org/geos/trunk@3696 + * NEWS: Updated NEWS file with changes related to ticket #446 + git-svn-id: http://svn.osgeo.org/geos/trunk@3696 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-26 Mateusz Loskot - * : Updated svn:ignore for tests/perf git-svn-id: http://svn.osgeo.org/geos/trunk@3695 + * : Updated svn:ignore for tests/perf git-svn-id: + http://svn.osgeo.org/geos/trunk@3695 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2012-06-26 Sandro Santilli + + * include/geos/triangulate/DelaunayTriangulationBuilder.h: typo + git-svn-id: http://svn.osgeo.org/geos/trunk@3694 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-26 Sandro Santilli @@ -3064,45 +6703,51 @@ tests/unit/triangulate/DelaunayTest.cpp, tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp, tests/unit/triangulate/quadedge/QuadEdgeTest.cpp: Port Delaunay - Triangulation API from JTS (#487) Work contributed by Benjamin Campbell git-svn-id: http://svn.osgeo.org/geos/trunk@3693 + Triangulation API from JTS (#487) Work contributed by Benjamin + Campbell git-svn-id: http://svn.osgeo.org/geos/trunk@3693 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-25 Mateusz Loskot * CMakeLists.txt: [CMake] Fixed incorrect SOVERSION value. The SOVERSION is now set with CAPI_VERSION_CURRENT - CAPI_VERSION_AGE - (Ticket #446) git-svn-id: http://svn.osgeo.org/geos/trunk@3692 + (Ticket #446) git-svn-id: http://svn.osgeo.org/geos/trunk@3692 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-25 Sandro Santilli - * HOWTO_RELEASE: Add tarball verification step git-svn-id: http://svn.osgeo.org/geos/trunk@3691 + * HOWTO_RELEASE: Add tarball verification step git-svn-id: + http://svn.osgeo.org/geos/trunk@3691 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-25 Sandro Santilli * capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSPointOnSurfaceTest.cpp: Always return POINT from - GEOSPointOnSurface, even for EMPTY (#561) git-svn-id: http://svn.osgeo.org/geos/trunk@3684 + GEOSPointOnSurface, even for EMPTY (#561) git-svn-id: + http://svn.osgeo.org/geos/trunk@3684 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-24 Mateusz Loskot * CMakeLists.txt, capi/CMakeLists.txt, src/CMakeLists.txt: [CMake] Set SOVERSION property on C API shared library using - CAPI_INTERFACE_* values (Ticket #446). git-svn-id: http://svn.osgeo.org/geos/trunk@3683 + CAPI_INTERFACE_* values (Ticket #446). git-svn-id: + http://svn.osgeo.org/geos/trunk@3683 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-22 Sandro Santilli * include/geos/algorithm/CentroidArea.h: Add note about handling of - degenerate polygons git-svn-id: http://svn.osgeo.org/geos/trunk@3680 + degenerate polygons git-svn-id: + http://svn.osgeo.org/geos/trunk@3680 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-22 Sandro Santilli * capi/geos_ts_c.cpp, tests/unit/capi/GEOSGetCentroidTest.cpp: - Always return POINT from GEOSGetCentroid, even for EMPTY (#560) git-svn-id: http://svn.osgeo.org/geos/trunk@3679 + Always return POINT from GEOSGetCentroid, even for EMPTY (#560) + git-svn-id: http://svn.osgeo.org/geos/trunk@3679 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-22 Sandro Santilli @@ -3110,50 +6755,57 @@ * include/geos/algorithm/CentroidArea.h, src/algorithm/CentroidArea.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSGetCentroidTest.cpp: Port robustness fix to - CentroidArea (#559) git-svn-id: http://svn.osgeo.org/geos/trunk@3677 + CentroidArea (#559) git-svn-id: + http://svn.osgeo.org/geos/trunk@3677 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-11 Sandro Santilli * tests/xmltester/Makefile.am: Retain GEOS_INLINE define while - building XMLTester (#319, #472) git-svn-id: http://svn.osgeo.org/geos/trunk@3673 + building XMLTester (#319, #472) git-svn-id: + http://svn.osgeo.org/geos/trunk@3673 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, include/geos/util/Interrupt.h, src/util/Interrupt.cpp, tests/unit/capi/GEOSInterruptTest.cpp: Allow - chaining interrupt callbacks, drop arg parameter git-svn-id: http://svn.osgeo.org/geos/trunk@3672 + chaining interrupt callbacks, drop arg parameter git-svn-id: + http://svn.osgeo.org/geos/trunk@3672 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli * capi/geos_ts_c.cpp, tests/unit/capi/GEOSInterruptTest.cpp: Revert - the interrupt request callback reset on initGEOS Once you set a callback why would you want it unregistered on - initGEOS ? You will not want that.... git-svn-id: http://svn.osgeo.org/geos/trunk@3671 + the interrupt request callback reset on initGEOS Once you set a + callback why would you want it unregistered on initGEOS ? You will + not want that.... git-svn-id: http://svn.osgeo.org/geos/trunk@3671 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli * src/util/Interrupt.cpp: Clear interruption request flag just - before interrupting git-svn-id: http://svn.osgeo.org/geos/trunk@3670 + before interrupting git-svn-id: + http://svn.osgeo.org/geos/trunk@3670 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli * capi/geos_c.h.in: Drop orphaned custom allocation signatures from - C-API header git-svn-id: http://svn.osgeo.org/geos/trunk@3669 + C-API header git-svn-id: http://svn.osgeo.org/geos/trunk@3669 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli * tests/unit/capi/GEOSInterruptTest.cpp: Test that initGEOS clears - the interrupt callback Also explicitly cleanup the callback after each test. git-svn-id: http://svn.osgeo.org/geos/trunk@3668 + the interrupt callback Also explicitly cleanup the callback after + each test. git-svn-id: http://svn.osgeo.org/geos/trunk@3668 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli - * capi/geos_ts_c.cpp: Unregister the interrupt request on initGEOS git-svn-id: http://svn.osgeo.org/geos/trunk@3667 + * capi/geos_ts_c.cpp: Unregister the interrupt request on initGEOS + git-svn-id: http://svn.osgeo.org/geos/trunk@3667 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-07 Sandro Santilli @@ -3161,58 +6813,67 @@ * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, include/geos/util/Interrupt.h, src/util/Interrupt.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSInterruptTest.cpp: Add - support for registering interruption-checking callback. This is to enhance flexibility of the interruption request model. git-svn-id: http://svn.osgeo.org/geos/trunk@3666 + support for registering interruption-checking callback. This is to + enhance flexibility of the interruption request model. git-svn-id: + http://svn.osgeo.org/geos/trunk@3666 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-06 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSConvexHullTest.cpp: - Enable capi::GEOSConvexHull test, and fix it (#555) git-svn-id: http://svn.osgeo.org/geos/trunk@3665 + Enable capi::GEOSConvexHull test, and fix it (#555) git-svn-id: + http://svn.osgeo.org/geos/trunk@3665 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-06-06 Sandro Santilli * README, src/Makefile.am: Clarify problems with linking against C++ - api (#553) Path by Greg Troxel. git-svn-id: http://svn.osgeo.org/geos/trunk@3663 + api (#553) Path by Greg Troxel. git-svn-id: + http://svn.osgeo.org/geos/trunk@3663 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli * include/geos/algorithm/distance/PointPairDistance.h: No need to - forward declare Coordinate (full definition included) git-svn-id: http://svn.osgeo.org/geos/trunk@3657 + forward declare Coordinate (full definition included) git-svn-id: + http://svn.osgeo.org/geos/trunk@3657 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli * include/geos/geom/Coordinate.h, include/geos/geom/Coordinate.inl: - Do not define an empty destructor for Coordinate git-svn-id: http://svn.osgeo.org/geos/trunk@3656 + Do not define an empty destructor for Coordinate git-svn-id: + http://svn.osgeo.org/geos/trunk@3656 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli - * Makefile.am: Make sure to build geos_svn_config.h git-svn-id: http://svn.osgeo.org/geos/trunk@3655 + * Makefile.am: Make sure to build geos_svn_config.h git-svn-id: + http://svn.osgeo.org/geos/trunk@3655 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli * Makefile.am, capi/geos_ts_c.cpp: Include SVN revision in - GEOSversion output git-svn-id: http://svn.osgeo.org/geos/trunk@3654 + GEOSversion output git-svn-id: http://svn.osgeo.org/geos/trunk@3654 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli - * tools/svn_repo_revision.sh: Fix revision file path git-svn-id: http://svn.osgeo.org/geos/trunk@3653 + * tools/svn_repo_revision.sh: Fix revision file path git-svn-id: + http://svn.osgeo.org/geos/trunk@3653 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli - * tools/svn_repo_revision.sh: Fix test for directory existance git-svn-id: http://svn.osgeo.org/geos/trunk@3652 + * tools/svn_repo_revision.sh: Fix test for directory existance + git-svn-id: http://svn.osgeo.org/geos/trunk@3652 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli * tools/svn_repo_revision.sh: Add script to fetch SVN revision from - git or SVN git-svn-id: http://svn.osgeo.org/geos/trunk@3651 + git or SVN git-svn-id: http://svn.osgeo.org/geos/trunk@3651 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-29 Sandro Santilli @@ -3603,7 +7264,8 @@ src/util/Profiler.cpp, tests/bigtest/GeometryTestFactory.cpp, tests/bigtest/TestSweepLineSpeed.cpp, tests/bigtest/bigtest.h, tests/xmltester/CTS.cpp, tests/xmltester/SimpleWKTTester.cpp, - tests/xmltester/Stackwalker.h: Drop embedded RCS logs git-svn-id: http://svn.osgeo.org/geos/trunk@3650 + tests/xmltester/Stackwalker.h: Drop embedded RCS logs git-svn-id: + http://svn.osgeo.org/geos/trunk@3650 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-28 Sandro Santilli @@ -3615,13 +7277,15 @@ src/operation/buffer/Makefile.am, src/operation/buffer/OffsetCurveBuilder.cpp, src/operation/buffer/OffsetSegmentGenerator.cpp: Install - BufferInputLineSimplifier.h header (#548) Thanks ylan for the patch git-svn-id: http://svn.osgeo.org/geos/trunk@3649 + BufferInputLineSimplifier.h header (#548) Thanks ylan for the patch + git-svn-id: http://svn.osgeo.org/geos/trunk@3649 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-28 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Rename - interrupt request/cancel methods, cancel interrupt in init git-svn-id: http://svn.osgeo.org/geos/trunk@3648 + interrupt request/cancel methods, cancel interrupt in init + git-svn-id: http://svn.osgeo.org/geos/trunk@3648 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-25 Sandro Santilli @@ -3630,35 +7294,40 @@ include/geos/util/Makefile.am, src/util/CustomAllocators.cpp, src/util/Makefile.am, tests/unit/Makefile.am, tests/unit/capi/GEOSCustomAllocatorTest.cpp: Revert the whole custom - memory allocation work (#540) It wasn't well done. Pity. git-svn-id: http://svn.osgeo.org/geos/trunk@3647 + memory allocation work (#540) It wasn't well done. Pity. + git-svn-id: http://svn.osgeo.org/geos/trunk@3647 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-25 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in: Expose interrupt request cancel - to the C-API git-svn-id: http://svn.osgeo.org/geos/trunk@3646 + to the C-API git-svn-id: http://svn.osgeo.org/geos/trunk@3646 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-25 Sandro Santilli * include/geos/util/Interrupt.h: Add method to cancel an - interruption request in util::Interrupt git-svn-id: http://svn.osgeo.org/geos/trunk@3645 + interruption request in util::Interrupt git-svn-id: + http://svn.osgeo.org/geos/trunk@3645 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-25 Sandro Santilli * src/noding/MCIndexNoder.cpp: Add strategic check for interrupt in - MCIndexNoder loop Greatly increases interruptability of buffer operations in presence - of many polygons. git-svn-id: http://svn.osgeo.org/geos/trunk@3644 + MCIndexNoder loop Greatly increases interruptability of buffer + operations in presence of many polygons. git-svn-id: + http://svn.osgeo.org/geos/trunk@3644 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-25 Sandro Santilli * src/operation/buffer/BufferBuilder.cpp, src/operation/overlay/OverlayOp.cpp: Check for interruption in - OverlayOp and BufferBuilder These are just two operations known to take a lot of time. It'll - take a better analisys to find appropriate check point. The checks could as well be put within graph operation loops or - Coordinate constructors... git-svn-id: http://svn.osgeo.org/geos/trunk@3643 + OverlayOp and BufferBuilder These are just two operations known to + take a lot of time. It'll take a better analisys to find appropriate + check point. The checks could as well be put within graph operation + loops or Coordinate constructors... git-svn-id: + http://svn.osgeo.org/geos/trunk@3643 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-25 Sandro Santilli @@ -3666,15 +7335,18 @@ * capi/geos_c.cpp, capi/geos_c.h.in, include/geos/util/Interrupt.h, include/geos/util/Makefile.am, src/util/Interrupt.cpp, src/util/Makefile.am: Initial support for an explicit mechanism to - request interruption This commit provides a GEOS_CHECK_FOR_INTERRUPTS macro for internal - use but adds no users. Early tests shows that registering a SIGINT handler is an effective - way to request interruption of running GEOS operations. git-svn-id: http://svn.osgeo.org/geos/trunk@3642 + request interruption This commit provides a + GEOS_CHECK_FOR_INTERRUPTS macro for internal use but adds no users. + Early tests shows that registering a SIGINT handler is an effective + way to request interruption of running GEOS operations. git-svn-id: + http://svn.osgeo.org/geos/trunk@3642 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-24 Sandro Santilli * include/geos/geom/Geometry.h, src/geom/Geometry.cpp: Don't call - GeometryFactory::getDefaultInstance() at startup (#540) git-svn-id: http://svn.osgeo.org/geos/trunk@3641 + GeometryFactory::getDefaultInstance() at startup (#540) git-svn-id: + http://svn.osgeo.org/geos/trunk@3641 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-24 Mateusz Loskot @@ -3701,32 +7373,46 @@ * include/geos/noding/GeometryNoder.h, include/geos/util/CustomAllocators.h: Added missing GEOS_DLL - directive to GeometryNoder and custom allocators. git-svn-id: http://svn.osgeo.org/geos/trunk@3638 + directive to GeometryNoder and custom allocators. git-svn-id: + http://svn.osgeo.org/geos/trunk@3638 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2012-05-23 Mateusz Loskot + + * : Updated svn:ignore patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@3637 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-23 Mateusz Loskot - * : Updated svn:ignore patterns git-svn-id: http://svn.osgeo.org/geos/trunk@3637 + * capi/geos_c.h.in, capi/geos_ts_c.cpp, + include/geos/util/CustomAllocators.h, + src/util/CustomAllocators.cpp, + tests/unit/capi/GEOSCustomAllocatorTest.cpp: Renamed Freer to + Deallocator git-svn-id: http://svn.osgeo.org/geos/trunk@3636 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-23 Mateusz Loskot * capi/geos_ts_c.cpp: Missing namespace prevented Visual C++ - compiler to find GEOSAllocator and GEOSFreer git-svn-id: http://svn.osgeo.org/geos/trunk@3635 + compiler to find GEOSAllocator and GEOSFreer git-svn-id: + http://svn.osgeo.org/geos/trunk@3635 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-16 Sandro Santilli * src/util/CustomAllocators.cpp, tests/unit/capi/GEOSCustomAllocatorTest.cpp: Fix CustomAllocators to - really use the custom allocators Improve the unit test for it git-svn-id: http://svn.osgeo.org/geos/trunk@3633 + really use the custom allocators Improve the unit test for it + git-svn-id: http://svn.osgeo.org/geos/trunk@3633 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-16 Sandro Santilli * src/geom/GeometryFactory.cpp: Lazily create default - GeometryFactory instance (#540) Seems to fix a problem with mismatch of allocator and deallocator - for the static object git-svn-id: http://svn.osgeo.org/geos/trunk@3632 + GeometryFactory instance (#540) Seems to fix a problem with + mismatch of allocator and deallocator for the static object + git-svn-id: http://svn.osgeo.org/geos/trunk@3632 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-16 Sandro Santilli @@ -3736,7 +7422,9 @@ include/geos/util/Makefile.am, src/util/CustomAllocators.cpp, src/util/Makefile.am, tests/unit/Makefile.am, tests/unit/capi/GEOSCustomAllocatorTest.cpp: Allow passing custom - memory managment functions (#540) This is both in the C++ library _and_ the C library. git-svn-id: http://svn.osgeo.org/geos/trunk@3631 + memory managment functions (#540) This is both in the C++ library + _and_ the C library. git-svn-id: + http://svn.osgeo.org/geos/trunk@3631 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-16 Mateusz Loskot @@ -3748,7 +7436,8 @@ 2012-05-14 Sandro Santilli * src/operation/polygonize/EdgeRing.cpp: Reduce calls to - ptNotInList, greatly speeding up Polygonizer (#545) git-svn-id: http://svn.osgeo.org/geos/trunk@3629 + ptNotInList, greatly speeding up Polygonizer (#545) git-svn-id: + http://svn.osgeo.org/geos/trunk@3629 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-09 Sandro Santilli @@ -3758,78 +7447,91 @@ src/simplify/TaggedLineStringSimplifier.cpp, src/simplify/TopologyPreservingSimplifier.cpp, tests/unit/simplify/TopologyPreservingSimplifierTest.cpp: Fix - TopologyPreservingSimplifier invalid output on closed line (#508) git-svn-id: http://svn.osgeo.org/geos/trunk@3627 + TopologyPreservingSimplifier invalid output on closed line (#508) + git-svn-id: http://svn.osgeo.org/geos/trunk@3627 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-09 Sandro Santilli - * php/geos.c: Add support for PHP 5.4 (#513) -- thanks voxik git-svn-id: http://svn.osgeo.org/geos/trunk@3625 + * php/geos.c: Add support for PHP 5.4 (#513) -- thanks voxik + git-svn-id: http://svn.osgeo.org/geos/trunk@3625 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-08 Sandro Santilli * src/geom/Geometry.cpp: Envelope-based short-circuit for - Geometry->symDifference (#543) git-svn-id: http://svn.osgeo.org/geos/trunk@3623 + Geometry->symDifference (#543) git-svn-id: + http://svn.osgeo.org/geos/trunk@3623 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-08 Sandro Santilli * capi/geos_ts_c.cpp, tests/xmltester/XMLTester.cpp: Geometry - methods do use BinaryOp internally + shortcuts (#542) This commit changes both XMLTester and C-API to not use BinaryOp - directly but rather rely on geometry methods to do that. git-svn-id: http://svn.osgeo.org/geos/trunk@3621 + methods do use BinaryOp internally + shortcuts (#542) This commit + changes both XMLTester and C-API to not use BinaryOp directly but + rather rely on geometry methods to do that. git-svn-id: + http://svn.osgeo.org/geos/trunk@3621 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-04 Sandro Santilli * include/geos/noding/GeometryNoder.h, src/noding/GeometryNoder.cpp: - Correct include directives for GeometryNoder (#538) git-svn-id: http://svn.osgeo.org/geos/trunk@3619 + Correct include directives for GeometryNoder (#538) git-svn-id: + http://svn.osgeo.org/geos/trunk@3619 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-04 Sandro Santilli * acsite.m4: Update PGAC_TYPE_64BIT_INT for better cross-compiler - support (#534) git-svn-id: http://svn.osgeo.org/geos/trunk@3618 + support (#534) git-svn-id: http://svn.osgeo.org/geos/trunk@3618 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-05-03 Sandro Santilli - * tests/perf/ClassSizes.cpp: Check size of "intt64" git-svn-id: http://svn.osgeo.org/geos/trunk@3616 + * tests/perf/ClassSizes.cpp: Check size of "intt64" git-svn-id: + http://svn.osgeo.org/geos/trunk@3616 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-27 Sandro Santilli - * NEWS, php/geos.c, php/test/test.php: Expose GEOSNode to PHP api git-svn-id: http://svn.osgeo.org/geos/trunk@3615 + * NEWS, php/geos.c, php/test/test.php: Expose GEOSNode to PHP api + git-svn-id: http://svn.osgeo.org/geos/trunk@3615 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-12 Sandro Santilli * src/geomgraph/Node.cpp, tests/unit/capi/GEOSUnaryUnionTest.cpp: - Throw an exception rather than aborting on NaN overlay input (#530) git-svn-id: http://svn.osgeo.org/geos/trunk@3614 + Throw an exception rather than aborting on NaN overlay input (#530) + git-svn-id: http://svn.osgeo.org/geos/trunk@3614 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-10 Sandro Santilli * src/noding/snapround/HotPixel.cpp: Abort if HotPixel is - constructed with zero scale (#529) git-svn-id: http://svn.osgeo.org/geos/trunk@3612 + constructed with zero scale (#529) git-svn-id: + http://svn.osgeo.org/geos/trunk@3612 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-10 Sandro Santilli * tests/xmltester/Makefile.am, - tests/xmltester/tests/ticket/bug527.xml: Add test for bug #527 git-svn-id: http://svn.osgeo.org/geos/trunk@3611 + tests/xmltester/tests/ticket/bug527.xml: Add test for bug #527 + git-svn-id: http://svn.osgeo.org/geos/trunk@3611 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-10 Sandro Santilli * include/geos/operation/union/UnaryUnionOp.h: Have UnaryUnion use - BinaryOp for the simple case See ticket #527 -- there's no infinite loop triggered by our - testsuite... git-svn-id: http://svn.osgeo.org/geos/trunk@3609 + BinaryOp for the simple case See ticket #527 -- there's no infinite + loop triggered by our testsuite... git-svn-id: + http://svn.osgeo.org/geos/trunk@3609 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-10 Sandro Santilli * include/geos/geom/BinaryOp.h: Reduce CommonBitsRemover harmful - effects during overlay op (#527) git-svn-id: http://svn.osgeo.org/geos/trunk@3607 + effects during overlay op (#527) git-svn-id: + http://svn.osgeo.org/geos/trunk@3607 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-10 Sandro Santilli @@ -3843,13 +7545,15 @@ src/precision/SimpleGeometryPrecisionReducer.cpp, tests/unit/Makefile.am, tests/unit/precision/GeometryPrecisionReducerTest.cpp: Port - GeometryPrecisionReducer, include testcase git-svn-id: http://svn.osgeo.org/geos/trunk@3605 + GeometryPrecisionReducer, include testcase git-svn-id: + http://svn.osgeo.org/geos/trunk@3605 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-06 Sandro Santilli * src/geom/GeometryFactory.cpp: Deep copy Geometry with - GeometryFactory.createGeometry() Uses the CoordinateSequenceFactory of the factory git-svn-id: http://svn.osgeo.org/geos/trunk@3604 + GeometryFactory.createGeometry() Uses the CoordinateSequenceFactory + of the factory git-svn-id: http://svn.osgeo.org/geos/trunk@3604 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-06 Sandro Santilli @@ -3861,54 +7565,63 @@ src/geom/CoordinateArraySequence.cpp, src/geom/CoordinateArraySequenceFactory.cpp, src/geom/CoordinateSequenceFactory.cpp: Add CoordinateSequence deep - copy trhough CoordinateSequenceFactory git-svn-id: http://svn.osgeo.org/geos/trunk@3603 + copy trhough CoordinateSequenceFactory git-svn-id: + http://svn.osgeo.org/geos/trunk@3603 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * tests/unit/capi/GEOSNodeTest.cpp: Normalize noded geometry before - comparing with expected value In this way we can change the noding implementation w/out breaking - the tests. git-svn-id: http://svn.osgeo.org/geos/trunk@3602 + comparing with expected value In this way we can change the noding + implementation w/out breaking the tests. git-svn-id: + http://svn.osgeo.org/geos/trunk@3602 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * swig/python/geos_wrap.cxx: Regnerate geos wrapper with correct - version for this branch git-svn-id: http://svn.osgeo.org/geos/trunk@3601 + version for this branch git-svn-id: + http://svn.osgeo.org/geos/trunk@3601 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * swig/python/geos.py, swig/python/geos_wrap.cxx: Regenerate swig - wrappers with SWIG 1.3.40 git-svn-id: http://svn.osgeo.org/geos/trunk@3599 + wrappers with SWIG 1.3.40 git-svn-id: + http://svn.osgeo.org/geos/trunk@3599 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * src/noding/snapround/SimpleSnapRounder.cpp: Fix - SimpleSnapRounder::getNodedSubstrings, fix leak on exception git-svn-id: http://svn.osgeo.org/geos/trunk@3598 + SimpleSnapRounder::getNodedSubstrings, fix leak on exception + git-svn-id: http://svn.osgeo.org/geos/trunk@3598 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli - * src/noding/GeometryNoder.cpp: Clean memory on exception git-svn-id: http://svn.osgeo.org/geos/trunk@3597 + * src/noding/GeometryNoder.cpp: Clean memory on exception + git-svn-id: http://svn.osgeo.org/geos/trunk@3597 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * include/geos/noding/NodedSegmentString.h: Generalize - NodedSegmentString::getNodedSubstrings git-svn-id: http://svn.osgeo.org/geos/trunk@3596 + NodedSegmentString::getNodedSubstrings git-svn-id: + http://svn.osgeo.org/geos/trunk@3596 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * tests/unit/capi/GEOSNodeTest.cpp: Ensure GEOSNode doesn't throw an - exception with current tests git-svn-id: http://svn.osgeo.org/geos/trunk@3595 + exception with current tests git-svn-id: + http://svn.osgeo.org/geos/trunk@3595 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli - * NEWS: Add note about GEOSNode git-svn-id: http://svn.osgeo.org/geos/trunk@3594 + * NEWS: Add note about GEOSNode git-svn-id: + http://svn.osgeo.org/geos/trunk@3594 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli @@ -3918,60 +7631,69 @@ include/geos/noding/Makefile.am, src/noding/GeometryNoder.cpp, src/noding/IteratedNoder.cpp, src/noding/Makefile.am, tests/unit/Makefile.am, tests/unit/capi/GEOSNodeTest.cpp: Add - GEOSNode C-API interface (#496) Includes a new GeometryNoder C++ class and regression testing. git-svn-id: http://svn.osgeo.org/geos/trunk@3593 + GEOSNode C-API interface (#496) Includes a new GeometryNoder C++ + class and regression testing. git-svn-id: + http://svn.osgeo.org/geos/trunk@3593 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli - * src/noding/IteratedNoder.cpp: Fix memory leak with IteratedNoder git-svn-id: http://svn.osgeo.org/geos/trunk@3592 + * src/noding/IteratedNoder.cpp: Fix memory leak with IteratedNoder + git-svn-id: http://svn.osgeo.org/geos/trunk@3592 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * include/geos/noding/IteratedNoder.h, src/noding/IteratedNoder.cpp: - Update port info and cleanup IteratedNoder git-svn-id: http://svn.osgeo.org/geos/trunk@3591 + Update port info and cleanup IteratedNoder git-svn-id: + http://svn.osgeo.org/geos/trunk@3591 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * include/geos/geomgraph/EdgeList.h, include/geos/noding/OrientedCoordinateArray.h: Make - OrientedCoordinateArray comparable git-svn-id: http://svn.osgeo.org/geos/trunk@3590 + OrientedCoordinateArray comparable git-svn-id: + http://svn.osgeo.org/geos/trunk@3590 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-05 Sandro Santilli * include/geos/noding/OrientedCoordinateArray.h, src/noding/OrientedCoordinateArray.cpp: Make OrientedCoordinateArray - assignable git-svn-id: http://svn.osgeo.org/geos/trunk@3589 + assignable git-svn-id: http://svn.osgeo.org/geos/trunk@3589 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-03 Sandro Santilli * include/geos/noding/OrientedCoordinateArray.h: Make - OrientedCoordinateArray copyable git-svn-id: http://svn.osgeo.org/geos/trunk@3588 + OrientedCoordinateArray copyable git-svn-id: + http://svn.osgeo.org/geos/trunk@3588 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-03 Sandro Santilli * include/geos/noding/snapround/MCIndexSnapRounder.h: Const-correct - PrecisionModel use in MCIndexSnapRounder git-svn-id: http://svn.osgeo.org/geos/trunk@3587 + PrecisionModel use in MCIndexSnapRounder git-svn-id: + http://svn.osgeo.org/geos/trunk@3587 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-01 Paul Ramsey - * HOWTO_RELEASE: Update howto release git-svn-id: http://svn.osgeo.org/geos/trunk@3585 + * HOWTO_RELEASE: Update howto release git-svn-id: + http://svn.osgeo.org/geos/trunk@3585 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-04-01 Paul Ramsey * capi/geos_c.h.in: Sync up versions advertised in capi to those in - configure.in git-svn-id: http://svn.osgeo.org/geos/trunk@3583 + configure.in git-svn-id: http://svn.osgeo.org/geos/trunk@3583 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-03-27 Sandro Santilli - * src/operation/overlay/snap/LineStringSnapper.cpp: Indent.. git-svn-id: http://svn.osgeo.org/geos/trunk@3576 + * src/operation/overlay/snap/LineStringSnapper.cpp: Indent.. + git-svn-id: http://svn.osgeo.org/geos/trunk@3576 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-03-22 Sandro Santilli @@ -3979,28 +7701,32 @@ * src/simplify/TaggedLineString.cpp, src/simplify/TaggedLineStringSimplifier.cpp, tests/unit/simplify/TopologyPreservingSimplifierTest.cpp: Fix - simplification of collections with empty items (#519) git-svn-id: http://svn.osgeo.org/geos/trunk@3575 + simplification of collections with empty items (#519) git-svn-id: + http://svn.osgeo.org/geos/trunk@3575 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-02-20 Paul Ramsey - * CMakeLists.txt: Synch patch level version with autoconf number git-svn-id: http://svn.osgeo.org/geos/trunk@3573 + * CMakeLists.txt: Synch patch level version with autoconf number + git-svn-id: http://svn.osgeo.org/geos/trunk@3573 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-02-16 Paul Ramsey * src/algorithm/RobustDeterminant.cpp: Update provenance for Olivier - Devillers. git-svn-id: http://svn.osgeo.org/geos/trunk@3568 + Devillers. git-svn-id: http://svn.osgeo.org/geos/trunk@3568 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-01-16 Paul Ramsey - * src/algorithm/RobustDeterminant.cpp: More info on provenance. git-svn-id: http://svn.osgeo.org/geos/trunk@3567 + * src/algorithm/RobustDeterminant.cpp: More info on provenance. + git-svn-id: http://svn.osgeo.org/geos/trunk@3567 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-01-16 Paul Ramsey - * include/geos/timeval.h: Update provenenance git-svn-id: http://svn.osgeo.org/geos/trunk@3566 + * include/geos/timeval.h: Update provenenance git-svn-id: + http://svn.osgeo.org/geos/trunk@3566 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-01-16 Paul Ramsey @@ -4563,67 +8289,76 @@ tests/xmltester/XMLTester.h, tests/xmltester/safe_to_xml.sh, tests/xmltester/tests/robustness.xml: Complete Note#1 in the http://wiki.osgeo.org/wiki/GEOS_Provenance_Review to get out of - incubation. git-svn-id: http://svn.osgeo.org/geos/trunk@3565 + incubation. git-svn-id: http://svn.osgeo.org/geos/trunk@3565 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-01-07 Mateusz Loskot * CMakeLists.txt: Fixed (hopefully) CMake issues with std:: - namespace detection (Ticket #493) git-svn-id: http://svn.osgeo.org/geos/trunk@3563 + namespace detection (Ticket #493) git-svn-id: + http://svn.osgeo.org/geos/trunk@3563 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-01-07 Mateusz Loskot * tests/unit/capi/GEOSisValidDetailTest.cpp: Missing header - for toupper. Fixed Visual C++ warning. git-svn-id: http://svn.osgeo.org/geos/trunk@3562 + for toupper. Fixed Visual C++ warning. git-svn-id: + http://svn.osgeo.org/geos/trunk@3562 5242fede-7e19-0410-aef8-94bd7d2200fb 2012-01-06 Sandro Santilli * src/operation/buffer/BufferOp.cpp: Forward port: Fix MSVC - compilation of ambiguous log() call #506 git-svn-id: http://svn.osgeo.org/geos/trunk@3561 + compilation of ambiguous log() call #506 git-svn-id: + http://svn.osgeo.org/geos/trunk@3561 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-16 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp: Make debugging - output of LineStringSnapper more readable git-svn-id: http://svn.osgeo.org/geos/trunk@3555 + output of LineStringSnapper more readable git-svn-id: + http://svn.osgeo.org/geos/trunk@3555 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-15 Sandro Santilli * include/geos/geom/BinaryOp.h, tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug488.xml: Check validity after - snapping in BinaryOp. Fixes bug #488 Adds regression test. This is a GEOS-only approach. git-svn-id: http://svn.osgeo.org/geos/trunk@3553 + snapping in BinaryOp. Fixes bug #488 Adds regression test. This is + a GEOS-only approach. git-svn-id: + http://svn.osgeo.org/geos/trunk@3553 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-15 Sandro Santilli - * include/geos/operation/overlay/OverlayOp.h: indent git-svn-id: http://svn.osgeo.org/geos/trunk@3550 + * include/geos/operation/overlay/OverlayOp.h: indent git-svn-id: + http://svn.osgeo.org/geos/trunk@3550 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-15 Sandro Santilli * include/geos/geom/BinaryOp.h: Fix build with CBR_BEFORE_SNAPPING - undefined git-svn-id: http://svn.osgeo.org/geos/trunk@3548 + undefined git-svn-id: http://svn.osgeo.org/geos/trunk@3548 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-12 Howard Butler * src/operation/overlay/OverlayNodeFactory.cpp: apply patch for #500 - to fix clang's complaint about a missing default initialization git-svn-id: http://svn.osgeo.org/geos/trunk@3546 + to fix clang's complaint about a missing default initialization + git-svn-id: http://svn.osgeo.org/geos/trunk@3546 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-12 Sandro Santilli * src/algorithm/CGAlgorithms.cpp: Apply Shoelace formula for area - calculation (#485) git-svn-id: http://svn.osgeo.org/geos/trunk@3544 + calculation (#485) git-svn-id: http://svn.osgeo.org/geos/trunk@3544 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-12 Sandro Santilli * macros/geos.m4, tools/geos-config.in: Add --clibs to geos-config - and GEOS_C_LIBS to geos.m4 (#497) git-svn-id: http://svn.osgeo.org/geos/trunk@3542 + and GEOS_C_LIBS to geos.m4 (#497) git-svn-id: + http://svn.osgeo.org/geos/trunk@3542 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-09 Sandro Santilli @@ -4633,12 +8368,14 @@ include/geos/operation/overlay/snap/SnapOverlayOp.h, src/operation/overlay/snap/GeometrySnapper.cpp, src/operation/overlay/snap/SnapOverlayOp.cpp: Fix C++11 build by - avoiding std::pair (#491) git-svn-id: http://svn.osgeo.org/geos/trunk@3540 + avoiding std::pair (#491) git-svn-id: + http://svn.osgeo.org/geos/trunk@3540 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-09 Sandro Santilli - * .gitignore: Ignore built performance tests git-svn-id: http://svn.osgeo.org/geos/trunk@3536 + * .gitignore: Ignore built performance tests git-svn-id: + http://svn.osgeo.org/geos/trunk@3536 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-09 Sandro Santilli @@ -4648,9 +8385,10 @@ tests/xmltester/Makefile.am, tests/xmltester/tests/safe/TestBufferJagged.xml, tests/xmltester/tests/safe/buffer-1.01.xml: Improve buffer - robustness by reverting to non snaprounding noder This commit fixes all cases reported in + robustness by reverting to non snaprounding noder This commit fixes + all cases reported in http://trac.osgeo.org/geos/wiki/BufferRobustness They include #495 - and #494 git-svn-id: http://svn.osgeo.org/geos/trunk@3535 + and #494 git-svn-id: http://svn.osgeo.org/geos/trunk@3535 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-09 Sandro Santilli @@ -4661,8 +8399,9 @@ tests/xmltester/tests/general/TestUnaryUnion.xml, tests/xmltester/tests/general/TestUnaryUnionFloating.xml: Fix CascadedPolygonUnion to discard non-polygonal components created - during unioning This is to avoid failures and provide more desirable behaviour. - Includes automated testing. Closes ticket #499. git-svn-id: http://svn.osgeo.org/geos/trunk@3534 + during unioning This is to avoid failures and provide more + desirable behaviour. Includes automated testing. Closes ticket #499. + git-svn-id: http://svn.osgeo.org/geos/trunk@3534 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-07 Sandro Santilli @@ -4671,14 +8410,16 @@ include/geos/noding/snapround/MCIndexSnapRounder.h, src/noding/snapround/MCIndexPointSnapper.cpp, src/noding/snapround/MCIndexSnapRounder.cpp: Update port info for - MCIndexPointSnapper and MCIndexSnapRounder git-svn-id: http://svn.osgeo.org/geos/trunk@3530 + MCIndexPointSnapper and MCIndexSnapRounder git-svn-id: + http://svn.osgeo.org/geos/trunk@3530 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-07 Sandro Santilli * tests/unit/Makefile.am, tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp: Add a simple - test for MCIndexSnapRounderTest The test would fail before the fix in r3528 git-svn-id: http://svn.osgeo.org/geos/trunk@3529 + test for MCIndexSnapRounderTest The test would fail before the fix + in r3528 git-svn-id: http://svn.osgeo.org/geos/trunk@3529 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-06 Sandro Santilli @@ -4686,13 +8427,15 @@ * include/geos/noding/snapround/HotPixel.h, src/noding/snapround/HotPixel.cpp, tests/unit/Makefile.am, tests/unit/noding/snapround/HotPixelTest.cpp: HotPixel: do not - invalidate reference to original point. Fixes #498. git-svn-id: http://svn.osgeo.org/geos/trunk@3528 + invalidate reference to original point. Fixes #498. git-svn-id: + http://svn.osgeo.org/geos/trunk@3528 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-12-02 Sandro Santilli * tests/xmltester/tests/safe/buffer-1.01.xml: Add - tag to make the test runnable with JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3525 + tag to make the test runnable with JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@3525 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-30 Sandro Santilli @@ -4700,14 +8443,16 @@ * include/geos/noding/snapround/MCIndexSnapRounder.h, src/noding/snapround/MCIndexSnapRounder.cpp, tests/unit/operation/buffer/BufferOpTest.cpp: Fix MCIndexSnapRounder - use of provided precision model. Fixes bug #473 (RightmostEdgeFinder assertion failure). Includes - regression test. git-svn-id: http://svn.osgeo.org/geos/trunk@3523 + use of provided precision model. Fixes bug #473 + (RightmostEdgeFinder assertion failure). Includes regression test. + git-svn-id: http://svn.osgeo.org/geos/trunk@3523 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-29 Sandro Santilli * src/geom/Coordinate.cpp: Use 18 significant digits for - TopologyException point coordinates git-svn-id: http://svn.osgeo.org/geos/trunk@3522 + TopologyException point coordinates git-svn-id: + http://svn.osgeo.org/geos/trunk@3522 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-28 Sandro Santilli @@ -4715,25 +8460,30 @@ * src/operation/buffer/BufferBuilder.cpp, tests/xmltester/Makefile.am, tests/xmltester/tests/safe/buffer-1.01.xml: BufferBuilder: fix - handling of collapsed edges skipping. Fixes #494. Includes regression test, provided by SAFE. git-svn-id: http://svn.osgeo.org/geos/trunk@3520 + handling of collapsed edges skipping. Fixes #494. Includes + regression test, provided by SAFE. git-svn-id: + http://svn.osgeo.org/geos/trunk@3520 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-24 Sandro Santilli * macros/ruby.m4, swig/ruby/Makefile.am, swig/ruby/geos_wrap.cxx, - swig/ruby/ruby.i: Fix to get swig/ruby compiling for ruby 1.9 Patch by Kashif Rasul git-svn-id: http://svn.osgeo.org/geos/trunk@3518 + swig/ruby/ruby.i: Fix to get swig/ruby compiling for ruby 1.9 Patch + by Kashif Rasul git-svn-id: http://svn.osgeo.org/geos/trunk@3518 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-06 Mateusz Loskot * nmake.opt: * GEOS builds with Visual C++ from Visual Studio 11(Developer - Preview). * Added related _NMAKE_VER case to nmake.opt. git-svn-id: http://svn.osgeo.org/geos/trunk@3517 + Preview). * Added related _NMAKE_VER case to nmake.opt. git-svn-id: + http://svn.osgeo.org/geos/trunk@3517 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-04 Sandro Santilli * tests/unit/capi/GEOSisValidDetailTest.cpp: Allow any case in NaN - for testcase purposes (#486) git-svn-id: http://svn.osgeo.org/geos/trunk@3515 + for testcase purposes (#486) git-svn-id: + http://svn.osgeo.org/geos/trunk@3515 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-11-04 Sandro Santilli @@ -4741,25 +8491,36 @@ * src/operation/union/UnaryUnionOp.cpp, tests/unit/operation/union/UnaryUnionOpTest.cpp, tests/xmltester/tests/general/TestUnaryUnion.xml: Fix noding of - self-intersecting lines through UnaryUnion (#482) Includes updated tests from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3514 + self-intersecting lines through UnaryUnion (#482) Includes updated + tests from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3514 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-28 Mateusz Loskot - * : Updated svn:ignore property git-svn-id: http://svn.osgeo.org/geos/trunk@3511 + * : Updated svn:ignore property git-svn-id: + http://svn.osgeo.org/geos/trunk@3511 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2011-10-27 Sandro Santilli + + * TODO: Add JTS triangulation api item git-svn-id: + http://svn.osgeo.org/geos/trunk@3510 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-26 Mateusz Loskot - * tests/unit/operation/buffer/BufferOpTest.cpp: * Test of two ways of executing buffer operation. * Test problems with BufferOp when using BufferParameters reported - by Markus Meyer. * TODO: if possible, replace sample WKT with WKT from Markus. git-svn-id: http://svn.osgeo.org/geos/trunk@3509 + * tests/unit/operation/buffer/BufferOpTest.cpp: * Test of two ways of executing buffer operation. * Test problems + with BufferOp when using BufferParameters reported by Markus Meyer. + * TODO: if possible, replace sample WKT with WKT from Markus. + git-svn-id: http://svn.osgeo.org/geos/trunk@3509 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-26 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/buffer/BufferParametersTest.cpp: Add test for - BufferParameters class git-svn-id: http://svn.osgeo.org/geos/trunk@3508 + BufferParameters class git-svn-id: + http://svn.osgeo.org/geos/trunk@3508 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-26 Sandro Santilli @@ -4770,30 +8531,33 @@ 2011-10-26 Sandro Santilli - * NEWS: Add missing CAPI additions of 3.3.0 to NEWS file git-svn-id: http://svn.osgeo.org/geos/trunk@3504 + * NEWS: Add missing CAPI additions of 3.3.0 to NEWS file + git-svn-id: http://svn.osgeo.org/geos/trunk@3504 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-19 Mateusz Loskot * CMakeLists.txt: Fixed CMAKE_CXX_FLAGS overridind -std=gnu++0x - (#489) git-svn-id: http://svn.osgeo.org/geos/trunk@3502 + (#489) git-svn-id: http://svn.osgeo.org/geos/trunk@3502 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-18 Mateusz Loskot * CMakeLists.txt: Missing 3.4.0 versions update in CMake - configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3501 + configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3501 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-05 Mateusz Loskot - * capi/geos_ts_c.cpp: Removed redundant casts between integer types git-svn-id: http://svn.osgeo.org/geos/trunk@3499 + * capi/geos_ts_c.cpp: Removed redundant casts between integer types + git-svn-id: http://svn.osgeo.org/geos/trunk@3499 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-05 Howard Butler * tests/unit/tut/tut_assert.hpp: declare these functions static - inline to silence unused-function warning git-svn-id: http://svn.osgeo.org/geos/trunk@3498 + inline to silence unused-function warning git-svn-id: + http://svn.osgeo.org/geos/trunk@3498 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-04 Howard Butler @@ -4822,29 +8586,39 @@ include/geos/util/IllegalStateException.h, include/geos/util/UnsupportedOperationException.h, src/precision/CommonBitsRemover.cpp: remove extra ;'s to satisfy - pedantic warning git-svn-id: http://svn.osgeo.org/geos/trunk@3497 + pedantic warning git-svn-id: http://svn.osgeo.org/geos/trunk@3497 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2011-10-04 Howard Butler + + * CMakeLists.txt: turn off framework building by default on APPLE + git-svn-id: http://svn.osgeo.org/geos/trunk@3495 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-04 Howard Butler - * CMakeLists.txt: turn off framework building by default on APPLE git-svn-id: http://svn.osgeo.org/geos/trunk@3495 + * : propsets to svn:ignore CMake build junk git-svn-id: + http://svn.osgeo.org/geos/trunk@3494 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-04 Howard Butler - * : propsets to svn:ignore CMake build junk git-svn-id: http://svn.osgeo.org/geos/trunk@3494 + * capi/CMakeLists.txt, src/CMakeLists.txt: fix up non-framework + CMake builds on APPLE git-svn-id: + http://svn.osgeo.org/geos/trunk@3493 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-10-04 Howard Butler * src/index/sweepline/SweepLineIndex.cpp: fix up order - initialization git-svn-id: http://svn.osgeo.org/geos/trunk@3492 + initialization git-svn-id: http://svn.osgeo.org/geos/trunk@3492 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-28 Mateusz Loskot - * tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: * Added interesting test<11> case to Douglas-Peucker unit * Visual C++ build on Windows x86-32 is all green and happy throwing - ok:737 git-svn-id: http://svn.osgeo.org/geos/trunk@3491 + * tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: * Added interesting test<11> case to Douglas-Peucker unit * Visual + C++ build on Windows x86-32 is all green and happy throwing ok:737 + git-svn-id: http://svn.osgeo.org/geos/trunk@3491 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-23 Sandro Santilli @@ -4861,13 +8635,17 @@ src/linearref/LinearIterator.cpp, src/linearref/LinearLocation.cpp, src/linearref/LocationIndexOfPoint.cpp: Fixed handling of Linear Referencing over MultiLineStrings to always return lowest index, and - to trim zero-length result components (#323) Includes test. This is a port of JTS changesets 463, 464 and 465 git-svn-id: http://svn.osgeo.org/geos/trunk@3484 + to trim zero-length result components (#323) Includes test. This is + a port of JTS changesets 463, 464 and 465 git-svn-id: + http://svn.osgeo.org/geos/trunk@3484 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-23 Sandro Santilli * tests/unit/linearref/LengthIndexedLineTest.cpp: Port updates to - the LenghtIndexedLineTest testcase (see #323) Note that the test fails if the library isn't also fixed git-svn-id: http://svn.osgeo.org/geos/trunk@3483 + the LenghtIndexedLineTest testcase (see #323) Note that the test + fails if the library isn't also fixed git-svn-id: + http://svn.osgeo.org/geos/trunk@3483 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-23 Mateusz Loskot @@ -5522,7 +9300,7 @@ tests/xmltester/Stackwalker.h, tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h, tools/CMakeLists.txt, tools/Makefile.am: Removed Subversion Id keyword from all text files - (#480) git-svn-id: http://svn.osgeo.org/geos/trunk@3482 + (#480) git-svn-id: http://svn.osgeo.org/geos/trunk@3482 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-23 Mateusz Loskot @@ -6136,13 +9914,15 @@ tests/xmltester/SingleSidedBufferResultMatcher.h, tests/xmltester/Stackwalker.h, tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h, tools/CMakeLists.txt, - tools/Makefile.am: Removed Subversion svn:keywords property (#480) git-svn-id: http://svn.osgeo.org/geos/trunk@3481 + tools/Makefile.am: Removed Subversion svn:keywords property (#480) + git-svn-id: http://svn.osgeo.org/geos/trunk@3481 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-21 Sandro Santilli * swig/geos.i.in, swig/python/Makefile.am: Fix out-of-place build - for python binding (#332) git-svn-id: http://svn.osgeo.org/geos/trunk@3475 + for python binding (#332) git-svn-id: + http://svn.osgeo.org/geos/trunk@3475 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-20 Howard Butler @@ -6150,31 +9930,35 @@ * include/geos/geom/GeometryCollection.h: mark concrete implementations as non-virtual for GeometryCollection::computeEnvelopInternal and - GeometryCollection::compareToSameClass #478 git-svn-id: http://svn.osgeo.org/geos/trunk@3472 + GeometryCollection::compareToSameClass #478 git-svn-id: + http://svn.osgeo.org/geos/trunk@3472 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-20 Howard Butler - * include/geos/geom/GeometryFactory.h: apply clang fix for #463 git-svn-id: http://svn.osgeo.org/geos/trunk@3470 + * include/geos/geom/GeometryFactory.h: apply clang fix for #463 + git-svn-id: http://svn.osgeo.org/geos/trunk@3470 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-19 Mateusz Loskot * tests/unit/capi/GEOSisValidDetailTest.cpp: Disable unit test - relying on C99 feature if GEOS built using Visual C++ git-svn-id: http://svn.osgeo.org/geos/trunk@3469 + relying on C99 feature if GEOS built using Visual C++ git-svn-id: + http://svn.osgeo.org/geos/trunk@3469 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-17 Sandro Santilli * include/geos/platform.h.in: Use the global isnan from math.h for - Solaris (#461) git-svn-id: http://svn.osgeo.org/geos/trunk@3468 + Solaris (#461) git-svn-id: http://svn.osgeo.org/geos/trunk@3468 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-09-12 Sandro Santilli * src/algorithm/InteriorPointArea.cpp, tests/unit/Makefile.am, tests/unit/algorithm/InteriorPointAreaTest.cpp: Fix memory leak on - invalid geometry in InteriorPointArea (#475) git-svn-id: http://svn.osgeo.org/geos/trunk@3465 + invalid geometry in InteriorPointArea (#475) git-svn-id: + http://svn.osgeo.org/geos/trunk@3465 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-08-24 Sandro Santilli @@ -6183,7 +9967,7 @@ include/geos/operation/relate/RelateComputer.h, src/geom/util/SineStarFactory.cpp, src/operation/relate/RelateComputer.cpp: Fix warnings on MSVC 2008 - 64 Bit (#470) git-svn-id: http://svn.osgeo.org/geos/trunk@3463 + 64 Bit (#470) git-svn-id: http://svn.osgeo.org/geos/trunk@3463 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-08-20 Sandro Santilli @@ -6191,37 +9975,43 @@ * src/geom/GeometryCollection.cpp, src/geom/LineString.cpp, src/geom/Point.cpp, src/geom/Polygon.cpp, tests/unit/Makefile.am, tests/unit/geom/Geometry/clone.cpp: Forward port fix for #464 - (Geometry.clone SRID copy) git-svn-id: http://svn.osgeo.org/geos/trunk@3461 + (Geometry.clone SRID copy) git-svn-id: + http://svn.osgeo.org/geos/trunk@3461 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-08-19 Sandro Santilli * src/planargraph/DirectedEdge.cpp: Fix missing return from - DirectedEdge output operator git-svn-id: http://svn.osgeo.org/geos/trunk@3458 + DirectedEdge output operator git-svn-id: + http://svn.osgeo.org/geos/trunk@3458 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-08-19 Sandro Santilli * tests/perf/Makefile.am, tests/perf/capi/Makefile.am: Fix - out-of-source builds git-svn-id: http://svn.osgeo.org/geos/trunk@3457 + out-of-source builds git-svn-id: + http://svn.osgeo.org/geos/trunk@3457 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-08-06 Sandro Santilli * include/geos/noding/BasicSegmentString.h, src/inlines.cpp: Drop - dangling references to SegmentString.inl (ticket #467) git-svn-id: http://svn.osgeo.org/geos/trunk@3456 + dangling references to SegmentString.inl (ticket #467) git-svn-id: + http://svn.osgeo.org/geos/trunk@3456 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-27 Sandro Santilli * tests/perf/ClassSizes.cpp, tests/perf/Makefile.am: Add test file - printing sizes of some classes git-svn-id: http://svn.osgeo.org/geos/trunk@3455 + printing sizes of some classes git-svn-id: + http://svn.osgeo.org/geos/trunk@3455 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-27 Sandro Santilli * src/operation/buffer/BufferBuilder.cpp: Earlier release of input - segment strings, earlier release of buffer subgraphs. git-svn-id: http://svn.osgeo.org/geos/trunk@3454 + segment strings, earlier release of buffer subgraphs. git-svn-id: + http://svn.osgeo.org/geos/trunk@3454 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-27 Sandro Santilli @@ -6231,7 +10021,8 @@ src/noding/SegmentNodeList.cpp, src/operation/buffer/BufferBuilder.cpp: Change Noder interface to transfer ownership of noded segment strings to caller. Delete them - as soon as converted to Edges in BufferOp. git-svn-id: http://svn.osgeo.org/geos/trunk@3453 + as soon as converted to Edges in BufferOp. git-svn-id: + http://svn.osgeo.org/geos/trunk@3453 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-26 Sandro Santilli @@ -6239,7 +10030,8 @@ * include/geos/noding/Makefile.am, include/geos/noding/SegmentString.h, include/geos/noding/SegmentString.inl, src/noding/SegmentString.cpp: - Update class documentation and port info. Drop empty .inl file. git-svn-id: http://svn.osgeo.org/geos/trunk@3452 + Update class documentation and port info. Drop empty .inl file. + git-svn-id: http://svn.osgeo.org/geos/trunk@3452 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-26 Sandro Santilli @@ -6258,7 +10050,8 @@ src/operation/buffer/OffsetCurveSetBuilder.cpp, tests/unit/noding/NodedSegmentStringTest.cpp, tests/unit/noding/SegmentNodeTest.cpp: Have NodedSegmentString take - ownership of CoordinateSequence git-svn-id: http://svn.osgeo.org/geos/trunk@3451 + ownership of CoordinateSequence git-svn-id: + http://svn.osgeo.org/geos/trunk@3451 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-26 Sandro Santilli @@ -6300,94 +10093,111 @@ src/operation/relate/RelateNode.cpp, src/operation/relate/RelateNodeGraph.cpp, src/operation/valid/ConnectedInteriorTester.cpp: Use - geomgraph::Label by value (less extra-heap), cleanups and port sync. git-svn-id: http://svn.osgeo.org/geos/trunk@3450 + geomgraph::Label by value (less extra-heap), cleanups and port sync. + git-svn-id: http://svn.osgeo.org/geos/trunk@3450 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-21 Sandro Santilli * include/geos/geomgraph/Label.h, src/geomgraph/Label.cpp: Make geomgraph::Label non virtual, implement assignment operator, drop - old logs, sync port info. git-svn-id: http://svn.osgeo.org/geos/trunk@3449 + old logs, sync port info. git-svn-id: + http://svn.osgeo.org/geos/trunk@3449 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-21 Sandro Santilli * include/geos/geomgraph/TopologyLocation.h, src/geomgraph/TopologyLocation.cpp: Add assignment operator to - TopologyLocation, drop old logs, sync port info git-svn-id: http://svn.osgeo.org/geos/trunk@3448 + TopologyLocation, drop old logs, sync port info git-svn-id: + http://svn.osgeo.org/geos/trunk@3448 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * include/geos/algorithm/ConvexHull.h, include/geos/algorithm/ConvexHull.inl, src/algorithm/ConvexHull.cpp: - Port JTS robustness fix for ConvexHull (ticket #457) git-svn-id: http://svn.osgeo.org/geos/trunk@3444 + Port JTS robustness fix for ConvexHull (ticket #457) git-svn-id: + http://svn.osgeo.org/geos/trunk@3444 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * tests/xmltester/XMLTester.cpp: Allow XML tests not to specify a - precision model, defaulting to floating This allows running some JTS tests w/out touching them git-svn-id: http://svn.osgeo.org/geos/trunk@3443 + precision model, defaulting to floating This allows running some + JTS tests w/out touching them git-svn-id: + http://svn.osgeo.org/geos/trunk@3443 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSDistanceTest.cpp: Add - unit test for bug #337. git-svn-id: http://svn.osgeo.org/geos/trunk@3442 + unit test for bug #337. git-svn-id: + http://svn.osgeo.org/geos/trunk@3442 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * tests/xmltester/Makefile.am: Reset CXXFLAGS for building - XMLTester, should fix bug #319 (non-c++98 tinyxml) git-svn-id: http://svn.osgeo.org/geos/trunk@3441 + XMLTester, should fix bug #319 (non-c++98 tinyxml) git-svn-id: + http://svn.osgeo.org/geos/trunk@3441 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * src/operation/buffer/BufferBuilder.cpp, tests/unit/capi/GEOSOffsetCurveTest.cpp: Have GEOSOffsetCurve with - distance 0 return the input (fixes bug #454) git-svn-id: http://svn.osgeo.org/geos/trunk@3439 + distance 0 return the input (fixes bug #454) git-svn-id: + http://svn.osgeo.org/geos/trunk@3439 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli - * NEWS: Add note about new BufferOp interface git-svn-id: http://svn.osgeo.org/geos/trunk@3438 + * NEWS: Add note about new BufferOp interface git-svn-id: + http://svn.osgeo.org/geos/trunk@3438 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * include/geos/operation/buffer/BufferOp.h: Add setSingleSided - interface to BufferOp-accessible BufferParam setters Patch by Tai Meng git-svn-id: http://svn.osgeo.org/geos/trunk@3437 + interface to BufferOp-accessible BufferParam setters Patch by Tai + Meng git-svn-id: + http://svn.osgeo.org/geos/trunk@3437 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * include/geos/planargraph/DirectedEdge.h, src/planargraph/DirectedEdge.cpp: Add output operator for - planargraph::DirectedEdge class git-svn-id: http://svn.osgeo.org/geos/trunk@3436 + planargraph::DirectedEdge class git-svn-id: + http://svn.osgeo.org/geos/trunk@3436 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli - * src/algorithm/RobustDeterminant.cpp: Drop unused variable git-svn-id: http://svn.osgeo.org/geos/trunk@3435 + * src/algorithm/RobustDeterminant.cpp: Drop unused variable + git-svn-id: http://svn.osgeo.org/geos/trunk@3435 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli - * tests/unit/operation/polygonize/PolygonizeTest.cpp: Add port info git-svn-id: http://svn.osgeo.org/geos/trunk@3434 + * tests/unit/operation/polygonize/PolygonizeTest.cpp: Add port info + git-svn-id: http://svn.osgeo.org/geos/trunk@3434 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-20 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/polygonize/PolygonizeTest.cpp: Port JTS unit - test for Polygonizer class (very light..) git-svn-id: http://svn.osgeo.org/geos/trunk@3433 + test for Polygonizer class (very light..) git-svn-id: + http://svn.osgeo.org/geos/trunk@3433 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-07 Sandro Santilli * src/operation/buffer/BufferParameters.cpp: Include platform.h, - fixing SOLARIS build. Patch by Tai Meng . git-svn-id: http://svn.osgeo.org/geos/trunk@3432 + fixing SOLARIS build. Patch by Tai Meng . + git-svn-id: http://svn.osgeo.org/geos/trunk@3432 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-06 Sandro Santilli @@ -6395,37 +10205,43 @@ * include/geos/geomgraph/GeometryGraph.h, include/geos/geomgraph/GeometryGraph.inl, src/geomgraph/GeometryGraph.cpp: Nodes always have labels (ported - JTS fix to GeometryGraph::insertBoundaryPoint). Update port info. git-svn-id: http://svn.osgeo.org/geos/trunk@3429 + JTS fix to GeometryGraph::insertBoundaryPoint). Update port info. + git-svn-id: http://svn.osgeo.org/geos/trunk@3429 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-06 Sandro Santilli * include/geos/geomgraph/Node.h, src/geomgraph/Node.cpp: Update port - info for geomgraph::Node after GEOS fix was ported to JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3428 + info for geomgraph::Node after GEOS fix was ported to JTS + git-svn-id: http://svn.osgeo.org/geos/trunk@3428 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli - * Makefile.am: svn update before running svn2cl git-svn-id: http://svn.osgeo.org/geos/trunk@3427 + * Makefile.am: svn update before running svn2cl git-svn-id: + http://svn.osgeo.org/geos/trunk@3427 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/operation/valid/IndexedNestedRingTester.cpp, src/operation/valid/IndexedNestedRingTester.h: Update port info for - IndexedNestedRingTester class git-svn-id: http://svn.osgeo.org/geos/trunk@3425 + IndexedNestedRingTester class git-svn-id: + http://svn.osgeo.org/geos/trunk@3425 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli - * NEWS: Changes of 3.3.1 do not belong in trunk (aimed at 3.4.0) git-svn-id: http://svn.osgeo.org/geos/trunk@3424 + * NEWS: Changes of 3.3.1 do not belong in trunk (aimed at 3.4.0) + git-svn-id: http://svn.osgeo.org/geos/trunk@3424 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/operation/valid/IndexedNestedRingTester.cpp, tests/xmltester/tests/general/TestValid.xml: Fix #449 (Assertion - fails checking validity of polygon) the JTS way. git-svn-id: http://svn.osgeo.org/geos/trunk@3423 + fails checking validity of polygon) the JTS way. git-svn-id: + http://svn.osgeo.org/geos/trunk@3423 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli @@ -6435,40 +10251,47 @@ tests/xmltester/tests/ticket/bug449.xml: Revert "When checking for validity, do not abort if every vertex of an hole is also a vertex of another one. Fixes bug #449, including regress testing." (will - redo the JTS way) This reverts commit 7d2306c8dca2f0f1c5722640758578c1d59c7295. git-svn-id: http://svn.osgeo.org/geos/trunk@3422 + redo the JTS way) This reverts commit + 7d2306c8dca2f0f1c5722640758578c1d59c7295. git-svn-id: + http://svn.osgeo.org/geos/trunk@3422 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/algorithm/MinimumDiameter.cpp: Initialize MinimumDiamiter::minPtIndex in the constructor, to make static - analisys tools happier git-svn-id: http://svn.osgeo.org/geos/trunk@3417 + analisys tools happier git-svn-id: + http://svn.osgeo.org/geos/trunk@3417 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/index/sweepline/SweepLineIndex.cpp: Initialize - SweepLineIndex::indexBuilt in ctor git-svn-id: http://svn.osgeo.org/geos/trunk@3416 + SweepLineIndex::indexBuilt in ctor git-svn-id: + http://svn.osgeo.org/geos/trunk@3416 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * include/geos/algorithm/LineIntersector.h: Initialize LineIntersector::isProperVar in constructor (not really needed but - makes less noise under static analisys tools) git-svn-id: http://svn.osgeo.org/geos/trunk@3415 + makes less noise under static analisys tools) git-svn-id: + http://svn.osgeo.org/geos/trunk@3415 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * include/geos/geom/prep/PreparedPoint.h, src/geom/prep/PreparedPoint.cpp: Fix bogus override of - PreparedGeometry::intersect by PreparedPoint git-svn-id: http://svn.osgeo.org/geos/trunk@3414 + PreparedGeometry::intersect by PreparedPoint git-svn-id: + http://svn.osgeo.org/geos/trunk@3414 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/index/quadtree/Node.cpp: Assert that the variable used as - array index is not negative before using it (quadtree) git-svn-id: http://svn.osgeo.org/geos/trunk@3413 + array index is not negative before using it (quadtree) git-svn-id: + http://svn.osgeo.org/geos/trunk@3413 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli @@ -6476,45 +10299,46 @@ * src/geomgraph/GeometryGraph.cpp: Avoid segfalting when an added node has no label in GeometryGraph::insertBoundaryPoint. See - https://sourceforge.net/tracker/?func=detail&aid=3353879&group_id=128875&atid=713120git-svn-id: http://svn.osgeo.org/geos/trunk@3412 - 5242fede-7e19-0410-aef8-94bd7d2200fb + https://sourceforge.net/tracker/?func=detail&aid=3353879&group_id=128875&atid=713120 git-svn-id: http://svn.osgeo.org/geos/trunk@3412 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/geomgraph/Node.cpp: Avoid segfaulting when Node.setLabelBoundary is called against a node with null label. See - https://sourceforge.net/tracker/?func=detail&aid=3353871&group_id=128875&atid=713120git-svn-id: http://svn.osgeo.org/geos/trunk@3411 - 5242fede-7e19-0410-aef8-94bd7d2200fb + https://sourceforge.net/tracker/?func=detail&aid=3353871&group_id=128875&atid=713120 git-svn-id: http://svn.osgeo.org/geos/trunk@3411 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/index/bintree/Node.cpp: Assert that the variable used as array - index is not negative before using it. git-svn-id: http://svn.osgeo.org/geos/trunk@3410 + index is not negative before using it. git-svn-id: + http://svn.osgeo.org/geos/trunk@3410 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-05 Sandro Santilli * src/util/Profiler.cpp: Do not dereference past-the-end iterator on - invalid call git-svn-id: http://svn.osgeo.org/geos/trunk@3409 + invalid call git-svn-id: http://svn.osgeo.org/geos/trunk@3409 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-01 Sandro Santilli * tests/unit/capi/GEOSBufferTest.cpp: Add test for ticket #455 (bad result from the deprecated GEOSSingleSidedBuffer). It passes here in - trunk, good! git-svn-id: http://svn.osgeo.org/geos/trunk@3398 + trunk, good! git-svn-id: http://svn.osgeo.org/geos/trunk@3398 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-07-01 Sandro Santilli - * NEWS: NEWS item about #449 git-svn-id: http://svn.osgeo.org/geos/trunk@3397 + * NEWS: NEWS item about #449 git-svn-id: + http://svn.osgeo.org/geos/trunk@3397 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-06-27 Sandro Santilli * configure.in: Bump versions up assuming a new minor release will - come out from trunk. Closes #453 git-svn-id: http://svn.osgeo.org/geos/trunk@3394 + come out from trunk. Closes #453 git-svn-id: + http://svn.osgeo.org/geos/trunk@3394 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-06-09 Sandro Santilli @@ -6523,93 +10347,108 @@ tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug449.xml: When checking for validity, do not abort if every vertex of an hole is also a vertex of another - one. Fixes bug #449, including regress testing. git-svn-id: http://svn.osgeo.org/geos/trunk@3392 + one. Fixes bug #449, including regress testing. git-svn-id: + http://svn.osgeo.org/geos/trunk@3392 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-06-02 Sandro Santilli - * php/test/test.php: Refine test for #448 git-svn-id: http://svn.osgeo.org/geos/trunk@3390 + * php/test/test.php: Refine test for #448 git-svn-id: + http://svn.osgeo.org/geos/trunk@3390 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-06-02 Sandro Santilli - * php/test/test.php: Add test for bug #448 git-svn-id: http://svn.osgeo.org/geos/trunk@3389 + * php/test/test.php: Add test for bug #448 git-svn-id: + http://svn.osgeo.org/geos/trunk@3389 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-30 Sandro Santilli - * ChangeLog: Update for release git-svn-id: http://svn.osgeo.org/geos/trunk@3387 + * ChangeLog: Update for release git-svn-id: + http://svn.osgeo.org/geos/trunk@3387 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-30 Sandro Santilli * NEWS, configure.in: Set version to 3.3.0 (final) - Set release - date to 2011-05-30 git-svn-id: http://svn.osgeo.org/geos/trunk@3386 + date to 2011-05-30 git-svn-id: http://svn.osgeo.org/geos/trunk@3386 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-30 Mateusz Loskot * capi/CMakeLists.txt: Applied William\'s patch - capi_CMakeLists.txt.patch for OSX framework (Ticket #385) git-svn-id: http://svn.osgeo.org/geos/trunk@3385 + capi_CMakeLists.txt.patch for OSX framework (Ticket #385) + git-svn-id: http://svn.osgeo.org/geos/trunk@3385 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-30 Mateusz Loskot * src/CMakeLists.txt: Applied William\'s patch * - src_CMakeLists.txt.patch Download added OSX framework (Ticket #385) git-svn-id: http://svn.osgeo.org/geos/trunk@3384 + src_CMakeLists.txt.patch Download added OSX framework (Ticket #385) + git-svn-id: http://svn.osgeo.org/geos/trunk@3384 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-30 Mateusz Loskot * src/CMakeLists.txt: Applied William\'s patch with missing library - versions for OSX framework (Ticket #385) git-svn-id: http://svn.osgeo.org/geos/trunk@3383 + versions for OSX framework (Ticket #385) git-svn-id: + http://svn.osgeo.org/geos/trunk@3383 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-30 Mateusz Loskot * tests/bigtest/CMakeLists.txt, tests/unit/CMakeLists.txt, tests/xmltester/CMakeLists.txt: Applied supplementary tests.patch - for 85 from William git-svn-id: http://svn.osgeo.org/geos/trunk@3382 + for 85 from William git-svn-id: + http://svn.osgeo.org/geos/trunk@3382 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-27 Sandro Santilli * src/Makefile.am: The mac framework info.plist.in from r3376 didn't - make it into the rc2 tarball. git-svn-id: http://svn.osgeo.org/geos/trunk@3381 + make it into the rc2 tarball. git-svn-id: + http://svn.osgeo.org/geos/trunk@3381 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-23 Sandro Santilli - * ChangeLog: updated for 3.3.0rc2 release git-svn-id: http://svn.osgeo.org/geos/trunk@3378 + * ChangeLog: updated for 3.3.0rc2 release git-svn-id: + http://svn.osgeo.org/geos/trunk@3378 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-23 Sandro Santilli - * configure.in: Set version to 3.3.0rc2 git-svn-id: http://svn.osgeo.org/geos/trunk@3377 + * configure.in: Set version to 3.3.0rc2 git-svn-id: + http://svn.osgeo.org/geos/trunk@3377 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-23 Mateusz Loskot * src/info.plist.in: Added src/info.plist.in file for OS X framework - build option in CMake configuration (Ticket #385) git-svn-id: http://svn.osgeo.org/geos/trunk@3376 + build option in CMake configuration (Ticket #385) git-svn-id: + http://svn.osgeo.org/geos/trunk@3376 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-22 Mateusz Loskot * CMakeLists.txt, capi/CMakeLists.txt, include/CMakeLists.txt, src/CMakeLists.txt, tools/CMakeLists.txt: Added OS X framework build - option to CMake configuration (Ticket #385) git-svn-id: http://svn.osgeo.org/geos/trunk@3375 + option to CMake configuration (Ticket #385) git-svn-id: + http://svn.osgeo.org/geos/trunk@3375 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-20 Sandro Santilli - * tests/perf/capi/memleak_mp_prep.c: add missing return from main git-svn-id: http://svn.osgeo.org/geos/trunk@3374 + * tests/perf/capi/memleak_mp_prep.c: add missing return from main + git-svn-id: http://svn.osgeo.org/geos/trunk@3374 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-19 Frank Warmerdam * src/operation/overlay/PolygonBuilder.cpp: shellCount checking - should not be DEBUG only now that we throw an exception (#398) git-svn-id: http://svn.osgeo.org/geos/trunk@3373 + should not be DEBUG only now that we throw an exception (#398) + git-svn-id: http://svn.osgeo.org/geos/trunk@3373 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-19 Frank Warmerdam @@ -6617,13 +10456,15 @@ * include/geos/noding/SegmentPointComparator.h, src/Makefile.vc, src/noding/snapround/MCIndexSnapRounder.cpp, src/operation/overlay/PolygonBuilder.cpp: Updates for Makefile.vc - builds and issues when building NDEBUG and no inlining git-svn-id: http://svn.osgeo.org/geos/trunk@3372 + builds and issues when building NDEBUG and no inlining git-svn-id: + http://svn.osgeo.org/geos/trunk@3372 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-19 Sandro Santilli * tests/perf/capi/Makefile.am: Fix build of prepared geoms memleak - tester on system w/out geos installed git-svn-id: http://svn.osgeo.org/geos/trunk@3371 + tester on system w/out geos installed git-svn-id: + http://svn.osgeo.org/geos/trunk@3371 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-18 Sandro Santilli @@ -6640,7 +10481,8 @@ include/geos/Makefile.am, src/Makefile.am, tests/Makefile.am, tests/bigtest/Makefile.am, tests/unit/Makefile.am, tests/xmltester/Makefile.am, tools/Makefile.am: Distribute cmake - build scripts. Fixes bug #441. git-svn-id: http://svn.osgeo.org/geos/trunk@3369 + build scripts. Fixes bug #441. git-svn-id: + http://svn.osgeo.org/geos/trunk@3369 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-17 Sandro Santilli @@ -6662,13 +10504,15 @@ 2011-05-16 Mateusz Loskot * include/geos/geom/util/SineStarFactory.h: Fixed buggy - self-assignment in SineStarFactory::setNumArms git-svn-id: http://svn.osgeo.org/geos/trunk@3366 + self-assignment in SineStarFactory::setNumArms git-svn-id: + http://svn.osgeo.org/geos/trunk@3366 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-16 Sandro Santilli * include/geos/platform.h.in: Quality ::finite and ::isfinite - symbols, when available, into the std:: namespace. Fixes bug #442. git-svn-id: http://svn.osgeo.org/geos/trunk@3365 + symbols, when available, into the std:: namespace. Fixes bug #442. + git-svn-id: http://svn.osgeo.org/geos/trunk@3365 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-13 Mateusz Loskot @@ -6679,13 +10523,14 @@ properly against GEOS C++ interface as the declspec(dllexport) is specified for the GEOS C++ DLL where declspec(dllimport) is expected. This commit fixes the issue (temporarily) by linking GEOS - C DLL against GEOS C++ static library. git-svn-id: http://svn.osgeo.org/geos/trunk@3364 + C DLL against GEOS C++ static library. git-svn-id: + http://svn.osgeo.org/geos/trunk@3364 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-13 Mateusz Loskot * include/geos/algorithm/Angle.h: Added missing DLL decspec for - Angle class git-svn-id: http://svn.osgeo.org/geos/trunk@3363 + Angle class git-svn-id: http://svn.osgeo.org/geos/trunk@3363 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-13 Mateusz Loskot @@ -6697,7 +10542,8 @@ 2011-05-12 Sandro Santilli - * NEWS: Add note about #357 fix git-svn-id: http://svn.osgeo.org/geos/trunk@3361 + * NEWS: Add note about #357 fix git-svn-id: + http://svn.osgeo.org/geos/trunk@3361 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli @@ -6705,19 +10551,21 @@ * src/algorithm/RobustDeterminant.cpp, tests/unit/capi/GEOSIntersectsTest.cpp: Have RobustDeterminant throw an IllegalArgument if passed any infinite or nan value. Fixes bug - #357. Includes regress test. git-svn-id: http://svn.osgeo.org/geos/trunk@3360 + #357. Includes regress test. git-svn-id: + http://svn.osgeo.org/geos/trunk@3360 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli * NEWS: Add note about the memory usage reduction in prepared geoms - (#342) git-svn-id: http://svn.osgeo.org/geos/trunk@3359 + (#342) git-svn-id: http://svn.osgeo.org/geos/trunk@3359 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli * src/noding/MCIndexSegmentSetMutualIntersector.cpp: Reserve vector - space, use ::size_type for vector indices. git-svn-id: http://svn.osgeo.org/geos/trunk@3358 + space, use ::size_type for vector indices. git-svn-id: + http://svn.osgeo.org/geos/trunk@3358 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli @@ -6725,25 +10573,29 @@ * include/geos/noding/MCIndexSegmentSetMutualIntersector.h, src/noding/MCIndexSegmentSetMutualIntersector.cpp: Don't let MCIndexSegmentSetMutualIntersector grow in memory on every new - ::process call. Fixes bug #342. git-svn-id: http://svn.osgeo.org/geos/trunk@3357 + ::process call. Fixes bug #342. git-svn-id: + http://svn.osgeo.org/geos/trunk@3357 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli * include/geos/index/chain/MonotoneChainBuilder.h, src/index/chain/MonotoneChainBuilder.cpp: Port info for - MonotoneChainBuilder git-svn-id: http://svn.osgeo.org/geos/trunk@3356 + MonotoneChainBuilder git-svn-id: + http://svn.osgeo.org/geos/trunk@3356 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli * src/geom/prep/PreparedLineStringIntersects.cpp: Fix a memory leak - in PreparedLineStringIntersects::isAnyPointInRing git-svn-id: http://svn.osgeo.org/geos/trunk@3355 + in PreparedLineStringIntersects::isAnyPointInRing git-svn-id: + http://svn.osgeo.org/geos/trunk@3355 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli - * src/geom/prep/PreparedLineString.cpp: Drop commented out code git-svn-id: http://svn.osgeo.org/geos/trunk@3354 + * src/geom/prep/PreparedLineString.cpp: Drop commented out code + git-svn-id: http://svn.osgeo.org/geos/trunk@3354 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli @@ -6751,28 +10603,31 @@ * include/geos/geom/prep/PreparedLineStringIntersects.h, src/geom/prep/PreparedLineStringIntersects.cpp: Port info for PreparedLineStringIntersects, and avoid polluting the global - namespace git-svn-id: http://svn.osgeo.org/geos/trunk@3353 + namespace git-svn-id: http://svn.osgeo.org/geos/trunk@3353 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-12 Sandro Santilli * include/geos/geom/prep/AbstractPreparedPolygonContains.h, src/geom/prep/AbstractPreparedPolygonContains.cpp: Reduce heap - allocations in AbstractPreparedPolygonContains git-svn-id: http://svn.osgeo.org/geos/trunk@3352 + allocations in AbstractPreparedPolygonContains git-svn-id: + http://svn.osgeo.org/geos/trunk@3352 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli * include/geos/noding/FastSegmentSetIntersectionFinder.h, src/noding/FastSegmentSetIntersectionFinder.cpp: Port info for - FastSegmentSetIntersectionFinder git-svn-id: http://svn.osgeo.org/geos/trunk@3351 + FastSegmentSetIntersectionFinder git-svn-id: + http://svn.osgeo.org/geos/trunk@3351 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli * include/geos/noding/MCIndexSegmentSetMutualIntersector.h, src/noding/MCIndexSegmentSetMutualIntersector.cpp: Port info for - MCIndexSegmentSetMutualIntersector git-svn-id: http://svn.osgeo.org/geos/trunk@3350 + MCIndexSegmentSetMutualIntersector git-svn-id: + http://svn.osgeo.org/geos/trunk@3350 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli @@ -6780,34 +10635,38 @@ * configure.in, tests/perf/Makefile.am, tests/perf/capi/Makefile.am, tests/perf/capi/memleak_mp_prep.c, tests/perf/capi/memleak_mp_prep.sh: Import test for bug #342. It is - not automated as it's not general (requires bash) git-svn-id: http://svn.osgeo.org/geos/trunk@3349 + not automated as it's not general (requires bash) git-svn-id: + http://svn.osgeo.org/geos/trunk@3349 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli - * HOWTO_RELEASE: Producing a bzip2 tarball is easier than described git-svn-id: http://svn.osgeo.org/geos/trunk@3348 + * HOWTO_RELEASE: Producing a bzip2 tarball is easier than described + git-svn-id: http://svn.osgeo.org/geos/trunk@3348 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli - * ChangeLog, NEWS: Updated for 3.0.0rc1 release git-svn-id: http://svn.osgeo.org/geos/trunk@3346 + * ChangeLog, NEWS: Updated for 3.0.0rc1 release git-svn-id: + http://svn.osgeo.org/geos/trunk@3346 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli * php/geos.c, php/test/test.php: Add Geometry.offsetCurve to PHP - binding git-svn-id: http://svn.osgeo.org/geos/trunk@3345 + binding git-svn-id: http://svn.osgeo.org/geos/trunk@3345 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli * php/geos.c, php/test/test.php: Add single-sided buffering support - in PHP binding git-svn-id: http://svn.osgeo.org/geos/trunk@3344 + in PHP binding git-svn-id: http://svn.osgeo.org/geos/trunk@3344 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-11 Sandro Santilli - * configure.in: Set version to 3.0.0rc1 git-svn-id: http://svn.osgeo.org/geos/trunk@3343 + * configure.in: Set version to 3.0.0rc1 git-svn-id: + http://svn.osgeo.org/geos/trunk@3343 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-10 Sandro Santilli @@ -6816,13 +10675,15 @@ tests/unit/capi/GEOSOffsetCurveTest.cpp: Have GEOSOffsetCurve return LINESTRING EMPTY for collapsing lines (right offset on right-turning curve can do that). Regress test one such case, taken from - http://trac.osgeo.org/postgis/ticket/413. git-svn-id: http://svn.osgeo.org/geos/trunk@3342 + http://trac.osgeo.org/postgis/ticket/413. git-svn-id: + http://svn.osgeo.org/geos/trunk@3342 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-10 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSIntersectsTest.cpp: - Add test for 357 (doesn't succeed at failing) git-svn-id: http://svn.osgeo.org/geos/trunk@3341 + Add test for 357 (doesn't succeed at failing) git-svn-id: + http://svn.osgeo.org/geos/trunk@3341 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-10 Sandro Santilli @@ -6843,27 +10704,30 @@ non-unrolled computation, that is all paranoia aimed at making floats stored to match java IEEE. Since we get no failures in testsuite (our and postgis') I think it makes sense to have the code - as close as possible to the JTS one. git-svn-id: http://svn.osgeo.org/geos/trunk@3339 + as close as possible to the JTS one. git-svn-id: + http://svn.osgeo.org/geos/trunk@3339 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-10 Sandro Santilli * include/geos/algorithm/HCoordinate.h, - src/algorithm/HCoordinate.cpp: Update port info git-svn-id: http://svn.osgeo.org/geos/trunk@3338 + src/algorithm/HCoordinate.cpp: Update port info git-svn-id: + http://svn.osgeo.org/geos/trunk@3338 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-10 Sandro Santilli * tests/xmltester/tests/ticket/bug350.xml, tests/xmltester/tests/ticket/bug398.xml: Expect the same results - given by JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3337 + given by JTS git-svn-id: http://svn.osgeo.org/geos/trunk@3337 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-10 Sandro Santilli * include/geos/algorithm/HCoordinate.h, src/algorithm/HCoordinate.cpp: Bring hcoordinate back to double - precision (from long double) git-svn-id: http://svn.osgeo.org/geos/trunk@3336 + precision (from long double) git-svn-id: + http://svn.osgeo.org/geos/trunk@3336 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-09 Sandro Santilli @@ -6873,7 +10737,8 @@ change the expected result to match the one obtained by GEOS. It is not _exactly_ the same output obtained with JTS but close enough. Unfortunately both GEOS and JTS use an exact match for comparison so - we won't be able to share this test. git-svn-id: http://svn.osgeo.org/geos/trunk@3335 + we won't be able to share this test. git-svn-id: + http://svn.osgeo.org/geos/trunk@3335 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-09 Sandro Santilli @@ -6883,20 +10748,22 @@ include/geos/geomgraph/EdgeIntersectionList.h, src/algorithm/LineIntersector.cpp, src/geomgraph/Edge.cpp, src/geomgraph/EdgeIntersectionList.cpp: Use long double to compute - edge distance. Makes noding more robust, fixes bug #350. git-svn-id: http://svn.osgeo.org/geos/trunk@3334 + edge distance. Makes noding more robust, fixes bug #350. + git-svn-id: http://svn.osgeo.org/geos/trunk@3334 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli * include/geos/geomgraph/EdgeIntersection.h, src/geomgraph/EdgeIntersection.cpp, src/geomgraph/Makefile.am: Turn - EdgeIntersection into a concrete, fully-inlined, C++ class. git-svn-id: http://svn.osgeo.org/geos/trunk@3333 + EdgeIntersection into a concrete, fully-inlined, C++ class. + git-svn-id: http://svn.osgeo.org/geos/trunk@3333 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli * include/geos/geomgraph/index/MonotoneChain.h: Describe - MonotoneChain git-svn-id: http://svn.osgeo.org/geos/trunk@3332 + MonotoneChain git-svn-id: http://svn.osgeo.org/geos/trunk@3332 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli @@ -6904,7 +10771,7 @@ * src/geomgraph/Edge.cpp, src/geomgraph/EdgeIntersection.cpp, src/geomgraph/EdgeIntersectionList.cpp: Make output operators for Edge, EdgeIntersection and EdgeIntersectionList closer to JTS, for - easier comparison git-svn-id: http://svn.osgeo.org/geos/trunk@3331 + easier comparison git-svn-id: http://svn.osgeo.org/geos/trunk@3331 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli @@ -6913,26 +10780,30 @@ include/geos/geomgraph/EdgeIntersectionList.h, src/geomgraph/EdgeIntersection.cpp, src/geomgraph/EdgeIntersectionList.cpp: Output operator for - EdgeIntersection and EdgeIntersectionList git-svn-id: http://svn.osgeo.org/geos/trunk@3330 + EdgeIntersection and EdgeIntersectionList git-svn-id: + http://svn.osgeo.org/geos/trunk@3330 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli * include/geos/geomgraph/GeometryGraph.h, src/geomgraph/GeometryGraph.cpp: Drop book keeping of segment - intersectors, as we're transferring their ownership to caller anyway git-svn-id: http://svn.osgeo.org/geos/trunk@3329 + intersectors, as we're transferring their ownership to caller anyway + git-svn-id: http://svn.osgeo.org/geos/trunk@3329 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli * tests/xmltester/tests/ticket/bug350.xml: Re-add also the original - data in test for bug350, so nothing gets lost. git-svn-id: http://svn.osgeo.org/geos/trunk@3328 + data in test for bug350, so nothing gets lost. git-svn-id: + http://svn.osgeo.org/geos/trunk@3328 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli * src/geomgraph/GeometryGraph.cpp: Use logical (not bitwise) AND, - use dynamic_cast to map JTS's instanceof operator git-svn-id: http://svn.osgeo.org/geos/trunk@3327 + use dynamic_cast to map JTS's instanceof operator git-svn-id: + http://svn.osgeo.org/geos/trunk@3327 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-06 Sandro Santilli @@ -6940,7 +10811,7 @@ * tests/xmltester/tests/ticket/bug350.xml: Modify test for bug350 so to use pre-snapped geometries. Shows that the problem is not in snapping code, but after that (ie: JTS succeeds at fist shot on this - new input) git-svn-id: http://svn.osgeo.org/geos/trunk@3326 + new input) git-svn-id: http://svn.osgeo.org/geos/trunk@3326 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-04 Sandro Santilli @@ -6948,19 +10819,22 @@ * src/geom/prep/AbstractPreparedPolygonContains.cpp, tests/unit/capi/GEOSPreparedGeometryTest.cpp: Fix regression accidentally introduced by commit r3322 (Sean's). Add automated test - for it (was found trough PostGIS regression test) git-svn-id: http://svn.osgeo.org/geos/trunk@3325 + for it (was found trough PostGIS regression test) git-svn-id: + http://svn.osgeo.org/geos/trunk@3325 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-04 Sandro Santilli * src/operation/buffer/OffsetCurveBuilder.cpp: Drop useless and - unavailable include git-svn-id: http://svn.osgeo.org/geos/trunk@3324 + unavailable include git-svn-id: + http://svn.osgeo.org/geos/trunk@3324 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-03 Sean Gillies * src/geom/prep/AbstractPreparedPolygonContains.cpp, - src/geom/prep/PreparedPolygon.cpp: Damn these tabs git-svn-id: http://svn.osgeo.org/geos/trunk@3323 + src/geom/prep/PreparedPolygon.cpp: Damn these tabs git-svn-id: + http://svn.osgeo.org/geos/trunk@3323 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-05-03 Sean Gillies @@ -6968,7 +10842,8 @@ * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, src/geom/prep/AbstractPreparedPolygonContains.cpp, src/geom/prep/PreparedPolygon.cpp: Add missing prepared geometry - predicates to C API (#436) git-svn-id: http://svn.osgeo.org/geos/trunk@3322 + predicates to C API (#436) git-svn-id: + http://svn.osgeo.org/geos/trunk@3322 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli @@ -6978,32 +10853,37 @@ include/geos/operation/predicate/SegmentIntersectionTester.h, src/operation/predicate/RectangleIntersects.cpp, src/operation/predicate/SegmentIntersectionTester.cpp: Improve - performance of RectangleIntersects (of one order of magnitude). git-svn-id: http://svn.osgeo.org/geos/trunk@3321 + performance of RectangleIntersects (of one order of magnitude). + git-svn-id: http://svn.osgeo.org/geos/trunk@3321 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli * tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp: - More concise output from performance tester git-svn-id: http://svn.osgeo.org/geos/trunk@3320 + More concise output from performance tester git-svn-id: + http://svn.osgeo.org/geos/trunk@3320 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli * src/noding/ScaledNoder.cpp, src/operation/buffer/BufferOp.cpp: - Hush uncontrolled debugging prints git-svn-id: http://svn.osgeo.org/geos/trunk@3319 + Hush uncontrolled debugging prints git-svn-id: + http://svn.osgeo.org/geos/trunk@3319 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli * include/geos/operation/relate/RelateComputer.h, src/operation/relate/RelateComputer.cpp: Plug leak on exception in - RelateComputer (exposed by running doc/example) git-svn-id: http://svn.osgeo.org/geos/trunk@3318 + RelateComputer (exposed by running doc/example) git-svn-id: + http://svn.osgeo.org/geos/trunk@3318 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli * src/geom/Geometry.cpp: Do not leak on exception during relational - geometry predicates git-svn-id: http://svn.osgeo.org/geos/trunk@3317 + geometry predicates git-svn-id: + http://svn.osgeo.org/geos/trunk@3317 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli @@ -7011,18 +10891,21 @@ * configure.in, tests/perf/operation/Makefile.am, tests/perf/operation/predicate/Makefile.am, tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp: Port - RectangleIntersects performance test from JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3316 + RectangleIntersects performance test from JTS-1.12 git-svn-id: + http://svn.osgeo.org/geos/trunk@3316 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli * src/operation/predicate/RectangleIntersects.cpp: Do not leak - memory during rectangle intersects predicate git-svn-id: http://svn.osgeo.org/geos/trunk@3315 + memory during rectangle intersects predicate git-svn-id: + http://svn.osgeo.org/geos/trunk@3315 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli - * src/operation/overlay/OverlayOp.cpp: Drop unneeded include git-svn-id: http://svn.osgeo.org/geos/trunk@3314 + * src/operation/overlay/OverlayOp.cpp: Drop unneeded include + git-svn-id: http://svn.osgeo.org/geos/trunk@3314 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli @@ -7033,14 +10916,16 @@ src/geom/util/Makefile.am, src/geom/util/SineStarFactory.cpp, src/util/GeometricShapeFactory.cpp: Port geos::geom::util::SineStarFactory from JTS-1.12, useful for - profile-test RectangleIntersects. git-svn-id: http://svn.osgeo.org/geos/trunk@3313 + profile-test RectangleIntersects. git-svn-id: + http://svn.osgeo.org/geos/trunk@3313 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-28 Sandro Santilli * src/geomgraph/EdgeIntersectionList.cpp, src/geomgraph/NodeMap.cpp, src/operation/valid/IsValidOp.cpp: Trim - old embedded history log (from CVS times) git-svn-id: http://svn.osgeo.org/geos/trunk@3312 + old embedded history log (from CVS times) git-svn-id: + http://svn.osgeo.org/geos/trunk@3312 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli @@ -7048,13 +10933,15 @@ * include/geos/algorithm/CGAlgorithms.h, src/algorithm/CGAlgorithms.cpp, tests/unit/Makefile.am, tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp: Improve speed - of Geometry.getArea, unit-test it. git-svn-id: http://svn.osgeo.org/geos/trunk@3311 + of Geometry.getArea, unit-test it. git-svn-id: + http://svn.osgeo.org/geos/trunk@3311 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * tools/findclassfiles: Match full class names, not partial. Allow - specifying a package name. git-svn-id: http://svn.osgeo.org/geos/trunk@3310 + specifying a package name. git-svn-id: + http://svn.osgeo.org/geos/trunk@3310 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli @@ -7071,20 +10958,22 @@ src/operation/linemerge/LineMergeGraph.cpp, src/operation/linemerge/LineMerger.cpp, src/operation/linemerge/LineSequencer.cpp: Sync linemerge package to - JTS-1.12 (nothing changed) git-svn-id: http://svn.osgeo.org/geos/trunk@3309 + JTS-1.12 (nothing changed) git-svn-id: + http://svn.osgeo.org/geos/trunk@3309 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * tools/findclassfiles: Utility script to help with editing all - files of a class git-svn-id: http://svn.osgeo.org/geos/trunk@3308 + files of a class git-svn-id: http://svn.osgeo.org/geos/trunk@3308 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * include/geos/algorithm/Angle.h, src/algorithm/Angle.cpp, tests/unit/Makefile.am, tests/unit/algorithm/AngleTest.cpp: Sync - Angle class to JTS-1.12, port unit testing for it. git-svn-id: http://svn.osgeo.org/geos/trunk@3307 + Angle class to JTS-1.12, port unit testing for it. git-svn-id: + http://svn.osgeo.org/geos/trunk@3307 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli @@ -7092,7 +10981,8 @@ * include/geos/operation/buffer/OffsetCurveSetBuilder.h, src/operation/buffer/OffsetCurveSetBuilder.cpp, tests/unit/capi/GEOSBufferTest.cpp: Add test for singlesided buffer - (areal). Fix premature exit from OffsetCurveSetBuilder. git-svn-id: http://svn.osgeo.org/geos/trunk@3306 + (areal). Fix premature exit from OffsetCurveSetBuilder. git-svn-id: + http://svn.osgeo.org/geos/trunk@3306 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli @@ -7100,27 +10990,30 @@ * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/capi/GEOSOffsetCurveTest.cpp: Drop one argument from GEOSOffsetCurve. Tell right/left from width/distance sign (<0 for - right side) git-svn-id: http://svn.osgeo.org/geos/trunk@3305 + right side) git-svn-id: http://svn.osgeo.org/geos/trunk@3305 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSBufferTest.cpp, tests/unit/capi/GEOSOffsetCurveTest.cpp: Put OffsetCurveTest in its - own file (old singleside test + a couple more tests) git-svn-id: http://svn.osgeo.org/geos/trunk@3304 + own file (old singleside test + a couple more tests) git-svn-id: + http://svn.osgeo.org/geos/trunk@3304 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Add GEOSBufferParams type and GEOSBufferWithParams function to have an - extensible buffer operation. Allows areal single sided buffer. git-svn-id: http://svn.osgeo.org/geos/trunk@3303 + extensible buffer operation. Allows areal single sided buffer. + git-svn-id: http://svn.osgeo.org/geos/trunk@3303 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Add - GEOSOffsetCurve C-API interface deprecating GEOSSingleSidedBuffer git-svn-id: http://svn.osgeo.org/geos/trunk@3302 + GEOSOffsetCurve C-API interface deprecating GEOSSingleSidedBuffer + git-svn-id: http://svn.osgeo.org/geos/trunk@3302 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli @@ -7136,33 +11029,38 @@ src/operation/buffer/Makefile.am, src/operation/buffer/OffsetCurveBuilder.cpp, src/operation/buffer/OffsetSegmentGenerator.cpp: Refactored offset - curve generation (from JTS-1.12) git-svn-id: http://svn.osgeo.org/geos/trunk@3301 + curve generation (from JTS-1.12) git-svn-id: + http://svn.osgeo.org/geos/trunk@3301 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * include/geos/operation/buffer/BufferParameters.h, src/operation/buffer/BufferParameters.cpp: Sync BufferParameters - class to JTS r378 (isSingleSided property) git-svn-id: http://svn.osgeo.org/geos/trunk@3300 + class to JTS r378 (isSingleSided property) git-svn-id: + http://svn.osgeo.org/geos/trunk@3300 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-27 Sandro Santilli * include/geos/operation/buffer/BufferOp.h, src/operation/buffer/BufferOp.cpp: Sync BufferOp class to JTS r378. - Do not port the unused isSingleSided property. git-svn-id: http://svn.osgeo.org/geos/trunk@3299 + Do not port the unused isSingleSided property. git-svn-id: + http://svn.osgeo.org/geos/trunk@3299 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-23 Sandro Santilli - * NEWS: Add note about GEOSCascadedUnion deprecation git-svn-id: http://svn.osgeo.org/geos/trunk@3298 + * NEWS: Add note about GEOSCascadedUnion deprecation git-svn-id: + http://svn.osgeo.org/geos/trunk@3298 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-23 Sandro Santilli * capi/geos_c.h.in: Mark GEOSUnionCascaded as deprecated, GEOSUnaryUnion does the same thing w/out refusin to deal with lines, - points, collections git-svn-id: http://svn.osgeo.org/geos/trunk@3297 + points, collections git-svn-id: + http://svn.osgeo.org/geos/trunk@3297 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-23 Sandro Santilli @@ -7185,7 +11083,8 @@ * tests/xmltester/XMLTester.cpp: Use equals() to compare expected/obtained results of "Union" operation. This matches JTS and - prevents being too strict about equality. git-svn-id: http://svn.osgeo.org/geos/trunk@3295 + prevents being too strict about equality. git-svn-id: + http://svn.osgeo.org/geos/trunk@3295 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-22 Sandro Santilli @@ -7193,14 +11092,16 @@ * include/geos/operation/union/CascadedPolygonUnion.h, include/geos/operation/union/GeometryListHolder.h, include/geos/operation/union/Makefile.am: Put GeometryListHolder in - its own header file. git-svn-id: http://svn.osgeo.org/geos/trunk@3294 + its own header file. git-svn-id: + http://svn.osgeo.org/geos/trunk@3294 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-22 Sandro Santilli * include/geos/io/WKTWriter.h, src/io/WKTWriter.cpp, tests/unit/io/WKTWriterTest.cpp: Use stringstream to format strings - rather than printf-like statements. Simplifies things a lot. git-svn-id: http://svn.osgeo.org/geos/trunk@3293 + rather than printf-like statements. Simplifies things a lot. + git-svn-id: http://svn.osgeo.org/geos/trunk@3293 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-22 Sandro Santilli @@ -7210,7 +11111,8 @@ tests/unit/Makefile.am, tests/unit/geom/PrecisionModelTest.cpp, tests/unit/io/WKTReaderTest.cpp, tests/unit/io/WKTWriterTest.cpp: Sync PrecisionModel to JTS-1.12, add unit testing, fix - getMaximumPrecisionDigit to behave as documented (JTS doesn't). git-svn-id: http://svn.osgeo.org/geos/trunk@3292 + getMaximumPrecisionDigit to behave as documented (JTS doesn't). + git-svn-id: http://svn.osgeo.org/geos/trunk@3292 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-20 Sandro Santilli @@ -7220,7 +11122,7 @@ tests/xmltester/Makefile.am, tests/xmltester/tests/ticket/bug434.xml: Sync OffsetCurveSetBuilder::isErodedCompletely implementation to JTS, - fixing bug #434 git-svn-id: http://svn.osgeo.org/geos/trunk@3291 + fixing bug #434 git-svn-id: http://svn.osgeo.org/geos/trunk@3291 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-20 Sandro Santilli @@ -7236,12 +11138,14 @@ tests/xmltester/tests/{ => ticket}/bug360.xml, tests/xmltester/tests/{ => ticket}/bug366.xml, tests/xmltester/tests/{ => ticket}/bug398.xml: Move per-ticket - testcases under their own directory git-svn-id: http://svn.osgeo.org/geos/trunk@3290 + testcases under their own directory git-svn-id: + http://svn.osgeo.org/geos/trunk@3290 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-20 Sandro Santilli - * configure.in: Set JTS port version to 1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3289 + * configure.in: Set JTS port version to 1.12 git-svn-id: + http://svn.osgeo.org/geos/trunk@3289 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-19 Sandro Santilli @@ -7250,13 +11154,15 @@ IsCCW against the two almost-collapsed rings resulting by GEOS or JTS during execution of the union described in ticket #398. This is done after confirmation of same results in JTS (1 bit makes the - difference between CCW and CW orientation). git-svn-id: http://svn.osgeo.org/geos/trunk@3288 + difference between CCW and CW orientation). git-svn-id: + http://svn.osgeo.org/geos/trunk@3288 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli * tests/unit/operation/distance/DistanceOpTest.cpp: Add the actual - ->distance() call to the test for bug #367 git-svn-id: http://svn.osgeo.org/geos/trunk@3287 + ->distance() call to the test for bug #367 git-svn-id: + http://svn.osgeo.org/geos/trunk@3287 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli @@ -7265,20 +11171,23 @@ tests/xmltester/Makefile.am: Throw a TopologyException, rather than aborting, when finding more than a shell in MinimalEdgeRing list. Fixes bug #398. Enables automated test for it. Note that JTS fails - the test now, triggering the failed assertion. git-svn-id: http://svn.osgeo.org/geos/trunk@3286 + the test now, triggering the failed assertion. git-svn-id: + http://svn.osgeo.org/geos/trunk@3286 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli * tests/xmltester/tests/bug398.xml: Expect a result with/out the collapsed ring in the test for bug 398. Funny enough, this makes JTS - react by failing the assertion I was tracking... git-svn-id: http://svn.osgeo.org/geos/trunk@3285 + react by failing the assertion I was tracking... git-svn-id: + http://svn.osgeo.org/geos/trunk@3285 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli * src/operation/overlay/PolygonBuilder.cpp: Avoid more heap - allocations in PolygonBuilder git-svn-id: http://svn.osgeo.org/geos/trunk@3284 + allocations in PolygonBuilder git-svn-id: + http://svn.osgeo.org/geos/trunk@3284 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli @@ -7286,48 +11195,55 @@ * include/geos/operation/overlay/PolygonBuilder.h, src/operation/overlay/PolygonBuilder.cpp: Reduce heap allocations in PolygonBuilder, rewrite some private interfaces to deal with refs - rather than pointers git-svn-id: http://svn.osgeo.org/geos/trunk@3283 + rather than pointers git-svn-id: + http://svn.osgeo.org/geos/trunk@3283 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli * src/operation/overlay/PolygonBuilder.cpp: Use - PlanarGraph::linkResultDirectedEdges rather than rewriting it inline git-svn-id: http://svn.osgeo.org/geos/trunk@3282 + PlanarGraph::linkResultDirectedEdges rather than rewriting it inline + git-svn-id: http://svn.osgeo.org/geos/trunk@3282 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-18 Sandro Santilli * include/geos/geomgraph/PlanarGraph.h, src/geomgraph/PlanarGraph.cpp: Turn - PlanarGraph::linkResultDirectedEdges into a templated method git-svn-id: http://svn.osgeo.org/geos/trunk@3281 + PlanarGraph::linkResultDirectedEdges into a templated method + git-svn-id: http://svn.osgeo.org/geos/trunk@3281 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-13 Sandro Santilli * tests/unit/geom/CoordinateArraySequenceTest.cpp: Add test for bug - #435 git-svn-id: http://svn.osgeo.org/geos/trunk@3280 + #435 git-svn-id: http://svn.osgeo.org/geos/trunk@3280 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-13 Sandro Santilli - * php/Makefile.am: Fix path to CAPI includes for PHP binding git-svn-id: http://svn.osgeo.org/geos/trunk@3279 + * php/Makefile.am: Fix path to CAPI includes for PHP binding + git-svn-id: http://svn.osgeo.org/geos/trunk@3279 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-13 Sandro Santilli * src/geom/CoordinateArraySequence.cpp: Drop coordinate dimension - cache after read-write filtering. Fixes ticket #435. git-svn-id: http://svn.osgeo.org/geos/trunk@3278 + cache after read-write filtering. Fixes ticket #435. git-svn-id: + http://svn.osgeo.org/geos/trunk@3278 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-13 Sandro Santilli * .gitignore, Makefile.am, author.sh: Drop author.sh, add a rule to - create authors.git instead git-svn-id: http://svn.osgeo.org/geos/trunk@3277 + create authors.git instead git-svn-id: + http://svn.osgeo.org/geos/trunk@3277 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-04-13 Sandro Santilli - * author.sh: Add script to be used with git-svn --authors-prog git-svn-id: http://svn.osgeo.org/geos/trunk@3276 + * author.sh: Add script to be used with git-svn --authors-prog + git-svn-id: http://svn.osgeo.org/geos/trunk@3276 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-26 Sandro Santilli @@ -7337,7 +11253,7 @@ src/simplify/DouglasPeuckerLineSimplifier.cpp, src/simplify/TaggedLineString.cpp, src/simplify/TaggedLineStringSimplifier.cpp: fix missing size_t with - gcc 4.6 git-svn-id: http://svn.osgeo.org/geos/trunk@3275 + gcc 4.6 git-svn-id: http://svn.osgeo.org/geos/trunk@3275 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-26 Sandro Santilli @@ -7346,20 +11262,22 @@ include/geos/operation/valid/SimpleNestedRingTester.h, src/index/bintree/Bintree.cpp, src/index/bintree/Node.cpp, src/index/bintree/Root.cpp, src/index/strtree/AbstractNode.cpp: - fixed missing NULL with gcc 4.6 git-svn-id: http://svn.osgeo.org/geos/trunk@3274 + fixed missing NULL with gcc 4.6 git-svn-id: + http://svn.osgeo.org/geos/trunk@3274 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-26 Sandro Santilli * include/geos/operation/overlay/OverlayNodeFactory.h: fix - uninitialized const caused by missing constructor git-svn-id: http://svn.osgeo.org/geos/trunk@3273 + uninitialized const caused by missing constructor git-svn-id: + http://svn.osgeo.org/geos/trunk@3273 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-24 Mateusz Loskot * capi/CMakeLists.txt, include/CMakeLists.txt, src/CMakeLists.txt: Added source_group properties to support source browsers in various - IDEs git-svn-id: http://svn.osgeo.org/geos/trunk@3272 + IDEs git-svn-id: http://svn.osgeo.org/geos/trunk@3272 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-16 Sandro Santilli @@ -7370,75 +11288,86 @@ 2011-03-11 Sandro Santilli - * tests/xmltester/tests/bug350.xml: Add XML test for bug #350 git-svn-id: http://svn.osgeo.org/geos/trunk@3270 + * tests/xmltester/tests/bug350.xml: Add XML test for bug #350 + git-svn-id: http://svn.osgeo.org/geos/trunk@3270 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-11 Sandro Santilli * tests/xmltester/tests/bug398.xml: Add XML test for bug398 (not - automatically run, as it fails) git-svn-id: http://svn.osgeo.org/geos/trunk@3269 + automatically run, as it fails) git-svn-id: + http://svn.osgeo.org/geos/trunk@3269 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-11 Sandro Santilli * tests/xmltester/XMLTester.cpp: Tell more about XML loading - failures git-svn-id: http://svn.osgeo.org/geos/trunk@3268 + failures git-svn-id: http://svn.osgeo.org/geos/trunk@3268 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-08 Sandro Santilli * tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp: Add test for - invalid boundary node rule value git-svn-id: http://svn.osgeo.org/geos/trunk@3267 + invalid boundary node rule value git-svn-id: + http://svn.osgeo.org/geos/trunk@3267 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-04 Sandro Santilli * php/geos.c, php/test/test.php: PHP: add relateBoundaryNodeRule - method to GEOSGeometry object git-svn-id: http://svn.osgeo.org/geos/trunk@3266 + method to GEOSGeometry object git-svn-id: + http://svn.osgeo.org/geos/trunk@3266 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-04 Sandro Santilli - * NEWS: Add note aboute GEOSRelateBoundaryNodeRule git-svn-id: http://svn.osgeo.org/geos/trunk@3265 + * NEWS: Add note aboute GEOSRelateBoundaryNodeRule git-svn-id: + http://svn.osgeo.org/geos/trunk@3265 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-04 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp: - GEOSRelateBoundaryNodeRule test, ticket #399 [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3264 + GEOSRelateBoundaryNodeRule test, ticket #399 [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@3264 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-04 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: - GEOSRelateBoundaryNodeRule, ticket #399 [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3263 + GEOSRelateBoundaryNodeRule, ticket #399 [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@3263 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-04 Sandro Santilli - * include/geos/algorithm/BoundaryNodeRule.h: Indenting.. git-svn-id: http://svn.osgeo.org/geos/trunk@3262 + * include/geos/algorithm/BoundaryNodeRule.h: Indenting.. + git-svn-id: http://svn.osgeo.org/geos/trunk@3262 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-02 Sandro Santilli * NEWS, tests/unit/operation/distance/DistanceOpTest.cpp: Tweak unit test to expect distance 0 between an empty an anything else. Report - the change in NEWS file. git-svn-id: http://svn.osgeo.org/geos/trunk@3261 + the change in NEWS file. git-svn-id: + http://svn.osgeo.org/geos/trunk@3261 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-02 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/XMLTester.cpp, tests/xmltester/tests/general/TestDistance.xml: Add support for - "distance" op in XMLTester, and import JTS TestDistance.xml git-svn-id: http://svn.osgeo.org/geos/trunk@3260 + "distance" op in XMLTester, and import JTS TestDistance.xml + git-svn-id: http://svn.osgeo.org/geos/trunk@3260 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-02 Sandro Santilli * include/geos/operation/distance/DistanceOp.h, src/operation/distance/DistanceOp.cpp: Fixed Geometry.distance() and - DistanceOp to return 0.0 for empty inputs (JTS-1.11) git-svn-id: http://svn.osgeo.org/geos/trunk@3259 + DistanceOp to return 0.0 for empty inputs (JTS-1.11) git-svn-id: + http://svn.osgeo.org/geos/trunk@3259 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-02 Sandro Santilli @@ -7446,7 +11375,8 @@ * include/geos/operation/valid/IsValidOp.h, src/operation/valid/IsValidOp.cpp, tests/xmltester/tests/general/TestValid.xml: Sync IsValidOp and - related XML testcase to JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3258 + related XML testcase to JTS-1.12 git-svn-id: + http://svn.osgeo.org/geos/trunk@3258 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-02 Sandro Santilli @@ -7455,12 +11385,14 @@ include/geos/geom/LineSegment.inl, include/geos/util/IllegalStateException.h, include/geos/util/Makefile.am, src/geom/LineSegment.cpp: Added check - for illegal state in offsetPoint method git-svn-id: http://svn.osgeo.org/geos/trunk@3257 + for illegal state in offsetPoint method git-svn-id: + http://svn.osgeo.org/geos/trunk@3257 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-02 Sandro Santilli - * src/geomgraph/Edge.cpp: Fix debug build git-svn-id: http://svn.osgeo.org/geos/trunk@3256 + * src/geomgraph/Edge.cpp: Fix debug build git-svn-id: + http://svn.osgeo.org/geos/trunk@3256 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-01 Mateusz Loskot @@ -7553,7 +11485,8 @@ 2011-03-01 Mateusz Loskot - * src/operation/valid/IsValidOp.cpp: Check geometry against nullptr git-svn-id: http://svn.osgeo.org/geos/trunk@3254 + * src/operation/valid/IsValidOp.cpp: Check geometry against nullptr + git-svn-id: http://svn.osgeo.org/geos/trunk@3254 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-03-01 Mateusz Loskot @@ -7561,7 +11494,8 @@ * include/geos/io/ByteOrderValues.h, src/io/ByteOrderValues.cpp: Redefined ENDIAN_BIG and ENDIAN_LITTLE as enumerators instead of static non-const members - Visual C++ linker has mysterious problems - with exporting them from DLL. git-svn-id: http://svn.osgeo.org/geos/trunk@3253 + with exporting them from DLL. git-svn-id: + http://svn.osgeo.org/geos/trunk@3253 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-28 Sandro Santilli @@ -7574,37 +11508,41 @@ 2011-02-28 Sandro Santilli * src/operation/buffer/BufferBuilder.cpp: Cleanup debugging output. - Previous version didn't really print the _noded_ output at all. git-svn-id: http://svn.osgeo.org/geos/trunk@3251 + Previous version didn't really print the _noded_ output at all. + git-svn-id: http://svn.osgeo.org/geos/trunk@3251 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-28 Sandro Santilli * NEWS, php/geos.c, php/test/test.php: Expose and test - covers/coveredBy to PHP binding git-svn-id: http://svn.osgeo.org/geos/trunk@3250 + covers/coveredBy to PHP binding git-svn-id: + http://svn.osgeo.org/geos/trunk@3250 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-28 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: GEOSCovers - and GEOSCoveredBy (ticket #396) by Alessandro Furieri git-svn-id: http://svn.osgeo.org/geos/trunk@3249 + and GEOSCoveredBy (ticket #396) by Alessandro Furieri git-svn-id: + http://svn.osgeo.org/geos/trunk@3249 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-25 Sandro Santilli * tests/xmltester/tests/bug356.xml: be explicit about quadrant - segments git-svn-id: http://svn.osgeo.org/geos/trunk@3248 + segments git-svn-id: http://svn.osgeo.org/geos/trunk@3248 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-25 Sandro Santilli * tests/xmltester/tests/bug356.xml: Add test for ticket #356 (not - run, as it fails) git-svn-id: http://svn.osgeo.org/geos/trunk@3247 + run, as it fails) git-svn-id: http://svn.osgeo.org/geos/trunk@3247 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * src/operation/buffer/BufferInputLineSimplifier.cpp, - src/operation/buffer/BufferInputLineSimplifier.h: JTS-1.12 sync git-svn-id: http://svn.osgeo.org/geos/trunk@3246 + src/operation/buffer/BufferInputLineSimplifier.h: JTS-1.12 sync + git-svn-id: http://svn.osgeo.org/geos/trunk@3246 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli @@ -7622,7 +11560,8 @@ src/operation/buffer/BufferParameters.cpp, src/operation/buffer/BufferSubgraph.cpp, src/operation/buffer/RightmostEdgeFinder.cpp, - src/operation/buffer/SubgraphDepthLocater.cpp: Update port info git-svn-id: http://svn.osgeo.org/geos/trunk@3245 + src/operation/buffer/SubgraphDepthLocater.cpp: Update port info + git-svn-id: http://svn.osgeo.org/geos/trunk@3245 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli @@ -7630,42 +11569,47 @@ * include/geos/operation/buffer/OffsetCurveBuilder.h, include/geos/operation/buffer/OffsetCurveSetBuilder.h, src/operation/buffer/OffsetCurveBuilder.cpp, - src/operation/buffer/OffsetCurveSetBuilder.cpp: Update port info git-svn-id: http://svn.osgeo.org/geos/trunk@3244 + src/operation/buffer/OffsetCurveSetBuilder.cpp: Update port info + git-svn-id: http://svn.osgeo.org/geos/trunk@3244 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * NEWS, src/operation/buffer/OffsetCurveSetBuilder.cpp, tests/xmltester/tests/general/TestBuffer.xml: Fixed buffer - OffsetCurveSetBuilder to handle "flat" rings correctly git-svn-id: http://svn.osgeo.org/geos/trunk@3243 + OffsetCurveSetBuilder to handle "flat" rings correctly git-svn-id: + http://svn.osgeo.org/geos/trunk@3243 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * include/geos/operation/buffer/OffsetCurveSetBuilder.h, src/operation/buffer/OffsetCurveSetBuilder.cpp: Don't bother adding - ring if it is "flat" and will disappear in the output (from TS r261) git-svn-id: http://svn.osgeo.org/geos/trunk@3242 + ring if it is "flat" and will disappear in the output (from TS r261) + git-svn-id: http://svn.osgeo.org/geos/trunk@3242 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * NEWS, include/geos/geom/LinearRing.h, src/geom/LinearRing.cpp, tests/unit/geom/LinearRingTest.cpp: Sync LinearRing to JTS-1.12: - empty LinearRing are closed by definition now git-svn-id: http://svn.osgeo.org/geos/trunk@3241 + empty LinearRing are closed by definition now git-svn-id: + http://svn.osgeo.org/geos/trunk@3241 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * include/geos/noding/snapround/MCIndexPointSnapper.h, src/noding/snapround/MCIndexPointSnapper.cpp: Update port info for - MCIndexPointSnapper git-svn-id: http://svn.osgeo.org/geos/trunk@3240 + MCIndexPointSnapper git-svn-id: + http://svn.osgeo.org/geos/trunk@3240 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * include/geos/noding/snapround/SimpleSnapRounder.h, src/noding/snapround/SimpleSnapRounder.cpp: Update port info for - SimpleSnapRounder git-svn-id: http://svn.osgeo.org/geos/trunk@3239 + SimpleSnapRounder git-svn-id: http://svn.osgeo.org/geos/trunk@3239 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli @@ -7673,7 +11617,8 @@ * include/geos/noding/snapround/MCIndexSnapRounder.h, include/geos/noding/snapround/MCIndexSnapRounder.inl, src/noding/snapround/MCIndexSnapRounder.cpp: Update port info for - MCIndexSnapRounder (and remove testing-only check) git-svn-id: http://svn.osgeo.org/geos/trunk@3238 + MCIndexSnapRounder (and remove testing-only check) git-svn-id: + http://svn.osgeo.org/geos/trunk@3238 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli @@ -7681,19 +11626,22 @@ * include/geos/noding/snapround/HotPixel.h, include/geos/noding/snapround/HotPixel.inl, src/noding/snapround/HotPixel.cpp: Sync HotPixel to JTS-1.12 - (doxygen + privatization of a method..) git-svn-id: http://svn.osgeo.org/geos/trunk@3237 + (doxygen + privatization of a method..) git-svn-id: + http://svn.osgeo.org/geos/trunk@3237 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/bug366.xml: Run - test for bug366 (succeeds) git-svn-id: http://svn.osgeo.org/geos/trunk@3236 + test for bug366 (succeeds) git-svn-id: + http://svn.osgeo.org/geos/trunk@3236 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli * tests/unit/noding/SegmentPointComparatorTest.cpp: Port JTS unit - tests for SegmentPointComparator git-svn-id: http://svn.osgeo.org/geos/trunk@3235 + tests for SegmentPointComparator git-svn-id: + http://svn.osgeo.org/geos/trunk@3235 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli @@ -7701,7 +11649,8 @@ * include/geos/noding/Makefile.am, include/geos/noding/SegmentPointComparator.h, src/noding/SegmentNode.cpp: Take SegmentPointComparator out of - implelmentation file, to allow for unit-testing. git-svn-id: http://svn.osgeo.org/geos/trunk@3234 + implelmentation file, to allow for unit-testing. git-svn-id: + http://svn.osgeo.org/geos/trunk@3234 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-23 Sandro Santilli @@ -7709,20 +11658,22 @@ * NEWS, include/geos/noding/NodedSegmentString.h, src/noding/NodedSegmentString.cpp, tests/unit/noding/NodedSegmentStringTest.cpp: Fix NodedSegmentString - to handle zero-length line segments correctly (via safeOctant) git-svn-id: http://svn.osgeo.org/geos/trunk@3233 + to handle zero-length line segments correctly (via safeOctant) + git-svn-id: http://svn.osgeo.org/geos/trunk@3233 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-22 Sandro Santilli * include/geos/geom/Lineal.h, include/geos/geom/Polygonal.h, include/geos/geom/Puntal.h: Export Puntal, Lineal and Polygonal - symbols git-svn-id: http://svn.osgeo.org/geos/trunk@3232 + symbols git-svn-id: http://svn.osgeo.org/geos/trunk@3232 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-22 Sandro Santilli * tests/unit/operation/linemerge/LineMergerTest.cpp: Fix linemerge - test (wrong initial copy) git-svn-id: http://svn.osgeo.org/geos/trunk@3231 + test (wrong initial copy) git-svn-id: + http://svn.osgeo.org/geos/trunk@3231 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli @@ -7730,13 +11681,15 @@ * include/geos/operation/linemerge/LineSequencer.h, src/operation/linemerge/LineSequencer.cpp, tests/unit/Makefile.am, tests/unit/operation/linemerge/LineSequencerTest.cpp: Add - LineSequencer unit test, fix memory leaks in the class. git-svn-id: http://svn.osgeo.org/geos/trunk@3230 + LineSequencer unit test, fix memory leaks in the class. git-svn-id: + http://svn.osgeo.org/geos/trunk@3230 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli * include/geos/operation/linemerge/LineSequencer.h: Add templated - geometry adder to LineSequencer class git-svn-id: http://svn.osgeo.org/geos/trunk@3229 + geometry adder to LineSequencer class git-svn-id: + http://svn.osgeo.org/geos/trunk@3229 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli @@ -7752,19 +11705,22 @@ tests/unit/operation/linemerge/LineMergerTest.cpp: Sync linemerge namespace to JTS-1.12 fixing LineMerger to skip lines with only a single unique coordinate; reduce some heap allocations; add unit - testing for Linemerger git-svn-id: http://svn.osgeo.org/geos/trunk@3228 + testing for Linemerger git-svn-id: + http://svn.osgeo.org/geos/trunk@3228 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli * include/geos/operation/linemerge/LineSequencer.h, src/operation/linemerge/LineSequencer.cpp: Sync - linemerge::LineSequencer to JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3227 + linemerge::LineSequencer to JTS-1.12 git-svn-id: + http://svn.osgeo.org/geos/trunk@3227 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli - * NEWS: Add note about SnapIfNeededOverlayOp change git-svn-id: http://svn.osgeo.org/geos/trunk@3226 + * NEWS: Add note about SnapIfNeededOverlayOp change git-svn-id: + http://svn.osgeo.org/geos/trunk@3226 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli @@ -7774,7 +11730,8 @@ include/geos/operation/overlay/snap/SnapOverlayOp.h, src/operation/overlay/snap/GeometrySnapper.cpp, src/operation/overlay/snap/LineStringSnapper.cpp, - src/operation/overlay/snap/SnapOverlayOp.cpp: Update port info git-svn-id: http://svn.osgeo.org/geos/trunk@3225 + src/operation/overlay/snap/SnapOverlayOp.cpp: Update port info + git-svn-id: http://svn.osgeo.org/geos/trunk@3225 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-21 Sandro Santilli @@ -7782,83 +11739,95 @@ * include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h, src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp: Fix SnapIfNeededOverlayOp to throw the originating exception, which - contains meaningful coordinates, and update port info. git-svn-id: http://svn.osgeo.org/geos/trunk@3224 + contains meaningful coordinates, and update port info. git-svn-id: + http://svn.osgeo.org/geos/trunk@3224 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-18 Mateusz Loskot * capi/CMakeLists.txt, src/CMakeLists.txt: Updated CMake configuration to use libgeos.lib for static library and geos.lib for - import library. Define GEOS_DLL_EXPORT for GEOS DLL target. git-svn-id: http://svn.osgeo.org/geos/trunk@3223 + import library. Define GEOS_DLL_EXPORT for GEOS DLL target. + git-svn-id: http://svn.osgeo.org/geos/trunk@3223 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-15 Mateusz Loskot * capi/geos_ts_c.cpp: gstrdup may throw since r3088 thus should no - longer be declared as C function git-svn-id: http://svn.osgeo.org/geos/trunk@3222 + longer be declared as C function git-svn-id: + http://svn.osgeo.org/geos/trunk@3222 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-15 Sandro Santilli * capi/geos_ts_c.cpp, tests/unit/capi/GEOSisValidDetailTest.cpp: Allow passing NULL for "reason" and "location" arguments of - GEOSisValidDetail [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3221 + GEOSisValidDetail [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@3221 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-15 Sandro Santilli * php/geos.c, php/test/test.php: Adapt PHP binding to the new - GEOSisValidDetail interface git-svn-id: http://svn.osgeo.org/geos/trunk@3220 + GEOSisValidDetail interface git-svn-id: + http://svn.osgeo.org/geos/trunk@3220 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-15 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSisValidDetailTest.cpp: - Add a 'flags' parameter to GEOSisValidDetail. git-svn-id: http://svn.osgeo.org/geos/trunk@3219 + Add a 'flags' parameter to GEOSisValidDetail. git-svn-id: + http://svn.osgeo.org/geos/trunk@3219 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-15 Sandro Santilli * php/Makefile.am: Make sure php binding are built _before_ the - corresponding test is run git-svn-id: http://svn.osgeo.org/geos/trunk@3218 + corresponding test is run git-svn-id: + http://svn.osgeo.org/geos/trunk@3218 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Sandro Santilli * src/operation/overlay/snap/LineStringSnapper.cpp: Guard againts - empty vectors before decrementing .end() git-svn-id: http://svn.osgeo.org/geos/trunk@3217 + empty vectors before decrementing .end() git-svn-id: + http://svn.osgeo.org/geos/trunk@3217 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Sandro Santilli * include/geos/geom/CoordinateList.h: Add an .empty() interface to - CoordinateList git-svn-id: http://svn.osgeo.org/geos/trunk@3216 + CoordinateList git-svn-id: http://svn.osgeo.org/geos/trunk@3216 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot * configure.in: Added new ./configure option: --enable-glibcxx-debug which to enable libstdc++ debug mode (see Ticket #395). Added - AC_MSG_CHECKING and AC_MSG_RESULT to existing options. git-svn-id: http://svn.osgeo.org/geos/trunk@3215 + AC_MSG_CHECKING and AC_MSG_RESULT to existing options. git-svn-id: + http://svn.osgeo.org/geos/trunk@3215 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot - * tests/unit/operation/distance/DistanceOpTest.cpp: CRLF to LF git-svn-id: http://svn.osgeo.org/geos/trunk@3214 + * tests/unit/operation/distance/DistanceOpTest.cpp: CRLF to LF + git-svn-id: http://svn.osgeo.org/geos/trunk@3214 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot * tests/unit/operation/distance/DistanceOpTest.cpp: Added test case submitted with Ticket #367. No segmentation fault in distance() - method observed under Visual C++ 10.0 git-svn-id: http://svn.osgeo.org/geos/trunk@3213 + method observed under Visual C++ 10.0 git-svn-id: + http://svn.osgeo.org/geos/trunk@3213 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Sandro Santilli * src/geom/Geometry.cpp: Always use BinaryOp for overlay operations - accessible from Geometry git-svn-id: http://svn.osgeo.org/geos/trunk@3212 + accessible from Geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@3212 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot @@ -7869,19 +11838,22 @@ 'class2::member' via dominance) - it is still unclear if caused by Visual C++ bug https://connect.microsoft.com/VisualStudio/feedback/details/101259/ - - safe to disable anyway. git-svn-id: http://svn.osgeo.org/geos/trunk@3211 + - safe to disable anyway. git-svn-id: + http://svn.osgeo.org/geos/trunk@3211 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot * include/geos/geom/GeometryFactory.h: Return unset std::auto_otr - from GeometryFactory, otherwise error condition causes no return git-svn-id: http://svn.osgeo.org/geos/trunk@3210 + from GeometryFactory, otherwise error condition causes no return + git-svn-id: http://svn.osgeo.org/geos/trunk@3210 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot * include/geos/operation/union/PointGeometryUnion.h: Declare - PointGeometryUnion type as non-copyable git-svn-id: http://svn.osgeo.org/geos/trunk@3209 + PointGeometryUnion type as non-copyable git-svn-id: + http://svn.osgeo.org/geos/trunk@3209 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot @@ -7889,13 +11861,15 @@ * include/geos/geom/util/GeometryExtracter.h: Renamed template parameters to more readable CamelCase and self-descriptive form. Declare Extracter type as non-copyable. Do not use names starting - with underscore - they are reserved for C++ implementations. git-svn-id: http://svn.osgeo.org/geos/trunk@3208 + with underscore - they are reserved for C++ implementations. + git-svn-id: http://svn.osgeo.org/geos/trunk@3208 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-13 Mateusz Loskot * include/geos/geom/BinaryOp.h: Fixed missing or ambiguous - declarations of TopologyException (Ticket #394) git-svn-id: http://svn.osgeo.org/geos/trunk@3207 + declarations of TopologyException (Ticket #394) git-svn-id: + http://svn.osgeo.org/geos/trunk@3207 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-12 Sandro Santilli @@ -7903,60 +11877,70 @@ * src/geom/Geometry.cpp, tests/xmltester/Makefile.am, tests/xmltester/tests/bug360.xml: Have Geometry::Union use BinaryOp rather than SnapIfNeededOverlayOp. Improves robustness (fixes bug - #360, test for which is enabled with this commit) git-svn-id: http://svn.osgeo.org/geos/trunk@3206 + #360, test for which is enabled with this commit) git-svn-id: + http://svn.osgeo.org/geos/trunk@3206 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-11 Sandro Santilli - * tests/xmltester/tests/bug344.xml: Add description git-svn-id: http://svn.osgeo.org/geos/trunk@3205 + * tests/xmltester/tests/bug344.xml: Add description git-svn-id: + http://svn.osgeo.org/geos/trunk@3205 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-11 Sandro Santilli - * tests/xmltester/tests/bug360.xml: XML version of test for bug #360 git-svn-id: http://svn.osgeo.org/geos/trunk@3204 + * tests/xmltester/tests/bug360.xml: XML version of test for bug #360 + git-svn-id: http://svn.osgeo.org/geos/trunk@3204 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-11 Sandro Santilli * src/operation/union/PointGeometryUnion.cpp: Optimize - container->container copy, on Mat's suggestion git-svn-id: http://svn.osgeo.org/geos/trunk@3203 + container->container copy, on Mat's suggestion git-svn-id: + http://svn.osgeo.org/geos/trunk@3203 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-11 Sandro Santilli - * php/geos.c, php/test/test.php: PHP support or UnaryUnion git-svn-id: http://svn.osgeo.org/geos/trunk@3202 + * php/geos.c, php/test/test.php: PHP support or UnaryUnion + git-svn-id: http://svn.osgeo.org/geos/trunk@3202 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-11 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSUnaryUnionTest.cpp: - GEOSUnaryUnion C-API interface (and test) git-svn-id: http://svn.osgeo.org/geos/trunk@3201 + GEOSUnaryUnion C-API interface (and test) git-svn-id: + http://svn.osgeo.org/geos/trunk@3201 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/XMLTester.cpp, tests/xmltester/tests/general/TestUnaryUnion.xml: Add support for - UnaryUnion testing in XML format, import the JTS xml test for it git-svn-id: http://svn.osgeo.org/geos/trunk@3200 + UnaryUnion testing in XML format, import the JTS xml test for it + git-svn-id: http://svn.osgeo.org/geos/trunk@3200 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * tests/unit/operation/union/UnaryUnionOpTest.cpp: Add test exposing - the std::copy bug of two commits ago git-svn-id: http://svn.osgeo.org/geos/trunk@3199 + the std::copy bug of two commits ago git-svn-id: + http://svn.osgeo.org/geos/trunk@3199 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * include/geos/geom/Geometry.h, src/geom/Geometry.cpp: Expose unary - union trought Geometry.Union() git-svn-id: http://svn.osgeo.org/geos/trunk@3198 + union trought Geometry.Union() git-svn-id: + http://svn.osgeo.org/geos/trunk@3198 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * src/operation/union/PointGeometryUnion.cpp: Can't just std::copy - over an empty container. Need a back_inserter ! git-svn-id: http://svn.osgeo.org/geos/trunk@3197 + over an empty container. Need a back_inserter ! git-svn-id: + http://svn.osgeo.org/geos/trunk@3197 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli @@ -7965,7 +11949,8 @@ tests/unit/Makefile.am, tests/unit/operation/union/CascadedPolygonUnionTest.cpp, tests/unit/operation/union/UnaryUnionOpTest.cpp: Add unit test for - UnaryUnionOp (and fix interface bug) git-svn-id: http://svn.osgeo.org/geos/trunk@3196 + UnaryUnionOp (and fix interface bug) git-svn-id: + http://svn.osgeo.org/geos/trunk@3196 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli @@ -7974,19 +11959,20 @@ include/geos/operation/union/UnaryUnionOp.h, src/operation/union/Makefile.am, src/operation/union/UnaryUnionOp.cpp: UnaryUnionOp port from - JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3195 + JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3195 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * tests/unit/operation/union/CascadedPolygonUnionTest.cpp: Oops, - didn't want to commit this one. git-svn-id: http://svn.osgeo.org/geos/trunk@3194 + didn't want to commit this one. git-svn-id: + http://svn.osgeo.org/geos/trunk@3194 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * include/geos/operation/union/CascadedPolygonUnion.h: Fix dynamic - cast git-svn-id: http://svn.osgeo.org/geos/trunk@3193 + cast git-svn-id: http://svn.osgeo.org/geos/trunk@3193 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli @@ -7995,7 +11981,7 @@ src/operation/union/CascadedPolygonUnion.cpp, tests/unit/operation/union/CascadedPolygonUnionTest.cpp: Add a template interface to CascadedPolygonUnion to relax requirements on - used container git-svn-id: http://svn.osgeo.org/geos/trunk@3192 + used container git-svn-id: http://svn.osgeo.org/geos/trunk@3192 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli @@ -8004,13 +11990,15 @@ include/geos/geom/GeometryFactory.h, include/geos/geom/Makefile.am, src/geom/Geometry.cpp, src/inlines.cpp, tests/unit/geom/GeometryFactoryTest.cpp: Introduce a templated - version of GeometryFactory::buildGeometry, and test it. git-svn-id: http://svn.osgeo.org/geos/trunk@3191 + version of GeometryFactory::buildGeometry, and test it. git-svn-id: + http://svn.osgeo.org/geos/trunk@3191 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-10 Sandro Santilli * src/operation/sharedpaths/SharedPathsOp.cpp: Include required - GeometryFactory header (it's used) git-svn-id: http://svn.osgeo.org/geos/trunk@3190 + GeometryFactory header (it's used) git-svn-id: + http://svn.osgeo.org/geos/trunk@3190 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-07 Sandro Santilli @@ -8018,12 +12006,14 @@ * include/geos/geom/util/GeometryExtracter.h, include/geos/geom/util/Makefile.am, tests/unit/Makefile.am, tests/unit/geom/util/GeometryExtracterTest.cpp: Port - GeometryExtracter from JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3189 + GeometryExtracter from JTS-1.12 git-svn-id: + http://svn.osgeo.org/geos/trunk@3189 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-07 Sandro Santilli - * src/operation/union/PointGeometryUnion.cpp: Fix casts git-svn-id: http://svn.osgeo.org/geos/trunk@3188 + * src/operation/union/PointGeometryUnion.cpp: Fix casts git-svn-id: + http://svn.osgeo.org/geos/trunk@3188 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-07 Sandro Santilli @@ -8031,13 +12021,15 @@ * include/geos/operation/union/Makefile.am, include/geos/operation/union/PointGeometryUnion.h, src/operation/union/Makefile.am, - src/operation/union/PointGeometryUnion.cpp: PointGeometryUnion port git-svn-id: http://svn.osgeo.org/geos/trunk@3187 + src/operation/union/PointGeometryUnion.cpp: PointGeometryUnion port + git-svn-id: http://svn.osgeo.org/geos/trunk@3187 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-07 Sandro Santilli * include/geos/geom/Lineal.h, include/geos/geom/Polygonal.h, - include/geos/geom/Puntal.h: Include definition of base class git-svn-id: http://svn.osgeo.org/geos/trunk@3186 + include/geos/geom/Puntal.h: Include definition of base class + git-svn-id: http://svn.osgeo.org/geos/trunk@3186 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-07 Sandro Santilli @@ -8051,7 +12043,8 @@ src/geom/LinearRing.cpp, src/geom/MultiLineString.cpp, src/geom/MultiPoint.cpp, src/geom/MultiPolygon.cpp: Turn Puntal, Lineal and Polygonal into Geometry derivates. This commit introduces - virtual inheritance and 3 diamonds. git-svn-id: http://svn.osgeo.org/geos/trunk@3185 + virtual inheritance and 3 diamonds. git-svn-id: + http://svn.osgeo.org/geos/trunk@3185 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-04 Sandro Santilli @@ -8065,7 +12058,7 @@ 2011-02-04 Sandro Santilli * include/geos/index/strtree/AbstractSTRtree.h: Avoid useless - reinterpret_cast git-svn-id: http://svn.osgeo.org/geos/trunk@3183 + reinterpret_cast git-svn-id: http://svn.osgeo.org/geos/trunk@3183 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-04 Sandro Santilli @@ -8080,7 +12073,7 @@ src/operation/valid/ConnectedInteriorTester.cpp, src/operation/valid/IsValidOp.cpp, tests/unit/geom/PolygonTest.cpp, tests/unit/operation/union/CascadedPolygonUnionTest.cpp: Even more - static casts drops git-svn-id: http://svn.osgeo.org/geos/trunk@3182 + static casts drops git-svn-id: http://svn.osgeo.org/geos/trunk@3182 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-04 Sandro Santilli @@ -8092,13 +12085,15 @@ tests/unit/geom/GeometryFactoryTest.cpp, tests/unit/geom/LineStringTest.cpp, tests/unit/geom/LinearRingTest.cpp, tests/unit/geom/PolygonTest.cpp: - Drop more static casts git-svn-id: http://svn.osgeo.org/geos/trunk@3181 + Drop more static casts git-svn-id: + http://svn.osgeo.org/geos/trunk@3181 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-03 Sandro Santilli * tests/unit/geom/MultiPointTest.cpp, tests/unit/geom/PointTest.cpp: - Don't downcast with static_cast git-svn-id: http://svn.osgeo.org/geos/trunk@3180 + Don't downcast with static_cast git-svn-id: + http://svn.osgeo.org/geos/trunk@3180 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-03 Sandro Santilli @@ -8112,52 +12107,58 @@ src/geomgraph/GeometryGraph.cpp, src/io/WKBWriter.cpp, src/io/WKTWriter.cpp, src/operation/IsSimpleOp.cpp, src/operation/valid/IsValidOp.cpp, - src/operation/valid/RepeatedPointTester.cpp: reduce static casts git-svn-id: http://svn.osgeo.org/geos/trunk@3179 + src/operation/valid/RepeatedPointTester.cpp: reduce static casts + git-svn-id: http://svn.osgeo.org/geos/trunk@3179 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-03 Sandro Santilli * include/geos/geom/Coordinate.h: provide standard strict weak - ordering operator for Coordinate git-svn-id: http://svn.osgeo.org/geos/trunk@3178 + ordering operator for Coordinate git-svn-id: + http://svn.osgeo.org/geos/trunk@3178 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-03 Sandro Santilli * include/geos/geom/util/GeometryCombiner.h, src/geom/util/GeometryCombiner.cpp: A step toward better - const-correctness in GeometryCombiner interface git-svn-id: http://svn.osgeo.org/geos/trunk@3177 + const-correctness in GeometryCombiner interface git-svn-id: + http://svn.osgeo.org/geos/trunk@3177 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-03 Sandro Santilli * include/geos/geom/util/GeometryCombiner.h: Document ownerhips of - GeometryCombiner inputs git-svn-id: http://svn.osgeo.org/geos/trunk@3176 + GeometryCombiner inputs git-svn-id: + http://svn.osgeo.org/geos/trunk@3176 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-03 Sandro Santilli * src/geom/GeometryFactory.cpp: Oops.. fix the newly added interface - to create MultiPoint from a vector of coordinates git-svn-id: http://svn.osgeo.org/geos/trunk@3175 + to create MultiPoint from a vector of coordinates git-svn-id: + http://svn.osgeo.org/geos/trunk@3175 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-02 Sandro Santilli * include/geos/algorithm/PointLocator.h, src/algorithm/PointLocator.cpp: Check PointLocator sync with - JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3174 + JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3174 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-02 Sandro Santilli * include/geos/geom/GeometryFactory.h, src/geom/GeometryFactory.cpp: - Add interface to create MultiPoint from Coordinate vector git-svn-id: http://svn.osgeo.org/geos/trunk@3173 + Add interface to create MultiPoint from Coordinate vector + git-svn-id: http://svn.osgeo.org/geos/trunk@3173 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-02 Sandro Santilli * include/geos/geom/util/GeometryCombiner.h, src/geom/util/GeometryCombiner.cpp: Check GeometryCombiner against - JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3172 + JTS-1.12 git-svn-id: http://svn.osgeo.org/geos/trunk@3172 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-02-02 Sandro Santilli @@ -8171,50 +12172,55 @@ src/geom/LineString.cpp, src/geom/MultiLineString.cpp, src/geom/MultiPoint.cpp, src/geom/MultiPolygon.cpp, src/geom/Point.cpp, src/geom/Polygon.cpp: Add Puntal, Lineal and - Polygonal "interfaces" git-svn-id: http://svn.osgeo.org/geos/trunk@3171 + Polygonal "interfaces" git-svn-id: + http://svn.osgeo.org/geos/trunk@3171 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-01-27 Sandro Santilli - * NEWS: Add release date of 3.2.0 (more than an year ago..) git-svn-id: http://svn.osgeo.org/geos/trunk@3170 + * NEWS: Add release date of 3.2.0 (more than an year ago..) + git-svn-id: http://svn.osgeo.org/geos/trunk@3170 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-01-27 Sandro Santilli * php/test/test.php: Don't use is_null on unexistant array elements - [#393] git-svn-id: http://svn.osgeo.org/geos/trunk@3169 + [#393] git-svn-id: http://svn.osgeo.org/geos/trunk@3169 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-01-25 Mateusz Loskot * tests/CMakeLists.txt, tests/bigtest/CMakeLists.txt: Added - tests/bigtest programs to CMake configuration git-svn-id: http://svn.osgeo.org/geos/trunk@3168 + tests/bigtest programs to CMake configuration git-svn-id: + http://svn.osgeo.org/geos/trunk@3168 5242fede-7e19-0410-aef8-94bd7d2200fb 2011-01-25 Mateusz Loskot * tests/xmltester/CMakeLists.txt: Updated CMake configuration to - call xmltester from runtime output directory. git-svn-id: http://svn.osgeo.org/geos/trunk@3167 + call xmltester from runtime output directory. git-svn-id: + http://svn.osgeo.org/geos/trunk@3167 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-26 Sandro Santilli * tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: remove - warning in testcase git-svn-id: http://svn.osgeo.org/geos/trunk@3166 + warning in testcase git-svn-id: + http://svn.osgeo.org/geos/trunk@3166 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-26 Sandro Santilli * include/geos/operation/sharedpaths/SharedPathsOp.h: Declare SharedPathsOp class as noncopyable. Hopefully fixes VC2008 warning. - [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3165 + [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3165 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-24 Sandro Santilli * include/geos/algorithm/InteriorPointLine.h, src/algorithm/InteriorPointLine.cpp: Record port info for - InteriorPointLine git-svn-id: http://svn.osgeo.org/geos/trunk@3164 + InteriorPointLine git-svn-id: http://svn.osgeo.org/geos/trunk@3164 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-22 Sandro Santilli @@ -8237,28 +12243,39 @@ * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSRelatePatternMatchTest.cpp: Add - GEOSRelatePatternMatch C-API interface [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3161 + GEOSRelatePatternMatch C-API interface [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@3161 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-20 Sandro Santilli - * include/geos/platform.h.in: MinGW32 fixes by Sandro Furieri git-svn-id: http://svn.osgeo.org/geos/trunk@3160 + * include/geos/platform.h.in: MinGW32 fixes by Sandro Furieri + git-svn-id: http://svn.osgeo.org/geos/trunk@3160 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-20 Mateusz Loskot - * : Updated svn:ignore properties. git-svn-id: http://svn.osgeo.org/geos/trunk@3159 + * : Updated svn:ignore properties. git-svn-id: + http://svn.osgeo.org/geos/trunk@3159 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-12-06 Sandro Santilli + + * include/geos/operation/overlay/snap/GeometrySnapper.h: typo + git-svn-id: http://svn.osgeo.org/geos/trunk@3158 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli * tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp: Add - test for src-vertex snapping allowance git-svn-id: http://svn.osgeo.org/geos/trunk@3157 + test for src-vertex snapping allowance git-svn-id: + http://svn.osgeo.org/geos/trunk@3157 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli - * include/geos/geom/CoordinateList.h: Update copyright git-svn-id: http://svn.osgeo.org/geos/trunk@3156 + * include/geos/geom/CoordinateList.h: Update copyright git-svn-id: + http://svn.osgeo.org/geos/trunk@3156 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli @@ -8266,76 +12283,86 @@ * include/geos/geom/CoordinateList.h, tests/unit/geom/CoordinateListTest.cpp: Add method to insert coordinats into a CoordinateList w/out allowing duplicates (fixes - issue #387) git-svn-id: http://svn.osgeo.org/geos/trunk@3155 + issue #387) git-svn-id: http://svn.osgeo.org/geos/trunk@3155 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli * tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp: - Another test for snapping (empty sequence vs. non-empty snaps) git-svn-id: http://svn.osgeo.org/geos/trunk@3154 + Another test for snapping (empty sequence vs. non-empty snaps) + git-svn-id: http://svn.osgeo.org/geos/trunk@3154 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli - * src/operation/overlay/snap/LineStringSnapper.cpp: update dox git-svn-id: http://svn.osgeo.org/geos/trunk@3153 + * src/operation/overlay/snap/LineStringSnapper.cpp: update dox + git-svn-id: http://svn.osgeo.org/geos/trunk@3153 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli * include/geos/operation/overlay/snap/LineStringSnapper.h, src/operation/overlay/snap/LineStringSnapper.cpp: Take the - allowSnappingToSourceVertices support in git-svn-id: http://svn.osgeo.org/geos/trunk@3152 + allowSnappingToSourceVertices support in git-svn-id: + http://svn.osgeo.org/geos/trunk@3152 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-03 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSSharedPathsTest.cpp: - Add test for GEOSSharedPaths C-API interface git-svn-id: http://svn.osgeo.org/geos/trunk@3151 + Add test for GEOSSharedPaths C-API interface git-svn-id: + http://svn.osgeo.org/geos/trunk@3151 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * tests/unit/capi/GEOSSnapTest.cpp: Another test, and a leak plug - (in the test) git-svn-id: http://svn.osgeo.org/geos/trunk@3150 + (in the test) git-svn-id: http://svn.osgeo.org/geos/trunk@3150 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli - * NEWS: Add GEOSSnap item git-svn-id: http://svn.osgeo.org/geos/trunk@3149 + * NEWS: Add GEOSSnap item git-svn-id: + http://svn.osgeo.org/geos/trunk@3149 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli - * php/geos.c, php/test/test.php: Expose GEOSSnap to PHP interface git-svn-id: http://svn.osgeo.org/geos/trunk@3148 + * php/geos.c, php/test/test.php: Expose GEOSSnap to PHP interface + git-svn-id: http://svn.osgeo.org/geos/trunk@3148 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSSnapTest.cpp: Add test - for C-API GEOSSnap interface git-svn-id: http://svn.osgeo.org/geos/trunk@3147 + for C-API GEOSSnap interface git-svn-id: + http://svn.osgeo.org/geos/trunk@3147 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli - * capi/geos_c.cpp, capi/geos_ts_c.cpp: OOps.. this one build git-svn-id: http://svn.osgeo.org/geos/trunk@3146 + * capi/geos_c.cpp, capi/geos_ts_c.cpp: OOps.. this one build + git-svn-id: http://svn.osgeo.org/geos/trunk@3146 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Expose - snapping to the C-API git-svn-id: http://svn.osgeo.org/geos/trunk@3145 + snapping to the C-API git-svn-id: + http://svn.osgeo.org/geos/trunk@3145 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp: Allow - testing snapping something different from a single polygon.. git-svn-id: http://svn.osgeo.org/geos/trunk@3144 + testing snapping something different from a single polygon.. + git-svn-id: http://svn.osgeo.org/geos/trunk@3144 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp: tab to - 8 spaces git-svn-id: http://svn.osgeo.org/geos/trunk@3143 + 8 spaces git-svn-id: http://svn.osgeo.org/geos/trunk@3143 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli @@ -8344,57 +12371,71 @@ src/operation/overlay/snap/LineStringSnapper.cpp, tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp: Bring LineStringSnapper forward to r309 (JTS-1.11+): avoid snapping final - point of closed rings. git-svn-id: http://svn.osgeo.org/geos/trunk@3142 + point of closed rings. git-svn-id: + http://svn.osgeo.org/geos/trunk@3142 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * include/geos/operation/overlay/snap/GeometrySnapper.h, src/operation/overlay/snap/GeometrySnapper.cpp: update copyright - date git-svn-id: http://svn.osgeo.org/geos/trunk@3141 + date git-svn-id: http://svn.osgeo.org/geos/trunk@3141 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-12-02 Sandro Santilli * include/geos/operation/overlay/snap/GeometrySnapper.h, src/operation/overlay/snap/GeometrySnapper.cpp: Take GeometrySnapper - forward to r309 (JTS-1.11+): add self-snapping git-svn-id: http://svn.osgeo.org/geos/trunk@3140 + forward to r309 (JTS-1.11+): add self-snapping git-svn-id: + http://svn.osgeo.org/geos/trunk@3140 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-30 Sandro Santilli * include/geos/operation/sharedpaths/SharedPathsOp.h, src/operation/sharedpaths/SharedPathsOp.cpp: Hope this is the last - one... (RT credit tweaks) git-svn-id: http://svn.osgeo.org/geos/trunk@3139 + one... (RT credit tweaks) git-svn-id: + http://svn.osgeo.org/geos/trunk@3139 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * include/geos/operation/sharedpaths/SharedPathsOp.h, src/operation/sharedpaths/SharedPathsOp.cpp: Full credit line - [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3138 + [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3138 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-11-29 Sandro Santilli + + * NEWS: SharedPaths in NEWS [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@3137 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * NEWS: SharedPaths in NEWS [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@3137 + * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, + php/geos.c, php/test/test.php: Merge branch 'rt' git-svn-id: + http://svn.osgeo.org/geos/trunk@3136 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * : 9 0 capi/geos_c.cpp 16 0 capi/geos_c.h.in 74 0 - capi/geos_ts_c.cpp 28 0 php/geos.c 16 0 php/test/test.php + * NEWS, include/geos/operation/sharedpaths/SharedPathsOp.h, + src/operation/sharedpaths/SharedPathsOp.cpp: Write RT credit and + NEWS itam git-svn-id: http://svn.osgeo.org/geos/trunk@3135 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * src/operation/sharedpaths/SharedPathsOp.cpp: drop unused include git-svn-id: http://svn.osgeo.org/geos/trunk@3134 + * src/operation/sharedpaths/SharedPathsOp.cpp: drop unused include + git-svn-id: http://svn.osgeo.org/geos/trunk@3134 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * src/operation/sharedpaths/SharedPathsOp.cpp, tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: Test equal - lines git-svn-id: http://svn.osgeo.org/geos/trunk@3133 + lines git-svn-id: http://svn.osgeo.org/geos/trunk@3133 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli @@ -8402,57 +12443,64 @@ * include/geos/operation/sharedpaths/SharedPathsOp.h, src/operation/sharedpaths/SharedPathsOp.cpp, tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: Have - SharedPathsOp throw an exception on illegal (non-lineal) arg git-svn-id: http://svn.osgeo.org/geos/trunk@3132 + SharedPathsOp throw an exception on illegal (non-lineal) arg + git-svn-id: http://svn.osgeo.org/geos/trunk@3132 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: Add tests - for multiline-multiline both single dir and mixed dirs git-svn-id: http://svn.osgeo.org/geos/trunk@3131 + for multiline-multiline both single dir and mixed dirs git-svn-id: + http://svn.osgeo.org/geos/trunk@3131 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: Add two - tests of mixed direction shared paths git-svn-id: http://svn.osgeo.org/geos/trunk@3130 + tests of mixed direction shared paths git-svn-id: + http://svn.osgeo.org/geos/trunk@3130 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * include/geos/operation/sharedpaths/SharedPathsOp.h: Document that the direction of the returned paths is the one these paths have on - the first geometry given git-svn-id: http://svn.osgeo.org/geos/trunk@3129 + the first geometry given git-svn-id: + http://svn.osgeo.org/geos/trunk@3129 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp: Initial - tests for SharedPathsOp git-svn-id: http://svn.osgeo.org/geos/trunk@3128 + tests for SharedPathsOp git-svn-id: + http://svn.osgeo.org/geos/trunk@3128 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * include/geos/operation/sharedpaths/SharedPathsOp.h, src/operation/sharedpaths/SharedPathsOp.cpp: Paths are always - LINESTRING types git-svn-id: http://svn.osgeo.org/geos/trunk@3127 + LINESTRING types git-svn-id: http://svn.osgeo.org/geos/trunk@3127 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * .gitignore: forgot aclocal.m4 git-svn-id: http://svn.osgeo.org/geos/trunk@3126 + * .gitignore: forgot aclocal.m4 git-svn-id: + http://svn.osgeo.org/geos/trunk@3126 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * .vimrc, include/geos/operation/sharedpaths/SharedPathsOp.h, src/operation/sharedpaths/SharedPathsOp.cpp: Complete implementation - of SharedPathsOp git-svn-id: http://svn.osgeo.org/geos/trunk@3125 + of SharedPathsOp git-svn-id: http://svn.osgeo.org/geos/trunk@3125 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * .gitignore: more ignores git-svn-id: http://svn.osgeo.org/geos/trunk@3124 + * .gitignore: more ignores git-svn-id: + http://svn.osgeo.org/geos/trunk@3124 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli @@ -8462,65 +12510,73 @@ include/geos/operation/sharedpaths/SharedPathsOp.h, src/operation/Makefile.am, src/operation/sharedpaths/Makefile.am, src/operation/sharedpaths/SharedPathsOp.cpp: Build sharedpaths - lib/namespace git-svn-id: http://svn.osgeo.org/geos/trunk@3123 + lib/namespace git-svn-id: http://svn.osgeo.org/geos/trunk@3123 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * configure.in: Add support for 'maintainer mode' git-svn-id: http://svn.osgeo.org/geos/trunk@3122 + * configure.in: Add support for 'maintainer mode' git-svn-id: + http://svn.osgeo.org/geos/trunk@3122 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli - * .gitignore: ignores git-svn-id: http://svn.osgeo.org/geos/trunk@3121 + * .gitignore: ignores git-svn-id: + http://svn.osgeo.org/geos/trunk@3121 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * include/geos/operation/sharedpaths/SharedPathsOp.h, - src/operation/sharedpaths/SharedPathsOp.cpp: Stub SharedPathsOp git-svn-id: http://svn.osgeo.org/geos/trunk@3120 + src/operation/sharedpaths/SharedPathsOp.cpp: Stub SharedPathsOp + git-svn-id: http://svn.osgeo.org/geos/trunk@3120 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-29 Sandro Santilli * tests/xmltester/tests/rt/TestSameDirection.xml: stub tet for - SameDirection predicate git-svn-id: http://svn.osgeo.org/geos/trunk@3119 + SameDirection predicate git-svn-id: + http://svn.osgeo.org/geos/trunk@3119 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-11-24 Sandro Santilli - * TODO: typo git-svn-id: http://svn.osgeo.org/geos/trunk@3118 + * TODO: typo git-svn-id: http://svn.osgeo.org/geos/trunk@3118 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-25 Sandro Santilli * configure.in: Don't try to configure missing files (fixes bug - #382) git-svn-id: http://svn.osgeo.org/geos/trunk@3117 + #382) git-svn-id: http://svn.osgeo.org/geos/trunk@3117 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-15 Mateusz Loskot * CMakeLists.txt, tests/unit/CMakeLists.txt: Unified CMAKE_*_OUTPUT_DIRECTOR locations to simplify tests running and - finding all binaries. git-svn-id: http://svn.osgeo.org/geos/trunk@3116 + finding all binaries. git-svn-id: + http://svn.osgeo.org/geos/trunk@3116 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-15 Mateusz Loskot * tests/unit/capi/GEOSGeom_create.cpp, tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp, - tests/unit/io/WKTReaderTest.cpp: Visual C++ warnings cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@3115 + tests/unit/io/WKTReaderTest.cpp: Visual C++ warnings cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@3115 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-15 Mateusz Loskot * capi/geos_c.h.in: Missing DLL storage-class attributes for - GEOSOrientationIndex git-svn-id: http://svn.osgeo.org/geos/trunk@3114 + GEOSOrientationIndex git-svn-id: + http://svn.osgeo.org/geos/trunk@3114 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-15 Mateusz Loskot - * src/io/WKTReader.cpp: Cast toupper() result to char git-svn-id: http://svn.osgeo.org/geos/trunk@3113 + * src/io/WKTReader.cpp: Cast toupper() result to char git-svn-id: + http://svn.osgeo.org/geos/trunk@3113 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-15 Mateusz Loskot @@ -8567,42 +12623,49 @@ build/msvc90/geos_unit/geos_unit.vcproj, build/msvc90/geos_xmltester/Makefile.am, build/msvc90/geos_xmltester/geos_xmltester.vcproj: Deprecate Visual - Studio projects in trunk/build (#381). Long live the CMake. git-svn-id: http://svn.osgeo.org/geos/trunk@3112 + Studio projects in trunk/build (#381). Long live the CMake. + git-svn-id: http://svn.osgeo.org/geos/trunk@3112 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot - * include/geos/geom/BinaryOp.h: Cleaned compiler warnings git-svn-id: http://svn.osgeo.org/geos/trunk@3111 + * include/geos/geom/BinaryOp.h: Cleaned compiler warnings + git-svn-id: http://svn.osgeo.org/geos/trunk@3111 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot - * capi/geos_ts_c.cpp: Cleaned compiler warnings git-svn-id: http://svn.osgeo.org/geos/trunk@3110 + * capi/geos_ts_c.cpp: Cleaned compiler warnings git-svn-id: + http://svn.osgeo.org/geos/trunk@3110 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot * src/inlines.cpp: Disable inline.obj if GEOS_INLINE defined while - building with Visual C++ git-svn-id: http://svn.osgeo.org/geos/trunk@3109 + building with Visual C++ git-svn-id: + http://svn.osgeo.org/geos/trunk@3109 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot * src/operation/buffer/BufferBuilder.cpp: Disable argument dependant lookup (Koenig) for min/max functions to make sure GEOS compiles in - the presence of the min and max macros. git-svn-id: http://svn.osgeo.org/geos/trunk@3108 + the presence of the min and max macros. git-svn-id: + http://svn.osgeo.org/geos/trunk@3108 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot - * CMakeLists.txt: Added NOMINMAX define for Visual C++ git-svn-id: http://svn.osgeo.org/geos/trunk@3107 + * CMakeLists.txt: Added NOMINMAX define for Visual C++ git-svn-id: + http://svn.osgeo.org/geos/trunk@3107 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot * CMakeLists.txt: Do not set CMAKE_BUILD_TYPE for Visual Studio IDE generators - CMAKE_BUILD_TYPE is dedicated to single-configuration - generators like Make or NMAKE. git-svn-id: http://svn.osgeo.org/geos/trunk@3106 + generators like Make or NMAKE. git-svn-id: + http://svn.osgeo.org/geos/trunk@3106 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-10-10 Mateusz Loskot @@ -8614,12 +12677,14 @@ 2010-08-27 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/bug358.xml: Add - test for 358 in the loop (now fixed). git-svn-id: http://svn.osgeo.org/geos/trunk@3104 + test for 358 in the loop (now fixed). git-svn-id: + http://svn.osgeo.org/geos/trunk@3104 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli - * tests/xmltester/tests/bug375.xml: Drop duplicated testcase git-svn-id: http://svn.osgeo.org/geos/trunk@3103 + * tests/xmltester/tests/bug375.xml: Drop duplicated testcase + git-svn-id: http://svn.osgeo.org/geos/trunk@3103 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli @@ -8627,7 +12692,7 @@ * include/geos/geom/BinaryOp.h, tests/xmltester/Makefile.am: Check validity of CommonBitsOp return, as JTS does. Check output validity for all tests, do not run the now-throwing tests also known to be - bogus in JTS. git-svn-id: http://svn.osgeo.org/geos/trunk@3102 + bogus in JTS. git-svn-id: http://svn.osgeo.org/geos/trunk@3102 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli @@ -8638,13 +12703,14 @@ (==robustness-invalid-output.xml) to be the same of JTS's failure/TestOverlay.xml, so dropped the previous 2 and copied over the latter. Won't run that test for now, so to get in sync with JTS - as next step. git-svn-id: http://svn.osgeo.org/geos/trunk@3101 + as next step. git-svn-id: http://svn.osgeo.org/geos/trunk@3101 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli * tests/xmltester/tests/bug375.xml: Add proper arg1 and arg2 - attributes (for JTS support) git-svn-id: http://svn.osgeo.org/geos/trunk@3100 + attributes (for JTS support) git-svn-id: + http://svn.osgeo.org/geos/trunk@3100 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli @@ -8655,7 +12721,8 @@ off to avoid breaking a previously-almost-working test (robustness-invalid-output.xml). It'll need some discussion before going on with this as to whether we can accept to return invalid - geometries or not.. git-svn-id: http://svn.osgeo.org/geos/trunk@3099 + geometries or not.. git-svn-id: + http://svn.osgeo.org/geos/trunk@3099 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli @@ -8666,71 +12733,78 @@ tests/xmltester/tests/robustness.xml, tests/xmltester/tests/stmlf/stmlf-cases-20061020-invalid-output.xml , tests/xmltester/tests/stmlf/stmlf-cases-20061020.xml: Split tests - that trigger invalid outputs from the rest. Test the sane ones with + that trigger invalid outputs from the rest. Test the sane ones with --test-invalid-output and the other ones with less strictness. Add (but dont run) tests for bugs 375 and 358 (to review for correct - expected otuput) git-svn-id: http://svn.osgeo.org/geos/trunk@3098 + expected otuput) git-svn-id: http://svn.osgeo.org/geos/trunk@3098 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Have - --test-valid-output influence test results git-svn-id: http://svn.osgeo.org/geos/trunk@3097 + --test-valid-output influence test results git-svn-id: + http://svn.osgeo.org/geos/trunk@3097 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli - * README: Add note about configuring for php support git-svn-id: http://svn.osgeo.org/geos/trunk@3096 + * README: Add note about configuring for php support git-svn-id: + http://svn.osgeo.org/geos/trunk@3096 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: - const-correctness git-svn-id: http://svn.osgeo.org/geos/trunk@3095 + const-correctness git-svn-id: http://svn.osgeo.org/geos/trunk@3095 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-27 Sandro Santilli * tests/xmltester/XMLTester.cpp: Have --test-valid-output test - actual result, not the expected one (more useful) git-svn-id: http://svn.osgeo.org/geos/trunk@3094 + actual result, not the expected one (more useful) git-svn-id: + http://svn.osgeo.org/geos/trunk@3094 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-26 Sandro Santilli * tests/xmltester/tests/{bug334.xml => bug344.xml}: Fix name of the - test to match ticket number git-svn-id: http://svn.osgeo.org/geos/trunk@3093 + test to match ticket number git-svn-id: + http://svn.osgeo.org/geos/trunk@3093 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-23 Stephen Wong * src/operation/buffer/BufferBuilder.cpp: Fixed a filtering distance - problem in bufferLineSingleSided. (#372) git-svn-id: http://svn.osgeo.org/geos/trunk@3092 + problem in bufferLineSingleSided. (#372) git-svn-id: + http://svn.osgeo.org/geos/trunk@3092 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-23 Sandro Santilli * include/geos/geom/BinaryOp.h: Add more debugging calls (for bug - #358) git-svn-id: http://svn.osgeo.org/geos/trunk@3091 + #358) git-svn-id: http://svn.osgeo.org/geos/trunk@3091 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-23 Sandro Santilli * include/geos/geom/BinaryOp.h: Snapping heuristic was never really - dropping common bits. Now it does. This is just to have code match + dropping common bits. Now it does. This is just to have code match documentation, and still passes 'make check' for GEOS. Wasn't tried - against postgis, would be useful to do. git-svn-id: http://svn.osgeo.org/geos/trunk@3090 + against postgis, would be useful to do. git-svn-id: + http://svn.osgeo.org/geos/trunk@3090 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-17 Sean Gillies * capi/geos_ts_c.cpp: Use fully qualified std::runtime_error (#371) - and fix indentation git-svn-id: http://svn.osgeo.org/geos/trunk@3089 + and fix indentation git-svn-id: + http://svn.osgeo.org/geos/trunk@3089 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-08-17 Sean Gillies * capi/geos_ts_c.cpp: Throw runtime_error if allocation fails in - gstrdup_s git-svn-id: http://svn.osgeo.org/geos/trunk@3088 + gstrdup_s git-svn-id: http://svn.osgeo.org/geos/trunk@3088 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-26 Stephen Wong @@ -8740,52 +12814,59 @@ src/operation/valid/IsValidOp.cpp, tests/xmltester/tests/general/TestValid2.xml: Fixed a bufferLineSingleSided crash and fixed OGC validation on rare cases. - (#364) git-svn-id: http://svn.osgeo.org/geos/trunk@3087 + (#364) git-svn-id: http://svn.osgeo.org/geos/trunk@3087 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-15 Sandro Santilli - * php/TODO: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@3086 + * php/TODO: Updated git-svn-id: + http://svn.osgeo.org/geos/trunk@3086 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-15 Sandro Santilli - * NEWS: Add item about the new PHP5 binding git-svn-id: http://svn.osgeo.org/geos/trunk@3085 + * NEWS: Add item about the new PHP5 binding git-svn-id: + http://svn.osgeo.org/geos/trunk@3085 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-15 Sandro Santilli * php/geos.c, php/test/test.php: PHP: Drop debug lines from - serialization code, add test for serialization git-svn-id: http://svn.osgeo.org/geos/trunk@3084 + serialization code, add test for serialization git-svn-id: + http://svn.osgeo.org/geos/trunk@3084 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-15 Sandro Santilli - * configure.in: Fix logic bug in phpunit check git-svn-id: http://svn.osgeo.org/geos/trunk@3083 + * configure.in: Fix logic bug in phpunit check git-svn-id: + http://svn.osgeo.org/geos/trunk@3083 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-14 Sandro Santilli * php/TODO, php/geos.c: Serialization/deserialization support for - GEOSGeometry type git-svn-id: http://svn.osgeo.org/geos/trunk@3082 + GEOSGeometry type git-svn-id: http://svn.osgeo.org/geos/trunk@3082 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-13 Sandro Santilli * configure.in, php/test/Makefile.am: Cleanup PHP-specific - dependency handling and reporting git-svn-id: http://svn.osgeo.org/geos/trunk@3081 + dependency handling and reporting git-svn-id: + http://svn.osgeo.org/geos/trunk@3081 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-08 Sandro Santilli * src/geom/Polygon.cpp, tests/unit/io/WKTReaderTest.cpp: Object passed for ownership transfer in the constructor shouldn't be - deleted when construction fails. Fixes bug #361 git-svn-id: http://svn.osgeo.org/geos/trunk@3080 + deleted when construction fails. Fixes bug #361 git-svn-id: + http://svn.osgeo.org/geos/trunk@3080 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-01 Sandro Santilli - * NEWS: Note the bugfix in news file git-svn-id: http://svn.osgeo.org/geos/trunk@3079 + * NEWS: Note the bugfix in news file git-svn-id: + http://svn.osgeo.org/geos/trunk@3079 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-01 Sandro Santilli @@ -8798,64 +12879,71 @@ src/planargraph/PlanarGraph.cpp: Fix PolygonizeGraph::deleteDangles so it doesn't return duplicated LineStrings, as per JTS design. Fixes the Polygonizer Bug reported in list. This commit also takes - the chance to reduce some heap allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@3078 + the chance to reduce some heap allocations. git-svn-id: + http://svn.osgeo.org/geos/trunk@3078 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-01 Sandro Santilli * include/geos/operation/polygonize/EdgeRing.h, src/operation/polygonize/EdgeRing.cpp: Minor optimizations / - strictnesses git-svn-id: http://svn.osgeo.org/geos/trunk@3077 + strictnesses git-svn-id: http://svn.osgeo.org/geos/trunk@3077 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-07-01 Sandro Santilli * include/geos/operation/polygonize/EdgeRing.h, src/operation/polygonize/EdgeRing.cpp: Drop useless heap-allocation - in Polygonize op git-svn-id: http://svn.osgeo.org/geos/trunk@3076 + in Polygonize op git-svn-id: http://svn.osgeo.org/geos/trunk@3076 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Frank Warmerdam * tests/unit/capi/GEOSGeomToWKTTest.cpp, tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp, - tests/unit/geom/PointTest.cpp: fix memory leaks git-svn-id: http://svn.osgeo.org/geos/trunk@3075 + tests/unit/geom/PointTest.cpp: fix memory leaks git-svn-id: + http://svn.osgeo.org/geos/trunk@3075 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli * php/geos.c, php/test/test.php: PHP: - GEOSWKTWriter::getOutputDimension and test git-svn-id: http://svn.osgeo.org/geos/trunk@3074 + GEOSWKTWriter::getOutputDimension and test git-svn-id: + http://svn.osgeo.org/geos/trunk@3074 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Frank Warmerdam * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/capi/GEOSGeomToWKTTest.cpp: added - GEOSWKTWriter_getOutputDimension and test (#354) git-svn-id: http://svn.osgeo.org/geos/trunk@3073 + GEOSWKTWriter_getOutputDimension and test (#354) git-svn-id: + http://svn.osgeo.org/geos/trunk@3073 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli - * php/TODO: Update git-svn-id: http://svn.osgeo.org/geos/trunk@3072 + * php/TODO: Update git-svn-id: + http://svn.osgeo.org/geos/trunk@3072 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli * php/geos.c, php/test/test.php: WKBReader: construct and readHEX; - improve WKTReader test to include 'Z' label git-svn-id: http://svn.osgeo.org/geos/trunk@3071 + improve WKTReader test to include 'Z' label git-svn-id: + http://svn.osgeo.org/geos/trunk@3071 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli * php/geos.c, php/test/test.php: WKBWriter::{set,get}IncludeSRID - (and test) git-svn-id: http://svn.osgeo.org/geos/trunk@3070 + (and test) git-svn-id: http://svn.osgeo.org/geos/trunk@3070 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli * php/geos.c, php/test/test.php: WKBWriter::{get,set}ByteOrder, - improve tests for writeHEX git-svn-id: http://svn.osgeo.org/geos/trunk@3069 + improve tests for writeHEX git-svn-id: + http://svn.osgeo.org/geos/trunk@3069 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli @@ -8863,19 +12951,22 @@ * capi/geos_ts_c.cpp, include/geos/io/WKBWriter.h, src/io/WKBWriter.cpp: Make WKBWriter::setByteOrder check for argument and throw IllegalArgumentException when appropriate. Make - sure C-API wrapper catches those. git-svn-id: http://svn.osgeo.org/geos/trunk@3068 + sure C-API wrapper catches those. git-svn-id: + http://svn.osgeo.org/geos/trunk@3068 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli * php/geos.c, php/test/test.php: PHP: WKBWriter: ctor, - getOutputDimension, setOutputDimension, writeHEX and tests git-svn-id: http://svn.osgeo.org/geos/trunk@3067 + getOutputDimension, setOutputDimension, writeHEX and tests + git-svn-id: http://svn.osgeo.org/geos/trunk@3067 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli * capi/geos_ts_c.cpp: Properly catch exceptions from - WKTWriter::setOutputDimension and WKBWriter::setOutputDimension git-svn-id: http://svn.osgeo.org/geos/trunk@3066 + WKTWriter::setOutputDimension and WKBWriter::setOutputDimension + git-svn-id: http://svn.osgeo.org/geos/trunk@3066 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-24 Sandro Santilli @@ -8887,25 +12978,27 @@ constructor; make WKBWriter::setOutputDimensions perform the check as well (like the constructor); Drop virtual methods from WKTWriter class, which wasn't meant to be a virtual class (no virtual dtor - anyway) git-svn-id: http://svn.osgeo.org/geos/trunk@3065 + anyway) git-svn-id: http://svn.osgeo.org/geos/trunk@3065 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-23 Sandro Santilli - * NEWS: Log ABI change git-svn-id: http://svn.osgeo.org/geos/trunk@3064 + * NEWS: Log ABI change git-svn-id: + http://svn.osgeo.org/geos/trunk@3064 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-23 Sandro Santilli * include/geos/geom/Geometry.h, src/geom/Geometry.cpp: Const-correct - Geometry::isWithinDistance. Thanks to Yabo, see ticket #349 git-svn-id: http://svn.osgeo.org/geos/trunk@3063 + Geometry::isWithinDistance. Thanks to Yabo, see ticket #349 + git-svn-id: http://svn.osgeo.org/geos/trunk@3063 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-23 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, php/geos.c: There's no point for GEOSisValidDetail to take output parameter as - const pointer git-svn-id: http://svn.osgeo.org/geos/trunk@3062 + const pointer git-svn-id: http://svn.osgeo.org/geos/trunk@3062 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-23 Sandro Santilli @@ -8913,7 +13006,7 @@ * include/geos/operation/buffer/OffsetCurveVertexList.h, src/geom/CoordinateArraySequence.cpp, src/geom/GeometryFactory.cpp, src/io/WKTWriter.cpp: Fix for 4.4.3 builds, patch by Yabo (see - ticket #351) git-svn-id: http://svn.osgeo.org/geos/trunk@3061 + ticket #351) git-svn-id: http://svn.osgeo.org/geos/trunk@3061 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli @@ -8921,138 +13014,163 @@ * php/TODO, php/geos.c, src/geom/GeometryCollection.cpp, src/geom/LineString.cpp, src/geom/Polygon.cpp: Switch back to unchecked getGeometryN, getPointN and getInteriorRingN, check them - at the PHP level, for performance sake in C-land. git-svn-id: http://svn.osgeo.org/geos/trunk@3060 + at the PHP level, for performance sake in C-land. git-svn-id: + http://svn.osgeo.org/geos/trunk@3060 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli * php/TODO, php/geos.c, php/test/test.php: Rename getGeometryN to - geometryN, for interface consistency git-svn-id: http://svn.osgeo.org/geos/trunk@3059 + geometryN, for interface consistency git-svn-id: + http://svn.osgeo.org/geos/trunk@3059 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli * php/TODO, php/geos.c, php/test/test.php: area, length, distance, - hausdorffDistance; fix leaks in pointN, startPoint and endPoint git-svn-id: http://svn.osgeo.org/geos/trunk@3058 + hausdorffDistance; fix leaks in pointN, startPoint and endPoint + git-svn-id: http://svn.osgeo.org/geos/trunk@3058 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: startPoint, endPoint git-svn-id: http://svn.osgeo.org/geos/trunk@3057 + * php/geos.c, php/test/test.php: startPoint, endPoint git-svn-id: + http://svn.osgeo.org/geos/trunk@3057 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: pointN git-svn-id: http://svn.osgeo.org/geos/trunk@3056 + * php/geos.c, php/test/test.php: pointN git-svn-id: + http://svn.osgeo.org/geos/trunk@3056 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli * src/geom/LineString.cpp: LineString::getPointN is part of the API, - check before segfaulting.. git-svn-id: http://svn.osgeo.org/geos/trunk@3055 + check before segfaulting.. git-svn-id: + http://svn.osgeo.org/geos/trunk@3055 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: coordinateDimension() git-svn-id: http://svn.osgeo.org/geos/trunk@3054 + * php/geos.c, php/test/test.php: coordinateDimension() git-svn-id: + http://svn.osgeo.org/geos/trunk@3054 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/TODO, php/geos.c, php/test/test.php: dimension() [ spatial ] git-svn-id: http://svn.osgeo.org/geos/trunk@3053 + * php/TODO, php/geos.c, php/test/test.php: dimension() [ spatial ] + git-svn-id: http://svn.osgeo.org/geos/trunk@3053 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: numCoordinates git-svn-id: http://svn.osgeo.org/geos/trunk@3052 + * php/geos.c, php/test/test.php: numCoordinates git-svn-id: + http://svn.osgeo.org/geos/trunk@3052 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: exteriorRing git-svn-id: http://svn.osgeo.org/geos/trunk@3051 + * php/geos.c, php/test/test.php: exteriorRing git-svn-id: + http://svn.osgeo.org/geos/trunk@3051 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli * php/TODO, php/geos.c, php/test/test.php: numPoints, getX, getY, - interiorRingN git-svn-id: http://svn.osgeo.org/geos/trunk@3050 + interiorRingN git-svn-id: http://svn.osgeo.org/geos/trunk@3050 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * src/geom/Polygon.cpp: Make getInteriorRingN checked (API) git-svn-id: http://svn.osgeo.org/geos/trunk@3049 + * src/geom/Polygon.cpp: Make getInteriorRingN checked (API) + git-svn-id: http://svn.osgeo.org/geos/trunk@3049 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: numInteriorRings git-svn-id: http://svn.osgeo.org/geos/trunk@3048 + * php/geos.c, php/test/test.php: numInteriorRings git-svn-id: + http://svn.osgeo.org/geos/trunk@3048 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/test/test.php: Test null-return from unexistent offset git-svn-id: http://svn.osgeo.org/geos/trunk@3047 + * php/test/test.php: Test null-return from unexistent offset + git-svn-id: http://svn.osgeo.org/geos/trunk@3047 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli * src/geom/GeometryCollection.cpp: Geometry::getGeometryN is an API - function, so make it safe/checked git-svn-id: http://svn.osgeo.org/geos/trunk@3046 + function, so make it safe/checked git-svn-id: + http://svn.osgeo.org/geos/trunk@3046 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: getGeometryN git-svn-id: http://svn.osgeo.org/geos/trunk@3045 + * php/geos.c, php/test/test.php: getGeometryN git-svn-id: + http://svn.osgeo.org/geos/trunk@3045 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/test/test.php: Test numGeometries git-svn-id: http://svn.osgeo.org/geos/trunk@3044 + * php/test/test.php: Test numGeometries git-svn-id: + http://svn.osgeo.org/geos/trunk@3044 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-21 Sandro Santilli - * php/geos.c, php/test/test.php: getSRID, setSRID git-svn-id: http://svn.osgeo.org/geos/trunk@3043 + * php/geos.c, php/test/test.php: getSRID, setSRID git-svn-id: + http://svn.osgeo.org/geos/trunk@3043 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/geos.c, php/test/test.php: typeName, typeId git-svn-id: http://svn.osgeo.org/geos/trunk@3042 + * php/geos.c, php/test/test.php: typeName, typeId git-svn-id: + http://svn.osgeo.org/geos/trunk@3042 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/geos.c, php/test/test.php: Geometry type constants git-svn-id: http://svn.osgeo.org/geos/trunk@3041 + * php/geos.c, php/test/test.php: Geometry type constants + git-svn-id: http://svn.osgeo.org/geos/trunk@3041 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/geos.c, php/test/test.php: isSimple, isRing, hasZ, isClosed git-svn-id: http://svn.osgeo.org/geos/trunk@3040 + * php/geos.c, php/test/test.php: isSimple, isRing, hasZ, isClosed + git-svn-id: http://svn.osgeo.org/geos/trunk@3040 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/geos.c, php/test/test.php: checkValidity (isValid in disguise) git-svn-id: http://svn.osgeo.org/geos/trunk@3039 + * php/geos.c, php/test/test.php: checkValidity (isValid in disguise) + git-svn-id: http://svn.osgeo.org/geos/trunk@3039 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/TODO, php/geos.c, php/test/test.php: isEmpty git-svn-id: http://svn.osgeo.org/geos/trunk@3038 + * php/TODO, php/geos.c, php/test/test.php: isEmpty git-svn-id: + http://svn.osgeo.org/geos/trunk@3038 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/geos.c, php/test/test.php: Relational operators + equalsExact git-svn-id: http://svn.osgeo.org/geos/trunk@3037 + * php/geos.c, php/test/test.php: Relational operators + equalsExact + git-svn-id: http://svn.osgeo.org/geos/trunk@3037 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli * php/geos.c, php/test/test.php: Simplify (also - topology-preserving), ExtractUniquePoints git-svn-id: http://svn.osgeo.org/geos/trunk@3036 + topology-preserving), ExtractUniquePoints git-svn-id: + http://svn.osgeo.org/geos/trunk@3036 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/geos.c, php/test/Makefile.am, php/test/test.php: GEOSLineMerge git-svn-id: http://svn.osgeo.org/geos/trunk@3035 + * php/geos.c, php/test/Makefile.am, php/test/test.php: GEOSLineMerge + git-svn-id: http://svn.osgeo.org/geos/trunk@3035 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli @@ -9060,111 +13178,129 @@ * php/geos.c, php/test/test.php: Make GEOSPolygonize a free function rather than a method on GEOSGeometry. This is to allow extending it to accept differnet kind of args, like arrays of GEOSGeometry for - example.. git-svn-id: http://svn.osgeo.org/geos/trunk@3034 + example.. git-svn-id: http://svn.osgeo.org/geos/trunk@3034 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/TODO: Add serialize/unserialize TODO item git-svn-id: http://svn.osgeo.org/geos/trunk@3033 + * php/TODO: Add serialize/unserialize TODO item git-svn-id: + http://svn.osgeo.org/geos/trunk@3033 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli - * php/TODO, php/geos.c: Geometry.__toString for easier debuggin git-svn-id: http://svn.osgeo.org/geos/trunk@3032 + * php/TODO, php/geos.c: Geometry.__toString for easier debuggin + git-svn-id: http://svn.osgeo.org/geos/trunk@3032 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-20 Sandro Santilli * php/TODO, php/geos.c, php/test/test.php: Polygonize (testing need - further review for a possible bug in core lib) git-svn-id: http://svn.osgeo.org/geos/trunk@3031 + further review for a possible bug in core lib) git-svn-id: + http://svn.osgeo.org/geos/trunk@3031 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * php/test/test.php: Use the "T" char for IM9 pattern sometime (for - fun and proof) git-svn-id: http://svn.osgeo.org/geos/trunk@3030 + fun and proof) git-svn-id: http://svn.osgeo.org/geos/trunk@3030 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * php/geos.c, php/test/test.php: relate, relatePattern git-svn-id: http://svn.osgeo.org/geos/trunk@3029 + * php/geos.c, php/test/test.php: relate, relatePattern git-svn-id: + http://svn.osgeo.org/geos/trunk@3029 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * php/geos.c, php/test/test.php: Geometry->{pointOnSurface,centroid} git-svn-id: http://svn.osgeo.org/geos/trunk@3028 + * php/geos.c, php/test/test.php: Geometry->{pointOnSurface,centroid} + git-svn-id: http://svn.osgeo.org/geos/trunk@3028 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * php/geos.c, php/test/test.php: More Geometry methods: envelope, intersection, convexHull, difference, symDifference, boundary, union - (including cascaded) git-svn-id: http://svn.osgeo.org/geos/trunk@3027 + (including cascaded) git-svn-id: + http://svn.osgeo.org/geos/trunk@3027 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * php/geos.c, php/test/test.php: Export buffer costants and method git-svn-id: http://svn.osgeo.org/geos/trunk@3026 + * php/geos.c, php/test/test.php: Export buffer costants and method + git-svn-id: http://svn.osgeo.org/geos/trunk@3026 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * php/test/test.php: Test typed empty geoms too for IO git-svn-id: http://svn.osgeo.org/geos/trunk@3025 + * php/test/test.php: Test typed empty geoms too for IO git-svn-id: + http://svn.osgeo.org/geos/trunk@3025 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * php/geos.c, php/test/test.php: Add second optional argument to - Geometry->project and Geometry->interpolate to request normalization git-svn-id: http://svn.osgeo.org/geos/trunk@3024 + Geometry->project and Geometry->interpolate to request normalization + git-svn-id: http://svn.osgeo.org/geos/trunk@3024 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * capi/geos_c.h.in: Document GEOSInterpolate git-svn-id: http://svn.osgeo.org/geos/trunk@3023 + * capi/geos_c.h.in: Document GEOSInterpolate git-svn-id: + http://svn.osgeo.org/geos/trunk@3023 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * php/geos.c, php/test/test.php: Add GEOSGeometry->interpolate() git-svn-id: http://svn.osgeo.org/geos/trunk@3022 + * php/geos.c, php/test/test.php: Add GEOSGeometry->interpolate() + git-svn-id: http://svn.osgeo.org/geos/trunk@3022 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * capi/geos_ts_c.cpp: Handle exceptions in GEOSInterpolate git-svn-id: http://svn.osgeo.org/geos/trunk@3021 + * capi/geos_ts_c.cpp: Handle exceptions in GEOSInterpolate + git-svn-id: http://svn.osgeo.org/geos/trunk@3021 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * php/test/Makefile.am: Better automake integration of unit test git-svn-id: http://svn.osgeo.org/geos/trunk@3020 + * php/test/Makefile.am: Better automake integration of unit test + git-svn-id: http://svn.osgeo.org/geos/trunk@3020 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * src/linearref/LinearLocation.cpp: Handle illegal argument to - LinearLocation::getCoordinate git-svn-id: http://svn.osgeo.org/geos/trunk@3019 + LinearLocation::getCoordinate git-svn-id: + http://svn.osgeo.org/geos/trunk@3019 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * capi/geos_c.h.in: document GEOSProject git-svn-id: http://svn.osgeo.org/geos/trunk@3018 + * capi/geos_c.h.in: document GEOSProject git-svn-id: + http://svn.osgeo.org/geos/trunk@3018 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * php/TODO, php/geos.c, php/test/Makefile.am, php/test/test.php: Complete implementation of WKTWriter interfaces, add phpunit-based - testing, add .project interface to Geometry git-svn-id: http://svn.osgeo.org/geos/trunk@3017 + testing, add .project interface to Geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@3017 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli - * configure.in: Check for PHP and PHPUNIT (for testing php bindings) git-svn-id: http://svn.osgeo.org/geos/trunk@3016 + * configure.in: Check for PHP and PHPUNIT (for testing php bindings) + git-svn-id: http://svn.osgeo.org/geos/trunk@3016 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * capi/geos_ts_c.cpp: Handle exceptions from - LenghtIndexedLine::project git-svn-id: http://svn.osgeo.org/geos/trunk@3015 + LenghtIndexedLine::project git-svn-id: + http://svn.osgeo.org/geos/trunk@3015 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli @@ -9177,35 +13313,42 @@ * src/linearref/LinearIterator.cpp: Throw an exception on first non-linestring component, rather than segfaulting la ter... (might - be better to refuse non-lineal even earlier, but this way we *migh * be supporting collections with only linestrings) git-svn-id: http://svn.osgeo.org/geos/trunk@3013 + be better to refuse non-lineal even earlier, but this way we *migh * + be supporting collections with only linestrings) git-svn-id: + http://svn.osgeo.org/geos/trunk@3013 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-19 Sandro Santilli * include/geos/linearref/LengthIndexOfPoint.h, - include/geos/linearref/LinearIterator.h: Dox cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@3012 + include/geos/linearref/LinearIterator.h: Dox cleanup git-svn-id: + http://svn.osgeo.org/geos/trunk@3012 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli - * php/geos.c, php/test/test.php: WKTWriter::setTrim git-svn-id: http://svn.osgeo.org/geos/trunk@3011 + * php/geos.c, php/test/test.php: WKTWriter::setTrim git-svn-id: + http://svn.osgeo.org/geos/trunk@3011 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli * php/Makefile.am: Ubuntu 8.10 version of gcc needs -std=gnu99 to - digest Zend headers :( git-svn-id: http://svn.osgeo.org/geos/trunk@3010 + digest Zend headers :( git-svn-id: + http://svn.osgeo.org/geos/trunk@3010 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli * Makefile.am, doc/Makefile.am: Add 'doxygen' rule (and 'apidoc' - alias) to top-level Makefile.am git-svn-id: http://svn.osgeo.org/geos/trunk@3009 + alias) to top-level Makefile.am git-svn-id: + http://svn.osgeo.org/geos/trunk@3009 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli - * php/TODO: tip for test git-svn-id: http://svn.osgeo.org/geos/trunk@3008 + * php/TODO: tip for test git-svn-id: + http://svn.osgeo.org/geos/trunk@3008 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli @@ -9213,53 +13356,59 @@ * Makefile.am, configure.in, php/Makefile.am, php/README, php/TODO, php/geos.c, php/php_geos.h, php/test/Makefile.am, php/test/crashme.php, php/test/test.php: Initial go at PHP5 - bindings. Can only read and write WKT so far. git-svn-id: http://svn.osgeo.org/geos/trunk@3007 + bindings. Can only read and write WKT so far. git-svn-id: + http://svn.osgeo.org/geos/trunk@3007 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli - * configure.in: Do not set user FLAGS, se project flags instead. - For the whole story, see: + * configure.in: Do not set user FLAGS, se project flags instead. For + the whole story, see: - http://www.gnu.org/software/hello/manual/automake/Flag-Variables-Ordering.htmlgit-svn-id: http://svn.osgeo.org/geos/trunk@3006 - 5242fede-7e19-0410-aef8-94bd7d2200fb + http://www.gnu.org/software/hello/manual/automake/Flag-Variables-Ordering.html git-svn-id: http://svn.osgeo.org/geos/trunk@3006 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli - * doc/Makefile.am: Fix automake override git-svn-id: http://svn.osgeo.org/geos/trunk@3005 + * doc/Makefile.am: Fix automake override git-svn-id: + http://svn.osgeo.org/geos/trunk@3005 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-18 Sandro Santilli * autogen.sh: Add -Woverride option to automake invocation, to catch - Makefile.am errors (there's one) git-svn-id: http://svn.osgeo.org/geos/trunk@3004 + Makefile.am errors (there's one) git-svn-id: + http://svn.osgeo.org/geos/trunk@3004 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-16 Sandro Santilli - * swig/geos.i.in: Drop carriage returns git-svn-id: http://svn.osgeo.org/geos/trunk@3003 + * swig/geos.i.in: Drop carriage returns git-svn-id: + http://svn.osgeo.org/geos/trunk@3003 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-16 Sandro Santilli - * swig/Makefile.am: OOps, tabs instead of spaces confuse automake git-svn-id: http://svn.osgeo.org/geos/trunk@3002 + * swig/Makefile.am: OOps, tabs instead of spaces confuse automake + git-svn-id: http://svn.osgeo.org/geos/trunk@3002 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-16 Sandro Santilli - * swig/Makefile.am: Always distribute swig bindings, closes bug #352 git-svn-id: http://svn.osgeo.org/geos/trunk@3001 + * swig/Makefile.am: Always distribute swig bindings, closes bug #352 + git-svn-id: http://svn.osgeo.org/geos/trunk@3001 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-16 Sandro Santilli * macros/ac_pkg_swig.m4: Fix swig macro so it doesn't think version - 2.0.0 is < 1.3.37 git-svn-id: http://svn.osgeo.org/geos/trunk@3000 + 2.0.0 is < 1.3.37 git-svn-id: http://svn.osgeo.org/geos/trunk@3000 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-06-01 Frank Warmerdam * src/io/WKTReader.cpp, tests/unit/io/WKTReaderTest.cpp: make - WKTReader keywords case insensitive git-svn-id: http://svn.osgeo.org/geos/trunk@2999 + WKTReader keywords case insensitive git-svn-id: + http://svn.osgeo.org/geos/trunk@2999 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-31 Frank Warmerdam @@ -9270,25 +13419,27 @@ src/geom/CoordinateArraySequence.cpp, src/geom/GeometryFactory.cpp, src/io/WKTWriter.cpp, tests/unit/geom/CoordinateArraySequenceTest.cpp: Attempt to make - geometry dimension perform more smoothly. Modified + geometry dimension perform more smoothly. Modified CoordinateArraySequence to default to unknown dimension (0), which is determined at the point getDimension() is called by examination of the first coordinate Z (ISNAN test). The WKTWriter has also been altered to write 0.0 instead of nan, and to avoid writing "Z" for - EMPTY geometries.(#348) git-svn-id: http://svn.osgeo.org/geos/trunk@2998 + EMPTY geometries.(#348) git-svn-id: + http://svn.osgeo.org/geos/trunk@2998 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-31 Frank Warmerdam * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Addition of getCoordinateDimension() on GEOSGeom (#311) Addition of - setOutputDimension, setOld3D on WKTWriter (#292) git-svn-id: http://svn.osgeo.org/geos/trunk@2997 + setOutputDimension, setOld3D on WKTWriter (#292) git-svn-id: + http://svn.osgeo.org/geos/trunk@2997 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-28 Frank Warmerdam * tests/unit/io/WKBWriterTest.cpp: added missing test that should - have been in r2995 git-svn-id: http://svn.osgeo.org/geos/trunk@2996 + have been in r2995 git-svn-id: http://svn.osgeo.org/geos/trunk@2996 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-28 Frank Warmerdam @@ -9304,13 +13455,15 @@ tests/unit/io/WKTWriterTest.cpp: Implement getCoordinateDimension() for geometries (#331) WKTWriter now has setOutputDimension() method, and writes 3D geometries (#292) WKBWriter has fixes for writing 2D - geometries from 3D geometry (#346) Minimal unit tests for the above. git-svn-id: http://svn.osgeo.org/geos/trunk@2995 + geometries from 3D geometry (#346) Minimal unit tests for the above. + git-svn-id: http://svn.osgeo.org/geos/trunk@2995 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-28 Frank Warmerdam * src/io/WKTReader.cpp, tests/unit/io/WKTReaderTest.cpp: add support - for reading SF1.2 Z/M/ZM geometries (#347) git-svn-id: http://svn.osgeo.org/geos/trunk@2994 + for reading SF1.2 Z/M/ZM geometries (#347) git-svn-id: + http://svn.osgeo.org/geos/trunk@2994 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-19 Frank Warmerdam @@ -9319,7 +13472,8 @@ include/geos/io/WKTWriter.h, src/io/WKTWriter.cpp, tests/unit/Makefile.am, tests/unit/io/WKTReaderTest.cpp, tests/unit/io/WKTWriterTest.cpp: added setPrecision, setTrim support - on WKTWriter and provided tests (#341) git-svn-id: http://svn.osgeo.org/geos/trunk@2993 + on WKTWriter and provided tests (#341) git-svn-id: + http://svn.osgeo.org/geos/trunk@2993 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-18 Frank Warmerdam @@ -9327,13 +13481,14 @@ * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSLineString_PointTest.cpp: expose several new - accessor functions on geometries (#345) git-svn-id: http://svn.osgeo.org/geos/trunk@2992 + accessor functions on geometries (#345) git-svn-id: + http://svn.osgeo.org/geos/trunk@2992 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-18 Frank Warmerdam * tests/unit/noding/SegmentNodeTest.cpp: disamiguate create args - (#345) git-svn-id: http://svn.osgeo.org/geos/trunk@2991 + (#345) git-svn-id: http://svn.osgeo.org/geos/trunk@2991 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-18 Frank Warmerdam @@ -9345,12 +13500,14 @@ src/geom/GeometryFactory.cpp, src/io/WKTReader.cpp, tests/unit/noding/BasicSegmentStringTest.cpp, tests/unit/noding/NodedSegmentStringTest.cpp: preserve dimension as - part of CoordinateArraySequence and while reading WKT (#345) git-svn-id: http://svn.osgeo.org/geos/trunk@2990 + part of CoordinateArraySequence and while reading WKT (#345) + git-svn-id: http://svn.osgeo.org/geos/trunk@2990 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-15 Sandro Santilli - * src/operation/buffer/OffsetCurveBuilder.cpp: Minor tweaks git-svn-id: http://svn.osgeo.org/geos/trunk@2989 + * src/operation/buffer/OffsetCurveBuilder.cpp: Minor tweaks + git-svn-id: http://svn.osgeo.org/geos/trunk@2989 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-15 Sandro Santilli @@ -9362,26 +13519,29 @@ src/operation/buffer/OffsetCurveBuilder.cpp, tests/xmltester/tests/bug334.xml: Move OffsetCurveVertexList.h to headers dir, add a .reset() method to reduce memory allocations, use - the new interface. git-svn-id: http://svn.osgeo.org/geos/trunk@2988 + the new interface. git-svn-id: + http://svn.osgeo.org/geos/trunk@2988 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-15 Sandro Santilli * include/geos/geom/CoordinateArraySequence.h, src/geom/CoordinateArraySequence.cpp: Add clear() method to - CoordinateArraySequence, inline empty() git-svn-id: http://svn.osgeo.org/geos/trunk@2987 + CoordinateArraySequence, inline empty() git-svn-id: + http://svn.osgeo.org/geos/trunk@2987 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-04 Sandro Santilli * README: Add 'ldconfig' step, seems to be a recurring issue with - builders... git-svn-id: http://svn.osgeo.org/geos/trunk@2986 + builders... git-svn-id: http://svn.osgeo.org/geos/trunk@2986 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-05-02 Sandro Santilli * capi/geos_c.h.in: Add a note about 2d nature of - extractUniquePoints git-svn-id: http://svn.osgeo.org/geos/trunk@2985 + extractUniquePoints git-svn-id: + http://svn.osgeo.org/geos/trunk@2985 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-04-21 Mateusz Loskot @@ -9393,37 +13553,43 @@ 2010-04-17 Sandro Santilli * HOWTO_RELEASE, capi/geos_c.h.in: Also set version for the systems - not using autoconf, and update paths in HOWTO_RELEASE file git-svn-id: http://svn.osgeo.org/geos/trunk@2977 + not using autoconf, and update paths in HOWTO_RELEASE file + git-svn-id: http://svn.osgeo.org/geos/trunk@2977 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-04-17 Sandro Santilli * configure.in: As we're still maintaining 3.2 branch, and since new CAPI interface were added, bump CAPI lib interface version up. We'll - be 1.7.0 there from now on. git-svn-id: http://svn.osgeo.org/geos/trunk@2976 + be 1.7.0 there from now on. git-svn-id: + http://svn.osgeo.org/geos/trunk@2976 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-04-17 Sandro Santilli * NEWS, capi/geos_c.cpp: Have initGEOS(..) return a singleton, as - used to be up to 3.0.0 git-svn-id: http://svn.osgeo.org/geos/trunk@2974 + used to be up to 3.0.0 git-svn-id: + http://svn.osgeo.org/geos/trunk@2974 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-04-07 Mateusz Loskot * nmake.opt: Added ENABLE_INLINE=YES|NO option to nmake.opt for Visual C++ builds using NMake. The ENABLE_INLINE=YES does not link - for me - to be fixed git-svn-id: http://svn.osgeo.org/geos/trunk@2968 + for me - to be fixed git-svn-id: + http://svn.osgeo.org/geos/trunk@2968 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-04-07 Mateusz Loskot - * src/dirlist.mk: Updated src/dirlist.mk (Ticket 337) git-svn-id: http://svn.osgeo.org/geos/trunk@2967 + * src/dirlist.mk: Updated src/dirlist.mk (Ticket 337) git-svn-id: + http://svn.osgeo.org/geos/trunk@2967 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-29 Mateusz Loskot - * nmake.opt: Added NMake 10.x version to be recognized by nmake.opt git-svn-id: http://svn.osgeo.org/geos/trunk@2965 + * nmake.opt: Added NMake 10.x version to be recognized by nmake.opt + git-svn-id: http://svn.osgeo.org/geos/trunk@2965 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-29 Mateusz Loskot @@ -9458,12 +13624,25 @@ include/geos/planargraph/PlanarGraph.h, include/geos/simplify/DouglasPeuckerLineSimplifier.h, include/geos/simplify/TaggedLineString.h: Qualify size_t with std - namespace in headers. git-svn-id: http://svn.osgeo.org/geos/trunk@2961 + namespace in headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@2961 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-03-29 Mateusz Loskot + + * : Updated svn:ignore property git-svn-id: + http://svn.osgeo.org/geos/trunk@2960 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-29 Mateusz Loskot - * : Updated svn:ignore property git-svn-id: http://svn.osgeo.org/geos/trunk@2960 + * build/msvc10/geos_lib/geos_lib.vcxproj, + build/msvc10/geos_lib/geos_lib.vcxproj.filters, + build/msvc90/geos_c_dll/geos_c_dll.vcproj, + build/msvc90/geos_unit/geos_unit.vcproj, + build/msvc90/geos_xmltester/geos_xmltester.vcproj: Updated projects + for Visual Studio 2008 and 2010 git-svn-id: + http://svn.osgeo.org/geos/trunk@2959 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-29 Mateusz Loskot @@ -9494,7 +13673,8 @@ include/geos/util/GeometricShapeFactory.h, include/geos/util/UniqueCoordinateArrayFilter.h: Added pragma to disable Visual C++ warning C4251 - safe to ignore - (http://support.microsoft.com/kb/813810/) git-svn-id: http://svn.osgeo.org/geos/trunk@2958 + (http://support.microsoft.com/kb/813810/) git-svn-id: + http://svn.osgeo.org/geos/trunk@2958 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-29 Mateusz Loskot @@ -9506,77 +13686,85 @@ 2010-03-26 Mateusz Loskot * include/geos/platform.h.vc: platform.h.vc: disable min/max macros - substitution git-svn-id: http://svn.osgeo.org/geos/trunk@2955 + substitution git-svn-id: http://svn.osgeo.org/geos/trunk@2955 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-26 Mateusz Loskot * include/geos/operation/union/CascadedPolygonUnion.h: Added GEOS_DLL with Microsoft-specific __declspec attribute missing from - CascadedPolygonUnion class (ported from branches/3.2) git-svn-id: http://svn.osgeo.org/geos/trunk@2954 + CascadedPolygonUnion class (ported from branches/3.2) git-svn-id: + http://svn.osgeo.org/geos/trunk@2954 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-26 Mateusz Loskot * src/geom/GeometryList.cpp: geom\GeoemtryList.cpp: missing implementation of GeometryList::size() function (ported from - branches/3.2) git-svn-id: http://svn.osgeo.org/geos/trunk@2952 + branches/3.2) git-svn-id: http://svn.osgeo.org/geos/trunk@2952 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-26 Mateusz Loskot * src/Makefile.vc: src\Makefile.vc: added missing - geom\GeometryList.cpp (ported from branches/3.2) git-svn-id: http://svn.osgeo.org/geos/trunk@2950 + geom\GeometryList.cpp (ported from branches/3.2) git-svn-id: + http://svn.osgeo.org/geos/trunk@2950 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-26 Mateusz Loskot * nmake.opt: nmake.opt: Added missing GEOS_DLL_EXPORT to CPPFLAGS - (ported from branches/3.2) git-svn-id: http://svn.osgeo.org/geos/trunk@2948 + (ported from branches/3.2) git-svn-id: + http://svn.osgeo.org/geos/trunk@2948 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-19 Sandro Santilli * NEWS, capi/geos_ts_c.cpp: Improve formatting for - GEOSisValidReason_r (#329) git-svn-id: http://svn.osgeo.org/geos/trunk@2946 + GEOSisValidReason_r (#329) git-svn-id: + http://svn.osgeo.org/geos/trunk@2946 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-18 Sandro Santilli * include/geos/operation/valid/IsValidOp.h, src/operation/valid/IsValidOp.cpp: Forw-port a better fix for #333 - (false positive valid geoms) git-svn-id: http://svn.osgeo.org/geos/trunk@2944 + (false positive valid geoms) git-svn-id: + http://svn.osgeo.org/geos/trunk@2944 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-16 Sandro Santilli - * capi/geos_ts_c.cpp: Fix ST_IsValidDetail (broke by last commit) git-svn-id: http://svn.osgeo.org/geos/trunk@2941 + * capi/geos_ts_c.cpp: Fix ST_IsValidDetail (broke by last commit) + git-svn-id: http://svn.osgeo.org/geos/trunk@2941 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-16 Sandro Santilli * capi/geos_ts_c.cpp: Now that IsValidOp doesn't cache the 'checked' status it is better to trigger a single check rather than two (also - fix leaks) git-svn-id: http://svn.osgeo.org/geos/trunk@2940 + fix leaks) git-svn-id: http://svn.osgeo.org/geos/trunk@2940 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-14 Sandro Santilli - * include/geos/util/Makefile.am: Install Machine.h git-svn-id: http://svn.osgeo.org/geos/trunk@2939 + * include/geos/util/Makefile.am: Install Machine.h git-svn-id: + http://svn.osgeo.org/geos/trunk@2939 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-13 Sandro Santilli * capi/geos_ts_c.cpp, tests/unit/capi/GEOSOrientationIndex.cpp: Fix GEOSOrientationIndex implementation and testcase. Closes ticket - #335. git-svn-id: http://svn.osgeo.org/geos/trunk@2938 + #335. git-svn-id: http://svn.osgeo.org/geos/trunk@2938 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-12 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSOrientationIndex.cpp: - Expose GEOSOrientationIndex to C-API git-svn-id: http://svn.osgeo.org/geos/trunk@2937 + Expose GEOSOrientationIndex to C-API git-svn-id: + http://svn.osgeo.org/geos/trunk@2937 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-10 Sandro Santilli @@ -9584,24 +13772,28 @@ * include/geos/operation/valid/IsValidOp.h, src/operation/valid/IsValidOp.cpp, tests/xmltester/tests/general/TestValid.xml: Sync TestValid xml from - JTS, review IsValidOp to be in sync with current JTS trunk. git-svn-id: http://svn.osgeo.org/geos/trunk@2936 + JTS, review IsValidOp to be in sync with current JTS trunk. + git-svn-id: http://svn.osgeo.org/geos/trunk@2936 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-07 Sandro Santilli - * README: Apply slightly modified patch by mwtoews (#344) git-svn-id: http://svn.osgeo.org/geos/trunk@2935 + * README: Apply slightly modified patch by mwtoews (#344) + git-svn-id: http://svn.osgeo.org/geos/trunk@2935 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-06 Mateusz Loskot * CMakeLists.txt, cmake/cmake_uninstall.cmake.in: Added cmake/cmake_uninstall.cmake.in script and configured make uninstall - target for CMake configuration (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2934 + target for CMake configuration (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2934 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-03 Sandro Santilli - * capi/geos_c.h.in: Improve documentation for GEOSPOlygonize_full git-svn-id: http://svn.osgeo.org/geos/trunk@2933 + * capi/geos_c.h.in: Improve documentation for GEOSPOlygonize_full + git-svn-id: http://svn.osgeo.org/geos/trunk@2933 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-03-02 Sandro Santilli @@ -9609,62 +13801,71 @@ * NEWS, include/geos/operation/valid/IsValidOp.h, src/operation/valid/IsValidOp.cpp, tests/xmltester/tests/general/TestValid.xml: Fix false positive - return from IsValidOp (#333) git-svn-id: http://svn.osgeo.org/geos/trunk@2932 + return from IsValidOp (#333) git-svn-id: + http://svn.osgeo.org/geos/trunk@2932 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-28 Sandro Santilli - * src/geom/LineString.cpp: Minor tweak git-svn-id: http://svn.osgeo.org/geos/trunk@2931 + * src/geom/LineString.cpp: Minor tweak git-svn-id: + http://svn.osgeo.org/geos/trunk@2931 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-28 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in: Provide non-rehentrant - version of empty geometries constructors git-svn-id: http://svn.osgeo.org/geos/trunk@2930 + version of empty geometries constructors git-svn-id: + http://svn.osgeo.org/geos/trunk@2930 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-28 Sandro Santilli - * NEWS: extractUniquePoints comes in non-reentrant version too git-svn-id: http://svn.osgeo.org/geos/trunk@2929 + * NEWS: extractUniquePoints comes in non-reentrant version too + git-svn-id: http://svn.osgeo.org/geos/trunk@2929 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-25 Sandro Santilli - * NEWS: Update with GEOSPolygonize_full item git-svn-id: http://svn.osgeo.org/geos/trunk@2928 + * NEWS: Update with GEOSPolygonize_full item git-svn-id: + http://svn.osgeo.org/geos/trunk@2928 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-23 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: - GEOSPolygonize_full [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@2927 + GEOSPolygonize_full [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@2927 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-22 Sandro Santilli * include/geos/operation/polygonize/Polygonizer.h, src/operation/polygonize/Polygonizer.cpp: LineStringAdder - heap-allocation removal git-svn-id: http://svn.osgeo.org/geos/trunk@2926 + heap-allocation removal git-svn-id: + http://svn.osgeo.org/geos/trunk@2926 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-22 Sandro Santilli * NEWS, include/geos/operation/polygonize/Polygonizer.h, src/operation/polygonize/Polygonizer.cpp: Drop heap allocation of - invalidRingLines vector git-svn-id: http://svn.osgeo.org/geos/trunk@2925 + invalidRingLines vector git-svn-id: + http://svn.osgeo.org/geos/trunk@2925 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-22 Sandro Santilli * include/geos/operation/polygonize/Polygonizer.h, src/operation/polygonize/Polygonizer.cpp: More heap allocations bite - the dust... git-svn-id: http://svn.osgeo.org/geos/trunk@2924 + the dust... git-svn-id: http://svn.osgeo.org/geos/trunk@2924 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-22 Sandro Santilli * NEWS, include/geos/operation/polygonize/Polygonizer.h, src/operation/polygonize/Polygonizer.cpp: Drop HEAP allocation for - dangles vector too, and document all these API changes git-svn-id: http://svn.osgeo.org/geos/trunk@2923 + dangles vector too, and document all these API changes git-svn-id: + http://svn.osgeo.org/geos/trunk@2923 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-22 Sandro Santilli @@ -9673,32 +13874,37 @@ include/geos/operation/polygonize/PolygonizeEdge.h, include/geos/operation/polygonize/Polygonizer.h, src/operation/polygonize/Polygonizer.cpp: Avoid heap allocation of a - vector for cut edges, bits of additional documentation git-svn-id: http://svn.osgeo.org/geos/trunk@2922 + vector for cut edges, bits of additional documentation git-svn-id: + http://svn.osgeo.org/geos/trunk@2922 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-22 Sandro Santilli * include/geos/operation/polygonize/Polygonizer.h: Try to document - current behaviour (very bad behaviour indeed...) git-svn-id: http://svn.osgeo.org/geos/trunk@2921 + current behaviour (very bad behaviour indeed...) git-svn-id: + http://svn.osgeo.org/geos/trunk@2921 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-21 Mateusz Loskot * CMakeLists.txt: Another patch from Gavin Heavyside to enable GEOS - as a dependency of a project with CMake git-svn-id: http://svn.osgeo.org/geos/trunk@2920 + as a dependency of a project with CMake git-svn-id: + http://svn.osgeo.org/geos/trunk@2920 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-21 Sandro Santilli * NEWS, capi/geos_c.h.in, capi/geos_ts_c.cpp: Allow GEOSGetGeometryN - calls against single geometries git-svn-id: http://svn.osgeo.org/geos/trunk@2919 + calls against single geometries git-svn-id: + http://svn.osgeo.org/geos/trunk@2919 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-21 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in: Expose the non-reentrant version too (I know, I was against, but it's too much work on the - postgis side for that right now) git-svn-id: http://svn.osgeo.org/geos/trunk@2918 + postgis side for that right now) git-svn-id: + http://svn.osgeo.org/geos/trunk@2918 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-21 Sandro Santilli @@ -9706,49 +13912,55 @@ * NEWS, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp: - GEOSGeom_extractUniquePoints [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@2917 + GEOSGeom_extractUniquePoints [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@2917 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-21 Mateusz Loskot * CMakeLists.txt: Patch from Gavin Heavyside that enables CMake to - build GEOS as a dependency of user-defined project git-svn-id: http://svn.osgeo.org/geos/trunk@2916 + build GEOS as a dependency of user-defined project git-svn-id: + http://svn.osgeo.org/geos/trunk@2916 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-17 Sandro Santilli * src/geom/CoordinateArraySequence.cpp: Throw an IllegalArgumentException when setOrdinate is called with unknown - ordinate index git-svn-id: http://svn.osgeo.org/geos/trunk@2915 + ordinate index git-svn-id: http://svn.osgeo.org/geos/trunk@2915 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-14 Sandro Santilli - * NEWS: Add GEOSPolygonizer_getCutEdges NEWS item where it belongs git-svn-id: http://svn.osgeo.org/geos/trunk@2913 + * NEWS: Add GEOSPolygonizer_getCutEdges NEWS item where it belongs + git-svn-id: http://svn.osgeo.org/geos/trunk@2913 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-12 Mateusz Loskot * capi/CMakeLists.txt: Fixed but in CMake configuration which - installed geos_c.h in incorrect location (#330) git-svn-id: http://svn.osgeo.org/geos/trunk@2912 + installed geos_c.h in incorrect location (#330) git-svn-id: + http://svn.osgeo.org/geos/trunk@2912 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-11 Sandro Santilli - * NEWS: Update git-svn-id: http://svn.osgeo.org/geos/trunk@2911 + * NEWS: Update git-svn-id: http://svn.osgeo.org/geos/trunk@2911 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-11 Sandro Santilli * capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/capi/GEOSGeom_create.cpp: Complete set of typed-empty - constructors and tests for them [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@2910 + constructors and tests for them [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@2910 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-11 Sandro Santilli * capi/geos_c.h.in, capi/geos_ts_c.cpp: Go for consistency with - reentrant interfaces [RT-SIGTA] git-svn-id: http://svn.osgeo.org/geos/trunk@2909 + reentrant interfaces [RT-SIGTA] git-svn-id: + http://svn.osgeo.org/geos/trunk@2909 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-11 Sandro Santilli @@ -9756,84 +13968,101 @@ * NEWS, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/Makefile.am, tests/unit/capi/GEOSGeom_create.cpp: GEOSContext_setNoticeHandler, GEOSContext_setErrorHandler, - GEOSGeom_createEmptyPolygon_r (and test) git-svn-id: http://svn.osgeo.org/geos/trunk@2908 + GEOSGeom_createEmptyPolygon_r (and test) git-svn-id: + http://svn.osgeo.org/geos/trunk@2908 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-09 Sandro Santilli - * doc/Doxyfile.in: Fix to match new layout git-svn-id: http://svn.osgeo.org/geos/trunk@2907 + * doc/Doxyfile.in: Fix to match new layout git-svn-id: + http://svn.osgeo.org/geos/trunk@2907 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-06 Mateusz Loskot * tests/xmltester/CMakeLists.txt: Ported list of SAVE_XMLTESTS to CMake configuration of XMLTester (#317) All tests pass on Ubuntu - 9.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2906 + 9.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2906 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-05 Mateusz Loskot * CMakeLists.txt: Fixed CMake version comparison to disable - platform.h (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2905 + platform.h (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2905 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-05 Sandro Santilli - * capi/geos_c.h.in: Document ownership of created types git-svn-id: http://svn.osgeo.org/geos/trunk@2904 + * capi/geos_c.h.in: Document ownership of created types + git-svn-id: http://svn.osgeo.org/geos/trunk@2904 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-05 Sandro Santilli * NEWS, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: New CAPI interface: GEOSisValidDetail ( tell state, reason & location - apart ) git-svn-id: http://svn.osgeo.org/geos/trunk@2903 + apart ) git-svn-id: http://svn.osgeo.org/geos/trunk@2903 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-04 Mateusz Loskot * CMakeLists.txt, tools/CMakeLists.txt: Fixed missing substitution - of @libdir@ in geos-config generated by CMake #(317) git-svn-id: http://svn.osgeo.org/geos/trunk@2902 + of @libdir@ in geos-config generated by CMake #(317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2902 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-02-02 Mateusz Loskot * CMakeLists.txt: Fixed problem with use of new command with file() - macro for older CMake versions (#327) git-svn-id: http://svn.osgeo.org/geos/trunk@2901 + macro for older CMake versions (#327) git-svn-id: + http://svn.osgeo.org/geos/trunk@2901 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-31 Mateusz Loskot * tests/unit/CMakeLists.txt, tests/xmltester/CMakeLists.txt: Added - XMLTester to CTest configuration - work in progress (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2900 + XMLTester to CTest configuration - work in progress (#317) + git-svn-id: http://svn.osgeo.org/geos/trunk@2900 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-31 Mateusz Loskot * CMakeLists.txt: Added GEOS_ENABLE_FLOATSTORE option to CMake to - control GCC flag -ffloat-store (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2899 + control GCC flag -ffloat-store (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2899 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-01-31 Mateusz Loskot + + * : Added platform.h.disabled to svn:ignore property git-svn-id: + http://svn.osgeo.org/geos/trunk@2898 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-31 Mateusz Loskot - * : Added platform.h.disabled to svn:ignore property git-svn-id: http://svn.osgeo.org/geos/trunk@2898 + * CMakeLists.txt: A minor fix to order of enable_testing() and + add_subdirectories(tests) - it is important to include the former + macro first so the tests are caught in git-svn-id: + http://svn.osgeo.org/geos/trunk@2897 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-30 Mateusz Loskot * CMakeLists.txt: Updated configuration of GEOS_ENABLE_TESTS option - for CMake (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2896 + for CMake (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2896 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-30 Mateusz Loskot * CMakeLists.txt: Configured 'make check' target for CMake as alias - to 'make test' to mimic GNU Autotools manner of running tests (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2895 + to 'make test' to mimic GNU Autotools manner of running tests (#317) + git-svn-id: http://svn.osgeo.org/geos/trunk@2895 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-29 Paul Ramsey * include/geos/platform.h.in: Extend support of Apple ISNAN case to - newer? compilers git-svn-id: http://svn.osgeo.org/geos/trunk@2894 + newer? compilers git-svn-id: http://svn.osgeo.org/geos/trunk@2894 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-29 Mateusz Loskot @@ -9844,25 +14073,29 @@ directory and deactivate it renaming to platform.h.disable, before generating CMake-specific platform.h. Tested on Windows with Visual C++ but with -DGEOS_ENABLE_INLINE=OFF otherwise DLL linking fails - with many redefined symbols - to be checked. git-svn-id: http://svn.osgeo.org/geos/trunk@2893 + with many redefined symbols - to be checked. git-svn-id: + http://svn.osgeo.org/geos/trunk@2893 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-29 Mateusz Loskot * CMakeLists.txt, tests/unit/CMakeLists.txt: Configured 'make test' - target for CMake build (#317). Now only geos_unit is executed git-svn-id: http://svn.osgeo.org/geos/trunk@2892 + target for CMake build (#317). Now only geos_unit is executed + git-svn-id: http://svn.osgeo.org/geos/trunk@2892 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-28 Mateusz Loskot * src/planargraph/algorithm/ConnectedSubgraphFinder.cpp: Missing - includes of platform.h and git-svn-id: http://svn.osgeo.org/geos/trunk@2891 + includes of platform.h and git-svn-id: + http://svn.osgeo.org/geos/trunk@2891 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-27 Mateusz Loskot * tests/unit/linearref/LengthIndexedLineTest.cpp: Tidy up messy code - in tests/unit/linearref git-svn-id: http://svn.osgeo.org/geos/trunk@2890 + in tests/unit/linearref git-svn-id: + http://svn.osgeo.org/geos/trunk@2890 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-27 Mateusz Loskot @@ -9871,13 +14104,15 @@ Fixed CMake configuration for the problem about unavailable C99 features if -std=c99 is not specified for GCC 4.3.3 on Ubuntu 9.04. This is inconsistent behaviour with GCC 4.4.1 - (https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/512741). git-svn-id: http://svn.osgeo.org/geos/trunk@2889 + (https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/512741). + git-svn-id: http://svn.osgeo.org/geos/trunk@2889 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-23 Mateusz Loskot * src/CMakeLists.txt: GEOS C++ static library was missing from - installation targets (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2888 + installation targets (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2888 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-23 Mateusz Loskot @@ -9890,31 +14125,36 @@ 2010-01-23 Mateusz Loskot - * CMakeLists.txt: Small fix to latest commit (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2886 + * CMakeLists.txt: Small fix to latest commit (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2886 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-23 Mateusz Loskot * CMakeLists.txt: Disabled GEOS_ENABLE_ASSERT option for Visual - Studio builds - not supported, no sense (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2885 + Studio builds - not supported, no sense (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2885 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-23 Mateusz Loskot * CMakeLists.txt: Tweaked detection isfinite and isnan declared as - functions in C++ (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2884 + functions in C++ (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2884 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-22 Mateusz Loskot * cmake/modules/CheckPrototypeExists.cmake: Added - CheckPrototypeExists.cmake module - imported from KDE/kdelibs tree git-svn-id: http://svn.osgeo.org/geos/trunk@2883 + CheckPrototypeExists.cmake module - imported from KDE/kdelibs tree + git-svn-id: http://svn.osgeo.org/geos/trunk@2883 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-22 Mateusz Loskot * cmake/modules/COPYING-CMAKE-SCRIPTS: Added trunk/cmake directory - for custom CMake modules git-svn-id: http://svn.osgeo.org/geos/trunk@2882 + for custom CMake modules git-svn-id: + http://svn.osgeo.org/geos/trunk@2882 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-21 Mateusz Loskot @@ -9922,45 +14162,60 @@ * CMakeLists.txt: CMake configuration update (#317): * Set default CMAKE_BUILD_TYPE to Debug * Added GEOS_ENABLE_ASSERT and GEOS_ENABLE_INLINE options. * Renamed option ENABLE_MSVC_MP to - GEOS_MSVC_ENABLE_MP. git-svn-id: http://svn.osgeo.org/geos/trunk@2881 + GEOS_MSVC_ENABLE_MP. git-svn-id: + http://svn.osgeo.org/geos/trunk@2881 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-20 Mateusz Loskot * CMakeLists.txt: Fix for addd extra test for STL classes in std - namespace to CMake configuration (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2880 + namespace to CMake configuration (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2880 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-20 Mateusz Loskot * CMakeLists.txt: Addd extra test for STL classes in std namespace - to CMake configuration (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2879 + to CMake configuration (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2879 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-01-20 Mateusz Loskot + + * : Updated svn:keyword with Id for CMake files git-svn-id: + http://svn.osgeo.org/geos/trunk@2878 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-20 Mateusz Loskot - * : Updated svn:keyword with Id for CMake files git-svn-id: http://svn.osgeo.org/geos/trunk@2878 + * tools/CMakeLists.txt: Fixed bug with not setting proper + permissions to geos-config while installing with CMake build + configuration (#318). git-svn-id: + http://svn.osgeo.org/geos/trunk@2877 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-19 Mateusz Loskot * CMakeLists.txt: #317: compiler flags can not be handled using CMake list type, reverted last change that sneaked in with Visual - Studio related commit. git-svn-id: http://svn.osgeo.org/geos/trunk@2876 + Studio related commit. git-svn-id: + http://svn.osgeo.org/geos/trunk@2876 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-19 Mateusz Loskot * CMakeLists.txt: #317: Added CXX flags specific to Visual C++ compiler. Added ENABLE_MSVC_MP option to allow setting Visual C++ - /MP flag that enables multi-process compilation. git-svn-id: http://svn.osgeo.org/geos/trunk@2875 + /MP flag that enables multi-process compilation. git-svn-id: + http://svn.osgeo.org/geos/trunk@2875 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-18 Mateusz Loskot * capi/geos_ts_c.cpp: Load elements of std namespace to scope of geos_ts_c.cpp file, so C99 functions are loaded even if hidden in - std (non-standard extension in GCC). git-svn-id: http://svn.osgeo.org/geos/trunk@2874 + std (non-standard extension in GCC). git-svn-id: + http://svn.osgeo.org/geos/trunk@2874 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-18 Mateusz Loskot @@ -9976,17 +14231,40 @@ tests/unit/geom/TriangleTest.cpp, tests/unit/linearref/LengthIndexedLineTest.cpp, tests/unit/operation/valid/IsValidTest.cpp: Added missing headers - platform.h and where ISNAN or FINITE macros are expanded git-svn-id: http://svn.osgeo.org/geos/trunk@2873 + platform.h and where ISNAN or FINITE macros are expanded + git-svn-id: http://svn.osgeo.org/geos/trunk@2873 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-01-18 Mateusz Loskot + + * : Updated svn:ignore patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@2872 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-01-18 Mateusz Loskot + + * include/geos/platform.h.cmake: Cleaned redundant include for cmath + and math.h from platform.h.cmake (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2871 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-18 Mateusz Loskot - * : Updated svn:ignore patterns git-svn-id: http://svn.osgeo.org/geos/trunk@2872 + * : Updated svn:ignore patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@2870 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-18 Mateusz Loskot - * : Updated svn:ignore patterns git-svn-id: http://svn.osgeo.org/geos/trunk@2870 + * capi/CMakeLists.txt: Updated Windows elements of build + configuration for CMake system (#317): * Added missing symbol + GEOS_DLL_EXPORT to request generation of import library for GEOS C + API DLL * All targets configured for CMake build system have been + successfully built and tested using CMake. * CMake-based install + target successfully tested on Windows 7 ** Default prefix for 32-bit + build is "c:\Program Files (x86)\geos\" where bin, lib and include + directories are created. git-svn-id: + http://svn.osgeo.org/geos/trunk@2869 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-18 Mateusz Loskot @@ -9997,9 +14275,11 @@ src/operation/buffer/BufferOp.cpp, src/operation/overlay/snap/GeometrySnapper.cpp, src/operation/overlay/validate/OverlayResultValidator.cpp: * Successfully tested CMake configuration with Visual Studio 2010 - (#317). * Disable argument dependant lookup (Koenig) for min/max functions - to make sure GEOS compiles in the presence of the min/max macros. * Some platform headers define min() and max() macros which cause - some common C++ constructs to fail to compile. git-svn-id: http://svn.osgeo.org/geos/trunk@2868 + (#317). * Disable argument dependant lookup (Koenig) for min/max + functions to make sure GEOS compiles in the presence of the min/max + macros. * Some platform headers define min() and max() macros which + cause some common C++ constructs to fail to compile. git-svn-id: + http://svn.osgeo.org/geos/trunk@2868 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot @@ -10007,7 +14287,8 @@ * CMakeLists.txt, tools/CMakeLists.txt: Configured 'make install' for tools to install geos-config program on Unix platforms (#317). Fixed missing prefix nad exec_prefix variables substitution during - geos-config generation. git-svn-id: http://svn.osgeo.org/geos/trunk@2867 + geos-config generation. git-svn-id: + http://svn.osgeo.org/geos/trunk@2867 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot @@ -10016,14 +14297,15 @@ Configured 'make install' target for GEOS C shared library and headers (#317). Install platform.h and version.h from build directory where they are installed, not from source tree. Added GEOS - C API header location to include directories. git-svn-id: http://svn.osgeo.org/geos/trunk@2866 + C API header location to include directories. git-svn-id: + http://svn.osgeo.org/geos/trunk@2866 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot * CMakeLists.txt, include/CMakeLists.txt, src/CMakeLists.txt: Configured 'make install' target for GEOS C++ static library archive - and headers (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2865 + and headers (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2865 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot @@ -10031,13 +14313,15 @@ * build/bjam/Jamroot, build/bjam/README, build/bjam/geos/Jamfile, build/bjam/geos_c/Jamfile, build/bjam/geos_unit/Jamfile: Removed build/bjam directory with old and no longer maintained build - configuration based on Boost.Build git-svn-id: http://svn.osgeo.org/geos/trunk@2864 + configuration based on Boost.Build git-svn-id: + http://svn.osgeo.org/geos/trunk@2864 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot * tests/CMakeLists.txt, tests/xmltester/CMakeLists.txt: Added - simplewkttester and xmltester tests to CMake configuration (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2863 + simplewkttester and xmltester tests to CMake configuration (#317) + git-svn-id: http://svn.osgeo.org/geos/trunk@2863 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot @@ -10049,7 +14333,8 @@ CMake generates config headers in build tree. Added generation of geos-config script. Refined include directories settings. Added unit tests package to the configuration. Status: GEOS core + GEOS C - library + unit tests build and run successfully. git-svn-id: http://svn.osgeo.org/geos/trunk@2862 + library + unit tests build and run successfully. git-svn-id: + http://svn.osgeo.org/geos/trunk@2862 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-17 Mateusz Loskot @@ -10063,43 +14348,50 @@ 2010-01-17 Mateusz Loskot * CMakeLists.txt, include/geos/platform.h.cmake: Refined detection - of isnan and isfinite features (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2860 + of isnan and isfinite features (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2860 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * CMakeLists.txt, include/geos/platform.h.cmake: Added checks of - C/C++ headers and library features like 64-bit integer type (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2859 + C/C++ headers and library features like 64-bit integer type (#317) + git-svn-id: http://svn.osgeo.org/geos/trunk@2859 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * CMakeLists.txt: Added generation of build-specific platform.h file - from platform.h.cmake (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2858 + from platform.h.cmake (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2858 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * CMakeLists.txt, include/geos/version.h.cmake: Set version numbers - and generate version.h for CMake build (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2857 + and generate version.h for CMake build (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2857 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * include/geos/platform.h.cmake: Added platform.h.cmake file used by - build configuration for CMake build system (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2856 + build configuration for CMake build system (#317) git-svn-id: + http://svn.osgeo.org/geos/trunk@2856 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * include/geos/platform.h.vc: Removed definition of - INT64_CONST_IS_I64 - it is not checked or used anywhere git-svn-id: http://svn.osgeo.org/geos/trunk@2855 + INT64_CONST_IS_I64 - it is not checked or used anywhere git-svn-id: + http://svn.osgeo.org/geos/trunk@2855 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * include/geos/platform.h.in, include/geos/util/math.h: Unified - detection of math features to define FINITE and ISNAN macros git-svn-id: http://svn.osgeo.org/geos/trunk@2854 + detection of math features to define FINITE and ISNAN macros + git-svn-id: http://svn.osgeo.org/geos/trunk@2854 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot @@ -10109,18 +14401,32 @@ include/geos/platform.h.vc, include/geos/util/Machine.h: Moved getMachineByteOrder from include/geos/platform.h to include/geos/util/Machine.h. This function is universal for - non-Windows and Windows platforms git-svn-id: http://svn.osgeo.org/geos/trunk@2853 + non-Windows and Windows platforms git-svn-id: + http://svn.osgeo.org/geos/trunk@2853 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot * CMakeLists.txt, capi/CMakeLists.txt, src/CMakeLists.txt: Added - first straps of configuration for CMake build system (#317) git-svn-id: http://svn.osgeo.org/geos/trunk@2852 + first straps of configuration for CMake build system (#317) + git-svn-id: http://svn.osgeo.org/geos/trunk@2852 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2010-01-16 Mateusz Loskot + + * : Removed tests/geostest/.deps directory git-svn-id: + http://svn.osgeo.org/geos/trunk@2851 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-16 Mateusz Loskot - * : Removed tests/geostest/.deps directory git-svn-id: http://svn.osgeo.org/geos/trunk@2851 + * {src/examples => examples}/CPCLException.cpp, {src/examples => + examples}/CoordinateSequencesExample.cpp, {src/examples => + examples}/CustomCoordinateSequenceExample.cpp, {src/examples => + examples}/CustomCoordinateSequenceExample.h, {src/examples => + examples}/CustomPointCoordinateSequence.cpp, {src/examples => + examples}/Makefile.am: Moved src/examples out of src directory + (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2850 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-14 Mateusz Loskot @@ -10132,16 +14438,17 @@ build/msvc10/geos_unit/geos_unit.vcxproj, build/msvc10/geos_xmltester/geos_xmltester.vcxproj: Updated Visual Studio 2010 projects in build/msvc10 with new location of include - and src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2849 + and src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2849 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot * include/geos/noding/NodedSegmentString.h: * Successfully compiled with Visual C++ 8.0 after restructuring - source tree. ** NodedSegmentString class; ** Use explicit + source tree. ** NodedSegmentString class; ** Use explicit self-describing two-step casts to indicate what's really happening - - C-cast is evil and hides serious interface issues. ** Added missing - and qualify size_t with std namespace. git-svn-id: http://svn.osgeo.org/geos/trunk@2848 + C-cast is evil and hides serious interface issues. ** Added missing + and qualify size_t with std namespace. git-svn-id: + http://svn.osgeo.org/geos/trunk@2848 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot @@ -10153,7 +14460,7 @@ build/msvc80/geos_unit/geos_unit.vcproj, build/msvc80/geos_xmltester/geos_xmltester.vcproj: Updated Visual Studio 2005 projects in build/msvc80 with new location of include - and src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2847 + and src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2847 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot @@ -10165,14 +14472,14 @@ build/msvc90/geos_unit/geos_unit.vcproj, build/msvc90/geos_xmltester/geos_xmltester.vcproj: Updated Visual Studio 2008 projects in build/msvc90 with new location of include - and src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2846 + and src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2846 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot * makefile.vc, nmake.opt, src/Makefile.vc: Updated makefile.vc, nmake.opt, src/makefile.vc files with new location of include and - src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2845 + src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2845 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot @@ -10190,13 +14497,15 @@ tests/unit/Makefile.am, tests/xmltester/Makefile.am, tools/Makefile.am: Updated remaining directories doc, macros, tools, tests, swig, capi with new src and include location (#315). Fixed - previous updates. Successfull build on Linux. git-svn-id: http://svn.osgeo.org/geos/trunk@2844 + previous updates. Successfull build on Linux. git-svn-id: + http://svn.osgeo.org/geos/trunk@2844 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot * capi/Makefile.am: Updated Makefile.am files in capi subtree after - moved to new location (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2843 + moved to new location (#315) git-svn-id: + http://svn.osgeo.org/geos/trunk@2843 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot @@ -10223,19 +14532,22 @@ src/operation/valid/Makefile.am, src/planargraph/Makefile.am, src/precision/Makefile.am, src/simplify/Makefile.am, src/util/Makefile.am: Updated Makefile.am files in src subtree after - moved to new location (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2842 + moved to new location (#315) git-svn-id: + http://svn.osgeo.org/geos/trunk@2842 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot * Makefile.am, configure.in: Updated new source structure in - configure.in and root Makefile.am - part 2 (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2841 + configure.in and root Makefile.am - part 2 (#315) git-svn-id: + http://svn.osgeo.org/geos/trunk@2841 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot * Makefile.am, configure.in: Updated new source structure in - configure.in and root Makefile.am (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2840 + configure.in and root Makefile.am (#315) git-svn-id: + http://svn.osgeo.org/geos/trunk@2840 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-13 Mateusz Loskot @@ -10274,7 +14586,8 @@ include/geos/precision/Makefile.am, include/geos/simplify/Makefile.am, include/geos/util/Makefile.am: Updated Makefile.am files in headers subtree after moved to new - location in include (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2839 + location in include (#315) git-svn-id: + http://svn.osgeo.org/geos/trunk@2839 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-12 Mateusz Loskot @@ -10564,7 +14877,8 @@ src}/util/Assert.cpp, {source => src}/util/GeometricShapeFactory.cpp, {source => src}/util/Makefile.am, {source => src}/util/Profiler.cpp, {source - => src}/util/math.cpp: Moved source directory to src (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2838 + => src}/util/math.cpp: Moved source directory to src (#315) + git-svn-id: http://svn.osgeo.org/geos/trunk@2838 5242fede-7e19-0410-aef8-94bd7d2200fb 2010-01-12 Mateusz Loskot @@ -11016,132 +15330,154 @@ {source/headers => include}/geos/util/math.h, {source/headers => include}/geos/version.h.in, {source/headers => include}/geos/version.h.vc: Moved source/headers directory to - include (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2837 + include (#315) git-svn-id: http://svn.osgeo.org/geos/trunk@2837 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-23 Mateusz Loskot * tests/xmltester/tinyxml/tinyxml.cpp: Removed GNU specific printf - formatter git-svn-id: http://svn.osgeo.org/geos/trunk@2835 + formatter git-svn-id: http://svn.osgeo.org/geos/trunk@2835 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-22 Mateusz Loskot * source/headers/geos/export.h: Fixed compiler warning about extra - tokens at end of #endif directive in export.h git-svn-id: http://svn.osgeo.org/geos/trunk@2834 + tokens at end of #endif directive in export.h git-svn-id: + http://svn.osgeo.org/geos/trunk@2834 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-15 Mateusz Loskot * source/Makefile.vc: Fixed missing CoordinateSequenceFactory.cpp - from makefile.vc (Ticket #313) git-svn-id: http://svn.osgeo.org/geos/trunk@2833 + from makefile.vc (Ticket #313) git-svn-id: + http://svn.osgeo.org/geos/trunk@2833 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-15 Mateusz Loskot * source/geom/PrecisionModel.cpp, source/headers/geos/geom/PrecisionModel.h, - source/headers/geos/geom/PrecisionModel.inl: * Assert precision model scale must never be negative * Replaced use of operator== against float-point number with - operator<= * Typos git-svn-id: http://svn.osgeo.org/geos/trunk@2832 + source/headers/geos/geom/PrecisionModel.inl: * Assert precision model scale must never be negative * Replaced use + of operator== against float-point number with operator<= * Typos + git-svn-id: http://svn.osgeo.org/geos/trunk@2832 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-15 Mateusz Loskot * source/io/WKTWriter.cpp: In WKTWriter, initialise formatting - buffer and avoid unnecessary calls to string constructor. git-svn-id: http://svn.osgeo.org/geos/trunk@2831 + buffer and avoid unnecessary calls to string constructor. + git-svn-id: http://svn.osgeo.org/geos/trunk@2831 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-14 Paul Ramsey * capi/geos_c.h.in, configure.in, source/headers/geos/version.h.vc: - Update version numbers on trunk to 3.3 series git-svn-id: http://svn.osgeo.org/geos/trunk@2828 + Update version numbers on trunk to 3.3 series git-svn-id: + http://svn.osgeo.org/geos/trunk@2828 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-14 Sandro Santilli - * ChangeLog: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@2826 + * ChangeLog: Updated git-svn-id: + http://svn.osgeo.org/geos/trunk@2826 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-14 Sandro Santilli * source/headers/geos/geom.h: Don't mention 'troubles' in - documentation (some like it not) git-svn-id: http://svn.osgeo.org/geos/trunk@2825 + documentation (some like it not) git-svn-id: + http://svn.osgeo.org/geos/trunk@2825 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-14 Mateusz Loskot * source/headers/geos/util/TopologyException.h, source/io/WKTWriter.cpp: * Fixed bug in WKTWriter that was dropping geometry tag in string - representation of geometry * Improved message carried by TopologyException git-svn-id: http://svn.osgeo.org/geos/trunk@2824 + representation of geometry * Improved message carried by + TopologyException git-svn-id: http://svn.osgeo.org/geos/trunk@2824 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-11 Sandro Santilli - * ChangeLog: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@2823 + * ChangeLog: Updated git-svn-id: + http://svn.osgeo.org/geos/trunk@2823 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-11 Sandro Santilli * source/geom/prep/BasicPreparedGeometry.cpp: Fix memory leak in BasicPreparedGeometry::isAnyTargetComponentInTest (issue #308) and - drop Coordinate copies from it. git-svn-id: http://svn.osgeo.org/geos/trunk@2822 + drop Coordinate copies from it. git-svn-id: + http://svn.osgeo.org/geos/trunk@2822 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-09 Mateusz Loskot * build/msvc10/geos_lib/geos_lib.vcxproj: Fixed generation of - platform.h as pre-build step of GEOS lib project for Visual C++ git-svn-id: http://svn.osgeo.org/geos/trunk@2821 + platform.h as pre-build step of GEOS lib project for Visual C++ + git-svn-id: http://svn.osgeo.org/geos/trunk@2821 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-09 Mateusz Loskot * build/msvc80/geos_lib/geos_lib.vcproj, build/msvc90/geos_lib/geos_lib.vcproj: * Fixed generation of platform.h as pre-build step of GEOS lib - project for Visual C++ 2005 and 2008 * Added missing headers. git-svn-id: http://svn.osgeo.org/geos/trunk@2820 + project for Visual C++ 2005 and 2008 * Added missing headers. + git-svn-id: http://svn.osgeo.org/geos/trunk@2820 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Paul Ramsey - * ChangeLog, INSTALL, configure.in: Prepare for RC4 release. git-svn-id: http://svn.osgeo.org/geos/trunk@2817 + * ChangeLog, INSTALL, configure.in: Prepare for RC4 release. + git-svn-id: http://svn.osgeo.org/geos/trunk@2817 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-12-08 Mateusz Loskot + + * : Updated svn:ignore patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@2816 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Mateusz Loskot - * : Updated svn:ignore patterns git-svn-id: http://svn.osgeo.org/geos/trunk@2816 + * build/msvc10/Makefile.am: build/msvc10: fixed list of EXTRA_DIST + files git-svn-id: http://svn.osgeo.org/geos/trunk@2815 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Sandro Santilli * tests/geostest/.deps/geostest.Po: This shouldn't be in the - repository ! git-svn-id: http://svn.osgeo.org/geos/trunk@2814 + repository ! git-svn-id: http://svn.osgeo.org/geos/trunk@2814 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Sandro Santilli * source/algorithm/NonRobustLineIntersector.cpp, source/algorithm/RobustLineIntersector.cpp: Remove deprecated/unused - files git-svn-id: http://svn.osgeo.org/geos/trunk@2813 + files git-svn-id: http://svn.osgeo.org/geos/trunk@2813 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Sandro Santilli * source/headers/geos/geom/prep/PreparedLineStringIntersects.h: Drop useless (and leaking) heap allocation exposed by the new prepared - linestring intersection test git-svn-id: http://svn.osgeo.org/geos/trunk@2812 + linestring intersection test git-svn-id: + http://svn.osgeo.org/geos/trunk@2812 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Sandro Santilli * source/geom/prep/PreparedLineString.cpp, source/headers/geos/geom/prep/PreparedLineString.h: Add missing - destructor of PreparedLineString (closes ticket #305) git-svn-id: http://svn.osgeo.org/geos/trunk@2811 + destructor of PreparedLineString (closes ticket #305) git-svn-id: + http://svn.osgeo.org/geos/trunk@2811 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-08 Sandro Santilli * tests/unit/capi/GEOSPreparedGeometryTest.cpp: Add test with Prepared linestrings, for the sake of testing the leak reported in - ticket #305 git-svn-id: http://svn.osgeo.org/geos/trunk@2810 + ticket #305 git-svn-id: http://svn.osgeo.org/geos/trunk@2810 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-06 Mateusz Loskot @@ -11168,18 +15504,27 @@ source/linearref/LocationIndexOfPoint.cpp, tests/geostest/geostest.c, tests/thread/badthreadtest.c, tests/thread/threadtest.c, tests/unit/capi/GEOSBufferTest.cpp: - Updated source code files with svn:keywords property. git-svn-id: http://svn.osgeo.org/geos/trunk@2809 + Updated source code files with svn:keywords property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2809 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-12-06 Mateusz Loskot + + * : Updated svn:ignore patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@2808 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-06 Mateusz Loskot - * : Updated svn:ignore patterns git-svn-id: http://svn.osgeo.org/geos/trunk@2808 + * : Updated svn:ignore patterns git-svn-id: + http://svn.osgeo.org/geos/trunk@2807 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-06 Mateusz Loskot * configure.in: Updated configure.in after moved non-unit tests - programs out of tests/unit (Tickets #240). git-svn-id: http://svn.osgeo.org/geos/trunk@2806 + programs out of tests/unit (Tickets #240). git-svn-id: + http://svn.osgeo.org/geos/trunk@2806 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-06 Mateusz Loskot @@ -11193,12 +15538,14 @@ thread}/badthreadtest.c, tests/{unit/capi => thread}/threadtest.c, tests/unit/Makefile.am: Moved non-unit tests programs out of tests/unit: geostest -> tests/geostest, threadtest -> tests/thread, - badthreadtest -> tests/thread (Ticket #240). git-svn-id: http://svn.osgeo.org/geos/trunk@2805 + badthreadtest -> tests/thread (Ticket #240). git-svn-id: + http://svn.osgeo.org/geos/trunk@2805 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-05 Mateusz Loskot - * configure.in: Added build/msvc80/geos_xmltester to configure.in git-svn-id: http://svn.osgeo.org/geos/trunk@2804 + * configure.in: Added build/msvc80/geos_xmltester to configure.in + git-svn-id: http://svn.osgeo.org/geos/trunk@2804 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-05 Mateusz Loskot @@ -11206,19 +15553,22 @@ * build/msvc80/Makefile.am, build/msvc80/geos.sln, build/msvc80/geos_xmltester/Makefile.am, build/msvc80/geos_xmltester/geos_xmltester.vcproj: Added - geos_xmltester.vcproj project to build/msvc80 git-svn-id: http://svn.osgeo.org/geos/trunk@2803 + geos_xmltester.vcproj project to build/msvc80 git-svn-id: + http://svn.osgeo.org/geos/trunk@2803 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-05 Mateusz Loskot * build/msvc80/geos_c_dll/geos_c_dll.vcproj: Added GEOS_DLL_EXPORT to preprocessor definitions in - build/msvc80/geos_c_dll/geos_c_dll.vcproj git-svn-id: http://svn.osgeo.org/geos/trunk@2802 + build/msvc80/geos_c_dll/geos_c_dll.vcproj git-svn-id: + http://svn.osgeo.org/geos/trunk@2802 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-05 Mateusz Loskot - * source/linearref/ExtractLineByLocation.cpp: small cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@2801 + * source/linearref/ExtractLineByLocation.cpp: small cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@2801 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-05 Mateusz Loskot @@ -11226,18 +15576,20 @@ * build/msvc80/geos.sln, build/msvc80/geos_c_dll/geos_c_dll.vcproj, build/msvc80/geos_lib/geos_lib.vcproj, build/msvc80/geos_unit/geos_unit.vcproj: Updated solution for Visual - C++ 8.0 (Visual Studio 2005) (Ticket #303) git-svn-id: http://svn.osgeo.org/geos/trunk@2800 + C++ 8.0 (Visual Studio 2005) (Ticket #303) git-svn-id: + http://svn.osgeo.org/geos/trunk@2800 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-05 Mateusz Loskot * build/README: Updated information in README about build/msvcXY - solutions git-svn-id: http://svn.osgeo.org/geos/trunk@2799 + solutions git-svn-id: http://svn.osgeo.org/geos/trunk@2799 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot - * configure.in: Updated configure.in with msvc10 git-svn-id: http://svn.osgeo.org/geos/trunk@2798 + * configure.in: Updated configure.in with msvc10 git-svn-id: + http://svn.osgeo.org/geos/trunk@2798 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot @@ -11256,71 +15608,83 @@ build/msvc10/geos_xmltester/geos_xmltester.vcxproj, build/msvc10/geos_xmltester/geos_xmltester.vcxproj.filters: Added solution and projects for Visual Studio 2010 (note msvc90 denotes - 9.0 however msvc10 is 10 not 1.0) git-svn-id: http://svn.osgeo.org/geos/trunk@2797 + 9.0 however msvc10 is 10 not 1.0) git-svn-id: + http://svn.osgeo.org/geos/trunk@2797 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot - * tests/unit/geos_unit.cpp: Missing svn keywords git-svn-id: http://svn.osgeo.org/geos/trunk@2796 + * tests/unit/geos_unit.cpp: Missing svn keywords git-svn-id: + http://svn.osgeo.org/geos/trunk@2796 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot - * tests/unit/tut/tut_exception.hpp: Small fixes to TUT. git-svn-id: http://svn.osgeo.org/geos/trunk@2795 + * tests/unit/tut/tut_exception.hpp: Small fixes to TUT. git-svn-id: + http://svn.osgeo.org/geos/trunk@2795 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot - * source/io/WKBReader.cpp: Replaced long with std::streampos git-svn-id: http://svn.osgeo.org/geos/trunk@2794 + * source/io/WKBReader.cpp: Replaced long with std::streampos + git-svn-id: http://svn.osgeo.org/geos/trunk@2794 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot * source/geom/CoordinateSequence.cpp: std::back_inserter requires - in geom/CoordinateSequence.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@2793 + in geom/CoordinateSequence.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@2793 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-04 Mateusz Loskot * build/msvc90/geos_lib/geos_lib.vcproj: Updated Visual C++ 9.0 - project git-svn-id: http://svn.osgeo.org/geos/trunk@2792 + project git-svn-id: http://svn.osgeo.org/geos/trunk@2792 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/export.h: Yet another try to fix EOL in - geos/export.h git-svn-id: http://svn.osgeo.org/geos/trunk@2791 + geos/export.h git-svn-id: http://svn.osgeo.org/geos/trunk@2791 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/export.h: Removed mysterious extra tokens - (blanks) from geos/export.h git-svn-id: http://svn.osgeo.org/geos/trunk@2790 + (blanks) from geos/export.h git-svn-id: + http://svn.osgeo.org/geos/trunk@2790 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/export.h: Removed mysterious extra tokens - (blanks) from geos/export.h git-svn-id: http://svn.osgeo.org/geos/trunk@2789 + (blanks) from geos/export.h git-svn-id: + http://svn.osgeo.org/geos/trunk@2789 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * build/msvc90/geos_unit/geos_unit.vcproj: Updated Visual C++ - project geos_unit.vcproj git-svn-id: http://svn.osgeo.org/geos/trunk@2788 + project geos_unit.vcproj git-svn-id: + http://svn.osgeo.org/geos/trunk@2788 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/platform.h.vc, source/headers/geos/timeval.h: - Part 26 of larger changeset - source/headers: * Refine FINITE macro - pseudo-POSIX layer in Visual C++ does not - offer long double version of finite() * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2787 + Part 26 of larger changeset - source/headers: * Refine FINITE macro + - pseudo-POSIX layer in Visual C++ does not offer long double + version of finite() * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2787 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/util/UniqueCoordinateArrayFilter.h: Part 25 of - larger changeset - source/headers/geos/util: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2786 + larger changeset - source/headers/geos/util: * Declare noncopyable + types as such explicitly (Ticket #304). * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2786 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11333,13 +15697,17 @@ source/headers/geos/simplify/TaggedLineStringSimplifier.h, source/headers/geos/simplify/TaggedLinesSimplifier.h, source/headers/geos/simplify/TopologyPreservingSimplifier.h: Part 24 - of larger changeset - source/headers/geos/simplify: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2785 + of larger changeset - source/headers/geos/simplify: * Declare + noncopyable types as such explicitly (Ticket #304). * Tidy up. + git-svn-id: http://svn.osgeo.org/geos/trunk@2785 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/planargraph/Subgraph.h: Part 23 of larger - changeset - source/headers/geos/planargraph * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2784 + changeset - source/headers/geos/planargraph * Declare noncopyable + types as such explicitly (Ticket #304). * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2784 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11347,20 +15715,27 @@ * source/headers/geos/planargraph/algorithm/ConnectedSubgraphFinder.h: Part 22 of larger changeset - - source/headers/geos/planargraph/algorithm: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2783 + source/headers/geos/planargraph/algorithm: * Declare noncopyable + types as such explicitly (Ticket #304). * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2783 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/operation/valid/ConnectedInteriorTester.h: - Part 21 of larger changeset - source/headers/geos/operation/valid: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2782 + Part 21 of larger changeset - source/headers/geos/operation/valid: * + Declare noncopyable types as such explicitly (Ticket #304). * Tidy + up. git-svn-id: http://svn.osgeo.org/geos/trunk@2782 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/operation/predicate/RectangleContains.h, source/headers/geos/operation/predicate/RectangleIntersects.h: Part - 20 of larger changeset - source/headers/geos/operation/overlay: * Declare noncopyable types as such explicitly (Ticket #304). * Unified EOL and style. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2781 + 20 of larger changeset - source/headers/geos/operation/overlay: * + Declare noncopyable types as such explicitly (Ticket #304). * + Unified EOL and style. * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2781 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11375,7 +15750,9 @@ .h, source/headers/geos/operation/overlay/validate/OverlayResultValidat or.h: Part 19 of larger changeset - - source/headers/geos/operation/overlay: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. * Unified EOL and style. git-svn-id: http://svn.osgeo.org/geos/trunk@2780 + source/headers/geos/operation/overlay: * Declare noncopyable types + as such explicitly (Ticket #304). * Tidy up. * Unified EOL and + style. git-svn-id: http://svn.osgeo.org/geos/trunk@2780 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11383,7 +15760,10 @@ * source/headers/geos/operation/buffer/BufferBuilder.h, source/headers/geos/operation/buffer/OffsetCurveBuilder.h, source/headers/geos/operation/buffer/OffsetCurveSetBuilder.h: Part - 18of larger changeset - source/headers/geos/operation/buffer: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. * Unified EOL and style. git-svn-id: http://svn.osgeo.org/geos/trunk@2779 + 18of larger changeset - source/headers/geos/operation/buffer: * + Declare noncopyable types as such explicitly (Ticket #304). * Tidy + up. * Unified EOL and style. git-svn-id: + http://svn.osgeo.org/geos/trunk@2779 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11401,7 +15781,10 @@ source/headers/geos/noding/SegmentNodeList.h, source/headers/geos/noding/SegmentString.h, source/headers/geos/noding/SingleInteriorIntersectionFinder.h: Part - 17 of larger changeset - source/headers/geos/noding/snapround: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. * Unified EOL and style. git-svn-id: http://svn.osgeo.org/geos/trunk@2778 + 17 of larger changeset - source/headers/geos/noding/snapround: * + Declare noncopyable types as such explicitly (Ticket #304). * Added + Visual C++ pragmas. * Tidy up. * Unified EOL and style. git-svn-id: + http://svn.osgeo.org/geos/trunk@2778 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11410,33 +15793,44 @@ source/headers/geos/noding/snapround/MCIndexPointSnapper.h, source/headers/geos/noding/snapround/MCIndexSnapRounder.h, source/headers/geos/noding/snapround/SimpleSnapRounder.h: Part 16 of - larger changeset - source/headers/geos/noding/snapround: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. * Unified EOL and style. git-svn-id: http://svn.osgeo.org/geos/trunk@2777 + larger changeset - source/headers/geos/noding/snapround: * Declare + noncopyable types as such explicitly (Ticket #304). * Added Visual + C++ pragmas. * Tidy up. * Unified EOL and style. git-svn-id: + http://svn.osgeo.org/geos/trunk@2777 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/linearref/LinearIterator.h: Part 15 of larger - changeset - source/headers/geos/linearref: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2776 + changeset - source/headers/geos/linearref: * Declare noncopyable + types as such explicitly (Ticket #304). * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2776 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/io/StringTokenizer.h, source/headers/geos/io/WKBReader.h: Part 14 of larger changeset - - source/headers/geos/io: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2775 + source/headers/geos/io: * Declare noncopyable types as such + explicitly (Ticket #304). * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2775 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/index/chain/MonotoneChain.h: Part 13 of larger - changeset - source/headers/geos/index/chain: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2774 + changeset - source/headers/geos/index/chain: * Declare noncopyable + types as such explicitly (Ticket #304). * Added Visual C++ pragmas. + * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2774 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/geomgraph/GeometryGraph.h, source/headers/geos/geomgraph/NodeMap.h: Part 12 of larger changeset - - source/headers/geos/geomgraph: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2773 + - source/headers/geos/geomgraph: * Declare noncopyable types as such + explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. + git-svn-id: http://svn.osgeo.org/geos/trunk@2773 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11447,14 +15841,19 @@ source/headers/geos/geom/util/LinearComponentExtracter.h, source/headers/geos/geom/util/PointExtracter.h, source/headers/geos/geom/util/PolygonExtracter.h: Part 11 of larger - changeset - source/headers/geos/geom/util: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2772 + changeset - source/headers/geos/geom/util: * Declare noncopyable + types as such explicitly (Ticket #304). * Added Visual C++ pragmas. + * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2772 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/headers/geos/geom/prep/PreparedLineStringIntersects.h, source/headers/geos/geom/prep/PreparedPolygonPredicate.h: Part 10of - larger changeset - source/headers/geos/geom/prep: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2771 + larger changeset - source/headers/geos/geom/prep: * Declare + noncopyable types as such explicitly (Ticket #304). * Added Visual + C++ pragmas. * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2771 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11462,44 +15861,58 @@ * source/headers/geos/algorithm/RayCrossingCounter.h, source/headers/geos/algorithm/distance/DiscreteHausdorffDistance.h, source/headers/geos/algorithm/locate/IndexedPointInAreaLocator.h: - Part 9 of larger changeset - source/headers/geos/algorithm: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2770 + Part 9 of larger changeset - source/headers/geos/algorithm: * + Declare noncopyable types as such explicitly (Ticket #304). * Added + Visual C++ pragmas. * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2770 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/geomgraph/PlanarGraph.cpp: Part 7 of larger changeset - - source/geomgraph: * Fixed incorrect int to string conversion. git-svn-id: http://svn.osgeo.org/geos/trunk@2769 + source/geomgraph: * Fixed incorrect int to string conversion. + git-svn-id: http://svn.osgeo.org/geos/trunk@2769 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/index/intervalrtree/SortedPackedIntervalRTree.cpp: Part 7 - of larger changeset - source/index/intervalrtree: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2768 + of larger changeset - source/index/intervalrtree: * Declare + noncopyable types as such explicitly (Ticket #304). * Added Visual + C++ pragmas. * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2768 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/noding/ScaledNoder.cpp: Refined changeset r2766 - fix for - nested classes required by GCC. git-svn-id: http://svn.osgeo.org/geos/trunk@2767 + nested classes required by GCC. git-svn-id: + http://svn.osgeo.org/geos/trunk@2767 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/noding/OrientedCoordinateArray.cpp, source/noding/ScaledNoder.cpp: Part 6 of larger changeset - - source/noding: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2766 + source/noding: * Declare noncopyable types as such explicitly + (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2766 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/noding/snapround/MCIndexPointSnapper.cpp: Part 5 of larger - changeset - source/noding/snapround: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2765 + changeset - source/noding/snapround: * Declare noncopyable types as + such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy + up. git-svn-id: http://svn.osgeo.org/geos/trunk@2765 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/algorithm/RobustDeterminant.cpp: Part 4 of larger changeset - - source/algorithm: * Declare noncopyable types as such explicitly (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2764 + - source/algorithm: * Declare noncopyable types as such explicitly + (Ticket #304). * Added Visual C++ pragmas. * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2764 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11511,13 +15924,17 @@ source/operation/overlay/PolygonBuilder.cpp, source/operation/predicate/RectangleIntersects.cpp, source/operation/valid/IsValidOp.cpp: Part 3 of larger changeset - - source/operation: * Declare noncopyable types as such explicitly (Ticket #304). * Tidy up. git-svn-id: http://svn.osgeo.org/geos/trunk@2763 + source/operation: * Declare noncopyable types as such explicitly + (Ticket #304). * Tidy up. git-svn-id: + http://svn.osgeo.org/geos/trunk@2763 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * source/simplify/TopologyPreservingSimplifier.cpp: Part 2 of larger - changeset - source/simplify: * Declare noncopyable types as such explicitly (Ticket #304). * Cleanup. * Unified EOL to LF. git-svn-id: http://svn.osgeo.org/geos/trunk@2762 + changeset - source/simplify: * Declare noncopyable types as such + explicitly (Ticket #304). * Cleanup. * Unified EOL to LF. + git-svn-id: http://svn.osgeo.org/geos/trunk@2762 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot @@ -11536,21 +15953,25 @@ tests/unit/linearref/LengthIndexedLineTest.cpp, tests/unit/noding/BasicSegmentStringTest.cpp, tests/unit/noding/NodedSegmentStringTest.cpp: Part 1 of larger - changeset - tests/unit: * Declare noncopyable types as such explicitly (Ticket #304). * Cleanup. * Unified EOL to LF. git-svn-id: http://svn.osgeo.org/geos/trunk@2761 + changeset - tests/unit: * Declare noncopyable types as such + explicitly (Ticket #304). * Cleanup. * Unified EOL to LF. + git-svn-id: http://svn.osgeo.org/geos/trunk@2761 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * tests/unit/operation/valid/IsValidTest.cpp, tests/unit/operation/valid/ValidClosedRingTest.cpp, - tests/xmltester/XMLTester.cpp: * Added Visual C++ pragmas. * Fixed implicit pointer tests for 0 (save typing is a myth, be - explicit is bless). git-svn-id: http://svn.osgeo.org/geos/trunk@2760 + tests/xmltester/XMLTester.cpp: * Added Visual C++ pragmas. * Fixed implicit pointer tests for 0 + (save typing is a myth, be explicit is bless). git-svn-id: + http://svn.osgeo.org/geos/trunk@2760 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-03 Mateusz Loskot * tests/unit/geos_unit.cpp, tests/unit/tut/tut_restartable.hpp, - tests/xmltester/XMLTester.h: Updated C++ TUT framework. git-svn-id: http://svn.osgeo.org/geos/trunk@2759 + tests/xmltester/XMLTester.h: Updated C++ TUT framework. git-svn-id: + http://svn.osgeo.org/geos/trunk@2759 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-01 Mateusz Loskot @@ -11560,7 +15981,8 @@ source/operation/overlay/snap/SnapIfNeededOverlayOp.cpp, tests/unit/geos_unit.cpp: Improved WKBReader::readHEX to read WKB encoded with lower-case hex digits, useful if combined with SQL - encode(geometry, 'hex') git-svn-id: http://svn.osgeo.org/geos/trunk@2758 + encode(geometry, 'hex') git-svn-id: + http://svn.osgeo.org/geos/trunk@2758 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-01 Mateusz Loskot @@ -11588,8 +16010,9 @@ tests/unit/geom/DimensionTest.cpp, tests/unit/geom/MultiPointTest.cpp, tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp, - tests/unit/operation/buffer/BufferOpTest.cpp: * More fixes for incompleteness of types required by std::auto_ptr * Replaced utility macros with disappearing ignorance template - trick. git-svn-id: http://svn.osgeo.org/geos/trunk@2757 + tests/unit/operation/buffer/BufferOpTest.cpp: * More fixes for incompleteness of types required by std::auto_ptr * + Replaced utility macros with disappearing ignorance template trick. + git-svn-id: http://svn.osgeo.org/geos/trunk@2757 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-12-01 Mateusz Loskot @@ -11598,7 +16021,8 @@ build/msvc90/geos_lib/geos_lib.vcproj, build/msvc90/geos_unit/geos_unit.vcproj, build/msvc90/geos_xmltester/geos_xmltester.vcproj: Tweaked projects - for Visual Studio 2008 git-svn-id: http://svn.osgeo.org/geos/trunk@2756 + for Visual Studio 2008 git-svn-id: + http://svn.osgeo.org/geos/trunk@2756 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-30 Mateusz Loskot @@ -11606,7 +16030,8 @@ * capi/geos_ts_c.cpp, source/geomgraph/EdgeEnd.cpp, source/headers/geos/geom/CoordinateSequenceFilter.h, source/precision/EnhancedPrecisionOp.cpp: * GEOSFree_r should check context handle even if its not used - - nullptr may indicate logic error. git-svn-id: http://svn.osgeo.org/geos/trunk@2755 + nullptr may indicate logic error. git-svn-id: + http://svn.osgeo.org/geos/trunk@2755 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-30 Mateusz Loskot @@ -11618,29 +16043,35 @@ source/geom/GeometryCollection.cpp, source/headers/geos/simplify/TopologyPreservingSimplifier.h, source/io/WKTReader.cpp, source/linearref/ExtractLineByLocation.cpp: * Fixed incomplete types Geometry and TaggedLinesSimplifier in - TopologyPreservingSimplifier.h - required by std::auto_ptr * Removed unreachable code. * Removed /Wp64 option from Visual Studio 2008 projects. git-svn-id: http://svn.osgeo.org/geos/trunk@2754 + TopologyPreservingSimplifier.h - required by std::auto_ptr * Removed + unreachable code. * Removed /Wp64 option from Visual Studio 2008 + projects. git-svn-id: http://svn.osgeo.org/geos/trunk@2754 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-30 Mateusz Loskot - * ChangeLog: Missing log. git-svn-id: http://svn.osgeo.org/geos/trunk@2753 + * ChangeLog: Missing log. git-svn-id: + http://svn.osgeo.org/geos/trunk@2753 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-30 Mateusz Loskot * build/msvc90/geos_unit/geos_unit.vcproj, - tests/unit/linearref/LengthIndexedLineTest.cpp: * Added missing tests to Visual Studio 2008 project * Replaced call to isnan() missing in Visual C++ with ISNAN macro git-svn-id: http://svn.osgeo.org/geos/trunk@2752 + tests/unit/linearref/LengthIndexedLineTest.cpp: * Added missing tests to Visual Studio 2008 project * Replaced call + to isnan() missing in Visual C++ with ISNAN macro git-svn-id: + http://svn.osgeo.org/geos/trunk@2752 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-29 Sandro Santilli - * ChangeLog: updated git-svn-id: http://svn.osgeo.org/geos/trunk@2749 + * ChangeLog: updated git-svn-id: + http://svn.osgeo.org/geos/trunk@2749 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Sandro Santilli * source/headers/geos/platform.h.in: Add ISNAN support in - platform.h.in git-svn-id: http://svn.osgeo.org/geos/trunk@2748 + platform.h.in git-svn-id: http://svn.osgeo.org/geos/trunk@2748 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Sandro Santilli @@ -11651,13 +16082,15 @@ source/util/AssertionFailedException.cpp, source/util/IllegalArgumentException.cpp, source/util/Makefile.am, source/util/UnsupportedOperationException.cpp: Remove unreferenced - files from the repository git-svn-id: http://svn.osgeo.org/geos/trunk@2747 + files from the repository git-svn-id: + http://svn.osgeo.org/geos/trunk@2747 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Sandro Santilli * build/msvc90/geos_lib/geos_lib.vcproj: Remove reference to files - not needing to go in the dll git-svn-id: http://svn.osgeo.org/geos/trunk@2746 + not needing to go in the dll git-svn-id: + http://svn.osgeo.org/geos/trunk@2746 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Sandro Santilli @@ -11666,47 +16099,53 @@ source/geom/Makefile.am, source/headers/geos/geom/CoordinateSequenceFactory.h: Put destructor of the CoordinateSequenceFactory in an implementation file, - hopefully reducing linker confusion about RTTI (see ticket #299) git-svn-id: http://svn.osgeo.org/geos/trunk@2745 + hopefully reducing linker confusion about RTTI (see ticket #299) + git-svn-id: http://svn.osgeo.org/geos/trunk@2745 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Paul Ramsey - * configure.in: Add magic flags for OS/X Snow Leopard only. (#299) git-svn-id: http://svn.osgeo.org/geos/trunk@2744 + * configure.in: Add magic flags for OS/X Snow Leopard only. (#299) + git-svn-id: http://svn.osgeo.org/geos/trunk@2744 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Paul Ramsey - * configure.in: Add vc90 xmltester target to Makefile build git-svn-id: http://svn.osgeo.org/geos/trunk@2743 + * configure.in: Add vc90 xmltester target to Makefile build + git-svn-id: http://svn.osgeo.org/geos/trunk@2743 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Frank Warmerdam * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: clarify - ownership of returned buffer from wkbwriter git-svn-id: http://svn.osgeo.org/geos/trunk@2742 + ownership of returned buffer from wkbwriter git-svn-id: + http://svn.osgeo.org/geos/trunk@2742 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-26 Paul Ramsey * Makefile.am, build/msvc90/Makefile.am, build/msvc90/geos_xmltester/Makefile.am: Fix missing components in - tarball (#300) git-svn-id: http://svn.osgeo.org/geos/trunk@2741 + tarball (#300) git-svn-id: http://svn.osgeo.org/geos/trunk@2741 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-24 Sandro Santilli - * ChangeLog: updated git-svn-id: http://svn.osgeo.org/geos/trunk@2736 + * ChangeLog: updated git-svn-id: + http://svn.osgeo.org/geos/trunk@2736 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-23 Sandro Santilli * tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp: - Coordiante->Coordinate git-svn-id: http://svn.osgeo.org/geos/trunk@2735 + Coordiante->Coordinate git-svn-id: + http://svn.osgeo.org/geos/trunk@2735 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-23 Sandro Santilli * source/geom/Geometry.cpp: Avoid reallocations in Union - short-circuit git-svn-id: http://svn.osgeo.org/geos/trunk@2734 + short-circuit git-svn-id: http://svn.osgeo.org/geos/trunk@2734 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-20 Sandro Santilli @@ -11716,14 +16155,16 @@ source/operation/linemerge/LineMerger.cpp, source/operation/polygonize/PolygonizeGraph.cpp, source/planargraph/NodeMap.cpp: Don't force heap allocation of - vectors for getting nodes of a NodeMap git-svn-id: http://svn.osgeo.org/geos/trunk@2733 + vectors for getting nodes of a NodeMap git-svn-id: + http://svn.osgeo.org/geos/trunk@2733 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli * source/headers/geos/noding/MCIndexSegmentSetMutualIntersector.h, source/noding/MCIndexSegmentSetMutualIntersector.cpp: Don't - heap-allocate std::vector in MCIndexSegmentSetMutualIntersector git-svn-id: http://svn.osgeo.org/geos/trunk@2732 + heap-allocate std::vector in MCIndexSegmentSetMutualIntersector + git-svn-id: http://svn.osgeo.org/geos/trunk@2732 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli @@ -11732,7 +16173,8 @@ source/headers/geos/operation/valid/ConnectedInteriorTester.h, source/operation/overlay/MaximalEdgeRing.cpp, source/operation/valid/ConnectedInteriorTester.cpp: Don't force heap - allocation when building edge rings for isValidOp git-svn-id: http://svn.osgeo.org/geos/trunk@2731 + allocation when building edge rings for isValidOp git-svn-id: + http://svn.osgeo.org/geos/trunk@2731 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli @@ -11741,14 +16183,16 @@ source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp: Don't force heap allocation of std::vector in PolygonizeGraph when deleting dangles - (moved allocation higher, in Polygonizer, so needs a second pass) git-svn-id: http://svn.osgeo.org/geos/trunk@2730 + (moved allocation higher, in Polygonizer, so needs a second pass) + git-svn-id: http://svn.osgeo.org/geos/trunk@2730 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli * source/headers/geos/operation/polygonize/PolygonizeGraph.h, source/operation/polygonize/PolygonizeGraph.cpp: don't heap-allocate - vectors in findLabeledEdgeRings git-svn-id: http://svn.osgeo.org/geos/trunk@2729 + vectors in findLabeledEdgeRings git-svn-id: + http://svn.osgeo.org/geos/trunk@2729 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli @@ -11758,14 +16202,15 @@ source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp: Move heap-allocation of vector used for 'cut-lines' containment out of PolygonizeGraph (but - into Polygonizer) git-svn-id: http://svn.osgeo.org/geos/trunk@2728 + into Polygonizer) git-svn-id: http://svn.osgeo.org/geos/trunk@2728 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli * source/headers/geos/operation/polygonize/PolygonizeGraph.h, source/operation/polygonize/PolygonizeGraph.cpp: Don't force - heap-allocation of vectors for finding/labeling edge rings git-svn-id: http://svn.osgeo.org/geos/trunk@2727 + heap-allocation of vectors for finding/labeling edge rings + git-svn-id: http://svn.osgeo.org/geos/trunk@2727 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli @@ -11775,102 +16220,117 @@ source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp: Change PolygonizeGraph::getEdgeRings signature so not to force heap - allocation of std::vector, update Polygonizer accordingly git-svn-id: http://svn.osgeo.org/geos/trunk@2726 + allocation of std::vector, update Polygonizer accordingly + git-svn-id: http://svn.osgeo.org/geos/trunk@2726 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli * source/headers/geos/operation/polygonize/PolygonizeGraph.h, source/operation/polygonize/PolygonizeGraph.cpp: Do not - heap-allocate vector of Node when finding intersections git-svn-id: http://svn.osgeo.org/geos/trunk@2725 + heap-allocate vector of Node when finding intersections + git-svn-id: http://svn.osgeo.org/geos/trunk@2725 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Sandro Santilli * source/headers/geos/index/strtree/AbstractNode.h, source/index/strtree/AbstractNode.cpp: Don not allocate the - container of STRtree node childs on the heap git-svn-id: http://svn.osgeo.org/geos/trunk@2724 + container of STRtree node childs on the heap git-svn-id: + http://svn.osgeo.org/geos/trunk@2724 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-19 Paul Ramsey * source/geomgraph/index/SegmentIntersector.cpp, tests/xmltester/XMLTester.cpp: Apply patch for --disable-cassert - compilation (#291) git-svn-id: http://svn.osgeo.org/geos/trunk@2723 + compilation (#291) git-svn-id: + http://svn.osgeo.org/geos/trunk@2723 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-18 Paul Ramsey * HOWTO_RELEASE: Reverse the upgrade process a bit, bump up revision numbers *after* release so that the repo version is always one - higher than the release version. (#287) git-svn-id: http://svn.osgeo.org/geos/trunk@2720 + higher than the release version. (#287) git-svn-id: + http://svn.osgeo.org/geos/trunk@2720 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-18 Mateusz Loskot * ChangeLog, capi/geos_c.cpp, capi/geos_ts_c.cpp: Silent warning - thrown by Visual C++ about mixed class and struct keyword (#269) git-svn-id: http://svn.osgeo.org/geos/trunk@2717 + thrown by Visual C++ about mixed class and struct keyword (#269) + git-svn-id: http://svn.osgeo.org/geos/trunk@2717 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-17 Sandro Santilli * tests/unit/Makefile.am: Include capi::GEOSGeomFromWKB test in - geos_unit build (should also distribute as side-effect) git-svn-id: http://svn.osgeo.org/geos/trunk@2716 + geos_unit build (should also distribute as side-effect) + git-svn-id: http://svn.osgeo.org/geos/trunk@2716 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-11 Sandro Santilli * HOWTO_RELEASE, Makefile.am: Change ChangeLog generation rule so it - doesn't mess with make dist. Reflect in HOW_TO_RELEASE git-svn-id: http://svn.osgeo.org/geos/trunk@2713 + doesn't mess with make dist. Reflect in HOW_TO_RELEASE git-svn-id: + http://svn.osgeo.org/geos/trunk@2713 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-10 Sandro Santilli * HOWTO_RELEASE, Makefile.am: Make ChangeLog target non-phony to - keep 'distcheck' happy. Reorganize HOW_TO_RELEASE steps. git-svn-id: http://svn.osgeo.org/geos/trunk@2712 + keep 'distcheck' happy. Reorganize HOW_TO_RELEASE steps. + git-svn-id: http://svn.osgeo.org/geos/trunk@2712 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-11-10 Sandro Santilli - * ChangeLog, HOWTO_RELEASE, NEWS: Package stuff for release git-svn-id: http://svn.osgeo.org/geos/trunk@2711 + * ChangeLog, HOWTO_RELEASE, NEWS: Package stuff for release + git-svn-id: http://svn.osgeo.org/geos/trunk@2711 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot * tests/unit/operation/buffer/BufferOpTest.cpp: Testing linker - problem with DEFAULT_QUADRANT_SEGMENT constant git-svn-id: http://svn.osgeo.org/geos/trunk@2710 + problem with DEFAULT_QUADRANT_SEGMENT constant git-svn-id: + http://svn.osgeo.org/geos/trunk@2710 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot * tests/unit/operation/buffer/BufferOpTest.cpp: Testing linker - problem with DEFAULT_QUADRANT_SEGMENT constant git-svn-id: http://svn.osgeo.org/geos/trunk@2709 + problem with DEFAULT_QUADRANT_SEGMENT constant git-svn-id: + http://svn.osgeo.org/geos/trunk@2709 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot * tests/unit/operation/buffer/BufferOpTest.cpp: Fixed CRLF to LF in - BufferOpTest.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@2708 + BufferOpTest.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@2708 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot * ChangeLog, tests/unit/operation/buffer/BufferOpTest.cpp: Missing - include of BufferParameters.h header in BufferOpTest.cpp unit suite git-svn-id: http://svn.osgeo.org/geos/trunk@2707 + include of BufferParameters.h header in BufferOpTest.cpp unit suite + git-svn-id: http://svn.osgeo.org/geos/trunk@2707 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot * ChangeLog, tests/unit/operation/buffer/BufferOpTest.cpp: Added more test cases for buffer calculation based on A (input) geometries - from XMLTester's buffer.xml and TestBufferExternal2.xml tests. git-svn-id: http://svn.osgeo.org/geos/trunk@2706 + from XMLTester's buffer.xml and TestBufferExternal2.xml tests. + git-svn-id: http://svn.osgeo.org/geos/trunk@2706 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot * ChangeLog, tests/unit/operation/buffer/BufferOpTest.cpp: Added test case for buffer of multipolygon from XMLTester's buffer.xml, - case #25 but with custom quadrant segments git-svn-id: http://svn.osgeo.org/geos/trunk@2705 + case #25 but with custom quadrant segments git-svn-id: + http://svn.osgeo.org/geos/trunk@2705 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-29 Mateusz Loskot @@ -11884,21 +16344,25 @@ * ChangeLog, build/msvc90/geos_unit/geos_unit.vcproj, tests/unit/Makefile.am, - tests/unit/operation/buffer/BufferOpTest.cpp: * tests/unit/operation/buffer: added unit test case for BufferOp, * tests/unit/Makefile.am: added new test case source to Makefile, * build/msvc90/geos_unit/geos_unit.vcproj: updated Visual C++ - project. git-svn-id: http://svn.osgeo.org/geos/trunk@2703 + tests/unit/operation/buffer/BufferOpTest.cpp: * tests/unit/operation/buffer: added unit test case for BufferOp, * + tests/unit/Makefile.am: added new test case source to Makefile, * + build/msvc90/geos_unit/geos_unit.vcproj: updated Visual C++ project. + git-svn-id: http://svn.osgeo.org/geos/trunk@2703 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-28 Mateusz Loskot * ChangeLog, build/msvc90/geos.sln, tests/xmltester/XMLTester.cpp: tests/xmltester/XMLTester.cpp: declare checkBufferSuccess function - to take geometries by refernece to const git-svn-id: http://svn.osgeo.org/geos/trunk@2702 + to take geometries by refernece to const git-svn-id: + http://svn.osgeo.org/geos/trunk@2702 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-25 Mateusz Loskot * ChangeLog, source/headers/geos/geom/Geometry.h: Fixed typo in - getCentroid function comment in Geometry.h. git-svn-id: http://svn.osgeo.org/geos/trunk@2701 + getCentroid function comment in Geometry.h. git-svn-id: + http://svn.osgeo.org/geos/trunk@2701 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli @@ -11906,34 +16370,36 @@ * source/headers/geos/linearref/LinearLocation.h, source/linearref/LinearLocation.cpp: Have LinearLocation::getSegment return by auto_ptr to encode ownership transfer. Fixes leak reported - in #296. git-svn-id: http://svn.osgeo.org/geos/trunk@2700 + in #296. git-svn-id: http://svn.osgeo.org/geos/trunk@2700 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * source/headers/geos/linearref/LinearLocation.h, source/linearref/LinearLocation.cpp: Fix port info, add standard - protection notes git-svn-id: http://svn.osgeo.org/geos/trunk@2699 + protection notes git-svn-id: http://svn.osgeo.org/geos/trunk@2699 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * source/headers/geos/linearref/LinearGeometryBuilder.h, source/linearref/LinearGeometryBuilder.cpp: Add destructor to - LinearGeometryBuilder fixing memory leaks there. git-svn-id: http://svn.osgeo.org/geos/trunk@2698 + LinearGeometryBuilder fixing memory leaks there. git-svn-id: + http://svn.osgeo.org/geos/trunk@2698 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * source/linearref/LinearGeometryBuilder.cpp: Fix memory access - error (#283) git-svn-id: http://svn.osgeo.org/geos/trunk@2697 + error (#283) git-svn-id: http://svn.osgeo.org/geos/trunk@2697 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * source/headers/geos/linearref/LinearGeometryBuilder.h, source/linearref/LinearGeometryBuilder.cpp: Fix port info for - LinearGeometryBuilder git-svn-id: http://svn.osgeo.org/geos/trunk@2696 + LinearGeometryBuilder git-svn-id: + http://svn.osgeo.org/geos/trunk@2696 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli @@ -11942,7 +16408,8 @@ source/linearref/LinearGeometryBuilder.cpp: Cleanup LinearGeometrybuilder defs and impl to match common code style, add note about suspicious things (not written but noted that the class - seems to lack a destructor..) git-svn-id: http://svn.osgeo.org/geos/trunk@2695 + seems to lack a destructor..) git-svn-id: + http://svn.osgeo.org/geos/trunk@2695 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli @@ -11952,44 +16419,49 @@ source/linearref/LocationIndexOfLine.cpp, tests/unit/linearref/LengthIndexedLineTest.cpp: Document ownership of return from LocationIndexOfLine::indicesOf, fix mismatch - delete/delete[] in core and unit test git-svn-id: http://svn.osgeo.org/geos/trunk@2694 + delete/delete[] in core and unit test git-svn-id: + http://svn.osgeo.org/geos/trunk@2694 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * source/headers/geos/algorithm/BoundaryNodeRule.h: Add virtual dtor - to virtual class git-svn-id: http://svn.osgeo.org/geos/trunk@2693 + to virtual class git-svn-id: http://svn.osgeo.org/geos/trunk@2693 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * tests/xmltester/tinyxml/tinyxmlparser.cpp: add some parens to hush - gcc warning git-svn-id: http://svn.osgeo.org/geos/trunk@2692 + gcc warning git-svn-id: http://svn.osgeo.org/geos/trunk@2692 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli - * tests/unit/Makefile.am: Fix static building of C-api demo/tests git-svn-id: http://svn.osgeo.org/geos/trunk@2691 + * tests/unit/Makefile.am: Fix static building of C-api demo/tests + git-svn-id: http://svn.osgeo.org/geos/trunk@2691 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-23 Sandro Santilli * tests/xmltester/Makefile.am: Run the last - available-but-no-automatically-run test: test.xml git-svn-id: http://svn.osgeo.org/geos/trunk@2690 + available-but-no-automatically-run test: test.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@2690 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-22 Sandro Santilli * tests/xmltester/tests/buffer.xml, tests/xmltester/tests/buffer_snapround.xml: Merge - buffer_snapround.xml into buffer.xml git-svn-id: http://svn.osgeo.org/geos/trunk@2689 + buffer_snapround.xml into buffer.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@2689 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-22 Sandro Santilli * tests/xmltester/Makefile.am: A quick check reveals that the tests in buffer.xml are not really duplicated elsewhere so we run that - test too now as part of make check git-svn-id: http://svn.osgeo.org/geos/trunk@2688 + test too now as part of make check git-svn-id: + http://svn.osgeo.org/geos/trunk@2688 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-22 Sandro Santilli @@ -11997,20 +16469,22 @@ * tests/xmltester/tests/buffer.xml: Give buffer.xml cases a somewhat more helpful description, fix 4 expected results after eye-checking. This is still not automatically run case it might contain duplicated - tests from elsewhere (to be checked). git-svn-id: http://svn.osgeo.org/geos/trunk@2687 + tests from elsewhere (to be checked). git-svn-id: + http://svn.osgeo.org/geos/trunk@2687 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-22 Sandro Santilli * tests/xmltester/XMLTester.cpp: Don't segfault on EOF inside - tag git-svn-id: http://svn.osgeo.org/geos/trunk@2686 + tag git-svn-id: http://svn.osgeo.org/geos/trunk@2686 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-20 Sandro Santilli * source/headers/geos/index/strtree/AbstractSTRtree.h, source/index/strtree/STRtree.cpp: Commit MingW bug workaround - provided by sanak in ticket #293 git-svn-id: http://svn.osgeo.org/geos/trunk@2685 + provided by sanak in ticket #293 git-svn-id: + http://svn.osgeo.org/geos/trunk@2685 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-19 Mateusz Loskot @@ -12018,36 +16492,41 @@ * ChangeLog, build/msvc90/geos_xmltester/geos_xmltester.vcproj, tests/xmltester/tests/buffer_snapround.xml: tests/xmltester/tests/buffer_snapround.xml: not well-formed XML, - fixed missing attribute. git-svn-id: http://svn.osgeo.org/geos/trunk@2684 + fixed missing attribute. git-svn-id: + http://svn.osgeo.org/geos/trunk@2684 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli - * ChangeLog: updated git-svn-id: http://svn.osgeo.org/geos/trunk@2683 + * ChangeLog: updated git-svn-id: + http://svn.osgeo.org/geos/trunk@2683 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli - * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@2682 + * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@2682 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli * source/algorithm/distance/DistanceToPoint.cpp: Half the calls to - the virtual CoordinateSequence::getAt when computing line distances git-svn-id: http://svn.osgeo.org/geos/trunk@2681 + the virtual CoordinateSequence::getAt when computing line distances + git-svn-id: http://svn.osgeo.org/geos/trunk@2681 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli * source/geom/CoordinateArraySequence.cpp: Drop pointless asserts. We'd abort anyway if vector is null. For the out-of-range case the - GNU c++ lib helps debugging with an environment variable git-svn-id: http://svn.osgeo.org/geos/trunk@2680 + GNU c++ lib helps debugging with an environment variable + git-svn-id: http://svn.osgeo.org/geos/trunk@2680 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli * source/noding/OrientedCoordinateArray.cpp: Add note of - private/static nature of implemented methods git-svn-id: http://svn.osgeo.org/geos/trunk@2679 + private/static nature of implemented methods git-svn-id: + http://svn.osgeo.org/geos/trunk@2679 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli @@ -12056,135 +16535,157 @@ source/headers/geos/geom/CoordinateArraySequence.h, source/headers/geos/geom/CoordinateSequence.h: Expose a usable toVector method for CoordinateSequence (ie: no memory management - issues). Use it from Polygon::getCoordinates. git-svn-id: http://svn.osgeo.org/geos/trunk@2678 + issues). Use it from Polygon::getCoordinates. git-svn-id: + http://svn.osgeo.org/geos/trunk@2678 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-17 Sandro Santilli * source/geom/Polygon.cpp: Don't allocate too much space for polygon - points vector. Fixes bug #294. git-svn-id: http://svn.osgeo.org/geos/trunk@2677 + points vector. Fixes bug #294. git-svn-id: + http://svn.osgeo.org/geos/trunk@2677 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-16 Mateusz Loskot * tests/xmltester/tests/fme.xml: xmltester/tests: missing double - quotes around XML attribute value in fme.xml. git-svn-id: http://svn.osgeo.org/geos/trunk@2676 + quotes around XML attribute value in fme.xml. git-svn-id: + http://svn.osgeo.org/geos/trunk@2676 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-14 Sandro Santilli - * ChangeLog: regenerate ChangeLog git-svn-id: http://svn.osgeo.org/geos/trunk@2675 + * ChangeLog: regenerate ChangeLog git-svn-id: + http://svn.osgeo.org/geos/trunk@2675 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-14 Mateusz Loskot * build/msvc90/geos_unit/geos_unit.vcproj, build/msvc90/geos_xmltester/geos_xmltester.vcproj, - tests/xmltester/XMLTester.cpp, tests/xmltester/makefile.vc: * Optional use of GEOS_DEBUG_MSVC_USE_VLD in XMLTester.cpp * Added xmltester/makefile.vc as port of testrunner.sh for Windows - to be able to run all tests in batch: ** nmake /f makefile.vc - XMLTESTER=C:\path\to\xmltester.exe git-svn-id: http://svn.osgeo.org/geos/trunk@2674 + tests/xmltester/XMLTester.cpp, tests/xmltester/makefile.vc: * Optional use of GEOS_DEBUG_MSVC_USE_VLD in XMLTester.cpp * Added + xmltester/makefile.vc as port of testrunner.sh for Windows to be + able to run all tests in batch: ** nmake /f makefile.vc + XMLTESTER=C:\path\to\xmltester.exe git-svn-id: + http://svn.osgeo.org/geos/trunk@2674 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-14 Mateusz Loskot * build/msvc90/geos.sln, build/msvc90/geos_xmltester/geos_xmltester.vcproj: Added - msvc90/geos_xmltester to solution for Visual Studio 2008. git-svn-id: http://svn.osgeo.org/geos/trunk@2673 + msvc90/geos_xmltester to solution for Visual Studio 2008. + git-svn-id: http://svn.osgeo.org/geos/trunk@2673 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-14 Mateusz Loskot * tests/xmltester/XMLTester.cpp: Enable use of Stalkwalker only if - building with Visual C++ and GEOS_TEST_USE_STACKWALKER is defined. git-svn-id: http://svn.osgeo.org/geos/trunk@2672 + building with Visual C++ and GEOS_TEST_USE_STACKWALKER is defined. + git-svn-id: http://svn.osgeo.org/geos/trunk@2672 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-13 Mateusz Loskot * build/msvc90/geos_lib/geos_lib.vcproj: build/msvc90: added missing sources of linearref package. Builds with Visual C++ 9.0 (using both - project and makefiles). git-svn-id: http://svn.osgeo.org/geos/trunk@2671 + project and makefiles). git-svn-id: + http://svn.osgeo.org/geos/trunk@2671 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-13 Frank Warmerdam * ChangeLog, capi/geos_c.h.in, nmake.opt, source/Makefile.vc: fix - nmake dll export, and link test programs (#288) git-svn-id: http://svn.osgeo.org/geos/trunk@2670 + nmake dll export, and link test programs (#288) git-svn-id: + http://svn.osgeo.org/geos/trunk@2670 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Frank Warmerdam * source/Makefile.vc, source/dirlist.mk: add new directories and - source (#288) git-svn-id: http://svn.osgeo.org/geos/trunk@2669 + source (#288) git-svn-id: http://svn.osgeo.org/geos/trunk@2669 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli - * ChangeLog: regenerate ChangeLog now that we have all names in git-svn-id: http://svn.osgeo.org/geos/trunk@2668 + * ChangeLog: regenerate ChangeLog now that we have all names in + git-svn-id: http://svn.osgeo.org/geos/trunk@2668 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli - * authors.svn: Add other missing names/addresses git-svn-id: http://svn.osgeo.org/geos/trunk@2667 + * authors.svn: Add other missing names/addresses git-svn-id: + http://svn.osgeo.org/geos/trunk@2667 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli * ChangeLog, ChangeLog.svn, Makefile.am: Automatically generate the - ChangeLog file, forget ChangeLog.svn. git-svn-id: http://svn.osgeo.org/geos/trunk@2666 + ChangeLog file, forget ChangeLog.svn. git-svn-id: + http://svn.osgeo.org/geos/trunk@2666 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli * source/operation/overlay/snap/SnapIfNeededOverlayOp.cpp: Don't - signal topology exception when it triggers snapping git-svn-id: http://svn.osgeo.org/geos/trunk@2665 + signal topology exception when it triggers snapping git-svn-id: + http://svn.osgeo.org/geos/trunk@2665 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli - * authors.svn: Add yury, fernando and sean git-svn-id: http://svn.osgeo.org/geos/trunk@2664 + * authors.svn: Add yury, fernando and sean git-svn-id: + http://svn.osgeo.org/geos/trunk@2664 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli - * tests/unit/Makefile.am: Distribute all of TUT git-svn-id: http://svn.osgeo.org/geos/trunk@2663 + * tests/unit/Makefile.am: Distribute all of TUT git-svn-id: + http://svn.osgeo.org/geos/trunk@2663 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-08 Sandro Santilli * capi/geos_c.h.in, source/headers/geos/version.h.vc: Properly set - version for win target git-svn-id: http://svn.osgeo.org/geos/trunk@2662 + version for win target git-svn-id: + http://svn.osgeo.org/geos/trunk@2662 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-07 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/capi/GEOSBufferTest.cpp: Expose single-sided buffering in - C-API (see ticket #258) git-svn-id: http://svn.osgeo.org/geos/trunk@2661 + C-API (see ticket #258) git-svn-id: + http://svn.osgeo.org/geos/trunk@2661 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/algorithm/distance/DistanceToPoint.cpp, source/headers/geos/algorithm/distance/DistanceToPoint.h: Drop use - of static data in DistanceToPoint class (for thread-safety) git-svn-id: http://svn.osgeo.org/geos/trunk@2659 + of static data in DistanceToPoint class (for thread-safety) + git-svn-id: http://svn.osgeo.org/geos/trunk@2659 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: release memory earlier, - and closer to allocation git-svn-id: http://svn.osgeo.org/geos/trunk@2658 + and closer to allocation git-svn-id: + http://svn.osgeo.org/geos/trunk@2658 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Finish plugging leaks. - Make check runs with no leaks. git-svn-id: http://svn.osgeo.org/geos/trunk@2657 + Make check runs with no leaks. git-svn-id: + http://svn.osgeo.org/geos/trunk@2657 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/headers/geos/operation/buffer/OffsetCurveBuilder.h: another - memory management doc git-svn-id: http://svn.osgeo.org/geos/trunk@2656 + memory management doc git-svn-id: + http://svn.osgeo.org/geos/trunk@2656 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli @@ -12192,39 +16693,44 @@ * source/headers/geos/operation/buffer/OffsetCurveBuilder.h, source/headers/geos/operation/buffer/OffsetCurveSetBuilder.h, source/operation/buffer/OffsetCurveSetBuilder.cpp: Document more - memory management issues git-svn-id: http://svn.osgeo.org/geos/trunk@2655 + memory management issues git-svn-id: + http://svn.osgeo.org/geos/trunk@2655 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/OffsetCurveBuilder.cpp: More memory leak - fixes in single-sided buffering implementation git-svn-id: http://svn.osgeo.org/geos/trunk@2654 + fixes in single-sided buffering implementation git-svn-id: + http://svn.osgeo.org/geos/trunk@2654 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Plug some memory leaks - in single sided buffering implementation git-svn-id: http://svn.osgeo.org/geos/trunk@2653 + in single sided buffering implementation git-svn-id: + http://svn.osgeo.org/geos/trunk@2653 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * source/headers/geos/operation/linemerge/LineMerger.h: Document - ownership of return from LineMerger::getMergedLineStrings git-svn-id: http://svn.osgeo.org/geos/trunk@2652 + ownership of return from LineMerger::getMergedLineStrings + git-svn-id: http://svn.osgeo.org/geos/trunk@2652 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-05 Sandro Santilli * .vimrc: Alright, there's no standard style yet so this file is - made empty, but good to have for reference git-svn-id: http://svn.osgeo.org/geos/trunk@2651 + made empty, but good to have for reference git-svn-id: + http://svn.osgeo.org/geos/trunk@2651 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Throw an exception rather than returning NULL if input to single-sided buffer code is - invalid git-svn-id: http://svn.osgeo.org/geos/trunk@2650 + invalid git-svn-id: http://svn.osgeo.org/geos/trunk@2650 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli @@ -12234,91 +16740,104 @@ tests/xmltester/tests/safe/16596.xml, tests/xmltester/tests/singlesidedbuffer.xml: Have single-sided buffer constructor return a simple LINESTRING when appropriate - rather than forcing a MULTI; import 2 tests from the SAFE testsuite git-svn-id: http://svn.osgeo.org/geos/trunk@2649 + rather than forcing a MULTI; import 2 tests from the SAFE testsuite + git-svn-id: http://svn.osgeo.org/geos/trunk@2649 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli - * tests/xmltester/safe_to_xml.sh: Better parse style parameter git-svn-id: http://svn.osgeo.org/geos/trunk@2648 + * tests/xmltester/safe_to_xml.sh: Better parse style parameter + git-svn-id: http://svn.osgeo.org/geos/trunk@2648 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * tests/xmltester/safe_to_xml.sh: Add utility script to import tests - from SAFE software git-svn-id: http://svn.osgeo.org/geos/trunk@2647 + from SAFE software git-svn-id: + http://svn.osgeo.org/geos/trunk@2647 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * tests/xmltester/XMLTester.cpp: Don't segfault on xml tests missing - precision model specification git-svn-id: http://svn.osgeo.org/geos/trunk@2646 + precision model specification git-svn-id: + http://svn.osgeo.org/geos/trunk@2646 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * tests/xmltester/tests/singlesidedbuffer.xml: Re-enable the now - succeeding test for sharp edges line single sided buffering git-svn-id: http://svn.osgeo.org/geos/trunk@2645 + succeeding test for sharp edges line single sided buffering + git-svn-id: http://svn.osgeo.org/geos/trunk@2645 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Use FLAT/BUTT endcaps - when doing single sided buffering git-svn-id: http://svn.osgeo.org/geos/trunk@2644 + when doing single sided buffering git-svn-id: + http://svn.osgeo.org/geos/trunk@2644 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * source/operation/buffer/OffsetCurveBuilder.cpp: Fix trimming of - left/right curves (ie: don't include the endcap) git-svn-id: http://svn.osgeo.org/geos/trunk@2643 + left/right curves (ie: don't include the endcap) git-svn-id: + http://svn.osgeo.org/geos/trunk@2643 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-10-01 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Use snapped intersection between full buffer boundary and single-sided offset - curves git-svn-id: http://svn.osgeo.org/geos/trunk@2642 + curves git-svn-id: http://svn.osgeo.org/geos/trunk@2642 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli * tests/xmltester/SingleSidedBufferResultMatcher.cpp: Check hausdorff distance in both directions, or an expected output line - longer than the obtained one would be found as correct git-svn-id: http://svn.osgeo.org/geos/trunk@2641 + longer than the obtained one would be found as correct git-svn-id: + http://svn.osgeo.org/geos/trunk@2641 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Some debugging for - single sided buffers git-svn-id: http://svn.osgeo.org/geos/trunk@2640 + single sided buffers git-svn-id: + http://svn.osgeo.org/geos/trunk@2640 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli * tests/xmltester/tests/singlesidedbuffer.xml: Another simple test - for single-sided buffer (horizontal line, both directions) git-svn-id: http://svn.osgeo.org/geos/trunk@2639 + for single-sided buffer (horizontal line, both directions) + git-svn-id: http://svn.osgeo.org/geos/trunk@2639 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli * tests/xmltester/tests/singlesidedbuffer.xml: Another simple test - for a vertical line, opposite direction from previous git-svn-id: http://svn.osgeo.org/geos/trunk@2638 + for a vertical line, opposite direction from previous git-svn-id: + http://svn.osgeo.org/geos/trunk@2638 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli * tests/xmltester/tests/singlesidedbuffer.xml: Add test for single sided buffer on simple, vertical, line (this one succeeds both left - and right) git-svn-id: http://svn.osgeo.org/geos/trunk@2637 + and right) git-svn-id: http://svn.osgeo.org/geos/trunk@2637 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli - * .vimrc: VIM setting for GEOS source code style (3-spaces tabs) git-svn-id: http://svn.osgeo.org/geos/trunk@2636 + * .vimrc: VIM setting for GEOS source code style (3-spaces tabs) + git-svn-id: http://svn.osgeo.org/geos/trunk@2636 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-30 Sandro Santilli - * autogen.sh: Don't use non-standard escape sequences with 'echo' git-svn-id: http://svn.osgeo.org/geos/trunk@2635 + * autogen.sh: Don't use non-standard escape sequences with 'echo' + git-svn-id: http://svn.osgeo.org/geos/trunk@2635 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-28 Sandro Santilli @@ -12332,31 +16851,35 @@ tests/xmltester/tinyxml/tinyxml.h, tests/xmltester/tinyxml/tinyxmlerror.cpp, tests/xmltester/tinyxml/tinyxmlparser.cpp: Replace no-commercial-use - licenced MarkupSTL with tinyXML git-svn-id: http://svn.osgeo.org/geos/trunk@2634 + licenced MarkupSTL with tinyXML git-svn-id: + http://svn.osgeo.org/geos/trunk@2634 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-28 Sandro Santilli * tests/xmltester/tests/singlesidedbuffer.xml: Temporarly disable - failing single sided buffer test git-svn-id: http://svn.osgeo.org/geos/trunk@2633 + failing single sided buffer test git-svn-id: + http://svn.osgeo.org/geos/trunk@2633 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-28 Sandro Santilli * tests/xmltester/SingleSidedBufferResultMatcher.cpp: Oops, it seems - I just don't want a test to fail ;) git-svn-id: http://svn.osgeo.org/geos/trunk@2632 + I just don't want a test to fail ;) git-svn-id: + http://svn.osgeo.org/geos/trunk@2632 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-28 Sandro Santilli * tests/xmltester/SingleSidedBufferResultMatcher.cpp: Don't give a - false success if one of the expected/obtained geometry is empty git-svn-id: http://svn.osgeo.org/geos/trunk@2631 + false success if one of the expected/obtained geometry is empty + git-svn-id: http://svn.osgeo.org/geos/trunk@2631 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-28 Sandro Santilli * source/geom/PrecisionModel.cpp: Add offsets to PrecisionModel text - output git-svn-id: http://svn.osgeo.org/geos/trunk@2630 + output git-svn-id: http://svn.osgeo.org/geos/trunk@2630 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-28 Sandro Santilli @@ -12368,7 +16891,8 @@ tests/xmltester/tests/singlesidedbuffer.xml: Add an hausdorff distance based result matcher for single-sided buffer tests. Enable the single sided buffer test provided by swong in ticket #215 with - minor tweak (expect multilinestring). git-svn-id: http://svn.osgeo.org/geos/trunk@2629 + minor tweak (expect multilinestring). git-svn-id: + http://svn.osgeo.org/geos/trunk@2629 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-27 Sandro Santilli @@ -12379,24 +16903,37 @@ source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveVertexList.h, tests/xmltester/XMLTester.cpp: Re-introduce the singlesided buffer - patch. Tests still need to be worked on. git-svn-id: http://svn.osgeo.org/geos/trunk@2628 + patch. Tests still need to be worked on. git-svn-id: + http://svn.osgeo.org/geos/trunk@2628 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-21 Paul Ramsey * source/geom/Polygon.cpp: Polygon with empty ring causes a crash in - WKBReader (from Tamas Szekeres) (#290) git-svn-id: http://svn.osgeo.org/geos/trunk@2626 + WKBReader (from Tamas Szekeres) (#290) git-svn-id: + http://svn.osgeo.org/geos/trunk@2626 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-09-11 Paul Ramsey * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Patch for - #285, C api for project and interpolate, from David Turner (novalis) git-svn-id: http://svn.osgeo.org/geos/trunk@2624 + #285, C api for project and interpolate, from David Turner (novalis) + git-svn-id: http://svn.osgeo.org/geos/trunk@2624 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-08-21 Mateusz Loskot + + * : Updated svn:ignore property git-svn-id: + http://svn.osgeo.org/geos/trunk@2623 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-08-21 Mateusz Loskot - * : Updated svn:ignore property git-svn-id: http://svn.osgeo.org/geos/trunk@2623 + * source/headers/geos/export.h, + tests/unit/algorithm/RobustLineIntersectionTest.cpp, + tests/unit/geom/CoordinateArraySequenceTest.cpp, + tests/unit/geos_unit.cpp: Cleaned compilation warnings in unit + tests. git-svn-id: http://svn.osgeo.org/geos/trunk@2622 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-08-21 Mateusz Loskot @@ -12407,7 +16944,8 @@ tests/unit/tut/tut_reporter.hpp, tests/unit/tut/tut_restartable.hpp, tests/unit/tut/tut_result.hpp, tests/unit/tut/tut_runner.hpp: Updated C++ TUT Framework to latest - revision (147) of its SVN trunk git-svn-id: http://svn.osgeo.org/geos/trunk@2621 + revision (147) of its SVN trunk git-svn-id: + http://svn.osgeo.org/geos/trunk@2621 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-08-15 Sandro Santilli @@ -12428,7 +16966,8 @@ source/linearref/LinearLocation.cpp, source/linearref/LocationIndexOfLine.cpp, source/linearref/LocationIndexOfPoint.cpp: Const correctness of - LenghtIndexedLine port, by novalis (issue #284) git-svn-id: http://svn.osgeo.org/geos/trunk@2620 + LenghtIndexedLine port, by novalis (issue #284) git-svn-id: + http://svn.osgeo.org/geos/trunk@2620 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-08-12 Paul Ramsey @@ -12457,7 +16996,8 @@ source/linearref/LocationIndexOfPoint.cpp, source/linearref/Makefile.am, tests/unit/Makefile.am, tests/unit/linearref/LengthIndexedLineTest.cpp: Port of JTS linear - referencing (from David Turner) (#283) git-svn-id: http://svn.osgeo.org/geos/trunk@2619 + referencing (from David Turner) (#283) git-svn-id: + http://svn.osgeo.org/geos/trunk@2619 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-08-02 Mateusz Loskot @@ -12476,32 +17016,37 @@ 2009-07-17 Paul Ramsey * source/headers/geos/io/WKBReader.h, source/io/WKBReader.cpp: - Remove static string in WKB reader (#232) git-svn-id: http://svn.osgeo.org/geos/trunk@2616 + Remove static string in WKB reader (#232) git-svn-id: + http://svn.osgeo.org/geos/trunk@2616 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-07-15 Paul Ramsey * swig/geos.i.in, swig/ruby/ruby.i: Add PreparedGeometry and STRtree - support to SWIG (#279) Schuyler Erle git-svn-id: http://svn.osgeo.org/geos/trunk@2613 + support to SWIG (#279) Schuyler Erle git-svn-id: + http://svn.osgeo.org/geos/trunk@2613 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-07-15 Paul Ramsey * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Add STRtree - support to the C API (#278) Schuyler Erle git-svn-id: http://svn.osgeo.org/geos/trunk@2612 + support to the C API (#278) Schuyler Erle git-svn-id: + http://svn.osgeo.org/geos/trunk@2612 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-07-15 Paul Ramsey * source/headers/geos/index/strtree/AbstractSTRtree.h, source/index/strtree/AbstractSTRtree.cpp: Add - geos::index::strtree::AbstractSTRtree::iterate (#277) Schuyler Erle git-svn-id: http://svn.osgeo.org/geos/trunk@2611 + geos::index::strtree::AbstractSTRtree::iterate (#277) Schuyler Erle + git-svn-id: http://svn.osgeo.org/geos/trunk@2611 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-07-06 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/bug275.xml: Add - automated XML test for issue #275. Succeeds here. git-svn-id: http://svn.osgeo.org/geos/trunk@2610 + automated XML test for issue #275. Succeeds here. git-svn-id: + http://svn.osgeo.org/geos/trunk@2610 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-07-05 Sandro Santilli @@ -12509,111 +17054,125 @@ * build/msvc90/geos_c_dll/geos_c_dll.vcproj, build/msvc90/geos_lib/geos_lib.vcproj, build/msvc90/geos_unit/geos_unit.vcproj: Apply - fix-msvc90-only2.patch by Sanak from issue #273 git-svn-id: http://svn.osgeo.org/geos/trunk@2609 + fix-msvc90-only2.patch by Sanak from issue #273 git-svn-id: + http://svn.osgeo.org/geos/trunk@2609 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-07-04 Sandro Santilli * source/headers/geos/export.h, source/headers/geos/platform.h.in: - Apply fix-mingw.patch by Sanak (issue #273) git-svn-id: http://svn.osgeo.org/geos/trunk@2608 + Apply fix-mingw.patch by Sanak (issue #273) git-svn-id: + http://svn.osgeo.org/geos/trunk@2608 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-29 Paul Ramsey - * Makefile.am: Include nmake.opt in 'dist' target (#274) git-svn-id: http://svn.osgeo.org/geos/trunk@2607 + * Makefile.am: Include nmake.opt in 'dist' target (#274) + git-svn-id: http://svn.osgeo.org/geos/trunk@2607 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-26 Sandro Santilli * source/headers/geos/operation/buffer/BufferOp.h: Fix typo reported - in ticket #272 git-svn-id: http://svn.osgeo.org/geos/trunk@2605 + in ticket #272 git-svn-id: http://svn.osgeo.org/geos/trunk@2605 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-24 Paul Ramsey * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp, tests/unit/capi/geostest.c, tests/unit/capi/test.expected: Expose - Hausdorf distance to CAPI (#264) from Vincent Picavet git-svn-id: http://svn.osgeo.org/geos/trunk@2604 + Hausdorf distance to CAPI (#264) from Vincent Picavet git-svn-id: + http://svn.osgeo.org/geos/trunk@2604 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-24 Paul Ramsey - * source/headers/geos/platform.h.in: Fix stoopid syntax error. git-svn-id: http://svn.osgeo.org/geos/trunk@2603 + * source/headers/geos/platform.h.in: Fix stoopid syntax error. + git-svn-id: http://svn.osgeo.org/geos/trunk@2603 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-24 Paul Ramsey - * configure.in: Remove old logging noise. git-svn-id: http://svn.osgeo.org/geos/trunk@2602 + * configure.in: Remove old logging noise. git-svn-id: + http://svn.osgeo.org/geos/trunk@2602 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-24 Paul Ramsey * configure.in, source/headers/geos/platform.h.in: Fix for #270, bad definition of isnan() in OS/X . This needs to be tested on - other operating systems to make sure it doesn't break them instead. git-svn-id: http://svn.osgeo.org/geos/trunk@2601 + other operating systems to make sure it doesn't break them instead. + git-svn-id: http://svn.osgeo.org/geos/trunk@2601 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-23 Paul Ramsey * source/Makefile.vc, source/dirlist.mk: Fix clean target for VC - build (#267) git-svn-id: http://svn.osgeo.org/geos/trunk@2599 + build (#267) git-svn-id: http://svn.osgeo.org/geos/trunk@2599 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-23 Howard Butler * source/Makefile.vc: fix up syntax of the makefile related to the - patch for #257 git-svn-id: http://svn.osgeo.org/geos/trunk@2598 + patch for #257 git-svn-id: http://svn.osgeo.org/geos/trunk@2598 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-22 Sandro Santilli * tests/unit/capi/GEOSBufferTest.cpp: Add tests for limited mitre - join (now working) git-svn-id: http://svn.osgeo.org/geos/trunk@2597 + join (now working) git-svn-id: + http://svn.osgeo.org/geos/trunk@2597 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-22 Sandro Santilli * source/headers/geos/operation/buffer/BufferParameters.h: Fix bug - in BufferParameters::setMitreLimit git-svn-id: http://svn.osgeo.org/geos/trunk@2596 + in BufferParameters::setMitreLimit git-svn-id: + http://svn.osgeo.org/geos/trunk@2596 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-20 Sandro Santilli - * configure.in: Bump versions (core 3.2.0, capi 1.6.0, port 1.10.0) git-svn-id: http://svn.osgeo.org/geos/trunk@2595 + * configure.in: Bump versions (core 3.2.0, capi 1.6.0, port 1.10.0) + git-svn-id: http://svn.osgeo.org/geos/trunk@2595 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-20 Sandro Santilli * tests/unit/Makefile.am, tests/unit/capi/GEOSBufferTest.cpp: Add - tests for GEOSBufferWithStyle git-svn-id: http://svn.osgeo.org/geos/trunk@2594 + tests for GEOSBufferWithStyle git-svn-id: + http://svn.osgeo.org/geos/trunk@2594 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-19 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Extend the C-API interface to expose a GEOSBufferWithStyle (and corresponding - thread-safe version) and related enums. git-svn-id: http://svn.osgeo.org/geos/trunk@2593 + thread-safe version) and related enums. git-svn-id: + http://svn.osgeo.org/geos/trunk@2593 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-16 Sandro Santilli * source/algorithm/RobustDeterminant.cpp, source/headers/geos/algorithm/RobustDeterminant.h: Sync - RobustDeterminant to JTS-1.10 (r1.15 was just commented-out code) git-svn-id: http://svn.osgeo.org/geos/trunk@2592 + RobustDeterminant to JTS-1.10 (r1.15 was just commented-out code) + git-svn-id: http://svn.osgeo.org/geos/trunk@2592 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-16 Sandro Santilli * source/algorithm/RobustDeterminant.cpp, source/headers/geos/algorithm/RobustDeterminant.h: Sync - RobustDeterminant to revision 1.14 git-svn-id: http://svn.osgeo.org/geos/trunk@2591 + RobustDeterminant to revision 1.14 git-svn-id: + http://svn.osgeo.org/geos/trunk@2591 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-16 Sandro Santilli * source/algorithm/RobustDeterminant.cpp, source/headers/geos/algorithm/RobustDeterminant.h: Port info for - RobustDeterminant git-svn-id: http://svn.osgeo.org/geos/trunk@2590 + RobustDeterminant git-svn-id: http://svn.osgeo.org/geos/trunk@2590 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-16 Sandro Santilli @@ -12624,18 +17183,20 @@ source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveVertexList.h, tests/xmltester/XMLTester.cpp: Revert single-sided patch. Martin - Davis is workin on it from the JTS side git-svn-id: http://svn.osgeo.org/geos/trunk@2589 + Davis is workin on it from the JTS side git-svn-id: + http://svn.osgeo.org/geos/trunk@2589 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-16 Paul Ramsey - * HOWTO_RELEASE: add reminders on bump versions in various places git-svn-id: http://svn.osgeo.org/geos/trunk@2581 + * HOWTO_RELEASE: add reminders on bump versions in various places + git-svn-id: http://svn.osgeo.org/geos/trunk@2581 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-15 Paul Ramsey * source/headers/geos/Makefile.am: operation.h in Makefile.am twice. - (#261) git-svn-id: http://svn.osgeo.org/geos/trunk@2580 + (#261) git-svn-id: http://svn.osgeo.org/geos/trunk@2580 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-15 Sandro Santilli @@ -12658,13 +17219,15 @@ source/io/StringTokenizer.cpp, source/io/WKBReader.cpp, source/io/WKBWriter.cpp, source/io/WKTReader.cpp, source/io/WKTWriter.cpp, source/io/Writer.cpp: Port info in the - geos::io namespace git-svn-id: http://svn.osgeo.org/geos/trunk@2579 + geos::io namespace git-svn-id: + http://svn.osgeo.org/geos/trunk@2579 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-15 Sandro Santilli * source/io/WKTWriter.cpp: Put CLocalizer in the correct function. - Fixes #260 for the writing part. git-svn-id: http://svn.osgeo.org/geos/trunk@2578 + Fixes #260 for the writing part. git-svn-id: + http://svn.osgeo.org/geos/trunk@2578 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-15 Sandro Santilli @@ -12672,19 +17235,22 @@ * capi/geos_ts_c.cpp: Stop explicitly using the CLocalizer now that it is done within WKTReader and WKTWriter (see bug #260). Some deep testing about this would be good. Make check worked for me with - comma-using locale. git-svn-id: http://svn.osgeo.org/geos/trunk@2577 + comma-using locale. git-svn-id: + http://svn.osgeo.org/geos/trunk@2577 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-15 Sandro Santilli * source/io/WKTReader.cpp, source/io/WKTWriter.cpp: Use C locale - while reading/writing WKT. Fixes bug #260. git-svn-id: http://svn.osgeo.org/geos/trunk@2576 + while reading/writing WKT. Fixes bug #260. git-svn-id: + http://svn.osgeo.org/geos/trunk@2576 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-15 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/bug176.xml: Add - XML version of the testcase provided for bug #176 git-svn-id: http://svn.osgeo.org/geos/trunk@2575 + XML version of the testcase provided for bug #176 git-svn-id: + http://svn.osgeo.org/geos/trunk@2575 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12705,14 +17271,15 @@ source/operation/valid/SimpleNestedRingTester.cpp, source/operation/valid/SweeplineNestedRingTester.cpp, source/operation/valid/TopologyValidationError.cpp: JTS-1.10 port - sync. The whole 'operation' namespace is complete on this. git-svn-id: http://svn.osgeo.org/geos/trunk@2572 + sync. The whole 'operation' namespace is complete on this. + git-svn-id: http://svn.osgeo.org/geos/trunk@2572 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli * source/headers/geos/operation/union/CascadedPolygonUnion.h, source/operation/union/CascadedPolygonUnion.cpp: Port info for - operation::union git-svn-id: http://svn.osgeo.org/geos/trunk@2571 + operation::union git-svn-id: http://svn.osgeo.org/geos/trunk@2571 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12721,14 +17288,16 @@ source/headers/geos/operation/predicate/SegmentIntersectionTester.h , source/operation/predicate/RectangleIntersects.cpp, source/operation/predicate/SegmentIntersectionTester.cpp: Sync to - JTS-1.10 (port info in SegmentIntersectionTester was wrong, btw) git-svn-id: http://svn.osgeo.org/geos/trunk@2570 + JTS-1.10 (port info in SegmentIntersectionTester was wrong, btw) + git-svn-id: http://svn.osgeo.org/geos/trunk@2570 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli * source/headers/geos/operation/predicate/RectangleContains.h, source/operation/predicate/RectangleContains.cpp: Sync - RectangleContains to JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2569 + RectangleContains to JTS-1.10 git-svn-id: + http://svn.osgeo.org/geos/trunk@2569 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12737,7 +17306,8 @@ source/headers/geos/operation/predicate/RectangleIntersects.h, source/headers/geos/operation/predicate/SegmentIntersectionTester.h , source/operation/predicate/SegmentIntersectionTester.cpp: Port - info for operation::predicate (we're at JTS-1.7 here) git-svn-id: http://svn.osgeo.org/geos/trunk@2568 + info for operation::predicate (we're at JTS-1.7 here) git-svn-id: + http://svn.osgeo.org/geos/trunk@2568 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12752,7 +17322,8 @@ source/operation/polygonize/PolygonizeEdge.cpp, source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp: Port info for - polygonize operation git-svn-id: http://svn.osgeo.org/geos/trunk@2567 + polygonize operation git-svn-id: + http://svn.osgeo.org/geos/trunk@2567 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12765,14 +17336,16 @@ or.h, source/operation/overlay/validate/FuzzyPointLocator.cpp, source/operation/overlay/validate/OffsetPointGenerator.cpp, source/operation/overlay/validate/OverlayResultValidator.cpp: Port - info and sync for operation::overlay::validate git-svn-id: http://svn.osgeo.org/geos/trunk@2566 + info and sync for operation::overlay::validate git-svn-id: + http://svn.osgeo.org/geos/trunk@2566 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli * source/headers/geos/operation/overlay/LineBuilder.h, source/operation/overlay/LineBuilder.cpp: sync LineBuilder to - JTS-1.10, completing overlay port git-svn-id: http://svn.osgeo.org/geos/trunk@2565 + JTS-1.10, completing overlay port git-svn-id: + http://svn.osgeo.org/geos/trunk@2565 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12792,7 +17365,7 @@ source/operation/overlay/MinimalEdgeRing.cpp, source/operation/overlay/OverlayNodeFactory.cpp, source/operation/overlay/PointBuilder.cpp: Complete port info in - overlay package git-svn-id: http://svn.osgeo.org/geos/trunk@2564 + overlay package git-svn-id: http://svn.osgeo.org/geos/trunk@2564 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12801,7 +17374,8 @@ source/headers/geos/planargraph/GraphComponent.h, source/operation/linemerge/LineMerger.cpp: Add missing setMarked static methods in GraphComponent and make use of them in LineMerger - making it able to be called incrementally (JTS-1.10) git-svn-id: http://svn.osgeo.org/geos/trunk@2563 + making it able to be called incrementally (JTS-1.10) git-svn-id: + http://svn.osgeo.org/geos/trunk@2563 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12819,21 +17393,24 @@ source/operation/linemerge/LineMerger.cpp, source/operation/linemerge/LineSequencer.cpp: Port info in operation::linemerge (a single class is still at JTS-1.7, needs - changes in GeometryGraphComponent.h to go up) git-svn-id: http://svn.osgeo.org/geos/trunk@2562 + changes in GeometryGraphComponent.h to go up) git-svn-id: + http://svn.osgeo.org/geos/trunk@2562 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli * source/headers/geos/operation/distance/GeometryLocation.h, source/operation/distance/GeometryLocation.cpp: GeometryLocation - sync to JTS-1.10 (docs) git-svn-id: http://svn.osgeo.org/geos/trunk@2561 + sync to JTS-1.10 (docs) git-svn-id: + http://svn.osgeo.org/geos/trunk@2561 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli * source/headers/geos/operation/distance/DistanceOp.h, source/operation/distance/DistanceOp.cpp: DistanceOp sync to - JTS-1.10 (renames, docs...) git-svn-id: http://svn.osgeo.org/geos/trunk@2560 + JTS-1.10 (renames, docs...) git-svn-id: + http://svn.osgeo.org/geos/trunk@2560 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12857,13 +17434,15 @@ source/operation/buffer/OffsetCurveVertexList.h, source/operation/buffer/RightmostEdgeFinder.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: Update port info - for buffer package (it's really JTS-1.10) git-svn-id: http://svn.osgeo.org/geos/trunk@2559 + for buffer package (it's really JTS-1.10) git-svn-id: + http://svn.osgeo.org/geos/trunk@2559 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli * configure.in: Warn at configure time if 64bit integer type isn't - found. See bug #202. git-svn-id: http://svn.osgeo.org/geos/trunk@2558 + found. See bug #202. git-svn-id: + http://svn.osgeo.org/geos/trunk@2558 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-08 Sandro Santilli @@ -12942,7 +17521,8 @@ source/headers/geos/util/Makefile.am, tests/unit/Makefile.am: Install all C++ headers to reduce maintainance costs. C++ API is documented as being unstable after all so let's give users the power - to hurt themselves :) git-svn-id: http://svn.osgeo.org/geos/trunk@2557 + to hurt themselves :) git-svn-id: + http://svn.osgeo.org/geos/trunk@2557 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-06 Sandro Santilli @@ -13190,13 +17770,14 @@ source/headers/geos/util/UnsupportedOperationException.h, source/index/intervalrtree/SortedPackedIntervalRTree.cpp: Windows C++ exports by Ragi Y. Burhum. See - http://lists.osgeo.org/pipermail/geos-devel/2009-June/004190.html git-svn-id: http://svn.osgeo.org/geos/trunk@2556 + http://lists.osgeo.org/pipermail/geos-devel/2009-June/004190.html + git-svn-id: http://svn.osgeo.org/geos/trunk@2556 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-06 Sandro Santilli * tests/xmltester/SimpleWKTTester.cpp: fix headers inclusion - warnings git-svn-id: http://svn.osgeo.org/geos/trunk@2555 + warnings git-svn-id: http://svn.osgeo.org/geos/trunk@2555 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-06 Sandro Santilli @@ -13220,7 +17801,8 @@ tests/unit/operation/distance/DistanceOpTest.cpp: Use real NaNs rather than fake them. Applies patch in ticket #259. Adds autoconf checks for finite() and isfinite() and makes use of them for unix - systems (platform.h) git-svn-id: http://svn.osgeo.org/geos/trunk@2554 + systems (platform.h) git-svn-id: + http://svn.osgeo.org/geos/trunk@2554 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-06 Sandro Santilli @@ -13234,25 +17816,28 @@ source/operation/distance/ConnectedElementLocationFilter.cpp, source/operation/distance/ConnectedElementPointFilter.cpp, source/operation/distance/GeometryLocation.cpp: Complete port info - and headers exposion for operation::distance package git-svn-id: http://svn.osgeo.org/geos/trunk@2553 + and headers exposion for operation::distance package git-svn-id: + http://svn.osgeo.org/geos/trunk@2553 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli * source/headers/geos/operation/overlay/OverlayOp.h, - source/operation/overlay/OverlayOp.cpp: JTS-1.10 OverlayOp git-svn-id: http://svn.osgeo.org/geos/trunk@2552 + source/operation/overlay/OverlayOp.cpp: JTS-1.10 OverlayOp + git-svn-id: http://svn.osgeo.org/geos/trunk@2552 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli * source/headers/geos/geomgraph/EdgeNodingValidator.h: Add missing - static function git-svn-id: http://svn.osgeo.org/geos/trunk@2551 + static function git-svn-id: http://svn.osgeo.org/geos/trunk@2551 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli * source/headers/geos/operation/overlay/MaximalEdgeRing.h, - source/operation/overlay/MaximalEdgeRing.cpp: JTS-1.10 sync git-svn-id: http://svn.osgeo.org/geos/trunk@2550 + source/operation/overlay/MaximalEdgeRing.cpp: JTS-1.10 sync + git-svn-id: http://svn.osgeo.org/geos/trunk@2550 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13261,14 +17846,16 @@ source/headers/geos/operation/relate/RelateOp.h, source/operation/GeometryGraphOperation.cpp, source/operation/relate/RelateOp.cpp: Boundary Node Rule support in - relateOp. JTS-1.10. git-svn-id: http://svn.osgeo.org/geos/trunk@2549 + relateOp. JTS-1.10. git-svn-id: + http://svn.osgeo.org/geos/trunk@2549 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli * source/geomgraph/EdgeList.cpp, source/geomgraph/Node.cpp, source/headers/geos/geomgraph/Node.h: geomgraph package fully - sync'ed to JTS-1.10 now git-svn-id: http://svn.osgeo.org/geos/trunk@2548 + sync'ed to JTS-1.10 now git-svn-id: + http://svn.osgeo.org/geos/trunk@2548 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13280,7 +17867,8 @@ source/headers/geos/operation/valid/ConsistentAreaTester.h, source/operation/relate/EdgeEndBundle.cpp, source/operation/valid/ConsistentAreaTester.cpp: added - BoundaryNodeRule capability to EdgeEnds git-svn-id: http://svn.osgeo.org/geos/trunk@2547 + BoundaryNodeRule capability to EdgeEnds git-svn-id: + http://svn.osgeo.org/geos/trunk@2547 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13288,7 +17876,8 @@ * source/geomgraph/GeometryGraph.cpp, source/headers/geos/geomgraph/GeometryGraph.h, source/headers/geos/geomgraph/GeometryGraph.inl: Add support for - custom BoundaryNodeRule bringing GeometryGraph to JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2546 + custom BoundaryNodeRule bringing GeometryGraph to JTS-1.10 + git-svn-id: http://svn.osgeo.org/geos/trunk@2546 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13311,7 +17900,8 @@ source/headers/geos/geomgraph/Position.h, source/headers/geos/geomgraph/Quadrant.h, source/headers/geos/geomgraph/TopologyLocation.h: Complete port info - in geomgraph package git-svn-id: http://svn.osgeo.org/geos/trunk@2545 + in geomgraph package git-svn-id: + http://svn.osgeo.org/geos/trunk@2545 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13330,7 +17920,8 @@ source/headers/geos/geomgraph/NodeMap.h, source/headers/geos/geomgraph/PlanarGraph.h: Port info in the geomgraph package (unfinished); fix compiler warning in - GeometryGraph and make code more readable; git-svn-id: http://svn.osgeo.org/geos/trunk@2544 + GeometryGraph and make code more readable; git-svn-id: + http://svn.osgeo.org/geos/trunk@2544 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13351,17 +17942,20 @@ source/operation/relate/RelateNodeFactory.cpp, source/operation/relate/RelateNodeGraph.cpp, source/operation/relate/RelateOp.cpp: Add port info and introduce - header exposion info. Relate op results partially in JTS-1.7 still. git-svn-id: http://svn.osgeo.org/geos/trunk@2543 + header exposion info. Relate op results partially in JTS-1.7 still. + git-svn-id: http://svn.osgeo.org/geos/trunk@2543 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli - * source/headers/geos/geom.h: typo in doxygen index page git-svn-id: http://svn.osgeo.org/geos/trunk@2542 + * source/headers/geos/geom.h: typo in doxygen index page + git-svn-id: http://svn.osgeo.org/geos/trunk@2542 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli - * source/headers/geos/geom.h: Fix doxygen link git-svn-id: http://svn.osgeo.org/geos/trunk@2541 + * source/headers/geos/geom.h: Fix doxygen link git-svn-id: + http://svn.osgeo.org/geos/trunk@2541 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli @@ -13372,13 +17966,14 @@ source/headers/geos/index/intervalrtree/SortedPackedIntervalRTree.h: Fix deletion of void pointer in IntervalRTreeLeafNode, document ownership, fix callers tracking allocations to avoid leaks. Fixes - bug #227. git-svn-id: http://svn.osgeo.org/geos/trunk@2540 + bug #227. git-svn-id: http://svn.osgeo.org/geos/trunk@2540 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-05 Sandro Santilli * ChangeLog.svn, Makefile.am: Allow generating ChangeLog from - external build tree git-svn-id: http://svn.osgeo.org/geos/trunk@2539 + external build tree git-svn-id: + http://svn.osgeo.org/geos/trunk@2539 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-04 Mateusz Loskot @@ -13389,10 +17984,10 @@ source/geom/LinearRing.cpp, source/headers/geos/algorithm/distance/DiscreteHausdorffDistance.h, source/index/chain/MonotoneChainBuilder.cpp, - tests/unit/operation/valid/IsValidTest.cpp: * Applied patch for ticket #257. * Noticed that unit tests fail: - 1>geos::util::UniqueCoordinateArrayFilter: . 1>---> group: + tests/unit/operation/valid/IsValidTest.cpp: * Applied patch for ticket #257. * Noticed that unit tests fail: + 1>geos::util::UniqueCoordinateArrayFilter: . 1>---> group: geos::operation::valid::IsValidOp, test: test<1> 1> problem: - assertion failed git-svn-id: http://svn.osgeo.org/geos/trunk@2538 + assertion failed git-svn-id: http://svn.osgeo.org/geos/trunk@2538 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-04 Mateusz Loskot @@ -13405,13 +18000,13 @@ 2009-06-04 Sandro Santilli * tests/xmltester/XMLTester.cpp: Add support for testing single - sided buffers git-svn-id: http://svn.osgeo.org/geos/trunk@2536 + sided buffers git-svn-id: http://svn.osgeo.org/geos/trunk@2536 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-06-01 Howard Butler * capi/geos_c.cpp: #256 finishGEOS called multiple times will - segfault git-svn-id: http://svn.osgeo.org/geos/trunk@2534 + segfault git-svn-id: http://svn.osgeo.org/geos/trunk@2534 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-28 Mateusz Loskot @@ -13422,18 +18017,21 @@ 2009-05-27 Paul Ramsey - * NEWS: remove error git-svn-id: http://svn.osgeo.org/geos/trunk@2516 + * NEWS: remove error git-svn-id: + http://svn.osgeo.org/geos/trunk@2516 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-27 Paul Ramsey - * NEWS: Add single-sided item git-svn-id: http://svn.osgeo.org/geos/trunk@2515 + * NEWS: Add single-sided item git-svn-id: + http://svn.osgeo.org/geos/trunk@2515 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-21 Sandro Santilli * ChangeLog.svn, Makefile.am, authors.svn: Add Mat's and Paul's - entries, make ChangeLog.svn rule phony git-svn-id: http://svn.osgeo.org/geos/trunk@2514 + entries, make ChangeLog.svn rule phony git-svn-id: + http://svn.osgeo.org/geos/trunk@2514 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-21 Sandro Santilli @@ -13443,35 +18041,41 @@ usernames and full names: please expand your own nick. The generated ChangeLog is added to repository to show you how it looks. If everybody agree we could rename this to ChangeLog and stop requiring - manual edits (+1 from me:) git-svn-id: http://svn.osgeo.org/geos/trunk@2513 + manual edits (+1 from me:) git-svn-id: + http://svn.osgeo.org/geos/trunk@2513 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-13 Frank Warmerdam - * capi/geos_c.h.in: refer to GEOSFree() instead of free() git-svn-id: http://svn.osgeo.org/geos/trunk@2508 + * capi/geos_c.h.in: refer to GEOSFree() instead of free() + git-svn-id: http://svn.osgeo.org/geos/trunk@2508 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-13 Frank Warmerdam * capi/geos_c.cpp, capi/geos_ts_c.cpp: forward GEOSFree to - GEOSFree_r, use std:: prefix on free() (#249) git-svn-id: http://svn.osgeo.org/geos/trunk@2507 + GEOSFree_r, use std:: prefix on free() (#249) git-svn-id: + http://svn.osgeo.org/geos/trunk@2507 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-13 Frank Warmerdam * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: - Added GEOSFree() and GEOSFree_r() (#249) git-svn-id: http://svn.osgeo.org/geos/trunk@2506 + Added GEOSFree() and GEOSFree_r() (#249) git-svn-id: + http://svn.osgeo.org/geos/trunk@2506 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-12 Sandro Santilli - * NEWS: Add note about single-sided buffer git-svn-id: http://svn.osgeo.org/geos/trunk@2505 + * NEWS: Add note about single-sided buffer git-svn-id: + http://svn.osgeo.org/geos/trunk@2505 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-12 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/bug244.xml: - Never fail bug #244 again (regression testcase added) git-svn-id: http://svn.osgeo.org/geos/trunk@2504 + Never fail bug #244 again (regression testcase added) git-svn-id: + http://svn.osgeo.org/geos/trunk@2504 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-12 Sandro Santilli @@ -13479,49 +18083,57 @@ * source/operation/buffer/SubgraphDepthLocater.cpp: Have DepthSegment hold a real LineSegment, not a reference. SubgraphDepthLocater was passing the same LineSegment reference to - multiple DepthSegments, messing everything up. This fixes bug #244. git-svn-id: http://svn.osgeo.org/geos/trunk@2503 + multiple DepthSegments, messing everything up. This fixes bug #244. + git-svn-id: http://svn.osgeo.org/geos/trunk@2503 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-12 Sandro Santilli * source/geomgraph/DirectedEdge.cpp, source/headers/geos/geomgraph/DirectedEdge.h, - source/headers/geos/geomgraph/DirectedEdge.inl: Port info git-svn-id: http://svn.osgeo.org/geos/trunk@2502 + source/headers/geos/geomgraph/DirectedEdge.inl: Port info + git-svn-id: http://svn.osgeo.org/geos/trunk@2502 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * source/headers/geos/operation/overlay/PolygonBuilder.h, - source/operation/overlay/PolygonBuilder.cpp: Update port info git-svn-id: http://svn.osgeo.org/geos/trunk@2501 + source/operation/overlay/PolygonBuilder.cpp: Update port info + git-svn-id: http://svn.osgeo.org/geos/trunk@2501 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * capi/geos_c.h.in: When included in a C++ environment, include - and use std::size_t. Patch by Mateusz Loskot, ticket #252. git-svn-id: http://svn.osgeo.org/geos/trunk@2500 + and use std::size_t. Patch by Mateusz Loskot, ticket #252. + git-svn-id: http://svn.osgeo.org/geos/trunk@2500 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * source/operation/distance/DistanceOp.cpp: Oops, forgot to update - the static closedPoints signature.. git-svn-id: http://svn.osgeo.org/geos/trunk@2499 + the static closedPoints signature.. git-svn-id: + http://svn.osgeo.org/geos/trunk@2499 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli - * NEWS: Note the withinDistance addition to DistanceOp git-svn-id: http://svn.osgeo.org/geos/trunk@2498 + * NEWS: Note the withinDistance addition to DistanceOp git-svn-id: + http://svn.osgeo.org/geos/trunk@2498 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * tests/unit/operation/distance/DistanceOpTest.cpp: Add the complete - set of tests for closedPoints git-svn-id: http://svn.osgeo.org/geos/trunk@2497 + set of tests for closedPoints git-svn-id: + http://svn.osgeo.org/geos/trunk@2497 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * source/headers/geos/operation/distance/DistanceOp.h: Document - semantic of a null return from closestPoints git-svn-id: http://svn.osgeo.org/geos/trunk@2496 + semantic of a null return from closestPoints git-svn-id: + http://svn.osgeo.org/geos/trunk@2496 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli @@ -13532,36 +18144,42 @@ chance to make the GeometryLocation retrival function private as we don't install GeometryLocation.h header anyway (for future cleanups), and to rename a function to follow current JTS naming - (more renames to come for proper sync) git-svn-id: http://svn.osgeo.org/geos/trunk@2495 + (more renames to come for proper sync) git-svn-id: + http://svn.osgeo.org/geos/trunk@2495 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * source/headers/geos/operation/distance/DistanceOp.h, source/operation/distance/DistanceOp.cpp: Add isWithinDistance() to - DistanceOp, reaching rev 1.17 of JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2494 + DistanceOp, reaching rev 1.17 of JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@2494 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli * source/headers/geos/operation/distance/DistanceOp.h, - source/operation/distance/DistanceOp.cpp: Port info for DistanceOp git-svn-id: http://svn.osgeo.org/geos/trunk@2493 + source/operation/distance/DistanceOp.cpp: Port info for DistanceOp + git-svn-id: http://svn.osgeo.org/geos/trunk@2493 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-08 Sandro Santilli - * capi/geos_c.h.in: Always include stddef.h. Closes bug #213 git-svn-id: http://svn.osgeo.org/geos/trunk@2492 + * capi/geos_c.h.in: Always include stddef.h. Closes bug #213 + git-svn-id: http://svn.osgeo.org/geos/trunk@2492 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Add - "thread-safe" version of GEOSGeom_setSRID. Closes bug #242. git-svn-id: http://svn.osgeo.org/geos/trunk@2491 + "thread-safe" version of GEOSGeom_setSRID. Closes bug #242. + git-svn-id: http://svn.osgeo.org/geos/trunk@2491 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli - * tests/bigtest/bug234.cpp: minor debug output improvement git-svn-id: http://svn.osgeo.org/geos/trunk@2490 + * tests/bigtest/bug234.cpp: minor debug output improvement + git-svn-id: http://svn.osgeo.org/geos/trunk@2490 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli @@ -13570,32 +18188,34 @@ tests/bigtest/README, tests/bigtest/bug234.cpp: Skip empty components when building GeometryGraph. Fixes bug #234. Add non-automated test for it, and README file in the directory - containing it... git-svn-id: http://svn.osgeo.org/geos/trunk@2489 + containing it... git-svn-id: http://svn.osgeo.org/geos/trunk@2489 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/bug188.xml: Add - XML testcase for bug 188 git-svn-id: http://svn.osgeo.org/geos/trunk@2488 + XML testcase for bug 188 git-svn-id: + http://svn.osgeo.org/geos/trunk@2488 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli * tests/xmltester/XMLTester.cpp: remove code duplication on buffer - result validation git-svn-id: http://svn.osgeo.org/geos/trunk@2487 + result validation git-svn-id: http://svn.osgeo.org/geos/trunk@2487 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli * source/geom/CoordinateSequenceFactory.cpp, source/headers/geos/geom/CoordinateSequenceFactory.h: Port info, - doxygen cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@2486 + doxygen cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@2486 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-07 Sandro Santilli * tests/unit/capi/GEOSCoordSeqTest.cpp: Add test for creating a - CoordinateSequence with at least 2 dimension git-svn-id: http://svn.osgeo.org/geos/trunk@2485 + CoordinateSequence with at least 2 dimension git-svn-id: + http://svn.osgeo.org/geos/trunk@2485 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli @@ -13603,23 +18223,35 @@ * capi/geos_c.h.in, capi/geos_ts_c.cpp: Fix bug #135, give an hint about GEOSGeom_getDimensions being related to GEOSCoordSeq_getDimensions, fix signed vs. unsigned compiler - warning. git-svn-id: http://svn.osgeo.org/geos/trunk@2484 + warning. git-svn-id: http://svn.osgeo.org/geos/trunk@2484 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli * tests/xmltester/markup/MarkupSTL.cpp: Fix compilation warnings - thrown by GCC 4.3.x. Patch by Mateus, closes bug #92. git-svn-id: http://svn.osgeo.org/geos/trunk@2483 + thrown by GCC 4.3.x. Patch by Mateus, closes bug #92. git-svn-id: + http://svn.osgeo.org/geos/trunk@2483 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Mateusz Loskot - * : Updated svn:ignore property. git-svn-id: http://svn.osgeo.org/geos/trunk@2482 + * : Updated svn:ignore property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2482 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-05-06 Sandro Santilli + + * source/headers/geos/noding/SegmentNodeList.h, + source/noding/SegmentNodeList.cpp: + findCollapsesFromExistingVertices: don't choke on sets of < 2 + points. Fixes bug #219. git-svn-id: + http://svn.osgeo.org/geos/trunk@2481 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli - * source/operation/buffer/BufferBuilder.cpp: minor indentation thing git-svn-id: http://svn.osgeo.org/geos/trunk@2480 + * source/operation/buffer/BufferBuilder.cpp: minor indentation thing + git-svn-id: http://svn.osgeo.org/geos/trunk@2480 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli @@ -13634,14 +18266,15 @@ source/noding/MCIndexNoder.cpp, source/noding/MCIndexSegmentSetMutualIntersector.cpp: Cleanup MonotoneChainOverlapAction, reduce heap allocations. Cascade - changes. git-svn-id: http://svn.osgeo.org/geos/trunk@2479 + changes. git-svn-id: http://svn.osgeo.org/geos/trunk@2479 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli * source/headers/geos/index/chain/MonotoneChainOverlapAction.h, source/index/chain/MonotoneChainOverlapAction.cpp: Port info (to be - worked on for heap allocations reduction) git-svn-id: http://svn.osgeo.org/geos/trunk@2478 + worked on for heap allocations reduction) git-svn-id: + http://svn.osgeo.org/geos/trunk@2478 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli @@ -13653,7 +18286,7 @@ source/index/chain/MonotoneChainSelectAction.cpp, source/noding/snapround/MCIndexPointSnapper.cpp: MonotoneChainSelectAction port review, heap allocation reduced, - const-corrected. git-svn-id: http://svn.osgeo.org/geos/trunk@2477 + const-corrected. git-svn-id: http://svn.osgeo.org/geos/trunk@2477 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli @@ -13672,21 +18305,22 @@ source/noding/MCIndexSegmentSetMutualIntersector.cpp: MonotoneChain const-correctness and interface cleanups, cascaded changes. Possibly discovered a leak in MCPointInRing algorithm, needs some unit - testing. git-svn-id: http://svn.osgeo.org/geos/trunk@2476 + testing. git-svn-id: http://svn.osgeo.org/geos/trunk@2476 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli * source/headers/geos/index/bintree/Interval.h, source/index/bintree/Interval.cpp: Const-correctness for bintree - Interval git-svn-id: http://svn.osgeo.org/geos/trunk@2475 + Interval git-svn-id: http://svn.osgeo.org/geos/trunk@2475 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli * source/headers/geos/index/chain/MonotoneChain.h, source/index/chain/MonotoneChain.cpp: Port MonotoneChain up to - JTS-1.10, plus minor dox improvement (memory-oriented) git-svn-id: http://svn.osgeo.org/geos/trunk@2474 + JTS-1.10, plus minor dox improvement (memory-oriented) git-svn-id: + http://svn.osgeo.org/geos/trunk@2474 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli @@ -13694,27 +18328,31 @@ * source/headers/geos/index/chain/MonotoneChainBuilder.h, source/index/chain/MonotoneChainBuilder.cpp: Port MonotoneChainBuilder up to JTS-1.10. Tweak some signatures to use - stricter signedness. git-svn-id: http://svn.osgeo.org/geos/trunk@2473 + stricter signedness. git-svn-id: + http://svn.osgeo.org/geos/trunk@2473 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli * source/headers/geos/index/chain/MonotoneChainBuilder.h, source/index/chain/MonotoneChainBuilder.cpp: Port to 1.9, fixing an - out of boundary access in findEdgeEnd git-svn-id: http://svn.osgeo.org/geos/trunk@2472 + out of boundary access in findEdgeEnd git-svn-id: + http://svn.osgeo.org/geos/trunk@2472 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-06 Sandro Santilli * source/headers/geos/index/chain/MonotoneChainBuilder.h, source/index/chain/MonotoneChainBuilder.cpp: Add port info. We're 4 - revision old (catching up next) git-svn-id: http://svn.osgeo.org/geos/trunk@2471 + revision old (catching up next) git-svn-id: + http://svn.osgeo.org/geos/trunk@2471 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-05 Sandro Santilli * source/geom/Envelope.cpp, source/headers/geos/geom/Envelope.h, - source/headers/geos/geom/Envelope.inl: Sync Envelope to JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2470 + source/headers/geos/geom/Envelope.inl: Sync Envelope to JTS-1.10 + git-svn-id: http://svn.osgeo.org/geos/trunk@2470 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-05 Sandro Santilli @@ -13722,7 +18360,8 @@ * tests/xmltester/XMLTester.cpp: Add compile-time support to skip use of BinaryOp thus engaging SnapIfNeededOverlayOp used by Geometry methods. Shows that BinaryOp (GEOS-specific original work) gives - better numerical stability. git-svn-id: http://svn.osgeo.org/geos/trunk@2469 + better numerical stability. git-svn-id: + http://svn.osgeo.org/geos/trunk@2469 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-05 Sandro Santilli @@ -13746,25 +18385,28 @@ tests/unit/{precision => operation/overlay/snap}/LineStringSnapperTest.cpp: Found old GeometrySnapper/LineStringSnapper classes in an unexpected - directory. Move them where they belong, sync with JTS-1.10. git-svn-id: http://svn.osgeo.org/geos/trunk@2468 + directory. Move them where they belong, sync with JTS-1.10. + git-svn-id: http://svn.osgeo.org/geos/trunk@2468 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-05 Sandro Santilli * source/geom/util/GeometryTransformer.cpp: Fix memory leak on - exception git-svn-id: http://svn.osgeo.org/geos/trunk@2467 + exception git-svn-id: http://svn.osgeo.org/geos/trunk@2467 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli - * source/operation/IsSimpleOp.cpp: Fix memory bug git-svn-id: http://svn.osgeo.org/geos/trunk@2466 + * source/operation/IsSimpleOp.cpp: Fix memory bug git-svn-id: + http://svn.osgeo.org/geos/trunk@2466 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geos/geom/Geometry.h, source/headers/geos/geom/Geometry.inl: Geometry up to 1.112 with a - minor bugfix and performance improvement in Geometry::covers git-svn-id: http://svn.osgeo.org/geos/trunk@2465 + minor bugfix and performance improvement in Geometry::covers + git-svn-id: http://svn.osgeo.org/geos/trunk@2465 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli @@ -13774,7 +18416,8 @@ revision by having it use SnapIfNeededOp for overlay operations. Note that currently this doesn't affect the C-API nor the XMLTester codes, both using the BinaryOp original class (not JTS-ported) doing - about the same thing as the SnapIfNeededOp class. git-svn-id: http://svn.osgeo.org/geos/trunk@2464 + about the same thing as the SnapIfNeededOp class. git-svn-id: + http://svn.osgeo.org/geos/trunk@2464 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli @@ -13784,7 +18427,8 @@ source/headers/geos/operation/overlay/snap/SnapOverlayOp.h, source/operation/overlay/Makefile.am, source/operation/overlay/snap/SnapIfNeededOverlayOp.cpp: Port - SnapIfNeededOverlayOp git-svn-id: http://svn.osgeo.org/geos/trunk@2463 + SnapIfNeededOverlayOp git-svn-id: + http://svn.osgeo.org/geos/trunk@2463 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli @@ -13806,7 +18450,8 @@ => validate}/OffsetPointGeneratorTest.cpp, tests/unit/operation/overlay/{ => validate}/OverlayResultValidatorTest.cpp: Move overlay.validate - package files where they belong git-svn-id: http://svn.osgeo.org/geos/trunk@2462 + package files where they belong git-svn-id: + http://svn.osgeo.org/geos/trunk@2462 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli @@ -13817,7 +18462,8 @@ source/operation/overlay/Makefile.am, source/operation/overlay/snap/GeometrySnapper.cpp, source/operation/overlay/snap/SnapOverlayOp.cpp: Port - overlay.snap.SnapOverlayOp, update GeometrySnapper to be more useful git-svn-id: http://svn.osgeo.org/geos/trunk@2461 + overlay.snap.SnapOverlayOp, update GeometrySnapper to be more useful + git-svn-id: http://svn.osgeo.org/geos/trunk@2461 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli @@ -13826,7 +18472,8 @@ source/headers/geos/operation/overlay/snap/GeometrySnapper.h, source/operation/overlay/Makefile.am, source/operation/overlay/snap/GeometrySnapper.cpp: Port - overlay.snap.GeometrySnapper git-svn-id: http://svn.osgeo.org/geos/trunk@2460 + overlay.snap.GeometrySnapper git-svn-id: + http://svn.osgeo.org/geos/trunk@2460 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-04 Sandro Santilli @@ -13835,7 +18482,7 @@ source/operation/overlay/snap/LineStringSnapper.cpp: Extend to accept a vector of const Coordinate pointers for snap pointers, fix typo making it clone snap points rather than source points on - snapping... git-svn-id: http://svn.osgeo.org/geos/trunk@2459 + snapping... git-svn-id: http://svn.osgeo.org/geos/trunk@2459 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13844,7 +18491,8 @@ source/headers/geos/operation/overlay/snap/LineStringSnapper.h, source/operation/overlay/Makefile.am, source/operation/overlay/snap/LineStringSnapper.cpp: Port - overlay.snap.LineStringSnapper from JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2458 + overlay.snap.LineStringSnapper from JTS-1.10 git-svn-id: + http://svn.osgeo.org/geos/trunk@2458 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13855,7 +18503,8 @@ tests/unit/geom/CoordinateArraySequenceTest.cpp: Add an insert-like virtual method to CoordinateSequence. This comes from CoordinateList of JTS, historically bound to CoordinateSequence in GEOS. Add test - for that interface. git-svn-id: http://svn.osgeo.org/geos/trunk@2457 + for that interface. git-svn-id: + http://svn.osgeo.org/geos/trunk@2457 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13863,20 +18512,22 @@ * tests/xmltester/Makefile.am, tests/xmltester/tests/general/MISSING, tests/xmltester/tests/general/TestRectanglePredicate.xml: Copy last - portable JTS general test, add a file with info about what's missing git-svn-id: http://svn.osgeo.org/geos/trunk@2456 + portable JTS general test, add a file with info about what's missing + git-svn-id: http://svn.osgeo.org/geos/trunk@2456 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli * tests/xmltester/tests/testLeaksBig.xml: Drop test also found in - TestFunctionPLPrec.xml git-svn-id: http://svn.osgeo.org/geos/trunk@2455 + TestFunctionPLPrec.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@2455 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli * tests/xmltester/XMLTester.cpp: Add support for testing within, covers and coveredby. Properly use 'arg1' and 'arg2' for these - tests. git-svn-id: http://svn.osgeo.org/geos/trunk@2454 + tests. git-svn-id: http://svn.osgeo.org/geos/trunk@2454 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13884,7 +18535,8 @@ * tests/xmltester/Makefile.am, tests/xmltester/tests/general/TestWithinDistance.xml, tests/xmltester/tests/testLeaksBig.xml: Copy TestWithinDistance.xml - test, drop duplicates from testLeaksBig.xml git-svn-id: http://svn.osgeo.org/geos/trunk@2453 + test, drop duplicates from testLeaksBig.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@2453 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13900,20 +18552,23 @@ tests/xmltester/tests/general/TestFunctionPL.xml, tests/xmltester/tests/general/TestFunctionPLPrec.xml, tests/xmltester/tests/general/TestFunctionPP.xml: More tests from - JTS (TestFunction*) git-svn-id: http://svn.osgeo.org/geos/trunk@2452 + JTS (TestFunction*) git-svn-id: + http://svn.osgeo.org/geos/trunk@2452 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli * tests/xmltester/Makefile.am, - tests/xmltester/tests/general/TestBoundary.xml: Boundary test git-svn-id: http://svn.osgeo.org/geos/trunk@2451 + tests/xmltester/tests/general/TestBoundary.xml: Boundary test + git-svn-id: http://svn.osgeo.org/geos/trunk@2451 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/tests/general/TestConvexHull-big.xml, - tests/xmltester/tests/general/TestConvexHull.xml: ConvexHull tests git-svn-id: http://svn.osgeo.org/geos/trunk@2450 + tests/xmltester/tests/general/TestConvexHull.xml: ConvexHull tests + git-svn-id: http://svn.osgeo.org/geos/trunk@2450 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13927,7 +18582,8 @@ tests/xmltester/tests/general/TestRelatePA.xml, tests/xmltester/tests/general/TestRelatePL.xml, tests/xmltester/tests/general/TestRelatePP.xml: Add support for - testing 'contains' in XMLTester, add all Relate tests from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2449 + testing 'contains' in XMLTester, add all Relate tests from JTS + git-svn-id: http://svn.osgeo.org/geos/trunk@2449 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13941,7 +18597,8 @@ general}/TestValid.xml, tests/xmltester/tests/{ => general}/TestValid2-big.xml, tests/xmltester/tests/{ => general}/TestValid2.xml: More organization of xml tests: 'general' - subdir following JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2448 + subdir following JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@2448 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13949,7 +18606,7 @@ * tests/xmltester/Makefile.am, tests/xmltester/tests/{ => stmlf}/stmlf-cases-20061020.xml, tests/xmltester/tests/{ => stmlf}/stmlf-cases-20070119.xml: Put stml testcases under their own - dir (like in JTS) git-svn-id: http://svn.osgeo.org/geos/trunk@2447 + dir (like in JTS) git-svn-id: http://svn.osgeo.org/geos/trunk@2447 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-05-02 Sandro Santilli @@ -13960,45 +18617,51 @@ tests/xmltester/tests/split.xml: Add a 'split.xml' testcase to confirm 'difference' may be used to split linestrings; add TestRobustRelate.xml from JTS, organize robust-related tests as in - JTS repository. git-svn-id: http://svn.osgeo.org/geos/trunk@2446 + JTS repository. git-svn-id: http://svn.osgeo.org/geos/trunk@2446 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/headers/geos/noding/snapround/SimpleSnapRounder.h: drop - duplicated (and old) port info git-svn-id: http://svn.osgeo.org/geos/trunk@2444 + duplicated (and old) port info git-svn-id: + http://svn.osgeo.org/geos/trunk@2444 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * NEWS, source/geom/Geometry.cpp, source/headers/geos/geom/Geometry.h, - source/headers/geos/geom/Geometry.inl: Update port info git-svn-id: http://svn.osgeo.org/geos/trunk@2443 + source/headers/geos/geom/Geometry.inl: Update port info git-svn-id: + http://svn.osgeo.org/geos/trunk@2443 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geom/Point.cpp, source/headers/geos/geom/Point.h: Point - full up to JTS-1.0 (rev 1.37) : adds reverse() git-svn-id: http://svn.osgeo.org/geos/trunk@2442 + full up to JTS-1.0 (rev 1.37) : adds reverse() git-svn-id: + http://svn.osgeo.org/geos/trunk@2442 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geom/LineString.cpp, source/headers/geos/geom/LineString.h: LineString to rev 1.46 : don't override isSimple, always return - MultiPoint as bondary git-svn-id: http://svn.osgeo.org/geos/trunk@2441 + MultiPoint as bondary git-svn-id: + http://svn.osgeo.org/geos/trunk@2441 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geom/Polygon.cpp, source/headers/geos/geom/Polygon.h: - Polygon to rev 1.50 (getBoundary always return MultiLineString) git-svn-id: http://svn.osgeo.org/geos/trunk@2440 + Polygon to rev 1.50 (getBoundary always return MultiLineString) + git-svn-id: http://svn.osgeo.org/geos/trunk@2440 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geom/MultiPoint.cpp, source/headers/geos/geom/MultiPoint.h: - MultiPoint up to rev 1.30 (drop isSimple override) git-svn-id: http://svn.osgeo.org/geos/trunk@2439 + MultiPoint up to rev 1.30 (drop isSimple override) git-svn-id: + http://svn.osgeo.org/geos/trunk@2439 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli @@ -14006,7 +18669,8 @@ * source/geom/MultiLineString.cpp, source/headers/geos/geom/MultiLineString.h, source/headers/geos/geom/MultiLineString.inl: MultiLineString port - info and sync to 1.40 (don't override isSimple) git-svn-id: http://svn.osgeo.org/geos/trunk@2438 + info and sync to 1.40 (don't override isSimple) git-svn-id: + http://svn.osgeo.org/geos/trunk@2438 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli @@ -14014,14 +18678,16 @@ * source/geom/MultiPolygon.cpp, source/headers/geos/geom/MultiPolygon.h, source/headers/geos/geom/MultiPolygon.inl: MultiPolygon up to rev - 1.34 (getBoundary always returns a MultiLineString now) git-svn-id: http://svn.osgeo.org/geos/trunk@2437 + 1.34 (getBoundary always returns a MultiLineString now) + git-svn-id: http://svn.osgeo.org/geos/trunk@2437 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geom/GeometryCollection.cpp, source/headers/geos/geom/GeometryCollection.h: Oops, *now* we're at - 1.14 (drop isSimple, rely on the one in base class) git-svn-id: http://svn.osgeo.org/geos/trunk@2436 + 1.14 (drop isSimple, rely on the one in base class) git-svn-id: + http://svn.osgeo.org/geos/trunk@2436 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli @@ -14029,32 +18695,36 @@ * source/geom/GeometryCollection.cpp, source/headers/geos/geom/GeometryCollection.h, source/headers/geos/geom/GeometryCollection.inl: Port info. It's at - 1.41 now, JTS is at 1.42 git-svn-id: http://svn.osgeo.org/geos/trunk@2435 + 1.41 now, JTS is at 1.42 git-svn-id: + http://svn.osgeo.org/geos/trunk@2435 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geos/geom/Geometry.h, source/headers/geos/geom/Geometry.inl: Geometry class up to JTS rev - 1.104 (need reach 1.127...) git-svn-id: http://svn.osgeo.org/geos/trunk@2434 + 1.104 (need reach 1.127...) git-svn-id: + http://svn.osgeo.org/geos/trunk@2434 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * NEWS: Add some info about things changed (might have missed - something) git-svn-id: http://svn.osgeo.org/geos/trunk@2433 + something) git-svn-id: http://svn.osgeo.org/geos/trunk@2433 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/headers/geos/operation/IsSimpleOp.h, - source/operation/IsSimpleOp.cpp: Sync to rev 1.22 (JTS-1.10) git-svn-id: http://svn.osgeo.org/geos/trunk@2432 + source/operation/IsSimpleOp.cpp: Sync to rev 1.22 (JTS-1.10) + git-svn-id: http://svn.osgeo.org/geos/trunk@2432 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/headers/geos/operation.h: EndpointInfo.h header is gone - (it's always been private in JTS) git-svn-id: http://svn.osgeo.org/geos/trunk@2431 + (it's always been private in JTS) git-svn-id: + http://svn.osgeo.org/geos/trunk@2431 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli @@ -14063,21 +18733,23 @@ source/headers/geos/operation/IsSimpleOp.h, source/headers/geos/operation/Makefile.am, source/operation/IsSimpleOp.cpp: Port revision 1.9 of IsSimplOp : - allow inspecting non-simple location coordinate. git-svn-id: http://svn.osgeo.org/geos/trunk@2430 + allow inspecting non-simple location coordinate. git-svn-id: + http://svn.osgeo.org/geos/trunk@2430 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/geomgraph/EdgeIntersection.cpp, source/headers/geos/geomgraph/EdgeIntersection.h: Sync to revision - 1.5 (JTS-1.10) : add accessors git-svn-id: http://svn.osgeo.org/geos/trunk@2429 + 1.5 (JTS-1.10) : add accessors git-svn-id: + http://svn.osgeo.org/geos/trunk@2429 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/headers/geos/operation/IsSimpleOp.h, source/operation/IsSimpleOp.cpp: port to rev 1.8 (use of - BoundaryNodeRule) git-svn-id: http://svn.osgeo.org/geos/trunk@2428 + BoundaryNodeRule) git-svn-id: http://svn.osgeo.org/geos/trunk@2428 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli @@ -14085,7 +18757,8 @@ * tests/xmltester/Makefile.am, tests/xmltester/tests/TestSimple.xml, tests/xmltester/tests/testLeaksBig.xml: Import TestSimple.xml from - JTS, drop duplicated tests from testLeaksBig.xml git-svn-id: http://svn.osgeo.org/geos/trunk@2427 + JTS, drop duplicated tests from testLeaksBig.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@2427 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli @@ -14095,14 +18768,15 @@ source/headers/geos/algorithm/BoundaryNodeRule.h, source/headers/geos/algorithm/Makefile.am: Port algorithm::BoundaryNodeRule from JTS-1.10 (needed for IsSimpleOp - sync) git-svn-id: http://svn.osgeo.org/geos/trunk@2426 + sync) git-svn-id: http://svn.osgeo.org/geos/trunk@2426 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-30 Sandro Santilli * source/headers/geos/operation/IsSimpleOp.h, source/operation/IsSimpleOp.cpp: Port info, and sync from 1.14 to - 1.17 (more to do, need more classes) git-svn-id: http://svn.osgeo.org/geos/trunk@2425 + 1.17 (more to do, need more classes) git-svn-id: + http://svn.osgeo.org/geos/trunk@2425 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-29 Mateusz Loskot @@ -14115,7 +18789,8 @@ tests/unit/capi/GEOSPreparedGeometryTest.cpp, tests/unit/capi/GEOSSimplifyTest.cpp, tests/unit/capi/GEOSWithinTest.cpp: test/unit/capi: re-tab all .cpp - files to use spaces. git-svn-id: http://svn.osgeo.org/geos/trunk@2424 + files to use spaces. git-svn-id: + http://svn.osgeo.org/geos/trunk@2424 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-29 Mateusz Loskot @@ -14132,14 +18807,16 @@ GEOSWithinTest and GEOSContainsTest. This is check and response for problems reporting in Ticket #250. Running the new tests does not reproduce the problem, so it likely has been fixed or the bug is - somewhere else (i.e. Django layers). git-svn-id: http://svn.osgeo.org/geos/trunk@2422 + somewhere else (i.e. Django layers). git-svn-id: + http://svn.osgeo.org/geos/trunk@2422 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-29 Sandro Santilli * source/headers/geos/util/GeometricShapeFactory.h, source/util/GeometricShapeFactory.cpp: Sync GeometricShapeFactory to - JTS-1.10 (createArcPolygon added) git-svn-id: http://svn.osgeo.org/geos/trunk@2421 + JTS-1.10 (createArcPolygon added) git-svn-id: + http://svn.osgeo.org/geos/trunk@2421 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-29 Sandro Santilli @@ -14154,7 +18831,8 @@ source/headers/geos/geom/prep/PreparedPolygonCovers.h, source/headers/geos/geom/prep/PreparedPolygonIntersects.h, source/headers/geos/geom/prep/PreparedPolygonPredicate.h: Bring all - geom::prep package in sync with JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2420 + geom::prep package in sync with JTS-1.10 git-svn-id: + http://svn.osgeo.org/geos/trunk@2420 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-29 Sandro Santilli @@ -14162,7 +18840,7 @@ * source/geom/prep/BasicPreparedGeometry.cpp, source/headers/geos/geom/prep/BasicPreparedGeometry.h: Sync BasicPreparedGeometry to JTS-1.10 (short-circuit in - containsProperly) git-svn-id: http://svn.osgeo.org/geos/trunk@2419 + containsProperly) git-svn-id: http://svn.osgeo.org/geos/trunk@2419 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-29 Sandro Santilli @@ -14193,19 +18871,21 @@ source/headers/geos/geom/prep/PreparedPolygonCovers.h, source/headers/geos/geom/prep/PreparedPolygonIntersects.h, source/headers/geos/geom/prep/PreparedPolygonPredicate.h: Add port - information for geom::prep package. Next stop: sync to JTS-1.10. git-svn-id: http://svn.osgeo.org/geos/trunk@2418 + information for geom::prep package. Next stop: sync to JTS-1.10. + git-svn-id: http://svn.osgeo.org/geos/trunk@2418 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * tests/unit/capi/GEOSGeomToWKTTest.cpp: Plug last one. All heap - blocks were freed -- no leaks are possible. git-svn-id: http://svn.osgeo.org/geos/trunk@2417 + blocks were freed -- no leaks are possible. git-svn-id: + http://svn.osgeo.org/geos/trunk@2417 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * tests/unit/algorithm/RobustLineIntersectorTest.cpp: Fix leak in - testcase git-svn-id: http://svn.osgeo.org/geos/trunk@2416 + testcase git-svn-id: http://svn.osgeo.org/geos/trunk@2416 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli @@ -14214,46 +18894,52 @@ source/headers/geos/index/quadtree/Root.h, source/index/quadtree/Node.cpp, source/index/quadtree/Root.cpp: Refactor signatures to make ownership transfers more explicit. Fixed - another leak in Node::insertNode. git-svn-id: http://svn.osgeo.org/geos/trunk@2415 + another leak in Node::insertNode. git-svn-id: + http://svn.osgeo.org/geos/trunk@2415 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * source/index/quadtree/NodeBase.cpp: Fix memory leak in - NodeBase::remove, exposed by unit testing git-svn-id: http://svn.osgeo.org/geos/trunk@2414 + NodeBase::remove, exposed by unit testing git-svn-id: + http://svn.osgeo.org/geos/trunk@2414 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * source/headers/geos/index/quadtree/Root.h, - source/index/quadtree/Root.cpp: Port info for quadtree::root git-svn-id: http://svn.osgeo.org/geos/trunk@2413 + source/index/quadtree/Root.cpp: Port info for quadtree::root + git-svn-id: http://svn.osgeo.org/geos/trunk@2413 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * source/headers/geos/index/quadtree/Node.h, - source/index/quadtree/Node.cpp: Port info for quadtree::Node git-svn-id: http://svn.osgeo.org/geos/trunk@2412 + source/index/quadtree/Node.cpp: Port info for quadtree::Node + git-svn-id: http://svn.osgeo.org/geos/trunk@2412 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * source/headers/geos/index/quadtree/IntervalSize.h, source/index/quadtree/IntervalSize.cpp: Port info and check, - doxygen. git-svn-id: http://svn.osgeo.org/geos/trunk@2411 + doxygen. git-svn-id: http://svn.osgeo.org/geos/trunk@2411 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * source/headers/geos/index/quadtree/Quadtree.h, source/index/quadtree/Quadtree.cpp: Sync to JTS-1.10, reduce heap - allocations and pointers usage. Includes a bugfix in collectStats. git-svn-id: http://svn.osgeo.org/geos/trunk@2410 + allocations and pointers usage. Includes a bugfix in collectStats. + git-svn-id: http://svn.osgeo.org/geos/trunk@2410 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli * source/headers/geos/index/quadtree/DoubleBits.h, source/index/quadtree/DoubleBits.cpp: DoubleBits didn't change in - JTS, update port info accordingly git-svn-id: http://svn.osgeo.org/geos/trunk@2409 + JTS, update port info accordingly git-svn-id: + http://svn.osgeo.org/geos/trunk@2409 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-27 Sandro Santilli @@ -14264,7 +18950,8 @@ source/index/quadtree/NodeBase.cpp, source/index/quadtree/Quadtree.cpp: Quadtree's NodeBase: check port sync, add port info, drop unneeded pointers and virtuals, document - objects ownership. git-svn-id: http://svn.osgeo.org/geos/trunk@2408 + objects ownership. git-svn-id: + http://svn.osgeo.org/geos/trunk@2408 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-25 Sandro Santilli @@ -14275,13 +18962,14 @@ source/index/quadtree/Key.cpp, source/index/quadtree/Node.cpp, source/index/quadtree/Root.cpp: Const-correctness, reduced heap allocations and port info for quadtree::Key class, a few more - cleanups in user classes, to be continued. git-svn-id: http://svn.osgeo.org/geos/trunk@2407 + cleanups in user classes, to be continued. git-svn-id: + http://svn.osgeo.org/geos/trunk@2407 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-24 Sandro Santilli * source/index/quadtree/Quadtree.cpp: Fix memory leak in - Quadtree::remove git-svn-id: http://svn.osgeo.org/geos/trunk@2406 + Quadtree::remove git-svn-id: http://svn.osgeo.org/geos/trunk@2406 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-23 Sandro Santilli @@ -14291,27 +18979,31 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveVertexList.h: Apply Single-sided - buffer patch, issue #215. UNTESTED. git-svn-id: http://svn.osgeo.org/geos/trunk@2405 + buffer patch, issue #215. UNTESTED. git-svn-id: + http://svn.osgeo.org/geos/trunk@2405 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp: - Port ValidSelfTouchingRingFormingHoleTest git-svn-id: http://svn.osgeo.org/geos/trunk@2404 + Port ValidSelfTouchingRingFormingHoleTest git-svn-id: + http://svn.osgeo.org/geos/trunk@2404 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/valid/ValidClosedRingTest.cpp: Port - ValidClosedRingTest git-svn-id: http://svn.osgeo.org/geos/trunk@2403 + ValidClosedRingTest git-svn-id: + http://svn.osgeo.org/geos/trunk@2403 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli * source/geom/LineString.cpp, source/headers/geos/geom/LineString.h: - ::reverse returns a Geometry now (to be available up in base class) git-svn-id: http://svn.osgeo.org/geos/trunk@2402 + ::reverse returns a Geometry now (to be available up in base class) + git-svn-id: http://svn.osgeo.org/geos/trunk@2402 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli @@ -14319,19 +19011,22 @@ * source/geom/LinearRing.cpp, source/headers/geos/geom/LinearRing.h, tests/unit/geom/LinearRingTest.cpp: Sync LinearRing to JTS-1.10 - (fixing a bug in isClosed) git-svn-id: http://svn.osgeo.org/geos/trunk@2401 + (fixing a bug in isClosed) git-svn-id: + http://svn.osgeo.org/geos/trunk@2401 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli * tests/unit/Makefile.am, - tests/unit/operation/valid/IsValidTest.cpp: Port IsValidOp unit test git-svn-id: http://svn.osgeo.org/geos/trunk@2400 + tests/unit/operation/valid/IsValidTest.cpp: Port IsValidOp unit test + git-svn-id: http://svn.osgeo.org/geos/trunk@2400 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli * configure.in: Configure for CXX, not C. Should fix unknown tag and - link issues on telascience. git-svn-id: http://svn.osgeo.org/geos/trunk@2399 + link issues on telascience. git-svn-id: + http://svn.osgeo.org/geos/trunk@2399 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-21 Sandro Santilli @@ -14339,77 +19034,102 @@ * configure.in: Add an AC_LIBTOOL_LANG_C_CONFIG call right before the AC_LIBTOOL_COMPILER_OPTION calls. Seems to fix compiler selection on telascience (whereas AC_LANG and AC_LANG_PUSH didn't - work) git-svn-id: http://svn.osgeo.org/geos/trunk@2398 + work) git-svn-id: http://svn.osgeo.org/geos/trunk@2398 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-20 Sandro Santilli * tests/xmltester/BufferResultMatcher.cpp, tests/xmltester/BufferResultMatcher.h: Use JTS heuristic for - distance-0 buffer checking git-svn-id: http://svn.osgeo.org/geos/trunk@2397 + distance-0 buffer checking git-svn-id: + http://svn.osgeo.org/geos/trunk@2397 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-20 Mateusz Loskot - * : Updated svn:ignore patterns. git-svn-id: http://svn.osgeo.org/geos/trunk@2396 + * : Updated svn:ignore patterns. git-svn-id: + http://svn.osgeo.org/geos/trunk@2396 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-04-20 Sandro Santilli + + * configure.in, tests/Makefile.am, tests/perf/Makefile.am, + tests/perf/operation/Makefile.am, + tests/perf/operation/buffer/IteratedBufferStressTest.cpp, + tests/perf/operation/buffer/Makefile.am: Port + IteratedBufferStessTest git-svn-id: + http://svn.osgeo.org/geos/trunk@2395 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-20 Sandro Santilli * source/geomgraph/Quadrant.cpp, source/headers/geos/geomgraph/Quadrant.h: Add named constants, sync - to JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2394 + to JTS-1.10 git-svn-id: http://svn.osgeo.org/geos/trunk@2394 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-20 Mateusz Loskot - * : Updated svn:ignore patterns. git-svn-id: http://svn.osgeo.org/geos/trunk@2393 + * : Updated svn:ignore patterns. git-svn-id: + http://svn.osgeo.org/geos/trunk@2393 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-04-18 Sandro Santilli + + * tests/xmltester/XMLTester.cpp: Use BufferResultMatcher for buffer + operations. No failures. git-svn-id: + http://svn.osgeo.org/geos/trunk@2392 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-18 Sandro Santilli * tests/xmltester/tests/TestBigNastyBuffer.xml: Imported cleaned-up version of fme.xml -- this one fails (the one we have is actually - expecting a wrong result) git-svn-id: http://svn.osgeo.org/geos/trunk@2391 + expecting a wrong result) git-svn-id: + http://svn.osgeo.org/geos/trunk@2391 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-18 Sandro Santilli * tests/xmltester/BufferResultMatcher.cpp: Don't densify coordinates - if buffer distance is 0 git-svn-id: http://svn.osgeo.org/geos/trunk@2390 + if buffer distance is 0 git-svn-id: + http://svn.osgeo.org/geos/trunk@2390 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp: - comment out debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@2389 + comment out debugging lines git-svn-id: + http://svn.osgeo.org/geos/trunk@2389 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * tests/unit/Makefile.am, tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp: - Port DiscreteHausdorffDistance unit test git-svn-id: http://svn.osgeo.org/geos/trunk@2388 + Port DiscreteHausdorffDistance unit test git-svn-id: + http://svn.osgeo.org/geos/trunk@2388 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * source/algorithm/distance/DiscreteHausdorffDistance.cpp, source/headers/geos/algorithm/distance/DiscreteHausdorffDistance.h: - Offline some more git-svn-id: http://svn.osgeo.org/geos/trunk@2387 + Offline some more git-svn-id: http://svn.osgeo.org/geos/trunk@2387 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * source/headers/geos/algorithm/distance/PointPairDistance.h: Fix - typo git-svn-id: http://svn.osgeo.org/geos/trunk@2386 + typo git-svn-id: http://svn.osgeo.org/geos/trunk@2386 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * source/algorithm/distance/DiscreteHausdorffDistance.cpp, source/headers/geos/algorithm/distance/DiscreteHausdorffDistance.h: - Add missing implementation bits git-svn-id: http://svn.osgeo.org/geos/trunk@2385 + Add missing implementation bits git-svn-id: + http://svn.osgeo.org/geos/trunk@2385 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli @@ -14417,19 +19137,21 @@ * tests/xmltester/BufferResultMatcher.cpp, tests/xmltester/BufferResultMatcher.h, tests/xmltester/XMLTester.cpp: Port BufferResultMatcher. Gives 31 - new failures !! git-svn-id: http://svn.osgeo.org/geos/trunk@2384 + new failures !! git-svn-id: http://svn.osgeo.org/geos/trunk@2384 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * source/headers/geos/geom/BinaryOp.h, tests/xmltester/Makefile.am, tests/xmltester/XMLTester.cpp: proper inline check_valid - source/headers/geos/geom/BinaryOp.h git-svn-id: http://svn.osgeo.org/geos/trunk@2383 + source/headers/geos/geom/BinaryOp.h git-svn-id: + http://svn.osgeo.org/geos/trunk@2383 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli - * source/headers/geos/geom/BinaryOp.h: Header guard git-svn-id: http://svn.osgeo.org/geos/trunk@2382 + * source/headers/geos/geom/BinaryOp.h: Header guard git-svn-id: + http://svn.osgeo.org/geos/trunk@2382 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli @@ -14437,45 +19159,52 @@ * source/algorithm/LineIntersector.cpp, source/headers/geos/algorithm/LineIntersector.h, tests/unit/algorithm/RobustLineIntersectorTest.cpp: renamed - intersection constants git-svn-id: http://svn.osgeo.org/geos/trunk@2381 + intersection constants git-svn-id: + http://svn.osgeo.org/geos/trunk@2381 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * configure.in: Add debugging output of variables used by AC_LIBTOOL_COMPILER_OPTION. Surprisingly, the buildbots try to use a - fortran compiler there git-svn-id: http://svn.osgeo.org/geos/trunk@2380 + fortran compiler there git-svn-id: + http://svn.osgeo.org/geos/trunk@2380 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-17 Sandro Santilli * configure.in: Differentiate variable used in - AC_LIBTOOL_COMPILE_OPTION for proper use of configuration cache git-svn-id: http://svn.osgeo.org/geos/trunk@2379 + AC_LIBTOOL_COMPILE_OPTION for proper use of configuration cache + git-svn-id: http://svn.osgeo.org/geos/trunk@2379 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-16 Sandro Santilli * configure.in: Use -ffloat-store flag when available. See - http://lists.osgeo.org/pipermail/geos-devel/2009-April/004089.html git-svn-id: http://svn.osgeo.org/geos/trunk@2378 + http://lists.osgeo.org/pipermail/geos-devel/2009-April/004089.html + git-svn-id: http://svn.osgeo.org/geos/trunk@2378 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-16 Sandro Santilli * source/headers/geos/algorithm/LineIntersector.h: Make enum values - explicit, as JTS tests rely on those.. git-svn-id: http://svn.osgeo.org/geos/trunk@2377 + explicit, as JTS tests rely on those.. git-svn-id: + http://svn.osgeo.org/geos/trunk@2377 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-16 Sandro Santilli * tests/unit/Makefile.am, tests/unit/algorithm/RobustLineIntersectorTest.cpp: Port - RobustLineIntersectorTest from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2376 + RobustLineIntersectorTest from JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@2376 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-16 Sandro Santilli * tests/unit/algorithm/RobustLineIntersectionTest.cpp: better - isolation of test-specific functions git-svn-id: http://svn.osgeo.org/geos/trunk@2375 + isolation of test-specific functions git-svn-id: + http://svn.osgeo.org/geos/trunk@2375 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-16 Sandro Santilli @@ -14483,7 +19212,8 @@ * tests/unit/Makefile.am, tests/unit/algorithm/RobustLineIntersectionTest.cpp: Port RobustLineIntersectionTest (mostly failing, but reported by Martin - Davis to be expected) git-svn-id: http://svn.osgeo.org/geos/trunk@2374 + Davis to be expected) git-svn-id: + http://svn.osgeo.org/geos/trunk@2374 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli @@ -14495,12 +19225,14 @@ source/headers/geos/algorithm/distance/{EuclideanDistanceToPoint.h => DistanceToPoint.h}, source/headers/geos/algorithm/distance/Makefile.am: New class - rename, following JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2373 + rename, following JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@2373 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli - * source/algorithm/HCoordinate.cpp: typo in disabled section git-svn-id: http://svn.osgeo.org/geos/trunk@2372 + * source/algorithm/HCoordinate.cpp: typo in disabled section + git-svn-id: http://svn.osgeo.org/geos/trunk@2372 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli @@ -14508,19 +19240,21 @@ * source/headers/geos/index/quadtree/Key.h, source/headers/geos/index/quadtree/Node.h, source/index/quadtree/Key.cpp: Few more docs about memory management - in quadtree indexing; fix a potential leak in quadtree::Key git-svn-id: http://svn.osgeo.org/geos/trunk@2371 + in quadtree indexing; fix a potential leak in quadtree::Key + git-svn-id: http://svn.osgeo.org/geos/trunk@2371 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli * source/headers/geos/index/quadtree/NodeBase.h: Document ownership - of quadtree::NodeBase subnodes git-svn-id: http://svn.osgeo.org/geos/trunk@2370 + of quadtree::NodeBase subnodes git-svn-id: + http://svn.osgeo.org/geos/trunk@2370 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli * tests/unit/util/UniqueCoordinateArrayFilterTest.cpp: Fix memory - leak in unit test git-svn-id: http://svn.osgeo.org/geos/trunk@2369 + leak in unit test git-svn-id: http://svn.osgeo.org/geos/trunk@2369 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli @@ -14529,14 +19263,15 @@ source/headers/geos/geom/util/CoordinateOperation.h, source/precision/SimpleGeometryPrecisionReducer.cpp: Fix leak in SimpleGeometryPrecisionReducer, improve memory management docs where - topic. git-svn-id: http://svn.osgeo.org/geos/trunk@2368 + topic. git-svn-id: http://svn.osgeo.org/geos/trunk@2368 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli * source/headers/geos/operation/distance/DistanceOp.h, tests/unit/operation/distance/DistanceOpTest.cpp: Document ownership - of DistanceOp::closestPoints return, fix leak in unit test. git-svn-id: http://svn.osgeo.org/geos/trunk@2367 + of DistanceOp::closestPoints return, fix leak in unit test. + git-svn-id: http://svn.osgeo.org/geos/trunk@2367 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli @@ -14549,25 +19284,29 @@ source/operation/overlay/PolygonBuilder.cpp: Fix leak in PolygonBuilder (overlay operation). The leak was exposed by the stmlf-cases-20061020.xml testcase. This commit also adds some - doc-only throw specs related to the bug. git-svn-id: http://svn.osgeo.org/geos/trunk@2366 + doc-only throw specs related to the bug. git-svn-id: + http://svn.osgeo.org/geos/trunk@2366 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli * source/operation/valid/IndexedNestedRingTester.cpp: Fix memory - leaks in IsValid operation git-svn-id: http://svn.osgeo.org/geos/trunk@2365 + leaks in IsValid operation git-svn-id: + http://svn.osgeo.org/geos/trunk@2365 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli * source/algorithm/HCoordinate.cpp: Explain why unrolled computation - is turned off, and keep it off git-svn-id: http://svn.osgeo.org/geos/trunk@2364 + is turned off, and keep it off git-svn-id: + http://svn.osgeo.org/geos/trunk@2364 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-15 Sandro Santilli * source/operation/buffer/BufferInputLineSimplifier.cpp: Fix typo in - computing angleOrientation git-svn-id: http://svn.osgeo.org/geos/trunk@2363 + computing angleOrientation git-svn-id: + http://svn.osgeo.org/geos/trunk@2363 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14576,7 +19315,8 @@ tests/xmltester/tests/TestBufferMitredJoin.xml: Temporarly revert the unrolled computation in HCoordinate::intersection. Added mitred join buffer test from JTS (failed with the unrolled comp, to be - further inspected). git-svn-id: http://svn.osgeo.org/geos/trunk@2362 + further inspected). git-svn-id: + http://svn.osgeo.org/geos/trunk@2362 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14591,7 +19331,8 @@ source/headers/geos/algorithm/distance/Makefile.am, source/headers/geos/algorithm/distance/PointPairDistance.h, source/headers/geos/geom/CoordinateSequenceFilter.h: Port the - algorithm::distance package from JTS 1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2361 + algorithm::distance package from JTS 1.9 git-svn-id: + http://svn.osgeo.org/geos/trunk@2361 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14608,21 +19349,23 @@ source/headers/geos/geom/Point.h, source/headers/geos/geom/Polygon.h: Add CoordinateSequenceFilter support, fix default GeometryComponentFilter moving the logic to the - correct place (a Geometry private class). git-svn-id: http://svn.osgeo.org/geos/trunk@2360 + correct place (a Geometry private class). git-svn-id: + http://svn.osgeo.org/geos/trunk@2360 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/algorithm/LineIntersector.cpp, source/headers/geos/algorithm/LineIntersector.h: Sync - (Robust)LineIntersector to JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2359 + (Robust)LineIntersector to JTS-1.9 git-svn-id: + http://svn.osgeo.org/geos/trunk@2359 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/algorithm/CGAlgorithms.cpp, source/headers/geos/algorithm/CGAlgorithms.h: Sync CGAlgorithms with - JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2358 + JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2358 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14632,14 +19375,16 @@ source/headers/geos/algorithm/RayCrossingCounter.h: Fix memory leak in RayCrossingCounter; update signatures to avoid pointers when unneeded; add a locatePointInRing taking a vector of coordinate - pointers, for use by CGAlgorithms git-svn-id: http://svn.osgeo.org/geos/trunk@2357 + pointers, for use by CGAlgorithms git-svn-id: + http://svn.osgeo.org/geos/trunk@2357 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/algorithm/RayCrossingCounter.cpp, source/headers/geos/algorithm/RayCrossingCounter.h: Update port - info, checked against JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2356 + info, checked against JTS-1.9 git-svn-id: + http://svn.osgeo.org/geos/trunk@2356 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14664,19 +19409,21 @@ tests/xmltester/{ => tests}/stmlf-cases-20061020.xml, tests/xmltester/{ => tests}/stmlf-cases-20070119.xml, tests/xmltester/{ => tests}/test.xml, tests/xmltester/{ => - tests}/testLeaksBig.xml: Move XML tests under their own directory git-svn-id: http://svn.osgeo.org/geos/trunk@2355 + tests}/testLeaksBig.xml: Move XML tests under their own directory + git-svn-id: http://svn.osgeo.org/geos/trunk@2355 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Fix memory leak in - BufferBuilder (due to just-ported short-circuit) git-svn-id: http://svn.osgeo.org/geos/trunk@2354 + BufferBuilder (due to just-ported short-circuit) git-svn-id: + http://svn.osgeo.org/geos/trunk@2354 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * tests/xmltester/XMLTester.cpp: Add support for bufferMitredJoin - tests git-svn-id: http://svn.osgeo.org/geos/trunk@2353 + tests git-svn-id: http://svn.osgeo.org/geos/trunk@2353 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14689,28 +19436,30 @@ tests/xmltester/fme.xml, tests/xmltester/testLeaksBig.xml: Fix XML for Buffer testing to match jts layout (arg2 for distance, arg3 for quadrant segments); copy buffer-related tests from jts: they succeed - w/out editing. git-svn-id: http://svn.osgeo.org/geos/trunk@2352 + w/out editing. git-svn-id: http://svn.osgeo.org/geos/trunk@2352 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/headers/geos/operation/buffer/SubgraphDepthLocater.h, source/operation/buffer/SubgraphDepthLocater.cpp: Update port info - of SubgraphDepthLocater git-svn-id: http://svn.osgeo.org/geos/trunk@2351 + of SubgraphDepthLocater git-svn-id: + http://svn.osgeo.org/geos/trunk@2351 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/headers/geos/operation/buffer/RightmostEdgeFinder.h, source/operation/buffer/RightmostEdgeFinder.cpp: Update port info - for RightmostEdgeFinder (checked) git-svn-id: http://svn.osgeo.org/geos/trunk@2350 + for RightmostEdgeFinder (checked) git-svn-id: + http://svn.osgeo.org/geos/trunk@2350 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli * source/headers/geos/operation/buffer/BufferSubgraph.h, source/operation/buffer/BufferSubgraph.cpp: Sync BufferSubgraph to - JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2349 + JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2349 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-14 Sandro Santilli @@ -14718,7 +19467,8 @@ * source/headers/geos/operation/buffer/OffsetCurveBuilder.h, source/operation/buffer/OffsetCurveBuilder.cpp: Port OffsetCurveBuilder from JTS-1.9. Twenty time faster completion of - fme.xml testcase ! git-svn-id: http://svn.osgeo.org/geos/trunk@2348 + fme.xml testcase ! git-svn-id: + http://svn.osgeo.org/geos/trunk@2348 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-10 Sandro Santilli @@ -14726,13 +19476,14 @@ * source/operation/buffer/BufferInputLineSimplifier.cpp, source/operation/buffer/BufferInputLineSimplifier.h, source/operation/buffer/Makefile.am: Port BufferInputLineSimplifier - from JTS 1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2347 + from JTS 1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2347 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-10 Mateusz Loskot * configure.in: Do not generate Makefile for tests/unit/tut. Fixed - bug reported as #247. git-svn-id: http://svn.osgeo.org/geos/trunk@2346 + bug reported as #247. git-svn-id: + http://svn.osgeo.org/geos/trunk@2346 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-10 Sandro Santilli @@ -14740,7 +19491,7 @@ * source/geom/LineSegment.cpp, source/headers/geos/geom/LineSegment.h, source/headers/geos/geom/LineSegment.inl: Sync LineSegment with - JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2345 + JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2345 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Mateusz Loskot @@ -14805,7 +19556,8 @@ tests/unit/tut/tut_runner.hpp, tests/unit/util/UniqueCoordinateArrayFilterTest.cpp, tests/unit/utility.h: Updated tests/unit package with latest relase - of C++ TUT Framework from 2008-11-30. git-svn-id: http://svn.osgeo.org/geos/trunk@2344 + of C++ TUT Framework from 2008-11-30. git-svn-id: + http://svn.osgeo.org/geos/trunk@2344 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Mateusz Loskot @@ -14814,7 +19566,8 @@ => unit}/tut/Makefile.am, tests/{ => unit}/tut/tut.h, tests/{ => unit}/tut/tut_reporter.h, tests/{ => unit}/tut/tut_restartable.h: Moved tests/tut to tests/unit/tut. Preparing for update to latest - version of C++ TUT Framework. git-svn-id: http://svn.osgeo.org/geos/trunk@2343 + version of C++ TUT Framework. git-svn-id: + http://svn.osgeo.org/geos/trunk@2343 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Sandro Santilli @@ -14822,7 +19575,7 @@ * source/algorithm/Angle.cpp, source/algorithm/Makefile.am, source/headers/geos/algorithm/Angle.h, source/headers/geos/algorithm/Makefile.am: Port algorithm.Angle from - JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2342 + JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2342 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Sandro Santilli @@ -14834,12 +19587,14 @@ source/operation/buffer/BufferOp.cpp, source/operation/buffer/OffsetCurveBuilder.cpp: Sync BufferBuilder and BufferOp classes to JTS-1.9. Adapt OffsetCurveBuilder to use of - BufferParameter (needs more work for JTS-sync). git-svn-id: http://svn.osgeo.org/geos/trunk@2341 + BufferParameter (needs more work for JTS-sync). git-svn-id: + http://svn.osgeo.org/geos/trunk@2341 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Sandro Santilli - * source/headers/geos/operation/buffer/BufferParameters.h: typo git-svn-id: http://svn.osgeo.org/geos/trunk@2340 + * source/headers/geos/operation/buffer/BufferParameters.h: typo + git-svn-id: http://svn.osgeo.org/geos/trunk@2340 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Sandro Santilli @@ -14848,7 +19603,7 @@ source/headers/geos/operation/buffer/Makefile.am, source/operation/buffer/BufferParameters.cpp, source/operation/buffer/Makefile.am: Port BufferParameters from - JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2339 + JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2339 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-09 Sandro Santilli @@ -14856,7 +19611,8 @@ * source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveVertexList.h: Sync port of OffsetCurveVertexList to JTS-1.9, improve memory management - documentation (would need some refactoring/love) git-svn-id: http://svn.osgeo.org/geos/trunk@2338 + documentation (would need some refactoring/love) git-svn-id: + http://svn.osgeo.org/geos/trunk@2338 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli @@ -14865,17 +19621,20 @@ source/headers/geos/geomgraph/EdgeList.h, source/headers/geos/noding/OrientedCoordinateArray.h: Improve duplicate edge detection performance (JTS-1.9 sync) - fme.xml runs 3 - times as fast now. git-svn-id: http://svn.osgeo.org/geos/trunk@2337 + times as fast now. git-svn-id: + http://svn.osgeo.org/geos/trunk@2337 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli - * source/noding/OrientedCoordinateArray.cpp: const correctness git-svn-id: http://svn.osgeo.org/geos/trunk@2332 + * source/noding/OrientedCoordinateArray.cpp: const correctness + git-svn-id: http://svn.osgeo.org/geos/trunk@2332 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli - * capi/geos_c.h.in: Fix documentation for GEOSPrepare, GEOSPrepare_r git-svn-id: http://svn.osgeo.org/geos/trunk@2329 + * capi/geos_c.h.in: Fix documentation for GEOSPrepare, GEOSPrepare_r + git-svn-id: http://svn.osgeo.org/geos/trunk@2329 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli @@ -14884,7 +19643,7 @@ source/headers/geos/noding/OrientedCoordinateArray.h, source/noding/Makefile.am, source/noding/OrientedCoordinateArray.cpp: OrientedCoordinateArray - ported from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2328 + ported from JTS git-svn-id: http://svn.osgeo.org/geos/trunk@2328 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli @@ -14892,20 +19651,23 @@ * source/geom/CoordinateSequence.cpp, source/headers/geos/geom/CoordinateSequence.h: Add increasingDirection static method, from JTS's CoordinateArray (GEOS - puts all of them in CoordinateSequence for historical reasons) git-svn-id: http://svn.osgeo.org/geos/trunk@2327 + puts all of them in CoordinateSequence for historical reasons) + git-svn-id: http://svn.osgeo.org/geos/trunk@2327 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli * source/headers/geos/noding/snapround/SimpleSnapRounder.h, source/noding/snapround/SimpleSnapRounder.cpp: Complete porting of - SimpleSnapRounder (refactoring for adding snapped nodes) git-svn-id: http://svn.osgeo.org/geos/trunk@2326 + SimpleSnapRounder (refactoring for adding snapped nodes) + git-svn-id: http://svn.osgeo.org/geos/trunk@2326 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli * source/headers/geos/noding/SegmentStringUtil.h: Improve - documentation about memory usage for SegmentStringUtil class git-svn-id: http://svn.osgeo.org/geos/trunk@2325 + documentation about memory usage for SegmentStringUtil class + git-svn-id: http://svn.osgeo.org/geos/trunk@2325 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli @@ -14913,24 +19675,28 @@ * tests/unit/Makefile.am, tests/unit/capi/GEOSPreparedGeometryTest.cpp: Stub initial unit tests for C-API's GEOSPreparedGeometry operations. Helped fixing - issue 147 of postgis git-svn-id: http://svn.osgeo.org/geos/trunk@2324 + issue 147 of postgis git-svn-id: + http://svn.osgeo.org/geos/trunk@2324 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli * source/geom/prep/PreparedPolygonContainsProperly.cpp: Don't access - deleted memory. Fixes issue 147. git-svn-id: http://svn.osgeo.org/geos/trunk@2323 + deleted memory. Fixes issue 147. git-svn-id: + http://svn.osgeo.org/geos/trunk@2323 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli - * source/noding/snapround/HotPixel.cpp: Fix typo git-svn-id: http://svn.osgeo.org/geos/trunk@2322 + * source/noding/snapround/HotPixel.cpp: Fix typo git-svn-id: + http://svn.osgeo.org/geos/trunk@2322 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli * tests/unit/noding/SegmentNodeTest.cpp: Add a couple more tests to - SegmentNode unit test git-svn-id: http://svn.osgeo.org/geos/trunk@2321 + SegmentNode unit test git-svn-id: + http://svn.osgeo.org/geos/trunk@2321 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-08 Sandro Santilli @@ -14942,7 +19708,7 @@ source/noding/SegmentNode.cpp, source/noding/SegmentNodeList.cpp, tests/unit/noding/SegmentNodeTest.cpp, tests/unit/noding/SegmentPointComparatorTest.cpp: Port SegmentNode - to JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2320 + to JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2320 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli @@ -14982,14 +19748,15 @@ BasicSegmentStringTest.cpp}, tests/unit/noding/NodedSegmentStringTest.cpp, tests/unit/noding/SegmentNodeTest.cpp: Refactor SegmentString to be - an abstract class, to be in sync with JTS-1.9. git-svn-id: http://svn.osgeo.org/geos/trunk@2319 + an abstract class, to be in sync with JTS-1.9. git-svn-id: + http://svn.osgeo.org/geos/trunk@2319 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli * source/operation/valid/IndexedNestedRingTester.cpp, source/operation/valid/IndexedNestedRingTester.h: update copyright - notice git-svn-id: http://svn.osgeo.org/geos/trunk@2318 + notice git-svn-id: http://svn.osgeo.org/geos/trunk@2318 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli @@ -14997,19 +19764,21 @@ * source/headers/geos/noding/snapround/HotPixel.h, source/headers/geos/noding/snapround/HotPixel.inl, source/noding/snapround/HotPixel.cpp: Sync HotPixel to JTS-1.9 (rev - 1.3); fix a few bugs and use standard algorithms for min/max git-svn-id: http://svn.osgeo.org/geos/trunk@2317 + 1.3); fix a few bugs and use standard algorithms for min/max + git-svn-id: http://svn.osgeo.org/geos/trunk@2317 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli * source/headers/geos/noding/NodedSegmentString.h: Fix signed vs. - unsigned compiler warning git-svn-id: http://svn.osgeo.org/geos/trunk@2316 + unsigned compiler warning git-svn-id: + http://svn.osgeo.org/geos/trunk@2316 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli * source/headers/geos/operation/valid/IsValidOp.h: Port info, - indenting git-svn-id: http://svn.osgeo.org/geos/trunk@2315 + indenting git-svn-id: http://svn.osgeo.org/geos/trunk@2315 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli @@ -15018,37 +19787,43 @@ source/operation/valid/IndexedNestedRingTester.h, source/operation/valid/IsValidOp.cpp, source/operation/valid/Makefile.am: Port IndexedNestedRingTester and - have IsValidOp use it, syncing the operation to JTS-1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2314 + have IsValidOp use it, syncing the operation to JTS-1.9 + git-svn-id: http://svn.osgeo.org/geos/trunk@2314 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli * source/headers/geos/noding/SegmentStringUtil.h: Update port info, - minor tweaks to doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@2313 + minor tweaks to doxygen comments git-svn-id: + http://svn.osgeo.org/geos/trunk@2313 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-07 Sandro Santilli * source/algorithm/HCoordinate.cpp, source/headers/geos/algorithm/HCoordinate.h: Sync HCoordinate class - to JTS-1.9 (rev 1.18) git-svn-id: http://svn.osgeo.org/geos/trunk@2312 + to JTS-1.9 (rev 1.18) git-svn-id: + http://svn.osgeo.org/geos/trunk@2312 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-04-03 Mateusz Loskot * nmake.opt: Added _NMAKE_VER 9.00.21022.08 to nmake.opt. Fixed bug - with using BUILD_DEBUG instead of BUILD_BATCH in nmake.opt. git-svn-id: http://svn.osgeo.org/geos/trunk@2311 + with using BUILD_DEBUG instead of BUILD_BATCH in nmake.opt. + git-svn-id: http://svn.osgeo.org/geos/trunk@2311 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-27 Mateusz Loskot * build/msvc80/geos.sln, build/msvc80/geos_lib/geos_lib.vcproj: - Updated build/msvc80. git-svn-id: http://svn.osgeo.org/geos/trunk@2310 + Updated build/msvc80. git-svn-id: + http://svn.osgeo.org/geos/trunk@2310 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-27 Mateusz Loskot - * nmake.opt, source/Makefile.vc: Forgotten nmake.opt in last commit. git-svn-id: http://svn.osgeo.org/geos/trunk@2309 + * nmake.opt, source/Makefile.vc: Forgotten nmake.opt in last commit. + git-svn-id: http://svn.osgeo.org/geos/trunk@2309 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-26 Mateusz Loskot @@ -15058,95 +19833,109 @@ makefiles. Added nmake.opt file - GDAL style. Added some auto-magic to determine version of Visual C++ compiler and set version specific compilation flags. No need to specify Visual C++ version in cmd - line, but just run: nmake -f makefile.vc in root dir of the tree. git-svn-id: http://svn.osgeo.org/geos/trunk@2308 + line, but just run: nmake -f makefile.vc in root dir of the tree. + git-svn-id: http://svn.osgeo.org/geos/trunk@2308 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-26 Mateusz Loskot * source/operation/union/CascadedPolygonUnion.cpp: - CascadedPolygonUnion.cpp: added missing std headers. git-svn-id: http://svn.osgeo.org/geos/trunk@2307 + CascadedPolygonUnion.cpp: added missing std headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@2307 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-26 Mateusz Loskot - * TODO: Dummy commit - testing buildbot resurection. git-svn-id: http://svn.osgeo.org/geos/trunk@2306 + * TODO: Dummy commit - testing buildbot resurection. git-svn-id: + http://svn.osgeo.org/geos/trunk@2306 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-24 Mateusz Loskot * capi/geos_ts_c.cpp: Fixed bug introduced in recent refactoring work (r2281). This is the reason of PostGIS regression test failing - (Issue 143) git-svn-id: http://svn.osgeo.org/geos/trunk@2304 + (Issue 143) git-svn-id: http://svn.osgeo.org/geos/trunk@2304 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-24 Paul Ramsey - * autogen.sh: Allow version test to work in glibtoolize git-svn-id: http://svn.osgeo.org/geos/trunk@2303 + * autogen.sh: Allow version test to work in glibtoolize + git-svn-id: http://svn.osgeo.org/geos/trunk@2303 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-24 Mateusz Loskot * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: refactoring, assert() to test against nullptr - where it is forbidden. git-svn-id: http://svn.osgeo.org/geos/trunk@2302 + where it is forbidden. git-svn-id: + http://svn.osgeo.org/geos/trunk@2302 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-24 Mateusz Loskot * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: REVERTED r2299: Fixed GEOSSetSRID_r missing, GEOSSetSRID duplicated (Ticket - #242). A little of refactoring. git-svn-id: http://svn.osgeo.org/geos/trunk@2301 + #242). A little of refactoring. git-svn-id: + http://svn.osgeo.org/geos/trunk@2301 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-24 Mateusz Loskot * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_ts_c.cpp: Fixed GEOSSetSRID_r missing, GEOSSetSRID duplicated (Ticket #242). A - little of refactoring. git-svn-id: http://svn.osgeo.org/geos/trunk@2300 + little of refactoring. git-svn-id: + http://svn.osgeo.org/geos/trunk@2300 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: refactoring, use single return expression per function, added assert() to test against - nullptr where it is forbidden. git-svn-id: http://svn.osgeo.org/geos/trunk@2299 + nullptr where it is forbidden. git-svn-id: + http://svn.osgeo.org/geos/trunk@2299 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: refactoring, use single return expression per function, added assert() to test against - nullptr where it is forbidden, addd some comments. git-svn-id: http://svn.osgeo.org/geos/trunk@2298 + nullptr where it is forbidden, addd some comments. git-svn-id: + http://svn.osgeo.org/geos/trunk@2298 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: refactoring, use single return expression per function, added assert() to test against - nullptr where it is forbidden, addd some comments. git-svn-id: http://svn.osgeo.org/geos/trunk@2297 + nullptr where it is forbidden, addd some comments. git-svn-id: + http://svn.osgeo.org/geos/trunk@2297 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: refactoring, replace manual strdup with gstrdup, use single return expression per - function, added some comments. git-svn-id: http://svn.osgeo.org/geos/trunk@2296 + function, added some comments. git-svn-id: + http://svn.osgeo.org/geos/trunk@2296 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot - * autogen.sh: dummy commit git-svn-id: http://svn.osgeo.org/geos/trunk@2295 + * autogen.sh: dummy commit git-svn-id: + http://svn.osgeo.org/geos/trunk@2295 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot - * autogen.sh: autogen.sh: Fixed typo in tab character. git-svn-id: http://svn.osgeo.org/geos/trunk@2294 + * autogen.sh: autogen.sh: Fixed typo in tab character. git-svn-id: + http://svn.osgeo.org/geos/trunk@2294 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot * autogen.sh: autogen.sh: be more verbose about versions, check for - autoconf, check if ./configure is really generated. git-svn-id: http://svn.osgeo.org/geos/trunk@2293 + autoconf, check if ./configure is really generated. git-svn-id: + http://svn.osgeo.org/geos/trunk@2293 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot @@ -15164,17 +19953,20 @@ 2009-03-23 Mateusz Loskot * autogen.sh: autogen.sh: Call libtool *before* aclocal and automake - (see Automake manual,8.3.9.1). git-svn-id: http://svn.osgeo.org/geos/trunk@2290 + (see Automake manual,8.3.9.1). git-svn-id: + http://svn.osgeo.org/geos/trunk@2290 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-23 Mateusz Loskot - * autogen.sh: autogen.sh: verbose check if autotools versions. git-svn-id: http://svn.osgeo.org/geos/trunk@2289 + * autogen.sh: autogen.sh: verbose check if autotools versions. + git-svn-id: http://svn.osgeo.org/geos/trunk@2289 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-22 Paul Ramsey - * autogen.sh: Show what versions of things we're running git-svn-id: http://svn.osgeo.org/geos/trunk@2288 + * autogen.sh: Show what versions of things we're running + git-svn-id: http://svn.osgeo.org/geos/trunk@2288 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-21 Mateusz Loskot @@ -15182,32 +19974,43 @@ * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: refactoring - removed redundant return expressions, replaced bloated use of malloc + memcpy with single call to gstrdup, use of C++ cast operators, - removed unnecessary allocation of std::string objects. git-svn-id: http://svn.osgeo.org/geos/trunk@2287 + removed unnecessary allocation of std::string objects. git-svn-id: + http://svn.osgeo.org/geos/trunk@2287 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-21 Mateusz Loskot * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: added gstrdup and gstrdup_s helper functions to get rid of bloated code in future. - Started eliminating redundant return expressions. git-svn-id: http://svn.osgeo.org/geos/trunk@2286 + Started eliminating redundant return expressions. git-svn-id: + http://svn.osgeo.org/geos/trunk@2286 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-03-21 Mateusz Loskot + + * : macros: Updated svn:ignore property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2285 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-21 Mateusz Loskot - * : macros: Updated svn:ignore property. git-svn-id: http://svn.osgeo.org/geos/trunk@2285 + * capi/geos_ts_c.cpp: capi/geos_ts_c.cpp: Use of spaces instead of + tabs applied. git-svn-id: http://svn.osgeo.org/geos/trunk@2284 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-21 Mateusz Loskot * source/operation/polygonize/EdgeRing.cpp: source/operation/polygonize/edgering.cpp: cleaned compiler warnings - about mixed integral types. git-svn-id: http://svn.osgeo.org/geos/trunk@2283 + about mixed integral types. git-svn-id: + http://svn.osgeo.org/geos/trunk@2283 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-21 Mateusz Loskot * capi/geos_ts_c.cpp: Fixed deprecated conversion from string - constant to char* in GEOSisValidReason_r. Small refactoring. git-svn-id: http://svn.osgeo.org/geos/trunk@2282 + constant to char* in GEOSisValidReason_r. Small refactoring. + git-svn-id: http://svn.osgeo.org/geos/trunk@2282 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-21 Mateusz Loskot @@ -15218,12 +20021,20 @@ 2009-03-20 Mateusz Loskot - * : Updated svn:ignore property. git-svn-id: http://svn.osgeo.org/geos/trunk@2280 + * : Updated svn:ignore property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2280 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-03-20 Mateusz Loskot + + * build/msvc80/geos_unit/geos_unit.vcproj: Updated build/msvc80 + project. git-svn-id: http://svn.osgeo.org/geos/trunk@2279 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-19 Paul Ramsey - * autogen.sh: Fix spellingn mistake. git-svn-id: http://svn.osgeo.org/geos/trunk@2278 + * autogen.sh: Fix spellingn mistake. git-svn-id: + http://svn.osgeo.org/geos/trunk@2278 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-19 Mateusz Loskot @@ -15232,60 +20043,75 @@ tests/unit/capi/GEOSGeomFromWKBTest.cpp, tests/unit/utility.h: * tests/unit/capi: added GEOSGeomFromWKBTest with test cases (see comment) reported as a bug (See - http://postgis.refractions.net/pipermail/postgis-devel/2009-March/005199.html). TODO: Reproduce and ask the reporter to submit a ticket if necessary.* test/unit/utility.h: Added helper class wkb_hex_decoder. * Updated build/msvc90 projects. git-svn-id: http://svn.osgeo.org/geos/trunk@2277 - 5242fede-7e19-0410-aef8-94bd7d2200fb + http://postgis.refractions.net/pipermail/postgis-devel/2009-March/005199.html). TODO: Reproduce and ask the reporter to submit a ticket if necessary. * test/unit/utility.h: Added helper class wkb_hex_decoder. * Updated build/msvc90 projects. git-svn-id: http://svn.osgeo.org/geos/trunk@2277 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-11 Mateusz Loskot * source/operation/distance/DistanceOp.cpp, - tests/unit/operation/distance/DistanceOpTest.cpp: BUG in DistanceOp: * Test case and explanation of existing bug in - DistanceOp::closestPoints() recently reported by Aya (Ticket #236). * Refactored closestPoints() method to clearly present where is the - bug. Again, chain calls are evil! Bless clear code! * tests/unit/operation/distance/DistanceOpTest.cpp: see test case - test<17>, read FIXME comments. Uncomment closestPoints() to run and - reproduce the bug. * A dirty fix: if loc0 or loc1 are nullptr, return nullptr - CoordinatesSequence from closestPoints(). git-svn-id: http://svn.osgeo.org/geos/trunk@2276 + tests/unit/operation/distance/DistanceOpTest.cpp: BUG in DistanceOp: + * Test case and explanation of existing bug in + DistanceOp::closestPoints() recently reported by Aya (Ticket #236). + * Refactored closestPoints() method to clearly present where is the + bug. Again, chain calls are evil! Bless clear code! * + tests/unit/operation/distance/DistanceOpTest.cpp: see test case + test<17>, read FIXME comments. Uncomment closestPoints() to run and + reproduce the bug. * A dirty fix: if loc0 or loc1 are nullptr, + return nullptr CoordinatesSequence from closestPoints(). + git-svn-id: http://svn.osgeo.org/geos/trunk@2276 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-11 Mateusz Loskot * source/geom/CoordinateArraySequence.cpp: Number of assertions in - CoordinateArraySequence class. git-svn-id: http://svn.osgeo.org/geos/trunk@2275 + CoordinateArraySequence class. git-svn-id: + http://svn.osgeo.org/geos/trunk@2275 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2009-03-10 Paul Ramsey + + * : svn:ignore git-svn-id: http://svn.osgeo.org/geos/trunk@2274 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-10 Paul Ramsey - * : svn:ignore git-svn-id: http://svn.osgeo.org/geos/trunk@2274 + * : svn:ignore git-svn-id: http://svn.osgeo.org/geos/trunk@2273 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-10 Paul Ramsey - * NEWS: Update NEWS for 3.1.0 git-svn-id: http://svn.osgeo.org/geos/trunk@2272 + * NEWS: Update NEWS for 3.1.0 git-svn-id: + http://svn.osgeo.org/geos/trunk@2272 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-03-10 Paul Ramsey - * ChangeLog: Update ChangeLog for 3.1.0 release git-svn-id: http://svn.osgeo.org/geos/trunk@2271 + * ChangeLog: Update ChangeLog for 3.1.0 release git-svn-id: + http://svn.osgeo.org/geos/trunk@2271 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-02-07 Paul Ramsey * source/headers/geos/precision/Makefile.am: Include - GeometrySnapper.h in distribution package. git-svn-id: http://svn.osgeo.org/geos/trunk@2269 + GeometrySnapper.h in distribution package. git-svn-id: + http://svn.osgeo.org/geos/trunk@2269 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-02-02 Sean Gillies - * swig/python/README.txt: Note lack of Python support since 3.0 git-svn-id: http://svn.osgeo.org/geos/trunk@2268 + * swig/python/README.txt: Note lack of Python support since 3.0 + git-svn-id: http://svn.osgeo.org/geos/trunk@2268 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-02-02 Sean Gillies - * README: Notes on state of scripting language bindings git-svn-id: http://svn.osgeo.org/geos/trunk@2267 + * README: Notes on state of scripting language bindings git-svn-id: + http://svn.osgeo.org/geos/trunk@2267 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-30 Paul Ramsey - * configure.in: Add new msvc targets to build git-svn-id: http://svn.osgeo.org/geos/trunk@2266 + * configure.in: Add new msvc targets to build git-svn-id: + http://svn.osgeo.org/geos/trunk@2266 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-29 Mateusz Loskot @@ -15303,12 +20129,14 @@ build/msvc90/geos_unit/Makefile.am, build/msvc90/geos_unit/geos_unit.vcproj: Added build/msvc90 with solution and project files for Microsoft Visual C++ 2009 (9.0). - Successfully built and tested GEOS with Visual C++ 9.0. git-svn-id: http://svn.osgeo.org/geos/trunk@2265 + Successfully built and tested GEOS with Visual C++ 9.0. git-svn-id: + http://svn.osgeo.org/geos/trunk@2265 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-29 Paul Ramsey - * README: update autogen.bat ref git-svn-id: http://svn.osgeo.org/geos/trunk@2264 + * README: update autogen.bat ref git-svn-id: + http://svn.osgeo.org/geos/trunk@2264 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-29 Mateusz Loskot @@ -15326,52 +20154,59 @@ source/headers/geos/noding/NodedSegmentString.h, source/headers/geos/noding/SegmentIntersectionDetector.h, source/headers/geos/noding/SegmentStringUtil.h: Fixed broken - svn:keyword Id git-svn-id: http://svn.osgeo.org/geos/trunk@2263 + svn:keyword Id git-svn-id: http://svn.osgeo.org/geos/trunk@2263 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-29 Mateusz Loskot * bootstrap.bat => autogen.bat: Renamed bootstrap.bat to autogen.bat - for easier guass of the script purpose. Wiki updated. git-svn-id: http://svn.osgeo.org/geos/trunk@2262 + for easier guass of the script purpose. Wiki updated. git-svn-id: + http://svn.osgeo.org/geos/trunk@2262 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-28 Paul Ramsey - * README: Add to win32 instructions git-svn-id: http://svn.osgeo.org/geos/trunk@2261 + * README: Add to win32 instructions git-svn-id: + http://svn.osgeo.org/geos/trunk@2261 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-27 Paul Ramsey * source/headers/geos/geom/util/Makefile.am: Add GeometryCombiner.h - to include dist git-svn-id: http://svn.osgeo.org/geos/trunk@2260 + to include dist git-svn-id: http://svn.osgeo.org/geos/trunk@2260 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-27 Paul Ramsey * build/msvc80/geos_c_dll/geos_c_dll.vcproj: Revert some junk from - an old commit, per issue #220 git-svn-id: http://svn.osgeo.org/geos/trunk@2259 + an old commit, per issue #220 git-svn-id: + http://svn.osgeo.org/geos/trunk@2259 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-26 Frank Warmerdam * source/Makefile.vc: added two new files related to cascaded - polygon union (#226) git-svn-id: http://svn.osgeo.org/geos/trunk@2258 + polygon union (#226) git-svn-id: + http://svn.osgeo.org/geos/trunk@2258 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-24 Paul Ramsey - * HOWTO_RELEASE: Update git-svn-id: http://svn.osgeo.org/geos/trunk@2257 + * HOWTO_RELEASE: Update git-svn-id: + http://svn.osgeo.org/geos/trunk@2257 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-24 Paul Ramsey - * ChangeLog: Update changelog git-svn-id: http://svn.osgeo.org/geos/trunk@2256 + * ChangeLog: Update changelog git-svn-id: + http://svn.osgeo.org/geos/trunk@2256 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-24 Mateusz Loskot * capi/geos_ts_c.cpp: Fixed mixed signed/unsigned integral types in - geos_ts_c.cpp, so no compilers should flood with warnings now. git-svn-id: http://svn.osgeo.org/geos/trunk@2255 + geos_ts_c.cpp, so no compilers should flood with warnings now. + git-svn-id: http://svn.osgeo.org/geos/trunk@2255 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-24 Mateusz Loskot @@ -15379,7 +20214,8 @@ * build/msvc80/geos_c_dll/geos_c_dll.vcproj, build/msvc80/geos_lib/geos_lib.vcproj, build/msvc80/geos_unit/geos_unit.vcproj: Updated projects for Visual - Studio 2005 adding new .h/.cpp files. git-svn-id: http://svn.osgeo.org/geos/trunk@2254 + Studio 2005 adding new .h/.cpp files. git-svn-id: + http://svn.osgeo.org/geos/trunk@2254 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-23 Mateusz Loskot @@ -15392,7 +20228,8 @@ 2009-01-21 Paul Ramsey * source/geom/Geometry.cpp: Remove geometryCollection protection - from Union/Relate/Intersection/Difference. git-svn-id: http://svn.osgeo.org/geos/trunk@2252 + from Union/Relate/Intersection/Difference. git-svn-id: + http://svn.osgeo.org/geos/trunk@2252 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-20 Paul Ramsey @@ -15401,41 +20238,46 @@ source/headers/geos/operation/union/CascadedPolygonUnion.h, source/operation/union/CascadedPolygonUnion.cpp: Add GEOSUnionCascaded(*GEOSGeometry) to CAPI in preparation for PostGIS - hook-up. git-svn-id: http://svn.osgeo.org/geos/trunk@2251 + hook-up. git-svn-id: http://svn.osgeo.org/geos/trunk@2251 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-19 Paul Ramsey * capi/geos_c.cpp, capi/geos_ts_c.cpp: Formatting changes to - function decls. git-svn-id: http://svn.osgeo.org/geos/trunk@2250 + function decls. git-svn-id: http://svn.osgeo.org/geos/trunk@2250 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-19 Howard Butler - * source/Makefile.vc: fixes to allow building in msvc 2003 git-svn-id: http://svn.osgeo.org/geos/trunk@2249 + * source/Makefile.vc: fixes to allow building in msvc 2003 + git-svn-id: http://svn.osgeo.org/geos/trunk@2249 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-19 Paul Ramsey * configure.in: Make warning flags conditional behind a compiler - test... fix to bug #192 ? git-svn-id: http://svn.osgeo.org/geos/trunk@2248 + test... fix to bug #192 ? git-svn-id: + http://svn.osgeo.org/geos/trunk@2248 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-19 Paul Ramsey * source/headers/geos/operation/union/CascadedPolygonUnion.h, source/operation/union/CascadedPolygonUnion.cpp: Added patch from - hkaiser to allow cascadedunion to be run directly on a multipolygon. git-svn-id: http://svn.osgeo.org/geos/trunk@2247 + hkaiser to allow cascadedunion to be run directly on a multipolygon. + git-svn-id: http://svn.osgeo.org/geos/trunk@2247 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-19 Paul Ramsey - * autogen.sh: Fix error left behind from testing. git-svn-id: http://svn.osgeo.org/geos/trunk@2246 + * autogen.sh: Fix error left behind from testing. git-svn-id: + http://svn.osgeo.org/geos/trunk@2246 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-18 Paul Ramsey - * autogen.sh: Add some more info on missing tools. git-svn-id: http://svn.osgeo.org/geos/trunk@2245 + * autogen.sh: Add some more info on missing tools. git-svn-id: + http://svn.osgeo.org/geos/trunk@2245 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-18 Paul Ramsey @@ -15448,18 +20290,21 @@ build/msvc80/geos_unit/Makefile.am, configure.in, source/Makefile.vc, source/headers/geos/Makefile.am: Add msvc files to distribution target, and update release notes to include updating - version in .vc headers. git-svn-id: http://svn.osgeo.org/geos/trunk@2244 + version in .vc headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@2244 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-18 Paul Ramsey - * configure.in: Add a couple extra program checks. git-svn-id: http://svn.osgeo.org/geos/trunk@2243 + * configure.in: Add a couple extra program checks. git-svn-id: + http://svn.osgeo.org/geos/trunk@2243 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-18 Paul Ramsey * autogen.sh: Add version test for aclocal and automake to allow - OpenSolaris to work. git-svn-id: http://svn.osgeo.org/geos/trunk@2241 + OpenSolaris to work. git-svn-id: + http://svn.osgeo.org/geos/trunk@2241 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-18 Paul Ramsey @@ -15478,48 +20323,55 @@ source/operation/union/CascadedPolygonUnion.cpp, source/operation/union/Makefile.am, tests/unit/Makefile.am, tests/unit/operation/union/CascadedPolygonUnionTest.cpp: Apply - cascaded union patch, for issue #225 git-svn-id: http://svn.osgeo.org/geos/trunk@2240 + cascaded union patch, for issue #225 git-svn-id: + http://svn.osgeo.org/geos/trunk@2240 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-15 Paul Ramsey * tests/xmltester/Makefile.am: Remove XMLTester from list of - installed programs. git-svn-id: http://svn.osgeo.org/geos/trunk@2239 + installed programs. git-svn-id: + http://svn.osgeo.org/geos/trunk@2239 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-14 Paul Ramsey * capi/geos_ts_c.cpp: Remove strdup use from code for compilation in - mingw git-svn-id: http://svn.osgeo.org/geos/trunk@2238 + mingw git-svn-id: http://svn.osgeo.org/geos/trunk@2238 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-13 Paul Ramsey * configure.in: Add [macros] include to configure.in directly. Seems - to make more recent aclocals happy git-svn-id: http://svn.osgeo.org/geos/trunk@2237 + to make more recent aclocals happy git-svn-id: + http://svn.osgeo.org/geos/trunk@2237 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-13 Paul Ramsey * configure.in: Change AC_SUBST to one-per-line instead of - one-line-for-all. Seems to make more recent autoconf's happier. git-svn-id: http://svn.osgeo.org/geos/trunk@2236 + one-line-for-all. Seems to make more recent autoconf's happier. + git-svn-id: http://svn.osgeo.org/geos/trunk@2236 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-13 Paul Ramsey * capi/geos_ts_c.cpp: Change return values for - GEOSWKBWriter_getIncludeSRID_r to match function signature. git-svn-id: http://svn.osgeo.org/geos/trunk@2235 + GEOSWKBWriter_getIncludeSRID_r to match function signature. + git-svn-id: http://svn.osgeo.org/geos/trunk@2235 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-13 Paul Ramsey * tests/unit/capi/badthreadtest.c, tests/unit/capi/brokengrammar, - tests/unit/capi/threadtest.c: More files missing from commit. git-svn-id: http://svn.osgeo.org/geos/trunk@2234 + tests/unit/capi/threadtest.c: More files missing from commit. + git-svn-id: http://svn.osgeo.org/geos/trunk@2234 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-13 Paul Ramsey - * capi/geos_ts_c.cpp: Add missing file to SVN. git-svn-id: http://svn.osgeo.org/geos/trunk@2233 + * capi/geos_ts_c.cpp: Add missing file to SVN. git-svn-id: + http://svn.osgeo.org/geos/trunk@2233 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-13 Paul Ramsey @@ -15529,7 +20381,7 @@ => tests/unit/capi}/test.expected, {capi => tests/unit/capi}/test.wkt, {capi => tests/unit/capi}/testrunner.sh: Apply patch for issue #210 (thread safe c-api) submitted by Chuck - Thibert. git-svn-id: http://svn.osgeo.org/geos/trunk@2232 + Thibert. git-svn-id: http://svn.osgeo.org/geos/trunk@2232 5242fede-7e19-0410-aef8-94bd7d2200fb 2009-01-05 Stephen Wong @@ -15538,37 +20390,41 @@ source/operation/buffer/OffsetCurveVertexList.h, source/operation/linemerge/LineMerger.cpp: Fixed memory leak in BufferBuilder (#218); added read-only coordinates function in - OffsetCurveVertexList; explicity pass ownership in LineMerger. git-svn-id: http://svn.osgeo.org/geos/trunk@2231 + OffsetCurveVertexList; explicity pass ownership in LineMerger. + git-svn-id: http://svn.osgeo.org/geos/trunk@2231 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-26 Paul Ramsey * source/headers/geos/noding/Octant.h, tests/unit/noding/SegmentStringTest.cpp: Octant.h error (#185) from - Denise Macleod. git-svn-id: http://svn.osgeo.org/geos/trunk@2229 + Denise Macleod. git-svn-id: http://svn.osgeo.org/geos/trunk@2229 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-26 Paul Ramsey * source/io/WKBWriter.cpp: Allow proper writing out of z ordinates. - From Justin Bronn (#216) git-svn-id: http://svn.osgeo.org/geos/trunk@2228 + From Justin Bronn (#216) git-svn-id: + http://svn.osgeo.org/geos/trunk@2228 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-26 Paul Ramsey * source/io/WKBReader.cpp: Allow readpoint to look at input - dimension and fill higher ordinates. (#217) git-svn-id: http://svn.osgeo.org/geos/trunk@2227 + dimension and fill higher ordinates. (#217) git-svn-id: + http://svn.osgeo.org/geos/trunk@2227 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-26 Paul Ramsey * capi/geos_c.cpp, capi/geos_c.h.in: Expose GEOSIsValidReason to - CAPI git-svn-id: http://svn.osgeo.org/geos/trunk@2226 + CAPI git-svn-id: http://svn.osgeo.org/geos/trunk@2226 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-18 Paul Ramsey - * source/inlines.cpp: Cygwin build fix from MCA git-svn-id: http://svn.osgeo.org/geos/trunk@2221 + * source/inlines.cpp: Cygwin build fix from MCA git-svn-id: + http://svn.osgeo.org/geos/trunk@2221 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-11 Paul Ramsey @@ -15576,65 +20432,74 @@ * source/geomgraph/EdgeList.cpp, source/headers/geos/geomgraph/EdgeList.h, source/operation/overlay/OverlayOp.cpp: Memory leak on invalid - polygons in intersection(). (#170) from Denise MacLeod. git-svn-id: http://svn.osgeo.org/geos/trunk@2220 + polygons in intersection(). (#170) from Denise MacLeod. + git-svn-id: http://svn.osgeo.org/geos/trunk@2220 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-11-05 Paul Ramsey * source/geom/prep/PreparedLineStringIntersects.cpp: Another minor - memory leak removed. git-svn-id: http://svn.osgeo.org/geos/trunk@2218 + memory leak removed. git-svn-id: + http://svn.osgeo.org/geos/trunk@2218 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-28 Paul Ramsey - * source/inlines.cpp: Cygwin/Mingw patch from Mark Cave-Ayland git-svn-id: http://svn.osgeo.org/geos/trunk@2217 + * source/inlines.cpp: Cygwin/Mingw patch from Mark Cave-Ayland + git-svn-id: http://svn.osgeo.org/geos/trunk@2217 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-23 Frank Warmerdam * source/operation/valid/IsValidOp.cpp: set isChecked flag after - checking to fix memory leak (#169) git-svn-id: http://svn.osgeo.org/geos/trunk@2210 + checking to fix memory leak (#169) git-svn-id: + http://svn.osgeo.org/geos/trunk@2210 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-16 Paul Ramsey - * HOWTO_RELEASE: change info to point to osgeo.org git-svn-id: http://svn.osgeo.org/geos/trunk@2203 + * HOWTO_RELEASE: change info to point to osgeo.org git-svn-id: + http://svn.osgeo.org/geos/trunk@2203 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-14 Paul Ramsey * capi/geos_c.cpp, capi/geos_c.h.in: Consistent const declarations - in c-api ($#209) git-svn-id: http://svn.osgeo.org/geos/trunk@2200 + in c-api ($#209) git-svn-id: http://svn.osgeo.org/geos/trunk@2200 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-13 Paul Ramsey * source/headers/geos/io/Makefile.am: Add CLocalizer.h to build so - it gets packaged in make dist git-svn-id: http://svn.osgeo.org/geos/trunk@2199 + it gets packaged in make dist git-svn-id: + http://svn.osgeo.org/geos/trunk@2199 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-10 Paul Ramsey * source/geom/prep/PreparedPolygonContainsProperly.cpp: One last - memory leak fix. git-svn-id: http://svn.osgeo.org/geos/trunk@2198 + memory leak fix. git-svn-id: http://svn.osgeo.org/geos/trunk@2198 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-09 Paul Ramsey * source/geom/prep/PreparedPolygonIntersects.cpp: Memory leak fix - for for prepared intersects. (#207) git-svn-id: http://svn.osgeo.org/geos/trunk@2197 + for for prepared intersects. (#207) git-svn-id: + http://svn.osgeo.org/geos/trunk@2197 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-10-04 Paul Ramsey * source/headers/geos/noding/MCIndexSegmentSetMutualIntersector.h, source/noding/MCIndexSegmentSetMutualIntersector.cpp: Memory leak - fix for prepared geometry, from Hartmut Kaiser. (#207) git-svn-id: http://svn.osgeo.org/geos/trunk@2196 + fix for prepared geometry, from Hartmut Kaiser. (#207) git-svn-id: + http://svn.osgeo.org/geos/trunk@2196 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-29 Paul Ramsey - * capi/geos_c.cpp: Put function sig on one line git-svn-id: http://svn.osgeo.org/geos/trunk@2195 + * capi/geos_c.cpp: Put function sig on one line git-svn-id: + http://svn.osgeo.org/geos/trunk@2195 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-23 Mateusz Loskot @@ -15655,7 +20520,8 @@ source/index/strtree/ItemBoundable.cpp: Moved some ctor/dctor bodies from headers to translation units. Improved source code readability. TODO: We need to run a beast like AStyle on all GEOS code because - many places are very hard to read. git-svn-id: http://svn.osgeo.org/geos/trunk@2194 + many places are very hard to read. git-svn-id: + http://svn.osgeo.org/geos/trunk@2194 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-23 Mateusz Loskot @@ -15664,27 +20530,30 @@ MCIndexSegmentSetMutualIntersector::addToIndex: Completed BWJ's comment on memory leaks with important observations about objects relation & lifetime. The note is a diagnosis of roots of the - problem. Improved source code readability. git-svn-id: http://svn.osgeo.org/geos/trunk@2193 + problem. Improved source code readability. git-svn-id: + http://svn.osgeo.org/geos/trunk@2193 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-22 Mateusz Loskot * source/headers/geos/io/WKBWriter.h: Use conditional operators - instead of cast bool to int. git-svn-id: http://svn.osgeo.org/geos/trunk@2192 + instead of cast bool to int. git-svn-id: + http://svn.osgeo.org/geos/trunk@2192 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-22 Mateusz Loskot * source/simplify/TopologyPreservingSimplifier.cpp: Removed unnecessary std::endl from debug messages in - TopologyPreservingSimplifier.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@2191 + TopologyPreservingSimplifier.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@2191 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-21 Mateusz Loskot * source/Makefile.vc: Patched NMAKE makefiles: replaced lib.exe with link.exe /lib command to enabled compilation using Microsoft Visual - C++ Toolkit 2003 git-svn-id: http://svn.osgeo.org/geos/trunk@2190 + C++ Toolkit 2003 git-svn-id: http://svn.osgeo.org/geos/trunk@2190 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-16 Mateusz Loskot @@ -15711,32 +20580,36 @@ 2008-09-16 Mateusz Loskot * build/msvc80/geos_unit/geos_unit.vcproj: Added - PreparedGeometryFactoryTest to geos_unit.vcproj. git-svn-id: http://svn.osgeo.org/geos/trunk@2186 + PreparedGeometryFactoryTest to geos_unit.vcproj. git-svn-id: + http://svn.osgeo.org/geos/trunk@2186 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-16 Mateusz Loskot * build/msvc80/geos_lib/geos_lib.vcproj: Added CLocalizer to - geos_lib.vcproj project for Visual C++ 2005/2008. git-svn-id: http://svn.osgeo.org/geos/trunk@2185 + geos_lib.vcproj project for Visual C++ 2005/2008. git-svn-id: + http://svn.osgeo.org/geos/trunk@2185 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-16 Mateusz Loskot * tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp: Include - missing in isPointInRingTest.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@2184 + missing in isPointInRingTest.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@2184 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-09-16 Mateusz Loskot * source/Makefile.vc, source/io/CLocalizer.cpp: Fixed undeclared std::locale in CLocalizer when building using Visual C++ (Ticket - #201) git-svn-id: http://svn.osgeo.org/geos/trunk@2183 + #201) git-svn-id: http://svn.osgeo.org/geos/trunk@2183 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-31 Mateusz Loskot * tests/unit/geos_unit.cpp: Replaced incorrect with - in geos_unit.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@2182 + in geos_unit.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@2182 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-31 Mateusz Loskot @@ -15755,19 +20628,22 @@ 2008-08-29 Mateusz Loskot * capi/geos_c.cpp: Removed redundant return expressions from - geos_c.cpp. Testing changes notifications for buildbot. git-svn-id: http://svn.osgeo.org/geos/trunk@2179 + geos_c.cpp. Testing changes notifications for buildbot. git-svn-id: + http://svn.osgeo.org/geos/trunk@2179 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-29 Mateusz Loskot * capi/geos_c.cpp: Fixed execution paths and removed redundant - return expr in some C API calls. git-svn-id: http://svn.osgeo.org/geos/trunk@2176 + return expr in some C API calls. git-svn-id: + http://svn.osgeo.org/geos/trunk@2176 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-29 Mateusz Loskot * source/headers/geos/io/WKBWriter.h, source/io/WKBWriter.cpp: Added - missing virtual destructor to WKBWriter class. git-svn-id: http://svn.osgeo.org/geos/trunk@2175 + missing virtual destructor to WKBWriter class. git-svn-id: + http://svn.osgeo.org/geos/trunk@2175 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-28 Sean Gillies @@ -15776,30 +20652,34 @@ source/headers/geos/io/CLocalizer.h, source/io/CLocalizer.cpp, source/io/Makefile.am: Added CLocalizer class that switches to C locale and restores to the outer context's locale when deleted - (#201) git-svn-id: http://svn.osgeo.org/geos/trunk@2174 + (#201) git-svn-id: http://svn.osgeo.org/geos/trunk@2174 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-28 Mateusz Loskot * tests/unit/Makefile.am, tests/unit/capi/GEOSGeomToWKTTest.cpp: - tests/unit: added GEOSGeomToWKTTest. git-svn-id: http://svn.osgeo.org/geos/trunk@2173 + tests/unit: added GEOSGeomToWKTTest. git-svn-id: + http://svn.osgeo.org/geos/trunk@2173 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-28 Sean Gillies * capi/geos_c.cpp: Switch to C locale while reading and writing WKT - and restore to the original context's locale afterward (#201) git-svn-id: http://svn.osgeo.org/geos/trunk@2172 + and restore to the original context's locale afterward (#201) + git-svn-id: http://svn.osgeo.org/geos/trunk@2172 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-22 Frank Warmerdam * source/operation/buffer/BufferOp.cpp: include cmath for std::pow() - and std:log() on MSVC7.1 (#199) git-svn-id: http://svn.osgeo.org/geos/trunk@2171 + and std:log() on MSVC7.1 (#199) git-svn-id: + http://svn.osgeo.org/geos/trunk@2171 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-22 Mateusz Loskot - * build/bjam/README: Added build/bjam/README with status note. git-svn-id: http://svn.osgeo.org/geos/trunk@2170 + * build/bjam/README: Added build/bjam/README with status note. + git-svn-id: http://svn.osgeo.org/geos/trunk@2170 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-19 Mateusz Loskot @@ -15813,25 +20693,29 @@ * source/geom/util/CoordinateOperation.cpp, source/geom/util/GeometryEditor.cpp: geos/geom/util: Prefer strict static_cast than C-style cast. Commented ownership transfer of - coordinates object. git-svn-id: http://svn.osgeo.org/geos/trunk@2168 + coordinates object. git-svn-id: + http://svn.osgeo.org/geos/trunk@2168 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-19 Mateusz Loskot * tests/unit/algorithm/ConvexHullTest.cpp: - tests/unit/algorithm/ConvexHullTest.cpp: Fixed memory leaks. git-svn-id: http://svn.osgeo.org/geos/trunk@2167 + tests/unit/algorithm/ConvexHullTest.cpp: Fixed memory leaks. + git-svn-id: http://svn.osgeo.org/geos/trunk@2167 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-19 Mateusz Loskot * tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp: - tests/unit/algorithm/CGAlgorithms: Fixed memory leaks. git-svn-id: http://svn.osgeo.org/geos/trunk@2166 + tests/unit/algorithm/CGAlgorithms: Fixed memory leaks. git-svn-id: + http://svn.osgeo.org/geos/trunk@2166 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-18 Mateusz Loskot * tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp: - tests/unit/algorithm/CGAlgorithms: Fixed number of memory leaks. git-svn-id: http://svn.osgeo.org/geos/trunk@2165 + tests/unit/algorithm/CGAlgorithms: Fixed number of memory leaks. + git-svn-id: http://svn.osgeo.org/geos/trunk@2165 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-18 Mateusz Loskot @@ -15845,7 +20729,8 @@ * tests/bigtest/GeometryTestFactory.cpp, tests/bigtest/TestSweepLineSpeed.cpp: tests/bigtest: Pointed out - number of memory leaks but not fixing them, waiting for comments. git-svn-id: http://svn.osgeo.org/geos/trunk@2163 + number of memory leaks but not fixing them, waiting for comments. + git-svn-id: http://svn.osgeo.org/geos/trunk@2163 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-18 Mateusz Loskot @@ -15860,7 +20745,8 @@ tests/unit/simplify/TopologyPreservingSimplifierTest.cpp, tests/unit/utility.h: tests/unit: added tests cases to PreparedGeometryFactoryTest, refactored casting utils and geometry - comparators, small cleanup. git-svn-id: http://svn.osgeo.org/geos/trunk@2162 + comparators, small cleanup. git-svn-id: + http://svn.osgeo.org/geos/trunk@2162 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-18 Mateusz Loskot @@ -15877,12 +20763,14 @@ source/noding/MCIndexSegmentSetMutualIntersector.cpp, source/noding/NodedSegmentString.cpp, source/noding/SegmentIntersectionDetector.cpp, - source/noding/SegmentStringUtil.cpp: Fixed svn:keywords. git-svn-id: http://svn.osgeo.org/geos/trunk@2161 + source/noding/SegmentStringUtil.cpp: Fixed svn:keywords. + git-svn-id: http://svn.osgeo.org/geos/trunk@2161 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-18 Mateusz Loskot - * source/headers/geos/util.h: Fixed UNREFERENCED_PARAMETER macro. git-svn-id: http://svn.osgeo.org/geos/trunk@2160 + * source/headers/geos/util.h: Fixed UNREFERENCED_PARAMETER macro. + git-svn-id: http://svn.osgeo.org/geos/trunk@2160 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-18 Mateusz Loskot @@ -15917,12 +20805,14 @@ source/geom/prep/PreparedPolygonCovers.cpp, source/geom/prep/PreparedPolygonIntersects.cpp, source/geom/prep/PreparedPolygonPredicate.cpp: geom/prep: Refactored - kamikaze casts to more readable form. Fixed svn:keywords. git-svn-id: http://svn.osgeo.org/geos/trunk@2158 + kamikaze casts to more readable form. Fixed svn:keywords. + git-svn-id: http://svn.osgeo.org/geos/trunk@2158 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-12 Mateusz Loskot - * source/headers/geos/geomPrep.h: Fixed Id keywords. git-svn-id: http://svn.osgeo.org/geos/trunk@2157 + * source/headers/geos/geomPrep.h: Fixed Id keywords. git-svn-id: + http://svn.osgeo.org/geos/trunk@2157 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-12 Mateusz Loskot @@ -15938,19 +20828,29 @@ 2008-08-12 Mateusz Loskot * source/headers/geos/geom/prep/PreparedGeometryFactory.h: Updated - svn:keywords property. git-svn-id: http://svn.osgeo.org/geos/trunk@2155 + svn:keywords property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2155 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-12 Mateusz Loskot - * : Updated svn:keywords property. git-svn-id: http://svn.osgeo.org/geos/trunk@2154 + * : Updated svn:keywords property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2154 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2008-08-11 Mateusz Loskot + + * tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp: Refactored + tabs vs spaces in PreparedGeometryFactoryTest. git-svn-id: + http://svn.osgeo.org/geos/trunk@2153 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-11 Mateusz Loskot * source/headers/geos/geom/prep/PreparedGeometryFactory.h: PreparedGeometry must be a complete type where it is destroyed by - the factory (Ticket #198). git-svn-id: http://svn.osgeo.org/geos/trunk@2152 + the factory (Ticket #198). git-svn-id: + http://svn.osgeo.org/geos/trunk@2152 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-11 Mateusz Loskot @@ -15958,47 +20858,54 @@ * source/headers/geos/geom/prep/PreparedGeometryFactory.h, tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp: Completed PreparedGeometryFactory class with missing named destructor for - PreparedGeometry (Ticket #198) git-svn-id: http://svn.osgeo.org/geos/trunk@2151 + PreparedGeometry (Ticket #198) git-svn-id: + http://svn.osgeo.org/geos/trunk@2151 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-11 Mateusz Loskot - * : Removed .PreparedGeometryFactoryTest.cpp.swp that must sneaked - accidentally. git-svn-id: http://svn.osgeo.org/geos/trunk@2150 + * tests/unit/geom/prep/.PreparedGeometryFactoryTest.cpp.swp: Removed + .PreparedGeometryFactoryTest.cpp.swp that must sneaked accidentally. + git-svn-id: http://svn.osgeo.org/geos/trunk@2150 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-11 Mateusz Loskot * tests/unit/Makefile.am, + tests/unit/geom/prep/.PreparedGeometryFactoryTest.cpp.swp, tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp: Added PreparedGeometryFactoryTest with first test cases included. FIXME: The test causes memory leak because we don't know how to destroy PreparedGeometry objects returned by the factory, discussing on the - geos-devel list now. git-svn-id: http://svn.osgeo.org/geos/trunk@2149 + geos-devel list now. git-svn-id: + http://svn.osgeo.org/geos/trunk@2149 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-07 Paul Ramsey * source/algorithm/RobustDeterminant.cpp: Added original author to - main copyright block. git-svn-id: http://svn.osgeo.org/geos/trunk@2148 + main copyright block. git-svn-id: + http://svn.osgeo.org/geos/trunk@2148 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-07 Paul Ramsey * source/headers/geos/timeval.h: Change to standard header, with (c) - credit to author. git-svn-id: http://svn.osgeo.org/geos/trunk@2147 + credit to author. git-svn-id: http://svn.osgeo.org/geos/trunk@2147 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-08-01 Mateusz Loskot * ChangeLog: Updated ChangeLog with latest submissions. Hmm, should - we stil maintain the ChangeLog file? git-svn-id: http://svn.osgeo.org/geos/trunk@2146 + we stil maintain the ChangeLog file? git-svn-id: + http://svn.osgeo.org/geos/trunk@2146 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-31 Mateusz Loskot * tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp: Fixed tabs, - hopefully. Updated svn:keywords property. git-svn-id: http://svn.osgeo.org/geos/trunk@2145 + hopefully. Updated svn:keywords property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2145 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-31 Mateusz Loskot @@ -16008,7 +20915,8 @@ completing C API interface with wrapper on Polygonizer::getCutEdges (Ticket #195). Unit test included in tests/unit/capi/GEOSPolygonizer_getCutEdgeTest.cpp. Thanks to Jurgen - E. Fischer for this patch. git-svn-id: http://svn.osgeo.org/geos/trunk@2144 + E. Fischer for this patch. git-svn-id: + http://svn.osgeo.org/geos/trunk@2144 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-26 Mateusz Loskot @@ -16025,25 +20933,35 @@ 2008-07-26 Mateusz Loskot * capi/geos_c.h.in: Guarded version macros with #ifndef conditions - to avoid redefinition errors (Ticket #167). git-svn-id: http://svn.osgeo.org/geos/trunk@2142 + to avoid redefinition errors (Ticket #167). git-svn-id: + http://svn.osgeo.org/geos/trunk@2142 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-26 Mateusz Loskot * source/headers/geos/version.h.in, source/headers/geos/version.h.vc: Guarded version macros with - #ifndef conditions to avoid redefinition errors (Ticket #167). git-svn-id: http://svn.osgeo.org/geos/trunk@2141 + #ifndef conditions to avoid redefinition errors (Ticket #167). + git-svn-id: http://svn.osgeo.org/geos/trunk@2141 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-26 Mateusz Loskot * macros/ac_python_devel.m4: Fixed problems with finding libpython - on Mac Darwin (Ticket #191). git-svn-id: http://svn.osgeo.org/geos/trunk@2140 + on Mac Darwin (Ticket #191). git-svn-id: + http://svn.osgeo.org/geos/trunk@2140 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2008-07-26 Mateusz Loskot + + * : Updated svn:keywords property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2139 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-26 Mateusz Loskot - * : Updated svn:keywords property. git-svn-id: http://svn.osgeo.org/geos/trunk@2139 + * autogen.sh: Fixed autogen.sh for OpenSolaris (Ticket #192). + git-svn-id: http://svn.osgeo.org/geos/trunk@2138 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-25 Mateusz Loskot @@ -16055,18 +20973,27 @@ source/noding/FastNodingValidator.cpp, source/noding/SingleInteriorIntersectionFinder.cpp, source/operation/buffer/OffsetCurveVertexList.h: Updated - svn:keywords property git-svn-id: http://svn.osgeo.org/geos/trunk@2137 + svn:keywords property git-svn-id: + http://svn.osgeo.org/geos/trunk@2137 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-25 Mateusz Loskot - * : Updated svn:keywords property git-svn-id: http://svn.osgeo.org/geos/trunk@2136 + * : Updated svn:keywords property git-svn-id: + http://svn.osgeo.org/geos/trunk@2136 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2008-07-19 Frank Warmerdam + + * source/Makefile.vc: added manifest handling for DLLs (#193) + git-svn-id: http://svn.osgeo.org/geos/trunk@2135 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-19 Frank Warmerdam * source/Makefile.vc: added rules to create platform.h, version.h - and geos_c.h from templates on win32 git-svn-id: http://svn.osgeo.org/geos/trunk@2134 + and geos_c.h from templates on win32 git-svn-id: + http://svn.osgeo.org/geos/trunk@2134 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-15 Mateusz Loskot @@ -16090,30 +21017,79 @@ source/util/math.cpp, tests/xmltester/XMLTester.cpp, tests/xmltester/markup/MarkupSTL.h: Fixed compilation on with Sun Studio compiler on Solaris x86 and Sparc (Ticket #189). Thanks to - Magne Mahre for the patch. git-svn-id: http://svn.osgeo.org/geos/trunk@2131 + Magne Mahre for the patch. git-svn-id: + http://svn.osgeo.org/geos/trunk@2131 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-07-15 Mateusz Loskot * source/Makefile.vc: For building with Visual C++, added new flag DEBUG=1 (see GEOS building instructions on GEOS Wiki). Added missing - flags for Visual C++ compiler, in release and debug configuration. git-svn-id: http://svn.osgeo.org/geos/trunk@2130 + flags for Visual C++ compiler, in release and debug configuration. + git-svn-id: http://svn.osgeo.org/geos/trunk@2130 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2008-05-20 Mateusz Loskot + + * source/dirlist.mk: Added missing subdirs to source/dirlist.mk + git-svn-id: http://svn.osgeo.org/geos/trunk@2129 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-05-20 Mateusz Loskot - * source/dirlist.mk: Added missing subdirs to source/dirlist.mk git-svn-id: http://svn.osgeo.org/geos/trunk@2129 + * : Updated svn:ignore patterns. git-svn-id: + http://svn.osgeo.org/geos/trunk@2128 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-05-20 Mateusz Loskot - * : Updated svn:ignore patterns. git-svn-id: http://svn.osgeo.org/geos/trunk@2128 + * ChangeLog, build/msvc80/geos.sln, + build/msvc80/geos_lib/geos_lib.vcproj, + source/geom/GeometryComponentFilter.cpp, + source/geom/PrecisionModel.cpp, + source/geom/util/GeometryTransformer.cpp, + source/headers/geos/geom/BinaryOp.h, + source/headers/geos/noding/MCIndexNoder.h, + source/headers/geos/noding/Octant.h, + source/headers/geos/noding/ScaledNoder.h, + source/headers/geos/operation/overlay/PointBuilder.h, + source/headers/geos/util.h, source/index/quadtree/NodeBase.cpp, + source/noding/ScaledNoder.cpp, source/noding/SegmentString.cpp, + source/noding/snapround/MCIndexPointSnapper.cpp, + source/operation/overlay/FuzzyPointLocator.cpp, + source/operation/overlay/OverlayOp.cpp, + source/precision/CommonBitsRemover.cpp, + source/precision/GeometrySnapper.cpp, + source/simplify/DouglasPeuckerSimplifier.cpp, + tests/unit/geom/DimensionTest.cpp: * source\headers\geos\util.h: Add UNREFERENCED_PARAMETER macro. * + source\geom\PrecisionModel.cpp, + source\geom\GeometryComponentFilter.cpp, + source\geom\util\GeometryTransformer.cpp, + source\precision\GeometrySnapper.cpp, + source\precision\CommonBitsRemover.cpp, + source\simplify\DouglasPeuckerSimplifier.cpp, + source\operation\overlay\OverlayOp.cpp, + source\operation\overlay\FuzzyPointLocator.cpp, + source\index\quadtree\NodeBase.cpp, + source\headers\geos\geom\BinaryOp.h, + source\headers\geos\operation\overlay\PointBuilder.h, + source\headers\geos\noding\MCIndexNoder.h, + source\headers\geos\noding\ScaledNoder.h, + source\headers\geos\noding\Octant.h, + source\noding\ScaledNoder.cpp, + source\noding\snapround\MCIndexPointSnapper.cpp, + source\noding\SegmentString.cpp, tests\unit\geom\DimensionTest.cpp: + Use UNREFERENCED_PARAMETER macro to get rid of C4100 warning when + building with Visual C++. * build\msvc80\geos_lib\geos_lib.vcproj: + Remove non-existing source files. git-svn-id: + http://svn.osgeo.org/geos/trunk@2127 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-05-20 Mateusz Loskot * ChangeLog, source/Makefile.vc: source/makefile.vc: Removed - non-existing file entry: PreparedPolygonLineIntersects.obj. git-svn-id: http://svn.osgeo.org/geos/trunk@2126 + non-existing file entry: PreparedPolygonLineIntersects.obj. + git-svn-id: http://svn.osgeo.org/geos/trunk@2126 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-05-20 Mateusz Loskot @@ -16121,12 +21097,14 @@ * ChangeLog, bootstrap.bat, source/Makefile.vc: * bootstrap.bat: Added script generating headers for use with Visual C++ compiler. DO NOT include this script in GEOS source distribution. * source/makefile.vc: Do not make copies of 3 dynamic - headers but let users to use bootstrap.bat instead. git-svn-id: http://svn.osgeo.org/geos/trunk@2125 + headers but let users to use bootstrap.bat instead. git-svn-id: + http://svn.osgeo.org/geos/trunk@2125 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-02-07 Frank Warmerdam - * Makefile.am: make sure makefile.vc gets distributed git-svn-id: http://svn.osgeo.org/geos/trunk@2123 + * Makefile.am: make sure makefile.vc gets distributed git-svn-id: + http://svn.osgeo.org/geos/trunk@2123 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-02-06 Frank Warmerdam @@ -16134,7 +21112,7 @@ * source/Makefile.am, source/Makefile.vc, source/headers/geos/noding/Makefile.am: try to fix up the files include in distribution, and remove unused files from Makefile.vc - (#175) git-svn-id: http://svn.osgeo.org/geos/trunk@2122 + (#175) git-svn-id: http://svn.osgeo.org/geos/trunk@2122 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-30 Ben Jubb @@ -16168,38 +21146,44 @@ source/headers/geos/noding/SegmentIntersectionDetector.h, source/headers/geos/noding/SegmentSetMutualIntersector.h, source/headers/geos/noding/SegmentStringUtil.h: Added documentation, - for benefit of doxygen. git-svn-id: http://svn.osgeo.org/geos/trunk@2120 + for benefit of doxygen. git-svn-id: + http://svn.osgeo.org/geos/trunk@2120 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-30 Ben Jubb * source/geom/prep/PreparedPolygonIntersects.cpp: deleted - out-commented line. git-svn-id: http://svn.osgeo.org/geos/trunk@2119 + out-commented line. git-svn-id: + http://svn.osgeo.org/geos/trunk@2119 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-30 Ben Jubb * source/geom/prep/PreparedPolygon.cpp: removed ref to - PreparedPolygonLineIntersection git-svn-id: http://svn.osgeo.org/geos/trunk@2118 + PreparedPolygonLineIntersection git-svn-id: + http://svn.osgeo.org/geos/trunk@2118 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-30 Ben Jubb * source/geom/prep/Makefile.am, source/headers/geos/geom/prep/Makefile.am: Removed refs to - PreparedPolygonLineIntersection. git-svn-id: http://svn.osgeo.org/geos/trunk@2117 + PreparedPolygonLineIntersection. git-svn-id: + http://svn.osgeo.org/geos/trunk@2117 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-30 Ben Jubb * source/geom/prep/PreparedPolygonLineIntersection.cpp, source/headers/geos/geom/prep/PreparedPolygonLineIntersection.h: - Deleted. not used, not needed. git-svn-id: http://svn.osgeo.org/geos/trunk@2116 + Deleted. not used, not needed. git-svn-id: + http://svn.osgeo.org/geos/trunk@2116 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-30 Ben Jubb - * source/headers/geos/geomPrep.h: Added for benefit of doxygen. git-svn-id: http://svn.osgeo.org/geos/trunk@2115 + * source/headers/geos/geomPrep.h: Added for benefit of doxygen. + git-svn-id: http://svn.osgeo.org/geos/trunk@2115 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-29 Ben Jubb @@ -16213,72 +21197,84 @@ source/noding/MCIndexSegmentSetMutualIntersector.cpp, source/noding/SegmentIntersectionDetector.cpp: Some small changes to improve the memory management. These changes plug a few leaks, but - not all. git-svn-id: http://svn.osgeo.org/geos/trunk@2114 + not all. git-svn-id: http://svn.osgeo.org/geos/trunk@2114 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-29 Ben Jubb * source/operation/predicate/RectangleContains.cpp: Fix a bug in the shortcut test for containment in a rectangle. This test wasn't - correctly testing for case of a point on the boundary. Was also a bug in JTS (now fixed). git-svn-id: http://svn.osgeo.org/geos/trunk@2113 + correctly testing for case of a point on the boundary. Was also a + bug in JTS (now fixed). git-svn-id: + http://svn.osgeo.org/geos/trunk@2113 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-29 Ben Jubb - * source/geom/Geometry.cpp: Patch to fix bug in ticket #171 git-svn-id: http://svn.osgeo.org/geos/trunk@2112 + * source/geom/Geometry.cpp: Patch to fix bug in ticket #171 + git-svn-id: http://svn.osgeo.org/geos/trunk@2112 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-22 Ben Jubb * capi/geos_c.h.in, source/headers/geos/version.h.vc: Updated for VC - to give correct version (3.1.0-CAPI-1.5.0). git-svn-id: http://svn.osgeo.org/geos/trunk@2111 + to give correct version (3.1.0-CAPI-1.5.0). git-svn-id: + http://svn.osgeo.org/geos/trunk@2111 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-18 Ben Jubb * configure.in: Added to CAPI interface, cleared CAPI_INTERFACE_REV, - bumped AGE & CURRENT git-svn-id: http://svn.osgeo.org/geos/trunk@2110 + bumped AGE & CURRENT git-svn-id: + http://svn.osgeo.org/geos/trunk@2110 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-18 Ben Jubb * source/index/chain/MonotoneChainBuilder.cpp: Fixed a bug in the - handling of line strings with repeated points. -This line, and those below, will be ignored-- M MonotoneChainBuilder.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@2109 + handling of line strings with repeated points. -This line, and + those below, will be ignored-- M MonotoneChainBuilder.cpp + git-svn-id: http://svn.osgeo.org/geos/trunk@2109 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-17 Ben Jubb * capi/geos_c.cpp: Fixed a misspelling, GEOSPreparedContainsProperty - => GEOSPreparedContainsProperly git-svn-id: http://svn.osgeo.org/geos/trunk@2108 + => GEOSPreparedContainsProperly git-svn-id: + http://svn.osgeo.org/geos/trunk@2108 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-16 Frank Warmerdam - * source/Makefile.vc: updated to include post 3.0 classes git-svn-id: http://svn.osgeo.org/geos/trunk@2107 + * source/Makefile.vc: updated to include post 3.0 classes + git-svn-id: http://svn.osgeo.org/geos/trunk@2107 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-09 Ben Jubb * capi/geos_c.cpp, capi/geos_c.h.in: Added support for prepared - geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2106 + geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2106 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-09 Ben Jubb * source/headers/geos/geom/prep/PreparedGeometryFactory.h: removed - extraneous 'using namespace' git-svn-id: http://svn.osgeo.org/geos/trunk@2105 + extraneous 'using namespace' git-svn-id: + http://svn.osgeo.org/geos/trunk@2105 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-03 Ben Jubb * source/noding/MCIndexSegmentSetMutualIntersector.cpp: commented out some delete's in MCIndexSegmentSetMutualIntersector::addToIndex, - to fix a bug in prepared contains() predicate. git-svn-id: http://svn.osgeo.org/geos/trunk@2104 + to fix a bug in prepared contains() predicate. git-svn-id: + http://svn.osgeo.org/geos/trunk@2104 5242fede-7e19-0410-aef8-94bd7d2200fb 2008-01-02 Sean Gillies - * swig/Makefile.am: Conditionally add swig/python,ruby to SUBDIRS git-svn-id: http://svn.osgeo.org/geos/trunk@2102 + * swig/Makefile.am: Conditionally add swig/python,ruby to SUBDIRS + git-svn-id: http://svn.osgeo.org/geos/trunk@2102 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-22 Mateusz Loskot @@ -16299,23 +21295,34 @@ * source/headers/geos/algorithm/Makefile.am: Removed SimplePointInAreaLocator.h from algorithm/Makefile.am (header - migrated to algorithm/locate). git-svn-id: http://svn.osgeo.org/geos/trunk@2099 + migrated to algorithm/locate). git-svn-id: + http://svn.osgeo.org/geos/trunk@2099 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot * source/algorithm/Makefile.am: Added comment about deprecated - translation units in source/algorithm. git-svn-id: http://svn.osgeo.org/geos/trunk@2098 + translation units in source/algorithm. git-svn-id: + http://svn.osgeo.org/geos/trunk@2098 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey - * source/geom/util/Makefile.am: remove trailing backslash git-svn-id: http://svn.osgeo.org/geos/trunk@2097 + * source/geom/util/Makefile.am: remove trailing backslash + git-svn-id: http://svn.osgeo.org/geos/trunk@2097 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-12-21 Mateusz Loskot + + * : Updated svn:ignore property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2096 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot - * : Updated svn:ignore property. git-svn-id: http://svn.osgeo.org/geos/trunk@2096 + * source/geom/prep/PreparedPolygonContainsProperly.cpp: Fixed extra + qualifications in /geom/prep/PreparedPolygonContainsProperly. + git-svn-id: http://svn.osgeo.org/geos/trunk@2095 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot @@ -16323,45 +21330,51 @@ * source/geom/prep/AbstractPreparedPolygonContains.cpp, source/geom/prep/PreparedGeometryFactory.cpp, source/headers/geos/geom/prep/PreparedGeometryFactory.h: Fixed extra - qualifications in PreparedGeometryFactory class. git-svn-id: http://svn.osgeo.org/geos/trunk@2094 + qualifications in PreparedGeometryFactory class. git-svn-id: + http://svn.osgeo.org/geos/trunk@2094 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot * source/headers/geos/geom/util/ComponentCoordinateExtracter.h: Fixed GeometryTypeId misused in - geos/geom/util/ComponentCoordinateExtracter.h. git-svn-id: http://svn.osgeo.org/geos/trunk@2093 + geos/geom/util/ComponentCoordinateExtracter.h. git-svn-id: + http://svn.osgeo.org/geos/trunk@2093 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey * source/geom/util/Makefile.am: remove .cpp files that weren't there - before git-svn-id: http://svn.osgeo.org/geos/trunk@2092 + before git-svn-id: http://svn.osgeo.org/geos/trunk@2092 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot * source/geom/CoordinateArraySequence.cpp, source/geom/CoordinateSequence.cpp, source/geom/LineString.cpp: - Reverted changes appled in r2089 to three files from source/geom. git-svn-id: http://svn.osgeo.org/geos/trunk@2091 + Reverted changes appled in r2089 to three files from source/geom. + git-svn-id: http://svn.osgeo.org/geos/trunk@2091 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey - * source/algorithm/Makefile.am: type subdir typo git-svn-id: http://svn.osgeo.org/geos/trunk@2090 + * source/algorithm/Makefile.am: type subdir typo git-svn-id: + http://svn.osgeo.org/geos/trunk@2090 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot * source/geom/CoordinateArraySequence.cpp, source/geom/CoordinateSequence.cpp, source/geom/LineString.cpp: - Updated svn:ignore property. git-svn-id: http://svn.osgeo.org/geos/trunk@2089 + Updated svn:ignore property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2089 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot * source/examples/CustomPointCoordinateSequence.cpp: Added missing - header to CustomPointCoordinateSequence.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@2088 + header to CustomPointCoordinateSequence.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@2088 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot @@ -16374,27 +21387,32 @@ 2007-12-21 Paul Ramsey - * configure.in: Updated configure.in with new locations. git-svn-id: http://svn.osgeo.org/geos/trunk@2086 + * configure.in: Updated configure.in with new locations. + git-svn-id: http://svn.osgeo.org/geos/trunk@2086 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot - * configure.in: Updated configure.in with new locations. git-svn-id: http://svn.osgeo.org/geos/trunk@2085 + * configure.in: Updated configure.in with new locations. + git-svn-id: http://svn.osgeo.org/geos/trunk@2085 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot - * configure.in: Updated configure.in with new locations. git-svn-id: http://svn.osgeo.org/geos/trunk@2084 + * configure.in: Updated configure.in with new locations. + git-svn-id: http://svn.osgeo.org/geos/trunk@2084 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot - * configure.in: Updated configure.in with new locations. git-svn-id: http://svn.osgeo.org/geos/trunk@2083 + * configure.in: Updated configure.in with new locations. + git-svn-id: http://svn.osgeo.org/geos/trunk@2083 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Mateusz Loskot - * configure.in: Updated configure.in with new locations. git-svn-id: http://svn.osgeo.org/geos/trunk@2082 + * configure.in: Updated configure.in with new locations. + git-svn-id: http://svn.osgeo.org/geos/trunk@2082 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey @@ -16402,19 +21420,22 @@ * source/headers/geos/algorithm/Makefile.am, source/headers/geos/algorithm/locate/Makefile.am, source/headers/geos/noding/Makefile.am: Add - headers/geos/algorithm/locate to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2081 + headers/geos/algorithm/locate to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2081 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey - * source/noding/Makefile.am: Add files to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2080 + * source/noding/Makefile.am: Add files to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2080 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey * source/headers/geos/index/Makefile.am, source/headers/geos/index/intervalrtree/Makefile.am: Added - headers/index/intervalrtree to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2079 + headers/index/intervalrtree to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2079 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey @@ -16422,36 +21443,42 @@ * source/headers/geos/geom/Makefile.am, source/headers/geos/geom/prep/Makefile.am, source/headers/geos/geom/util/Makefile.am: Added headers/geom/prep - headers/geom/util to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2078 + headers/geom/util to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2078 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey * source/index/Makefile.am, source/index/intervalrtree/Makefile.am: - Added index/intervalrtree to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2077 + Added index/intervalrtree to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2077 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey * source/geom/util/Makefile.am: added - geom/util/ComponentCoordinateExtracter.h git-svn-id: http://svn.osgeo.org/geos/trunk@2076 + geom/util/ComponentCoordinateExtracter.h git-svn-id: + http://svn.osgeo.org/geos/trunk@2076 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey * source/geom/Makefile.am, source/geom/prep/Makefile.am: Add - geom/prep to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2075 + geom/prep to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2075 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey * source/algorithm/Makefile.am, source/algorithm/locate/Makefile.am: - Add algorithm/location to automake git-svn-id: http://svn.osgeo.org/geos/trunk@2074 + Add algorithm/location to automake git-svn-id: + http://svn.osgeo.org/geos/trunk@2074 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey - * source/algorithm/Makefile.am: Added new files git-svn-id: http://svn.osgeo.org/geos/trunk@2073 + * source/algorithm/Makefile.am: Added new files git-svn-id: + http://svn.osgeo.org/geos/trunk@2073 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16473,7 +21500,8 @@ source/headers/geos/index/intervalrtree/IntervalRTreeLeafNode.h, source/headers/geos/index/intervalrtree/IntervalRTreeNode.h, source/headers/geos/index/intervalrtree/SortedPackedIntervalRTree.h: - Added from JTS 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2070 + Added from JTS 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2070 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16481,25 +21509,29 @@ * source/algorithm/locate/IndexedPointInAreaLocator.cpp, source/algorithm/locate/PointOnGeometryLocator.cpp, source/algorithm/locate/SimplePointInAreaLocator.cpp: Added from JTS - 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2069 + 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2069 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/geom/util/ComponentCoordinateExtracter.cpp: Added from JTS - 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2068 + 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2068 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/geom/util/ComponentCoordinateExtracter.h: - Added from JTS 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2067 + Added from JTS 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2067 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/operation/predicate/RectangleIntersects.cpp: modified - because SimplePointInAreaLocator.h moved git-svn-id: http://svn.osgeo.org/geos/trunk@2066 + because SimplePointInAreaLocator.h moved git-svn-id: + http://svn.osgeo.org/geos/trunk@2066 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16509,7 +21541,7 @@ source/noding/NodedSegmentString.cpp, source/noding/SegmentIntersectionDetector.cpp, source/noding/SegmentStringUtil.cpp: Added from JTS 1.9 to support - prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2065 + prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2065 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16518,7 +21550,8 @@ source/index/intervalrtree/IntervalRTreeLeafNode.cpp, source/index/intervalrtree/IntervalRTreeNode.cpp, source/index/intervalrtree/SortedPackedIntervalRTree.cpp: Added from - JTS 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2064 + JTS 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2064 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16537,25 +21570,29 @@ source/geom/prep/PreparedPolygonIntersects.cpp, source/geom/prep/PreparedPolygonLineIntersection.cpp, source/geom/prep/PreparedPolygonPredicate.cpp: Added from JTS 1.9 to - support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2063 + support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2063 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/geomgraph/EdgeEndStar.cpp: modified because - SimplePointInAreaLocator.h moved git-svn-id: http://svn.osgeo.org/geos/trunk@2062 + SimplePointInAreaLocator.h moved git-svn-id: + http://svn.osgeo.org/geos/trunk@2062 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/algorithm/SimplePointInAreaLocator.h: Moved - into geos::algorithm::locate git-svn-id: http://svn.osgeo.org/geos/trunk@2061 + into geos::algorithm::locate git-svn-id: + http://svn.osgeo.org/geos/trunk@2061 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/algorithm/RayCrossingCounter.h: Added from JTS - 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2060 + 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2060 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16574,7 +21611,8 @@ source/headers/geos/geom/prep/PreparedPolygonIntersects.h, source/headers/geos/geom/prep/PreparedPolygonLineIntersection.h, source/headers/geos/geom/prep/PreparedPolygonPredicate.h: Added from - JTS 1.9 to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2059 + JTS 1.9 to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2059 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb @@ -16586,98 +21624,116 @@ source/headers/geos/noding/SegmentIntersectionDetector.h, source/headers/geos/noding/SegmentSetMutualIntersector.h, source/headers/geos/noding/SegmentStringUtil.h: Added from JTS 1.9 - to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2058 + to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2058 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/noding/SegmentString.h: changed destructor to - be virtual git-svn-id: http://svn.osgeo.org/geos/trunk@2057 + be virtual git-svn-id: http://svn.osgeo.org/geos/trunk@2057 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/geom/Envelope.h: Added a covers() predicate, - from JTS 1.9, to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2056 + from JTS 1.9, to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2056 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/geom/Geometry.h: changed IsRectangle to be - public git-svn-id: http://svn.osgeo.org/geos/trunk@2055 + public git-svn-id: http://svn.osgeo.org/geos/trunk@2055 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/geom/Envelope.inl: Added a covers() predicate, - from JTS 1.9, to support prepared geometry git-svn-id: http://svn.osgeo.org/geos/trunk@2054 + from JTS 1.9, to support prepared geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@2054 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/algorithm/locate/SimplePointInAreaLocator.h: - Moved from geos::algorithm as in JTS 1.9 git-svn-id: http://svn.osgeo.org/geos/trunk@2053 + Moved from geos::algorithm as in JTS 1.9 git-svn-id: + http://svn.osgeo.org/geos/trunk@2053 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/algorithm/locate/IndexedPointInAreaLocator.h, source/headers/geos/algorithm/locate/PointOnGeometryLocator.h: New - namaspace geos::algorithm::locate, as in JTS 1.9.. git-svn-id: http://svn.osgeo.org/geos/trunk@2052 + namaspace geos::algorithm::locate, as in JTS 1.9.. git-svn-id: + http://svn.osgeo.org/geos/trunk@2052 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Ben Jubb * source/headers/geos/algorithm/SimplePointInAreaLocator.h: Added a public constructor, and a method to bring in line with JTS 1.9. - Changed namespace to geos::algorithm::locate git-svn-id: http://svn.osgeo.org/geos/trunk@2051 + Changed namespace to geos::algorithm::locate git-svn-id: + http://svn.osgeo.org/geos/trunk@2051 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey - * configure.in: version numbering for next release (3.1.0) git-svn-id: http://svn.osgeo.org/geos/trunk@2050 + * configure.in: version numbering for next release (3.1.0) + git-svn-id: http://svn.osgeo.org/geos/trunk@2050 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-21 Paul Ramsey - * ChangeLog, configure.in: 3.0.0 release git-svn-id: http://svn.osgeo.org/geos/trunk@2046 + * ChangeLog, configure.in: 3.0.0 release git-svn-id: + http://svn.osgeo.org/geos/trunk@2046 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-19 Mateusz Loskot * ChangeLog, source/headers/geos/geom.h, source/headers/geos/io.h: - Improved warning message about using DEPRECATED headers git-svn-id: http://svn.osgeo.org/geos/trunk@2045 + Improved warning message about using DEPRECATED headers git-svn-id: + http://svn.osgeo.org/geos/trunk@2045 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-17 Mateusz Loskot * tests/xmltester/XMLTester.cpp: Fixed std::tolower usage in - XMLTester.cpp (Ticket #163). git-svn-id: http://svn.osgeo.org/geos/trunk@2044 + XMLTester.cpp (Ticket #163). git-svn-id: + http://svn.osgeo.org/geos/trunk@2044 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-17 Mateusz Loskot * source/algorithm/HCoordinate.cpp: Replaced finite function with - std::numeric_limits (Ticket #162). git-svn-id: http://svn.osgeo.org/geos/trunk@2043 + std::numeric_limits (Ticket #162). git-svn-id: + http://svn.osgeo.org/geos/trunk@2043 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-17 Mateusz Loskot * ChangeLog, source/Makefile.vc: source\Makefile.vc: Fixed MSVC_VER - condition for Microsoft Visual C++ 2008 (9.0). git-svn-id: http://svn.osgeo.org/geos/trunk@2042 + condition for Microsoft Visual C++ 2008 (9.0). git-svn-id: + http://svn.osgeo.org/geos/trunk@2042 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-13 Mateusz Loskot - * ChangeLog: Added Id keyword at the top of ChangeLog file. git-svn-id: http://svn.osgeo.org/geos/trunk@2041 + * ChangeLog: Added Id keyword at the top of ChangeLog file. + git-svn-id: http://svn.osgeo.org/geos/trunk@2041 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-13 Mateusz Loskot * ChangeLog, build/msvc80/geos_unit/geos_unit.vcproj, source/geom/Geometry.cpp, source/geom/GeometryCollection.cpp, - tests/unit/geom/GeometryFactoryTest.cpp: * build\msvc80\geos_unit\geos_unit.vcproj: fixed post-build event * source\geom\GeometryCollection.cpp: removed unreachable code, shorten exception message. * source\geom\Geometry.cpp: purified condition based on dynamic_cast * tests\unit\geom\GeometryFactoryTest.cpp: use std::size_t instead - of int where unsigned integral type required. git-svn-id: http://svn.osgeo.org/geos/trunk@2040 + tests/unit/geom/GeometryFactoryTest.cpp: * build\msvc80\geos_unit\geos_unit.vcproj: fixed post-build event * + source\geom\GeometryCollection.cpp: removed unreachable code, + shorten exception message. * source\geom\Geometry.cpp: purified + condition based on dynamic_cast * + tests\unit\geom\GeometryFactoryTest.cpp: use std::size_t instead of + int where unsigned integral type required. git-svn-id: + http://svn.osgeo.org/geos/trunk@2040 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-09 Mateusz Loskot @@ -16685,12 +21741,21 @@ * ChangeLog, tests/unit/Makefile.am, tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp: Added test suite for class - geos::precision::SimpleGeometryPrecisionReducer. git-svn-id: http://svn.osgeo.org/geos/trunk@2038 + geos::precision::SimpleGeometryPrecisionReducer. git-svn-id: + http://svn.osgeo.org/geos/trunk@2038 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-12-08 Mateusz Loskot - * : Updated svn:keyword property. git-svn-id: http://svn.osgeo.org/geos/trunk@2037 + * : Updated svn:keyword property. git-svn-id: + http://svn.osgeo.org/geos/trunk@2037 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-11-26 Mateusz Loskot + + * build/msvc80/geos.vsprops: Added geos.vsprops - property sheet for + Visual C++ projects. git-svn-id: + http://svn.osgeo.org/geos/trunk@2036 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-11-26 Mateusz Loskot @@ -16699,29 +21764,42 @@ build/msvc80/geos_ruby/geos_ruby.vcproj, swig/python/geos_wrap.cxx: Added common Property Sheet for Visual C++ projects where Python and Ruby macros/locations are defined. Fixed include of Python.h, see - Ticket #164 for details. git-svn-id: http://svn.osgeo.org/geos/trunk@2035 + Ticket #164 for details. git-svn-id: + http://svn.osgeo.org/geos/trunk@2035 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-11-26 Mateusz Loskot + + * : Updated svn:ignore patterns. git-svn-id: + http://svn.osgeo.org/geos/trunk@2034 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-11-26 Mateusz Loskot - * : Updated svn:ignore patterns. git-svn-id: http://svn.osgeo.org/geos/trunk@2034 + * ChangeLog, source/Makefile.vc, source/headers/geos/version.h.vc: + Enabled target copying version.h.vc and geos_c.h.vc to headers used + by Visual C++. Added test if version.h.vc is used with Visual C++. + git-svn-id: http://svn.osgeo.org/geos/trunk@2033 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-11-23 Mateusz Loskot * ChangeLog, source/headers/geos/io/WKBWriter.h: A bit of - purification with explicit casting int to bool type. git-svn-id: http://svn.osgeo.org/geos/trunk@2032 + purification with explicit casting int to bool type. git-svn-id: + http://svn.osgeo.org/geos/trunk@2032 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-11-02 Paul Ramsey - * web/index.html: urls updated to point to osgeo locations git-svn-id: http://svn.osgeo.org/geos/trunk@2031 + * web/index.html: urls updated to point to osgeo locations + git-svn-id: http://svn.osgeo.org/geos/trunk@2031 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-11-02 Paul Ramsey * web/index.html, web/style.css: add the web site content to svn for - collaborative management git-svn-id: http://svn.osgeo.org/geos/trunk@2030 + collaborative management git-svn-id: + http://svn.osgeo.org/geos/trunk@2030 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-21 Charlie Savage @@ -16738,7 +21816,8 @@ swig/ruby/test/test_io.rb, swig/ruby/test/test_operations.rb, swig/ruby/test/test_srid.rb, swig/ruby/test/test_version.rb: Updated the SWIG bindings and tests to use the new Reader/Writer classes - exposed in the CAPI. git-svn-id: http://svn.osgeo.org/geos/trunk@2028 + exposed in the CAPI. git-svn-id: + http://svn.osgeo.org/geos/trunk@2028 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-21 Charlie Savage @@ -16749,7 +21828,8 @@ static variable used to control byte order and # of dimenions, and gives clients more control over the creation/destruction of readers and writers. Finally, exposed the ability to output the EWKB format - (set SRID to true in the WKBWriter). git-svn-id: http://svn.osgeo.org/geos/trunk@2027 + (set SRID to true in the WKBWriter). git-svn-id: + http://svn.osgeo.org/geos/trunk@2027 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-21 Charlie Savage @@ -16759,7 +21839,8 @@ comments in code for more information. Note this change may cause problems. Strk left a note in the code saying that the '<' comparison sometimes gives unstable results. But that seems better - than an assertion failure. git-svn-id: http://svn.osgeo.org/geos/trunk@2026 + than an assertion failure. git-svn-id: + http://svn.osgeo.org/geos/trunk@2026 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-21 Charlie Savage @@ -16769,7 +21850,8 @@ PostGIS. Also added a few getter/setter methods that allow clients to specify the reader's number of dimensions, byte order and whether srid values should be output. These getters/setters make it easier - to wrap the reader in the CAPI. git-svn-id: http://svn.osgeo.org/geos/trunk@2025 + to wrap the reader in the CAPI. git-svn-id: + http://svn.osgeo.org/geos/trunk@2025 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-14 Charlie Savage @@ -16781,7 +21863,16 @@ 2007-09-14 Charlie Savage - * : Told SVN to ignore MSCV++ Python swig build directories. git-svn-id: http://svn.osgeo.org/geos/trunk@2023 + * : Told SVN to ignore MSCV++ Python swig build directories. + git-svn-id: http://svn.osgeo.org/geos/trunk@2023 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-09-14 Charlie Savage + + * source/io/WKBReader.cpp: Set unknown SRID values to 0 instead of + -1 to be more consistent with the rest of GEOS (srid values are + initialized to 0 by default). git-svn-id: + http://svn.osgeo.org/geos/trunk@2022 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-11 Charlie Savage @@ -16793,7 +21884,8 @@ 2007-09-07 Charlie Savage * configure.in: The test for SWIG was incorrect. Fixed by patch - from Mark Cave-Ayland. git-svn-id: http://svn.osgeo.org/geos/trunk@2020 + from Mark Cave-Ayland. git-svn-id: + http://svn.osgeo.org/geos/trunk@2020 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-09-06 Charlie Savage @@ -16809,7 +21901,8 @@ * configure.in, macros/ruby.m4: Applied patches from Mark Cave-Ayland's that reorganize/improve the SWIG support in the - generated configure file.\ git-svn-id: http://svn.osgeo.org/geos/trunk@2018 + generated configure file.\ git-svn-id: + http://svn.osgeo.org/geos/trunk@2018 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-31 Charlie Savage @@ -16817,7 +21910,8 @@ * capi/geos_c.cpp, capi/geos_c.h.in: For MSVC++ builds the CAPI version was set in geos_c.cpp instead of geos_c.h and it was set incorrectly. This patch fixes the MSVC++ version number and - centralizes the various versoin #defines in the geos_c.h. git-svn-id: http://svn.osgeo.org/geos/trunk@2017 + centralizes the various versoin #defines in the geos_c.h. + git-svn-id: http://svn.osgeo.org/geos/trunk@2017 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-31 Charlie Savage @@ -16826,20 +21920,23 @@ makefiles to make the wrappers dependent on the SWIG interface files even if SWIG is disabled. Doing this means that Make will correctly recognize that a user has modified an I file, but that the .cxx - wrapper cannot be regenerated since SWIG is not available. git-svn-id: http://svn.osgeo.org/geos/trunk@2016 + wrapper cannot be regenerated since SWIG is not available. + git-svn-id: http://svn.osgeo.org/geos/trunk@2016 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-30 Charlie Savage * source/headers/geos/profiler.h, source/headers/geos/timeval.h: MingW now includes the gettimeofday function - so reworked includes - to only use custom version when building with VC++. git-svn-id: http://svn.osgeo.org/geos/trunk@2015 + to only use custom version when building with VC++. git-svn-id: + http://svn.osgeo.org/geos/trunk@2015 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-30 Charlie Savage * macros/ruby.m4, swig/ruby/Makefile.am: Added RUBY_BIN_DIR to - autoconf macros - simplified auto make input file for ruby bindings. git-svn-id: http://svn.osgeo.org/geos/trunk@2014 + autoconf macros - simplified auto make input file for ruby bindings. + git-svn-id: http://svn.osgeo.org/geos/trunk@2014 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-30 Charlie Savage @@ -16847,19 +21944,21 @@ * macros/ac_pkg_swig.m4: The last attempt to fix this file failed - instead keep the code that queries the swig libraries but use sed to merge multiple lines together. If this is not done, then the swig - output causes ./configure to blow up on msys. git-svn-id: http://svn.osgeo.org/geos/trunk@2013 + output causes ./configure to blow up on msys. git-svn-id: + http://svn.osgeo.org/geos/trunk@2013 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-30 Charlie Savage * macros/ac_pkg_swig.m4: Fixes sed issue with swig on msys. For more info see: - http://lists.refractions.net/pipermail/geos-devel/2007-August/002956.htmlgit-svn-id: http://svn.osgeo.org/geos/trunk@2012 - 5242fede-7e19-0410-aef8-94bd7d2200fb + + http://lists.refractions.net/pipermail/geos-devel/2007-August/002956.html git-svn-id: http://svn.osgeo.org/geos/trunk@2012 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-30 Charlie Savage - * swig/geos.i.in: Changed from dos to unix line feeds. git-svn-id: http://svn.osgeo.org/geos/trunk@2011 + * swig/geos.i.in: Changed from dos to unix line feeds. git-svn-id: + http://svn.osgeo.org/geos/trunk@2011 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-29 Charlie Savage @@ -16867,7 +21966,8 @@ * build/msvc80/geos.sln, build/msvc80/geos_python/geos_python.vcproj, build/msvc80/geos_ruby/geos_ruby.vcproj: New VC++ project for the - python SWIG bindings. git-svn-id: http://svn.osgeo.org/geos/trunk@2010 + python SWIG bindings. git-svn-id: + http://svn.osgeo.org/geos/trunk@2010 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-29 Charlie Savage @@ -16888,8 +21988,15 @@ 2007-08-28 Charlie Savage + * : Added new ruby VC++ project to solution file. git-svn-id: + http://svn.osgeo.org/geos/trunk@2007 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-08-28 Charlie Savage + * capi/geos_c.h.in: Fixed c api include for VC++ - it should be - #include instead of #include . git-svn-id: http://svn.osgeo.org/geos/trunk@2006 + #include instead of #include . + git-svn-id: http://svn.osgeo.org/geos/trunk@2006 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-28 Charlie Savage @@ -16909,14 +22016,16 @@ * build/msvc80/geos_ruby/geos_ruby.vcproj: Added new vc++ project for building ruby bindings. Its not perfect since it hard-codes the - path to Ruby, but its enough to get one started. git-svn-id: http://svn.osgeo.org/geos/trunk@2003 + path to Ruby, but its enough to get one started. git-svn-id: + http://svn.osgeo.org/geos/trunk@2003 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-28 Charlie Savage * swig/python/geos.py, swig/python/geos_wrap.cxx, swig/ruby/geos_wrap.cxx: Updated SWIG wrappers based on changed - interface file. Also generated with SWIG 1.3.31 git-svn-id: http://svn.osgeo.org/geos/trunk@2002 + interface file. Also generated with SWIG 1.3.31 git-svn-id: + http://svn.osgeo.org/geos/trunk@2002 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-28 Charlie Savage @@ -16928,20 +22037,23 @@ swig/ruby/test/test_io.rb, swig/ruby/test/test_operations.rb, swig/ruby/test/test_relations.rb, swig/ruby/test/test_srid.rb, swig/ruby/test/test_version.rb: SWIG bindings - updated Ruby tests - based on name changes. git-svn-id: http://svn.osgeo.org/geos/trunk@2001 + based on name changes. git-svn-id: + http://svn.osgeo.org/geos/trunk@2001 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-28 Charlie Savage * swig/ruby/ruby.i: Updated Ruby swig bindings to more closely match Ruby style names. So eql? instead of equals, dimensions instead of - get_dimensions, etc. git-svn-id: http://svn.osgeo.org/geos/trunk@2000 + get_dimensions, etc. git-svn-id: + http://svn.osgeo.org/geos/trunk@2000 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-28 Charlie Savage * swig/geos.i.in: Exposed Geometry::Clone method in SWIG bindings. - Added check for NULL string in geomFromWKT wrapper. git-svn-id: http://svn.osgeo.org/geos/trunk@1999 + Added check for NULL string in geomFromWKT wrapper. git-svn-id: + http://svn.osgeo.org/geos/trunk@1999 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-23 Paul Ramsey @@ -16949,7 +22061,7 @@ * source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp, source/operation/buffer/OffsetCurveVertexList.h: Memory leak patches - from Robert Coup git-svn-id: http://svn.osgeo.org/geos/trunk@1998 + from Robert Coup git-svn-id: http://svn.osgeo.org/geos/trunk@1998 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-08-22 Mateusz Loskot @@ -16957,7 +22069,8 @@ * source/headers/geos/io/ByteOrderDataInStream.inl, source/operation/overlay/ElevationMatrix.cpp, source/operation/polygonize/Polygonizer.cpp: Cleaned compilation - warnings from VC++. git-svn-id: http://svn.osgeo.org/geos/trunk@1997 + warnings from VC++. git-svn-id: + http://svn.osgeo.org/geos/trunk@1997 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-11 Mateusz Loskot @@ -16965,13 +22078,15 @@ * ChangeLog, source/operation/IsSimpleOp.cpp: Replaced post-increment operators with pre-increment operators where standard iterators are incremented in loops. NOTE: Prefer pre-incr. over - post-inc. when working with standard iterators. git-svn-id: http://svn.osgeo.org/geos/trunk@1996 + post-inc. when working with standard iterators. git-svn-id: + http://svn.osgeo.org/geos/trunk@1996 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-11 Mateusz Loskot * tests/unit/Makefile.am, tests/unit/operation/IsSimpleOpTest.cpp: - Added unit test for geos::operation::IsSimpleOp class. git-svn-id: http://svn.osgeo.org/geos/trunk@1995 + Added unit test for geos::operation::IsSimpleOp class. git-svn-id: + http://svn.osgeo.org/geos/trunk@1995 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-10 Mateusz Loskot @@ -16992,20 +22107,31 @@ 2007-06-10 Mateusz Loskot * : Updated svn:ignore property for the whole tree adding VC++ and - Windows specific patterns. git-svn-id: http://svn.osgeo.org/geos/trunk@1992 + Windows specific patterns. git-svn-id: + http://svn.osgeo.org/geos/trunk@1992 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-06-10 Mateusz Loskot + + * ChangeLog, build/msvc80/geos_unit/geos_unit.vcproj, + tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp: Added unit test for + CGAlgorithms::isCCW() function. git-svn-id: + http://svn.osgeo.org/geos/trunk@1991 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-10 Mateusz Loskot * tests/unit/algorithm/ConvexHullTest.cpp, tests/unit/geom/LineStringTest.cpp: Added unit test for - geos::algorithm::ConvexHull. git-svn-id: http://svn.osgeo.org/geos/trunk@1990 + geos::algorithm::ConvexHull. git-svn-id: + http://svn.osgeo.org/geos/trunk@1990 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-10 Mateusz Loskot * tests/unit/utility.h: Added custom operators for static and - dynamic casts of pointers wrapped with std::auto_ptr type. git-svn-id: http://svn.osgeo.org/geos/trunk@1989 + dynamic casts of pointers wrapped with std::auto_ptr type. + git-svn-id: http://svn.osgeo.org/geos/trunk@1989 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-08 Mateusz Loskot @@ -17019,7 +22145,8 @@ * ChangeLog, source/index/strtree/STRtree.cpp: Analysis of instability of the yComparator, there are some new important - questions to answer. git-svn-id: http://svn.osgeo.org/geos/trunk@1987 + questions to answer. git-svn-id: + http://svn.osgeo.org/geos/trunk@1987 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-08 Mateusz Loskot @@ -17048,19 +22175,22 @@ source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp, source/index/sweepline/SweepLineIndex.cpp, source/operation/buffer/BufferSubgraph.cpp: Cleaned signed/unsigned - types mixtures, got rid from annoying compiler warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@1986 + types mixtures, got rid from annoying compiler warnings. + git-svn-id: http://svn.osgeo.org/geos/trunk@1986 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-08 Mateusz Loskot * ChangeLog: Applied Konstantin Baumann's suggestion about including - version.h in C API header for Visual C++. git-svn-id: http://svn.osgeo.org/geos/trunk@1985 + version.h in C API header for Visual C++. git-svn-id: + http://svn.osgeo.org/geos/trunk@1985 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-08 Mateusz Loskot * capi/geos_c.h.in: Applied Konstantin Baumann's suggestion about - including version.h in C API header for Visual C++. git-svn-id: http://svn.osgeo.org/geos/trunk@1984 + including version.h in C API header for Visual C++. git-svn-id: + http://svn.osgeo.org/geos/trunk@1984 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-01 Mateusz Loskot @@ -17068,7 +22198,8 @@ * ChangeLog, build/bjam/Jamroot, build/bjam/geos/Jamfile, build/bjam/geos_c/Jamfile, build/bjam/geos_unit/Jamfile: Added Boost.Build configuration for GEOS (experimental). The idea is to - enable users to build GEOS with bjam tool from Boost.Build package. git-svn-id: http://svn.osgeo.org/geos/trunk@1983 + enable users to build GEOS with bjam tool from Boost.Build package. + git-svn-id: http://svn.osgeo.org/geos/trunk@1983 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-06-01 Mateusz Loskot @@ -17081,12 +22212,21 @@ * ChangeLog, build/msvc80/geos_lib/geos_lib.vcproj: Applied patch with pre-build events generating platform.h and version.h headers. - Thanks to Konstantin Baumann for this patch. git-svn-id: http://svn.osgeo.org/geos/trunk@1981 + Thanks to Konstantin Baumann for this patch. git-svn-id: + http://svn.osgeo.org/geos/trunk@1981 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2007-05-06 Mateusz Loskot + + * : Updated svn:ignore property for build\msvc80. git-svn-id: + http://svn.osgeo.org/geos/trunk@1980 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-05-06 Mateusz Loskot - * : Updated svn:ignore property for build\msvc80. git-svn-id: http://svn.osgeo.org/geos/trunk@1980 + * ChangeLog, source/headers/geos/version.h.vc: Added + source/headers/geos/version.h.vc file for Visual C++ compiler. + git-svn-id: http://svn.osgeo.org/geos/trunk@1979 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-04-22 Mateusz Loskot @@ -17108,29 +22248,42 @@ * ChangeLog, tests/xmltester/Makefile.am, tests/xmltester/hole_from_shell.xml, tests/xmltester/hole_red.xml: - Add new testcases by Carl Anderson git-svn-id: http://svn.osgeo.org/geos/trunk@1976 + Add new testcases by Carl Anderson git-svn-id: + http://svn.osgeo.org/geos/trunk@1976 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-26 Sandro Santilli - * ChangeLog, source/inlines.cpp: Patch by Tom Elwertowski: * source/inlines.cpp: fix for MingW32 builds. git-svn-id: http://svn.osgeo.org/geos/trunk@1975 + * ChangeLog, source/inlines.cpp: Patch by Tom Elwertowski: * + source/inlines.cpp: fix for MingW32 builds. git-svn-id: + http://svn.osgeo.org/geos/trunk@1975 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-21 Sandro Santilli * ChangeLog, source/operation/buffer/SubgraphDepthLocater.cpp: Patch - by Carl Anderson: * source/operation/buffer/SubgraphDepthLocater.cpp (findStabbedSegments): Implement short-circuit to avoid inner defective logic. Fixes badguy3.xml git-svn-id: http://svn.osgeo.org/geos/trunk@1974 + by Carl Anderson: * + source/operation/buffer/SubgraphDepthLocater.cpp + (findStabbedSegments): Implement short-circuit to avoid + inner defective logic. Fixes badguy3.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@1974 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-21 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, - tests/xmltester/badguy3.xml: * tests/xmltester/: Makefile.am, badguy3.xml: Added simplified version of nasty buffer bug test. git-svn-id: http://svn.osgeo.org/geos/trunk@1973 - 5242fede-7e19-0410-aef8-94bd7d2200fb + tests/xmltester/badguy3.xml: * tests/xmltester/: Makefile.am, badguy3.xml: + Added simplified version of nasty buffer bug test. + git-svn-id: http://svn.osgeo.org/geos/trunk@1973 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-08 Sandro Santilli - * ChangeLog, configure.in: Patch by Mark Cave-Ayland: * configure.in: Allow configure to continue with use_python set to false if a python binary is not found, as per http://sources.redhat.com/automake/automake.html#Python. git-svn-id: http://svn.osgeo.org/geos/trunk@1972 + * ChangeLog, configure.in: Patch by Mark Cave-Ayland: * + configure.in: Allow configure to continue with use_python + set to false if a python binary is not found, as per + http://sources.redhat.com/automake/automake.html#Python. + git-svn-id: http://svn.osgeo.org/geos/trunk@1972 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-07 Sandro Santilli @@ -17144,71 +22297,94 @@ source/index/strtree/AbstractNode.cpp, source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/ItemBoundable.cpp, - source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: General refactoring aimed at making the code cleaner to read and maintain; use iterators rather then random accessing containers to allow easy future switch to - std::list from std::vector; use a tolerance-based strict - weak ordering operator for sorting child boundables in STRtree, this fixes the heisenbug when building with inlines disabled. git-svn-id: http://svn.osgeo.org/geos/trunk@1971 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: General refactoring aimed at making the code cleaner + to read and maintain; use iterators rather then random + accessing containers to allow easy future switch to + std::list from std::vector; use a + tolerance-based strict weak ordering operator + for sorting child boundables in STRtree, this + fixes the heisenbug when building with inlines disabled. + git-svn-id: http://svn.osgeo.org/geos/trunk@1971 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-06 Sandro Santilli - * ChangeLog, tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: * tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: Expect result of POLYGON simplification to always be a polygon, even if collapsed to the empty geom. git-svn-id: http://svn.osgeo.org/geos/trunk@1970 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: * tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: + Expect result of POLYGON simplification to always be + a polygon, even if collapsed to the empty geom. + git-svn-id: http://svn.osgeo.org/geos/trunk@1970 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-06 Sandro Santilli * ChangeLog, source/headers/geos/operation/buffer/BufferBuilder.h, source/headers/geos/operation/buffer/BufferOp.h, source/operation/buffer/BufferBuilder.cpp, - source/operation/buffer/BufferOp.cpp: * operation::buffer::BufferBuilder, operation::buffer::BufferOp: Fixed buffer operation to always return polygonal geometry git-svn-id: http://svn.osgeo.org/geos/trunk@1969 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/operation/buffer/BufferOp.cpp: * operation::buffer::BufferBuilder, + operation::buffer::BufferOp: Fixed buffer + operation to always return polygonal geometry + git-svn-id: http://svn.osgeo.org/geos/trunk@1969 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-03 Paul Ramsey - * ChangeLog, configure.in: 3.0.0rc4 tagging git-svn-id: http://svn.osgeo.org/geos/trunk@1967 + * ChangeLog, configure.in: 3.0.0rc4 tagging git-svn-id: + http://svn.osgeo.org/geos/trunk@1967 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-02-01 Sandro Santilli * ChangeLog, source/headers/geos/operation/buffer/BufferOp.h, - source/operation/buffer/BufferOp.cpp: * operation::buffer::BufferOp: set MAX_PRECISION_DIGITS so to match JTS. git-svn-id: http://svn.osgeo.org/geos/trunk@1966 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/operation/buffer/BufferOp.cpp: * operation::buffer::BufferOp: set MAX_PRECISION_DIGITS + so to match JTS. git-svn-id: + http://svn.osgeo.org/geos/trunk@1966 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-26 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, - tests/xmltester/stmlf-cases-20070119.xml: * tests/xmltester/: Makefile.am, stmlf-cases-20070119.xml: New overlay test. git-svn-id: http://svn.osgeo.org/geos/trunk@1965 - 5242fede-7e19-0410-aef8-94bd7d2200fb + tests/xmltester/stmlf-cases-20070119.xml: * tests/xmltester/: Makefile.am, stmlf-cases-20070119.xml: + New overlay test. git-svn-id: + http://svn.osgeo.org/geos/trunk@1965 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-26 Sandro Santilli * ChangeLog, source/operation/buffer/BufferBuilder.cpp, - tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: improved buffer result validator. * source/operation/buffer/BufferBuilder.cpp - (computeNodedEdges): remove repeated points from noded - SegmentStrings, skip collapsed edges. git-svn-id: http://svn.osgeo.org/geos/trunk@1964 - 5242fede-7e19-0410-aef8-94bd7d2200fb + tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: improved buffer + result validator. * + source/operation/buffer/BufferBuilder.cpp + (computeNodedEdges): remove repeated points from + noded SegmentStrings, skip collapsed edges. + git-svn-id: http://svn.osgeo.org/geos/trunk@1964 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-17 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, tests/xmltester/heisenbugs.xml: New testcase for bug fixed by - previous commit. git-svn-id: http://svn.osgeo.org/geos/trunk@1963 + previous commit. git-svn-id: http://svn.osgeo.org/geos/trunk@1963 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-17 Sandro Santilli - * ChangeLog, source/index/strtree/STRtree.cpp: * source/index/strtree/STRtree.cpp (yComparator): Use static_cast<> and make code more readable. A side effect seems to be fixing a segfault :! git-svn-id: http://svn.osgeo.org/geos/trunk@1962 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, source/index/strtree/STRtree.cpp: * source/index/strtree/STRtree.cpp (yComparator): + Use static_cast<> and make code more readable. A + side effect seems to be fixing a segfault :! git-svn-id: + http://svn.osgeo.org/geos/trunk@1962 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-17 Sandro Santilli * ChangeLog, source/headers/geos/index/strtree/STRtree.h: * source/headers/geos/index/strtree/STRtree.h (centreY): - const-corrected. git-svn-id: http://svn.osgeo.org/geos/trunk@1961 + const-corrected. git-svn-id: http://svn.osgeo.org/geos/trunk@1961 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-16 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp, - tests/xmltester/XMLTester.h: * tests/xmltester/XMLTester.cpp: don't include catch-all headers. git-svn-id: http://svn.osgeo.org/geos/trunk@1960 + tests/xmltester/XMLTester.h: * tests/xmltester/XMLTester.cpp: don't include catch-all headers. + git-svn-id: http://svn.osgeo.org/geos/trunk@1960 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-09 Sandro Santilli @@ -17221,100 +22397,140 @@ tests/xmltester/Makefile.am, tests/xmltester/TestBufferExternal.xml, tests/xmltester/XMLTester.cpp: * source/operation/buffer/: Makefile.am, - OffsetCurveVertexList.h: New helper class for - OffsetCurveBuilder * operation::buffer::OffsetCurveBuilder: Move vertexlist management to external class. * tests/xmltester/: Makefile.am, TestBufferExternal.xml: added test for above changes (imported from JTS and modified to work with GEOS). * tests/xmltester/XMLTester.cpp: change buffer validator again: check area of topological difference between expected and obtained result to be smaller then 1/1000 of expected geometry area. git-svn-id: http://svn.osgeo.org/geos/trunk@1959 - 5242fede-7e19-0410-aef8-94bd7d2200fb + OffsetCurveVertexList.h: New helper class for + OffsetCurveBuilder * + operation::buffer::OffsetCurveBuilder: Move + vertexlist management to external class. * + tests/xmltester/: Makefile.am, TestBufferExternal.xml: + added test for above changes (imported from JTS and + modified to work with GEOS). * + tests/xmltester/XMLTester.cpp: change buffer + validator again: check area of topological + difference between expected and obtained result to + be smaller then 1/1000 of expected geometry area. + git-svn-id: http://svn.osgeo.org/geos/trunk@1959 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-09 Sandro Santilli * ChangeLog, source/geom/CoordinateArraySequence.cpp, source/headers/geos/geom/CoordinateArraySequence.h, - source/headers/geos/geom/CoordinateSequence.h: * source/geom/CoordinateArraySequence.cpp, source/headers/geos/geom/CoordinateSequence.h, source/headers/geos/geom/CoordinateArraySequence.h: add(Coordinate, bool) made a virtual method and - overrridden for CoordinateArraySequence, for better - performance (single virtual call vs. multiple); added front() and back() methods. git-svn-id: http://svn.osgeo.org/geos/trunk@1958 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/headers/geos/geom/CoordinateSequence.h: * source/geom/CoordinateArraySequence.cpp, + source/headers/geos/geom/CoordinateSequence.h, + source/headers/geos/geom/CoordinateArraySequence.h: + add(Coordinate, bool) made a virtual method and overrridden + for CoordinateArraySequence, for better performance + (single virtual call vs. multiple); added front() and + back() methods. git-svn-id: + http://svn.osgeo.org/geos/trunk@1958 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-09 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: add areatest to buffer test - handler. git-svn-id: http://svn.osgeo.org/geos/trunk@1957 + handler. git-svn-id: http://svn.osgeo.org/geos/trunk@1957 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-05 Sandro Santilli - * ChangeLog, configure.in: * configure.in: prepared for version to 3.0.0rc4, fixed swig python errors as suggested by hint (AM_PATH_PYTHON). git-svn-id: http://svn.osgeo.org/geos/trunk@1956 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, configure.in: * configure.in: prepared for version to 3.0.0rc4, + fixed swig python errors as suggested by hint + (AM_PATH_PYTHON). git-svn-id: + http://svn.osgeo.org/geos/trunk@1956 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-04 Sandro Santilli - * ChangeLog, configure.in, swig/{geos.i => geos.i.in}: * configure.in, swig/geos.i.in, swig/geos.i: geos.i generated at configure time from geos.i.in (so we don't have to manually update versions there). git-svn-id: http://svn.osgeo.org/geos/trunk@1955 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, configure.in, swig/{geos.i => geos.i.in}: * configure.in, swig/geos.i.in, swig/geos.i: + geos.i generated at configure time from geos.i.in + (so we don't have to manually update versions there). + git-svn-id: http://svn.osgeo.org/geos/trunk@1955 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-04 Sandro Santilli - * ChangeLog, swig/geos.i: Patch by dev-zero at gentoo dot org: * swig/geos.i: use unsigned int when CAPI signatures expect unsigned int (not size_t). git-svn-id: http://svn.osgeo.org/geos/trunk@1954 + * ChangeLog, swig/geos.i: Patch by dev-zero at gentoo dot org: + * swig/geos.i: use unsigned int when CAPI signatures + expect unsigned int (not size_t). git-svn-id: + http://svn.osgeo.org/geos/trunk@1954 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-03 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, tests/xmltester/fme.xml: * tests/xmltester/: fme.xml, Makefile.am: added buffer - testcase. git-svn-id: http://svn.osgeo.org/geos/trunk@1953 - 5242fede-7e19-0410-aef8-94bd7d2200fb + testcase. git-svn-id: http://svn.osgeo.org/geos/trunk@1953 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-03 Sandro Santilli - * ChangeLog, tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: use a tolerance of 10E-6 for buffer validation (~10cm at worst when using latlong projections); create sql tables with oid to work around a bug in qgis 0.7.4. git-svn-id: http://svn.osgeo.org/geos/trunk@1952 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: use a tolerance of 10E-6 + for buffer validation (~10cm at worst when using latlong + projections); create sql tables with oid to work around a + bug in qgis 0.7.4. git-svn-id: + http://svn.osgeo.org/geos/trunk@1952 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-03 Sandro Santilli * ChangeLog, source/algorithm/HCoordinate.cpp, source/inlines.cpp: - Applied patch by Mark Cave-Ayland : * source/inlines.cpp, source/algorithm/HCoordinate.cpp: Fixes for MingW builds. See - geos-devel/2007-January/002766.html. git-svn-id: http://svn.osgeo.org/geos/trunk@1951 + Applied patch by Mark Cave-Ayland : + * source/inlines.cpp, source/algorithm/HCoordinate.cpp: + Fixes for MingW builds. See geos-devel/2007-January/002766.html. + git-svn-id: http://svn.osgeo.org/geos/trunk@1951 5242fede-7e19-0410-aef8-94bd7d2200fb 2007-01-03 Sandro Santilli * ChangeLog, source/operation/buffer/BufferOp.cpp: * source/operation/buffer/BufferOp.cpp - (bufferReducedPrecision): Fixed computation of reduced - PrecisionModel scale. git-svn-id: http://svn.osgeo.org/geos/trunk@1950 - 5242fede-7e19-0410-aef8-94bd7d2200fb + (bufferReducedPrecision): Fixed computation of + reduced PrecisionModel scale. git-svn-id: + http://svn.osgeo.org/geos/trunk@1950 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-18 Sandro Santilli - * ChangeLog, tests/xmltester/robustness.xml: * tests/xmltester/robustness.xml: added testcase reported to fail with 2.2.3 on postgis-users/2006-November/014013.html. git-svn-id: http://svn.osgeo.org/geos/trunk@1949 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, tests/xmltester/robustness.xml: * tests/xmltester/robustness.xml: added testcase + reported to fail with 2.2.3 on + postgis-users/2006-November/014013.html. git-svn-id: + http://svn.osgeo.org/geos/trunk@1949 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-18 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h, source/headers/geos/precision/GeometrySnapper.h, source/precision/GeometrySnapper.cpp: Geometry snapping synced with - JTS. git-svn-id: http://svn.osgeo.org/geos/trunk@1948 + JTS. git-svn-id: http://svn.osgeo.org/geos/trunk@1948 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-18 Sandro Santilli - * ChangeLog, HOWTO_RELEASE: * HOWTO_RELEASE: add ChangeLog's release mark step. git-svn-id: http://svn.osgeo.org/geos/trunk@1947 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, HOWTO_RELEASE: * HOWTO_RELEASE: add ChangeLog's release mark step. + git-svn-id: http://svn.osgeo.org/geos/trunk@1947 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-18 Sandro Santilli * ChangeLog, source/precision/GeometrySnapper.cpp, tests/xmltester/Makefile.am, tests/xmltester/TestRobustOverlayFixed.xml: * source/precision/GeometrySnapper.cpp - (computeSnapTolerance): properly compute snap tolerance for - fixed precision geometries. * tests/xmltester/: Makefile.am, TestRobustOverlayFixed.xml: new test for fixed precision snapping. git-svn-id: http://svn.osgeo.org/geos/trunk@1946 - 5242fede-7e19-0410-aef8-94bd7d2200fb + (computeSnapTolerance): properly compute snap + tolerance for fixed precision geometries. * + tests/xmltester/: Makefile.am, TestRobustOverlayFixed.xml: + new test for fixed precision snapping. git-svn-id: + http://svn.osgeo.org/geos/trunk@1946 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-15 Sandro Santilli - * ChangeLog: release 3.0.0rc3 marked git-svn-id: http://svn.osgeo.org/geos/trunk@1945 + * ChangeLog: release 3.0.0rc3 marked git-svn-id: + http://svn.osgeo.org/geos/trunk@1945 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-14 Paul Ramsey - * configure.in: bumped version numbers for 3.0.0rc3 git-svn-id: http://svn.osgeo.org/geos/trunk@1943 + * configure.in: bumped version numbers for 3.0.0rc3 git-svn-id: + http://svn.osgeo.org/geos/trunk@1943 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-13 Mateusz Loskot @@ -17333,7 +22549,7 @@ source/operation/overlay/FuzzyPointLocator.cpp, source/operation/overlay/OffsetPointGenerator.cpp, source/operation/overlay/OverlayResultValidator.cpp: Updated port - information. git-svn-id: http://svn.osgeo.org/geos/trunk@1941 + information. git-svn-id: http://svn.osgeo.org/geos/trunk@1941 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-13 Sandro Santilli @@ -17341,8 +22557,10 @@ * ChangeLog, source/headers/geos/precision/GeometrySnapper.h, source/headers/geos/precision/LineStringSnapper.h, source/precision/GeometrySnapper.cpp, - source/precision/LineStringSnapper.cpp: * precision::GeometrySnapper, precision::LineStringSnapper: Updated port information. git-svn-id: http://svn.osgeo.org/geos/trunk@1940 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/precision/LineStringSnapper.cpp: * precision::GeometrySnapper, precision::LineStringSnapper: + Updated port information. git-svn-id: + http://svn.osgeo.org/geos/trunk@1940 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-11 Sandro Santilli @@ -17354,13 +22572,17 @@ source/noding/FastNodingValidator.cpp, source/noding/MCIndexNoder.cpp, source/noding/Makefile.am, source/noding/SingleInteriorIntersectionFinder.cpp: * source/headers/geos/noding/SegmentIntersector.h: added - virtual isDone() function, always returning false by - default. * source/noding/MCIndexNoder.cpp (intersectChains): short-circuit from JTS-1.8, based on the new SegmentIntersector::isDone() method. * source/noding/Makefile.am, - source/noding/FastNodingValidator.cpp, - source/noding/SingleInteriorIntersectionFinder.cpp, source/headers/geos/noding/Makefile.am, source/headers/geos/noding/FastNodingValidator.h, - source/headers/geos/noding/SingleInteriorIntersectionFinder.h: New ports from JTS-1.8-cvs. * source/headers/geos/geomgraph/EdgeNodingValidator.h: use a FastNodingValidator rather then a simple - NodingValidator. git-svn-id: http://svn.osgeo.org/geos/trunk@1939 - 5242fede-7e19-0410-aef8-94bd7d2200fb + virtual isDone() function, always returning false + by default. * source/noding/MCIndexNoder.cpp + (intersectChains): short-circuit from JTS-1.8, + based on the new SegmentIntersector::isDone() + method. * source/noding/Makefile.am, + source/noding/FastNodingValidator.cpp, + source/noding/SingleInteriorIntersectionFinder.cpp, + source/headers/geos/noding/Makefile.am, + source/headers/geos/noding/FastNodingValidator.h, + + source/headers/geos/noding/SingleInteriorIntersectionFinder.h: New ports from JTS-1.8-cvs. * source/headers/geos/geomgraph/EdgeNodingValidator.h: use a FastNodingValidator rather then a simple NodingValidator. git-svn-id: http://svn.osgeo.org/geos/trunk@1939 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-07 Sandro Santilli @@ -17368,9 +22590,11 @@ source/headers/geos/algorithm/CentralEndpointIntersector.h, source/headers/geos/algorithm/LineIntersector.h, source/headers/geos/algorithm/Makefile.am: * source/headers/geos/algorithm/: - CentralEndpointIntersector.h, Makefile.am: new port from - JTS-1.8. * algorithm::LineIntersector: robustness improvements from JTS-1.8. git-svn-id: http://svn.osgeo.org/geos/trunk@1938 - 5242fede-7e19-0410-aef8-94bd7d2200fb + CentralEndpointIntersector.h, Makefile.am: new + port from JTS-1.8. * algorithm::LineIntersector: + robustness improvements from JTS-1.8. + git-svn-id: http://svn.osgeo.org/geos/trunk@1938 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-05 Mateusz Loskot @@ -17381,12 +22605,22 @@ 2006-12-05 Mateusz Loskot - * ChangeLog: Fixed typos in changelog. git-svn-id: http://svn.osgeo.org/geos/trunk@1936 + * ChangeLog: Fixed typos in changelog. git-svn-id: + http://svn.osgeo.org/geos/trunk@1936 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2006-12-05 Mateusz Loskot + + * : Set svn:keyword property on CAPI tests. git-svn-id: + http://svn.osgeo.org/geos/trunk@1935 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-05 Mateusz Loskot - * : Set svn:keyword property on CAPI tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1935 + * ChangeLog, tests/unit/capi/GEOSCoordSeqTest.cpp, + tests/unit/capi/GEOSSimplifyTest.cpp, + tests/unit/util/UniqueCoordinateArrayFilterTest.cpp: Purifying CAPI + unit tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1934 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-05 Mateusz Loskot @@ -17399,66 +22633,85 @@ * ChangeLog, source/headers/geos/geom/BinaryOp.h, source/operation/overlay/OverlayOp.cpp: * source/operation/overlay/OverlayOp.cpp: Use - EdgeNodingValidator instead of OverlayResultValidator - (faster and more effective). Note that compile-time defines can - select use of either or both ones. * source/headers/geos/geom/BinaryOp.h: be quiet if not in - DEBUG mode. git-svn-id: http://svn.osgeo.org/geos/trunk@1932 - 5242fede-7e19-0410-aef8-94bd7d2200fb + EdgeNodingValidator instead of + OverlayResultValidator (faster and more effective). + Note that compile-time defines can select use of either or + both ones. * + source/headers/geos/geom/BinaryOp.h: be quiet if not in + DEBUG mode. git-svn-id: + http://svn.osgeo.org/geos/trunk@1932 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-05 Sandro Santilli * ChangeLog, source/headers/geos/noding/NodingValidator.h, - source/noding/NodingValidator.cpp: * noding::NodingValidator.h: throw TopologyException rather then a generic GEOSException. git-svn-id: http://svn.osgeo.org/geos/trunk@1931 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/noding/NodingValidator.cpp: * noding::NodingValidator.h: throw TopologyException + rather then a generic GEOSException. git-svn-id: + http://svn.osgeo.org/geos/trunk@1931 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli - * ChangeLog, source/headers/geos/geomgraph/EdgeNodingValidator.h: * source/headers/geos/geomgraph/EdgeNodingValidator.h: fix members initialization order. git-svn-id: http://svn.osgeo.org/geos/trunk@1930 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, source/headers/geos/geomgraph/EdgeNodingValidator.h: * source/headers/geos/geomgraph/EdgeNodingValidator.h: + fix members initialization order. git-svn-id: + http://svn.osgeo.org/geos/trunk@1930 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli * ChangeLog, source/geomgraph/EdgeNodingValidator.cpp, - source/headers/geos/geomgraph/EdgeNodingValidator.h: * geomgraph::EdgeNodingValidator: minor cleanup to use references args instead of pointers for method that doesn't handle NULLs anyway. git-svn-id: http://svn.osgeo.org/geos/trunk@1929 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/headers/geos/geomgraph/EdgeNodingValidator.h: * geomgraph::EdgeNodingValidator: minor cleanup to + use references args instead of pointers for method + that doesn't handle NULLs anyway. git-svn-id: + http://svn.osgeo.org/geos/trunk@1929 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli * ChangeLog, source/simplify/DouglasPeuckerLineSimplifier.cpp, tests/unit/Makefile.am, tests/unit/capi/{GEOSCoordSeq.cpp => - GEOSCoordSeqTest.cpp}, tests/unit/capi/GEOSSimplifyTest.cpp: * tests/unit/capi/: GEOSCoordSeq.cpp => GEOSCoordSeqTest.cpp * tests/unit/capi/GEOSSimplifyTest.cpp: new test for GEOSSimplify (just a test for bug #134). * source/simplify/DouglasPeuckerLineSimplifier.cpp - (simplify): don't try to simplify empty coordinate lists. - Fixes bug #134. git-svn-id: http://svn.osgeo.org/geos/trunk@1928 - 5242fede-7e19-0410-aef8-94bd7d2200fb + GEOSCoordSeqTest.cpp}, tests/unit/capi/GEOSSimplifyTest.cpp: * tests/unit/capi/: GEOSCoordSeq.cpp => GEOSCoordSeqTest.cpp + * tests/unit/capi/GEOSSimplifyTest.cpp: new test + for GEOSSimplify (just a test for bug #134). * + source/simplify/DouglasPeuckerLineSimplifier.cpp (simplify): + don't try to simplify empty coordinate lists. Fixes bug + #134. git-svn-id: http://svn.osgeo.org/geos/trunk@1928 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli * ChangeLog, tests/unit/capi/GEOSCoordSeq.cpp: Other tests using - setOrdinate instead of set{X,Y,Z} git-svn-id: http://svn.osgeo.org/geos/trunk@1927 + setOrdinate instead of set{X,Y,Z} git-svn-id: + http://svn.osgeo.org/geos/trunk@1927 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli * ChangeLog, source/geom/CoordinateArraySequence.cpp: * source/geom/CoordinateArraySequence.cpp (setOrdinate): fix bug - #133. git-svn-id: http://svn.osgeo.org/geos/trunk@1926 + #133. git-svn-id: http://svn.osgeo.org/geos/trunk@1926 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli - * ChangeLog, tests/unit/capi/GEOSCoordSeq.cpp: * tests/unit/capi/GEOSCoordSeq.cpp: add test for bug #133 (failing). git-svn-id: http://svn.osgeo.org/geos/trunk@1925 + * ChangeLog, tests/unit/capi/GEOSCoordSeq.cpp: * tests/unit/capi/GEOSCoordSeq.cpp: add test for bug #133 (failing). + git-svn-id: http://svn.osgeo.org/geos/trunk@1925 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-12-04 Sandro Santilli * ChangeLog, tests/unit/geom/CoordinateArraySequenceTest.cpp: * tests/unit/geom/CoordinateArraySequenceTest.cpp: added tests for - setOrdinate() git-svn-id: http://svn.osgeo.org/geos/trunk@1924 + setOrdinate() git-svn-id: http://svn.osgeo.org/geos/trunk@1924 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-30 Sandro Santilli * ChangeLog, capi/geos_c.cpp, tests/unit/Makefile.am, - tests/unit/capi/GEOSCoordSeq.cpp: * tests/unit/: Makefile.am, capi/GEOSCoordSeq.cpp: new experimental test for C-API GEOSCoordSeq. * capi/geos_c.cpp (GEOSCoordSeq_create): removed suspicious static cast. git-svn-id: http://svn.osgeo.org/geos/trunk@1923 - 5242fede-7e19-0410-aef8-94bd7d2200fb + tests/unit/capi/GEOSCoordSeq.cpp: * tests/unit/: Makefile.am, capi/GEOSCoordSeq.cpp: + new experimental test for C-API GEOSCoordSeq. * + capi/geos_c.cpp (GEOSCoordSeq_create): removed + suspicious static cast. git-svn-id: + http://svn.osgeo.org/geos/trunk@1923 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-28 Mateusz Loskot @@ -17472,114 +22725,146 @@ 2006-11-23 Sandro Santilli * ChangeLog, source/geom/Point.cpp: * source/geom/Point.cpp (equalsExact): don't segfault on empty - points. Fixes bug #132. git-svn-id: http://svn.osgeo.org/geos/trunk@1921 + points. Fixes bug #132. git-svn-id: + http://svn.osgeo.org/geos/trunk@1921 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-23 Sandro Santilli * tests/xmltester/stmlf-cases-20061020.xml: Added short descripion - of testcases provenience git-svn-id: http://svn.osgeo.org/geos/trunk@1920 + of testcases provenience git-svn-id: + http://svn.osgeo.org/geos/trunk@1920 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-22 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, tests/xmltester/stmlf-cases-20061020.xml: * tests/xmltester/: stmlf-cases-20061020.xml, Makefile.am: add more - robustness testcases. git-svn-id: http://svn.osgeo.org/geos/trunk@1919 + robustness testcases. git-svn-id: + http://svn.osgeo.org/geos/trunk@1919 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-22 Sandro Santilli - * ChangeLog, autogen.sh: Patch by dron@ak4719.spb.edu: * autogen.sh: call 'autoheader' after 'aclocal'. Fixes bug #131 git-svn-id: http://svn.osgeo.org/geos/trunk@1918 + * ChangeLog, autogen.sh: Patch by dron@ak4719.spb.edu: * + autogen.sh: call 'autoheader' after 'aclocal'. Fixes bug + #131 git-svn-id: http://svn.osgeo.org/geos/trunk@1918 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-18 Mateusz Loskot - * source/Makefile.vc: Fixed path to geos_c.h in source/makefile.vc. git-svn-id: http://svn.osgeo.org/geos/trunk@1917 + * source/Makefile.vc: Fixed path to geos_c.h in source/makefile.vc. + git-svn-id: http://svn.osgeo.org/geos/trunk@1917 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-15 Sandro Santilli * ChangeLog, capi/Makefile.am, capi/geos_c.h.vc.in, configure.in, source/Makefile.vc, source/headers/geos/Makefile.am, - source/headers/geos/version.h.vc: * configure.in: don't generate geos_c.h.vc * source/Makefile.vc: don't generate geos_c.h and version.h * source/headers/geos/version.h.vc, capi/geos_c.h.vc.in: removed, will NOT be needed by Makefile.vc * source/headers/geos/Makefile.am: distribute version.h * capi/Makefile.am: distribute geos_c.h git-svn-id: http://svn.osgeo.org/geos/trunk@1916 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/headers/geos/version.h.vc: * configure.in: don't generate geos_c.h.vc * + source/Makefile.vc: don't generate geos_c.h and version.h + * source/headers/geos/version.h.vc, capi/geos_c.h.vc.in: + removed, will NOT be needed by Makefile.vc * + source/headers/geos/Makefile.am: distribute version.h + * capi/Makefile.am: distribute geos_c.h git-svn-id: + http://svn.osgeo.org/geos/trunk@1916 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-15 Sandro Santilli - * ChangeLog, capi/geos_c.h.in: * capi/geos_c.h.in: hopefully fixed GEOS_DLL use. git-svn-id: http://svn.osgeo.org/geos/trunk@1915 + * ChangeLog, capi/geos_c.h.in: * capi/geos_c.h.in: hopefully fixed GEOS_DLL use. git-svn-id: + http://svn.osgeo.org/geos/trunk@1915 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-15 Sandro Santilli * ChangeLog, capi/geos_c.cpp: * capi/geos_c.cpp (GEOSGeom_getDimensions): Fix a segfault on empty - geometry input (fix bug #126). git-svn-id: http://svn.osgeo.org/geos/trunk@1914 + geometry input (fix bug #126). git-svn-id: + http://svn.osgeo.org/geos/trunk@1914 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-11 Paul Ramsey * capi/geos_c.h.vc.in: Retreived original .vc file and put in MACRO substitutions. Somehow GNU version replaced .vc version during file - shuffles to get macros in. git-svn-id: http://svn.osgeo.org/geos/trunk@1913 + shuffles to get macros in. git-svn-id: + http://svn.osgeo.org/geos/trunk@1913 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-10 Sandro Santilli - * ChangeLog: fixed timewarp git-svn-id: http://svn.osgeo.org/geos/trunk@1912 + * ChangeLog: fixed timewarp git-svn-id: + http://svn.osgeo.org/geos/trunk@1912 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-10 Paul Ramsey - * ChangeLog: noted .vc change git-svn-id: http://svn.osgeo.org/geos/trunk@1911 + * ChangeLog: noted .vc change git-svn-id: + http://svn.osgeo.org/geos/trunk@1911 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-10 Paul Ramsey * capi/Makefile.am: Made sure geos_c.h.vc is part of 'make dist' - since VC users won't have .configure git-svn-id: http://svn.osgeo.org/geos/trunk@1910 + since VC users won't have .configure git-svn-id: + http://svn.osgeo.org/geos/trunk@1910 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-10 Paul Ramsey * capi/Makefile.am, capi/{geos_c.h.vc => geos_c.h.vc.in}: Added - substitution strings to .in files for .vc generation. git-svn-id: http://svn.osgeo.org/geos/trunk@1909 + substitution strings to .in files for .vc generation. git-svn-id: + http://svn.osgeo.org/geos/trunk@1909 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-10 Paul Ramsey - * configure.in: Changes for capi .vc generation git-svn-id: http://svn.osgeo.org/geos/trunk@1908 + * configure.in: Changes for capi .vc generation git-svn-id: + http://svn.osgeo.org/geos/trunk@1908 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-10 Howard Butler - * capi/geos_c.h.vc: update git-svn-id: http://svn.osgeo.org/geos/trunk@1907 + * capi/geos_c.h.vc: update git-svn-id: + http://svn.osgeo.org/geos/trunk@1907 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-09 Sandro Santilli - * ChangeLog, tests/xmltester/XMLTester.cpp: * test/xmltester/XMLTester.cpp: improved 'testarea' test. git-svn-id: http://svn.osgeo.org/geos/trunk@1906 + * ChangeLog, tests/xmltester/XMLTester.cpp: * test/xmltester/XMLTester.cpp: improved 'testarea' test. + git-svn-id: http://svn.osgeo.org/geos/trunk@1906 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-08 Sandro Santilli - * ChangeLog: added 'release-separator' tag git-svn-id: http://svn.osgeo.org/geos/trunk@1905 + * ChangeLog: added 'release-separator' tag git-svn-id: + http://svn.osgeo.org/geos/trunk@1905 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-08 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, - tests/xmltester/robustness.xml: * tests/xmltester/robustness.xml: made test safe to run by using the new 'areatest' operation; added new testcases just raised on the mailing list. * tests/xmltester/Makefile.am: robustness.xml is now safe to run, so run it on make check. git-svn-id: http://svn.osgeo.org/geos/trunk@1904 - 5242fede-7e19-0410-aef8-94bd7d2200fb + tests/xmltester/robustness.xml: * tests/xmltester/robustness.xml: made test safe to + run by using the new 'areatest' operation; added + new testcases just raised on the mailing list. * + tests/xmltester/Makefile.am: robustness.xml is now safe + to run, so run it on make check. git-svn-id: + http://svn.osgeo.org/geos/trunk@1904 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-08 Sandro Santilli - * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h: enable COMMONBITS-removal heuristic so it is attempted before geometry snapping. git-svn-id: http://svn.osgeo.org/geos/trunk@1903 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h: enable + COMMONBITS-removal heuristic so it is attempted + before geometry snapping. git-svn-id: + http://svn.osgeo.org/geos/trunk@1903 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-05 Sandro Santilli * ChangeLog, capi/Makefile.am: * capi/Makefile.am: distribute files needed for testing, proper - cleanup (make distcheck works now) git-svn-id: http://svn.osgeo.org/geos/trunk@1900 + cleanup (make distcheck works now) git-svn-id: + http://svn.osgeo.org/geos/trunk@1900 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-05 Charlie Savage @@ -17596,106 +22881,136 @@ 2006-11-05 Charlie Savage - * swig/geos.i: Fixes for changes in header files. git-svn-id: http://svn.osgeo.org/geos/trunk@1897 + * swig/geos.i: Fixes for changes in header files. git-svn-id: + http://svn.osgeo.org/geos/trunk@1897 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-03 Sandro Santilli - * capi/testrunner.sh: redirect 'diff' output to stderr git-svn-id: http://svn.osgeo.org/geos/trunk@1896 + * capi/testrunner.sh: redirect 'diff' output to stderr git-svn-id: + http://svn.osgeo.org/geos/trunk@1896 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-03 Sandro Santilli - * ChangeLog, capi/testrunner.sh: hopefully fixed proper quoting git-svn-id: http://svn.osgeo.org/geos/trunk@1895 + * ChangeLog, capi/testrunner.sh: hopefully fixed proper quoting + git-svn-id: http://svn.osgeo.org/geos/trunk@1895 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-03 Sandro Santilli * ChangeLog, capi/testrunner.sh: Report non-zero return from - ./geostest run git-svn-id: http://svn.osgeo.org/geos/trunk@1894 + ./geostest run git-svn-id: http://svn.osgeo.org/geos/trunk@1894 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-02 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h: disable debugging output by - default. git-svn-id: http://svn.osgeo.org/geos/trunk@1893 + default. git-svn-id: http://svn.osgeo.org/geos/trunk@1893 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-02 Sandro Santilli * ChangeLog, capi/geostest.c: * capi/geostest.c: updated to use the new GEOSGeometry typedef, so to build w/out warnings and fully respecting current const - specification. git-svn-id: http://svn.osgeo.org/geos/trunk@1892 + specification. git-svn-id: http://svn.osgeo.org/geos/trunk@1892 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-02 Sandro Santilli * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: * capi/geos_c.cpp, capi/geos_c.h.in: const-corrected and documented - GEOSPolygonize function. git-svn-id: http://svn.osgeo.org/geos/trunk@1891 + GEOSPolygonize function. git-svn-id: + http://svn.osgeo.org/geos/trunk@1891 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-02 Sandro Santilli - * ChangeLog, capi/test.expected, capi/testrunner.sh: * capi/test.expected: updated expected version * capi/testrunner.sh: be happy with geostest running w/out segfaulting, still run diff for reference. git-svn-id: http://svn.osgeo.org/geos/trunk@1890 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, capi/test.expected, capi/testrunner.sh: * capi/test.expected: updated expected version * + capi/testrunner.sh: be happy with geostest running w/out + segfaulting, still run diff for reference. git-svn-id: + http://svn.osgeo.org/geos/trunk@1890 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-02 Sandro Santilli - * ChangeLog, configure.in: * configure.in: updated versions to 3.0.0rc2 / CAPI-1.3.0 git-svn-id: http://svn.osgeo.org/geos/trunk@1889 + * ChangeLog, configure.in: * configure.in: updated versions to 3.0.0rc2 / CAPI-1.3.0 + git-svn-id: http://svn.osgeo.org/geos/trunk@1889 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-11-02 Sandro Santilli * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: Patch by Markus - Schaber : * capi/geos_c.h.in: add GEOSGeometry and GEOSCoordSequence typedef, to unhide the pointer type and allow fine-grained const specification, use the new typedefs in function - signatures (fix some const-specifications accordingly) * capi/geos_c.cpp: define GEOSGeometry and GEOSCoordSequence for cross-checking of types in header. git-svn-id: http://svn.osgeo.org/geos/trunk@1888 + Schaber : * capi/geos_c.h.in: add + GEOSGeometry and GEOSCoordSequence typedef, to unhide the + pointer type and allow fine-grained const specification, + use the new typedefs in function signatures (fix some + const-specifications accordingly) * capi/geos_c.cpp: define + GEOSGeometry and GEOSCoordSequence for cross-checking of + types in header. git-svn-id: http://svn.osgeo.org/geos/trunk@1888 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: Patch by Markus - Schaber * capi/geos_c.cpp: more focused 'using' directives. * capi/geos_c.h.in: let the enum visible by geos_c.cpp now that there are no more name clashes. git-svn-id: http://svn.osgeo.org/geos/trunk@1887 + Schaber * capi/geos_c.cpp: more + focused 'using' directives. * capi/geos_c.h.in: let the enum + visible by geos_c.cpp now that there are no more name + clashes. git-svn-id: http://svn.osgeo.org/geos/trunk@1887 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli - * capi/geos_c.cpp: removed useless GEOSGeomTypes define git-svn-id: http://svn.osgeo.org/geos/trunk@1886 + * capi/geos_c.cpp: removed useless GEOSGeomTypes define git-svn-id: + http://svn.osgeo.org/geos/trunk@1886 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli * ChangeLog, source/operation/overlay/OverlayOp.cpp: reduce default - verbosity git-svn-id: http://svn.osgeo.org/geos/trunk@1885 + verbosity git-svn-id: http://svn.osgeo.org/geos/trunk@1885 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli - * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: * capi/geos_c.cpp: Remove a typedef which is also included via Header; Use dynamic_cast instead of C cast in 2 cases to allow the - RTTI type check; Replace "geoms" temp vector in - polygonizer function with a loop, this saves us at least one of the - two vector copies; Drop 2 unneded const_cast occurences; Allow calling getNumGeometries against non-collections; 2 comment / whitespace cleanups. * capi/geos_c.h.in: Added a comment explaining ou #ifndef magic; Unified the two #ifndef into a single one. git-svn-id: http://svn.osgeo.org/geos/trunk@1884 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: * capi/geos_c.cpp: Remove a typedef which is also + included via Header; Use dynamic_cast instead of C + cast in 2 cases to allow the RTTI type + check; Replace "geoms" temp vector in polygonizer + function with a loop, this saves us at least one + of the two vector copies; Drop 2 unneded + const_cast occurences; Allow calling + getNumGeometries against non-collections; 2 + comment / whitespace cleanups. * capi/geos_c.h.in: + Added a comment explaining ou #ifndef magic; + Unified the two #ifndef into a single one. git-svn-id: + http://svn.osgeo.org/geos/trunk@1884 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli * ChangeLog, capi/Makefile.am, capi/test.expected, capi/testrunner.sh: * capi/: test.expected, testrunner.sh, Makefile.am: Added a run of - ./geostest as part of 'make check' git-svn-id: http://svn.osgeo.org/geos/trunk@1883 + ./geostest as part of 'make check' git-svn-id: + http://svn.osgeo.org/geos/trunk@1883 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: Patch submitted by - Markus Schaber ( reviewed and fixed ) * capi/: geos_c.cpp, geos_c.h.in: Changed the C-API implementation to actually include the - header that's included by the clients, this allows the - compiler to check declarations and implementation for consistency, - fixed geos_c.cpp accordingly (const-correctness, mainly). git-svn-id: http://svn.osgeo.org/geos/trunk@1882 + Markus Schaber ( reviewed and fixed ) + * capi/: geos_c.cpp, geos_c.h.in: Changed the C-API + implementation to actually include the header that's + included by the clients, this allows the compiler to check + declarations and implementation for consistency, fixed geos_c.cpp + accordingly (const-correctness, mainly). git-svn-id: + http://svn.osgeo.org/geos/trunk@1882 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-30 Sandro Santilli * ChangeLog, capi/geostest.c: * capi/geostest.c: added some checks of return from CAPI functions - returning GEOSGeom (not all, just a few) git-svn-id: http://svn.osgeo.org/geos/trunk@1881 + returning GEOSGeom (not all, just a few) git-svn-id: + http://svn.osgeo.org/geos/trunk@1881 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-27 Sandro Santilli @@ -17706,22 +23021,26 @@ source/headers/geos/geom/Geometry.h, source/headers/geos/operation/polygonize/Polygonizer.h, source/operation/polygonize/Polygonizer.cpp: Patch by Markus Schaber - * algorithm::InteriorPointLine (ctor): take Geometry by - const-pointer. * geom::Geometry (getInteriorPoint): made a const-method * operation::polygonize::Polygonizer: implement filter_ro - rather then filter_rw, as it doesn't change the Geometry, - propagated change to internal interfaces (add methods) git-svn-id: http://svn.osgeo.org/geos/trunk@1880 + * algorithm::InteriorPointLine + (ctor): take Geometry by const-pointer. * geom::Geometry + (getInteriorPoint): made a const-method * + operation::polygonize::Polygonizer: implement filter_ro rather + then filter_rw, as it doesn't change the Geometry, propagated + change to internal interfaces (add methods) git-svn-id: + http://svn.osgeo.org/geos/trunk@1880 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-26 Sandro Santilli - * ChangeLog, capi/geos_c.h.in: * capi/geos_c.h.in: reverted all changes of 'int' types to 'size_t' types (the lib never changed, and still - expects ints) git-svn-id: http://svn.osgeo.org/geos/trunk@1879 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, capi/geos_c.h.in: * capi/geos_c.h.in: reverted all changes of 'int' types + to 'size_t' types (the lib never changed, and still expects + ints) git-svn-id: http://svn.osgeo.org/geos/trunk@1879 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-24 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h: try original geoms first by - default. git-svn-id: http://svn.osgeo.org/geos/trunk@1878 + default. git-svn-id: http://svn.osgeo.org/geos/trunk@1878 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-24 Sandro Santilli @@ -17729,7 +23048,8 @@ * ChangeLog, source/headers/geos/operation/overlay/OverlayResultValidator.h, source/operation/overlay/OverlayResultValidator.cpp: * operation::overlay::OverlayResultValidator.cpp (isValid): run the - test even if inputs and output are not areal. git-svn-id: http://svn.osgeo.org/geos/trunk@1877 + test even if inputs and output are not areal. git-svn-id: + http://svn.osgeo.org/geos/trunk@1877 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-24 Sandro Santilli @@ -17737,39 +23057,48 @@ * ChangeLog, source/headers/geos/operation/overlay/FuzzyPointLocator.h, source/operation/overlay/FuzzyPointLocator.cpp: * operation::overlay::FuzzyPointLocator: eliminate non-polygonal - components from consideration when testing the location of points. git-svn-id: http://svn.osgeo.org/geos/trunk@1876 + components from consideration when testing the location of points. + git-svn-id: http://svn.osgeo.org/geos/trunk@1876 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-24 Sandro Santilli * ChangeLog, source/headers/geos/precision/GeometrySnapper.h, source/precision/GeometrySnapper.cpp: * precision::GeometrySnapper: snapPrecisionFactor augmented from - 10e-12 to 10e-10. git-svn-id: http://svn.osgeo.org/geos/trunk@1875 + 10e-12 to 10e-10. git-svn-id: http://svn.osgeo.org/geos/trunk@1875 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-24 Sandro Santilli * ChangeLog, source/headers/geos/precision/LineStringSnapper.h, - source/precision/LineStringSnapper.cpp: * precision::LineStringSnapper (findSegmentToSnap): return the *closest* segment, don't snap if the closest segment *intersects* the snap points, consider a distance of exactly snapTolerance as non-tolerated (got in sync with JTS) git-svn-id: http://svn.osgeo.org/geos/trunk@1874 + source/precision/LineStringSnapper.cpp: * precision::LineStringSnapper (findSegmentToSnap): return the + *closest* segment, don't snap if the closest segment *intersects* + the snap points, consider a distance of exactly snapTolerance as + non-tolerated (got in sync with JTS) git-svn-id: + http://svn.osgeo.org/geos/trunk@1874 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-23 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h (SnapOp): document and add optional CBR step (snap after applying common bits removal - this is - the default); (check_valid): add validity checker function. git-svn-id: http://svn.osgeo.org/geos/trunk@1873 + the default); (check_valid): add validity checker function. + git-svn-id: http://svn.osgeo.org/geos/trunk@1873 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-20 Sandro Santilli * ChangeLog, source/headers/geos/noding/SegmentString.h, - source/noding/ScaledNoder.cpp, source/noding/SegmentString.cpp: * noding::SegmentString: added notifyCoordinatesChange method. * noding::ScaledNoder: notify possible coordinates change to - SegmentString after removing repeated points. git-svn-id: http://svn.osgeo.org/geos/trunk@1872 + source/noding/ScaledNoder.cpp, source/noding/SegmentString.cpp: * noding::SegmentString: added notifyCoordinatesChange method. * + noding::ScaledNoder: notify possible coordinates change to + SegmentString after removing repeated points. git-svn-id: + http://svn.osgeo.org/geos/trunk@1872 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-19 Sandro Santilli - * ChangeLog, configure.in: * configure.in: use 'expr' for arithmetics (more portable) git-svn-id: http://svn.osgeo.org/geos/trunk@1871 + * ChangeLog, configure.in: * configure.in: use 'expr' for arithmetics (more portable) + git-svn-id: http://svn.osgeo.org/geos/trunk@1871 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-18 Mateusz Loskot @@ -17781,132 +23110,157 @@ 2006-10-18 Mateusz Loskot * source/Makefile.vc, source/dirlist.mk: Updated source\makefile.vc - and source\dirlist.mk files. git-svn-id: http://svn.osgeo.org/geos/trunk@1869 + and source\dirlist.mk files. git-svn-id: + http://svn.osgeo.org/geos/trunk@1869 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-18 Mateusz Loskot - * makefile.vc: Added top-level makefile.vc. git-svn-id: http://svn.osgeo.org/geos/trunk@1868 + * makefile.vc: Added top-level makefile.vc. git-svn-id: + http://svn.osgeo.org/geos/trunk@1868 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2006-10-18 Sandro Santilli + + * : fixed svn:ignore property git-svn-id: + http://svn.osgeo.org/geos/trunk@1867 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-18 Sandro Santilli - * : fixed svn:ignore property git-svn-id: http://svn.osgeo.org/geos/trunk@1867 + * ChangeLog, source/operation/overlay/OverlayOp.cpp: disable non-JTS + overlay result validators (to more closely track JTS at this stage) + git-svn-id: http://svn.osgeo.org/geos/trunk@1866 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-17 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h (SnapOp): fixed - horrible bug applying overlay of first geom to itself :( git-svn-id: http://svn.osgeo.org/geos/trunk@1865 - 5242fede-7e19-0410-aef8-94bd7d2200fb + horrible bug applying overlay of first geom to + itself :( git-svn-id: http://svn.osgeo.org/geos/trunk@1865 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-17 Sandro Santilli * capi/geos_c.h.in: really fixed 'extra tokens at end of #endif - directive' warning git-svn-id: http://svn.osgeo.org/geos/trunk@1864 + directive' warning git-svn-id: http://svn.osgeo.org/geos/trunk@1864 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-17 Sandro Santilli * capi/geos_c.h.in: fixed 'extra tokens at end of #endif directive' - warning git-svn-id: http://svn.osgeo.org/geos/trunk@1863 + warning git-svn-id: http://svn.osgeo.org/geos/trunk@1863 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-17 Sandro Santilli - * ChangeLog, capi/Makefile.am: * capi/Makefile.am: don't directly link geostest against both libgeos.so and libstdc++ (should be derived by libgeos_c.so). git-svn-id: http://svn.osgeo.org/geos/trunk@1862 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, capi/Makefile.am: * capi/Makefile.am: don't directly link geostest against + both libgeos.so and libstdc++ (should be derived by + libgeos_c.so). git-svn-id: + http://svn.osgeo.org/geos/trunk@1862 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-12 Sandro Santilli * ChangeLog, tests/bigtest/GeometryTestFactory.cpp, tests/bigtest/TestSweepLineSpeed.cpp, tests/bigtest/bigtest.h: * tests/bigtest/GeometryTestFactory.cpp, tests/bigtest/bigtest.h, tests/bigtest/TestSweepLineSpeed.cpp: fixed header inclusion, to - reduce compiler noise. git-svn-id: http://svn.osgeo.org/geos/trunk@1861 + reduce compiler noise. git-svn-id: + http://svn.osgeo.org/geos/trunk@1861 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-09 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h: always snap geoms to - each-other before applying an overlay (temp hack). git-svn-id: http://svn.osgeo.org/geos/trunk@1860 + each-other before applying an overlay (temp hack). git-svn-id: + http://svn.osgeo.org/geos/trunk@1860 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-09 Sandro Santilli * ChangeLog, source/operation/overlay/OverlayOp.cpp: * source/operation/overlay/OverlayOp.cpp: enable all overlay result - validators, make it disablable at compile time. git-svn-id: http://svn.osgeo.org/geos/trunk@1859 + validators, make it disablable at compile time. git-svn-id: + http://svn.osgeo.org/geos/trunk@1859 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-05 Mateusz Loskot * ChangeLog, capi/geos_c.h.in, capi/geos_c.h.vc: Added inclusion - guards to geos_c.h files. git-svn-id: http://svn.osgeo.org/geos/trunk@1858 + guards to geos_c.h files. git-svn-id: + http://svn.osgeo.org/geos/trunk@1858 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-05 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp: increment areatest - verbosity (needs -v -v) git-svn-id: http://svn.osgeo.org/geos/trunk@1857 + verbosity (needs -v -v) git-svn-id: + http://svn.osgeo.org/geos/trunk@1857 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-10-02 Howard Butler * ChangeLog, capi/geos_c.cpp: GEOSEnvelope wasn't in the PROTOTYPES - section in geos_c.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@1856 + section in geos_c.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@1856 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-27 Sandro Santilli - * HOWTO_RELEASE: updated tag item git-svn-id: http://svn.osgeo.org/geos/trunk@1855 + * HOWTO_RELEASE: updated tag item git-svn-id: + http://svn.osgeo.org/geos/trunk@1855 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-27 Sandro Santilli - * HOWTO_RELEASE: added info about svn tags git-svn-id: http://svn.osgeo.org/geos/trunk@1854 + * HOWTO_RELEASE: added info about svn tags git-svn-id: + http://svn.osgeo.org/geos/trunk@1854 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-19 Sandro Santilli * source/operation/overlay/OffsetPointGenerator.cpp: Added - include git-svn-id: http://svn.osgeo.org/geos/trunk@1853 + include git-svn-id: + http://svn.osgeo.org/geos/trunk@1853 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-08 Paul Ramsey * AUTHORS: Added information about funders of the 3.0.0 series: Safe Software, Autodesk, Bavarian State Ministry of Agriculture and - Forestry and the State Survey of Bavaria. git-svn-id: http://svn.osgeo.org/geos/trunk@1851 + Forestry and the State Survey of Bavaria. git-svn-id: + http://svn.osgeo.org/geos/trunk@1851 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-08 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1850 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1850 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-08 Sandro Santilli * source/operation/overlay/OverlayResultValidator.cpp: more - debugging output git-svn-id: http://svn.osgeo.org/geos/trunk@1849 + debugging output git-svn-id: http://svn.osgeo.org/geos/trunk@1849 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-08 Sandro Santilli * tests/unit/operation/overlay/FuzzyPointLocatorTest.cpp, tests/unit/operation/overlay/OverlayResultValidatorTest.cpp: More - testcases git-svn-id: http://svn.osgeo.org/geos/trunk@1848 + testcases git-svn-id: http://svn.osgeo.org/geos/trunk@1848 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/overlay/OverlayResultValidatorTest.cpp: New - unit test for OverlayResultValidator class git-svn-id: http://svn.osgeo.org/geos/trunk@1847 + unit test for OverlayResultValidator class git-svn-id: + http://svn.osgeo.org/geos/trunk@1847 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * source/operation/overlay/OverlayResultValidator.cpp: more - debugging output git-svn-id: http://svn.osgeo.org/geos/trunk@1846 + debugging output git-svn-id: http://svn.osgeo.org/geos/trunk@1846 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli @@ -17914,19 +23268,20 @@ * source/headers/geos/operation/overlay/OverlayResultValidator.h, source/operation/overlay/OverlayResultValidator.cpp: Added addVertices private method (unused, as in JTS, but possibly useful - in the future) git-svn-id: http://svn.osgeo.org/geos/trunk@1845 + in the future) git-svn-id: http://svn.osgeo.org/geos/trunk@1845 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * source/operation/overlay/OverlayResultValidator.cpp: Added - debugging code git-svn-id: http://svn.osgeo.org/geos/trunk@1844 + debugging code git-svn-id: http://svn.osgeo.org/geos/trunk@1844 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * tests/unit/operation/overlay/OffsetPointGeneratorTest.cpp: more - testcases (added test for max distance of offset points) git-svn-id: http://svn.osgeo.org/geos/trunk@1843 + testcases (added test for max distance of offset points) + git-svn-id: http://svn.osgeo.org/geos/trunk@1843 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli @@ -17951,102 +23306,122 @@ tests/unit/noding/SegmentStringTest.cpp, tests/unit/operation/distance/DistanceOpTest.cpp, tests/unit/precision/LineStringSnapperTest.cpp: removed - svn:executable prop from all .cpp files git-svn-id: http://svn.osgeo.org/geos/trunk@1842 + svn:executable prop from all .cpp files git-svn-id: + http://svn.osgeo.org/geos/trunk@1842 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * tests/unit/operation/overlay/FuzzyPointLocatorTest.cpp, tests/unit/operation/overlay/OffsetPointGeneratorTest.cpp: removed - svn:executable property git-svn-id: http://svn.osgeo.org/geos/trunk@1841 + svn:executable property git-svn-id: + http://svn.osgeo.org/geos/trunk@1841 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * tests/unit/operation/overlay/FuzzyPointLocatorTest.cpp: testing - execute bit state git-svn-id: http://svn.osgeo.org/geos/trunk@1840 + execute bit state git-svn-id: http://svn.osgeo.org/geos/trunk@1840 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Mateusz Loskot - * : Set svn:keyword for $ expansion. git-svn-id: http://svn.osgeo.org/geos/trunk@1839 + * : Set svn:keyword for $ expansion. git-svn-id: + http://svn.osgeo.org/geos/trunk@1839 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2006-09-07 Sandro Santilli + + * source/operation/overlay/OverlayOp.cpp: Cleaned up + OverlayResultValidator call (still disabled due to bugs) + git-svn-id: http://svn.osgeo.org/geos/trunk@1838 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * source/operation/overlay/OverlayResultValidator.cpp: blindly - return positive result if any input or output is not an area git-svn-id: http://svn.osgeo.org/geos/trunk@1837 + return positive result if any input or output is not an area + git-svn-id: http://svn.osgeo.org/geos/trunk@1837 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * tests/unit/operation/overlay/FuzzyPointLocatorTest.cpp: new test - for FuzzyPointLocator git-svn-id: http://svn.osgeo.org/geos/trunk@1836 + for FuzzyPointLocator git-svn-id: + http://svn.osgeo.org/geos/trunk@1836 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * source/headers/geos/geom/Location.h: Explicit values to - LocationValue enum items. Removed CVS Log git-svn-id: http://svn.osgeo.org/geos/trunk@1835 + LocationValue enum items. Removed CVS Log git-svn-id: + http://svn.osgeo.org/geos/trunk@1835 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * doc/example.cpp: Removed catch-all headers inclusion and use of - obsoleted Unload class git-svn-id: http://svn.osgeo.org/geos/trunk@1834 + obsoleted Unload class git-svn-id: + http://svn.osgeo.org/geos/trunk@1834 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli - * README: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1833 + * README: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1833 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * source/headers/geos/operation/overlay/OverlayResultValidator.h: - comment cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1832 + comment cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1832 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * source/headers/geos/operation/distance/DistanceOp.h: Comments - about ownership (and lifetime) of returned objects git-svn-id: http://svn.osgeo.org/geos/trunk@1831 + about ownership (and lifetime) of returned objects git-svn-id: + http://svn.osgeo.org/geos/trunk@1831 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli * tests/unit/Makefile.am, tests/unit/operation/distance/DistanceOpTest.cpp: New DistanceOp - unit test git-svn-id: http://svn.osgeo.org/geos/trunk@1830 + unit test git-svn-id: http://svn.osgeo.org/geos/trunk@1830 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli - * ChangeLog, source/operation/distance/DistanceOp.cpp: (computeMinDistancePoints): fixed invalid reference. git-svn-id: http://svn.osgeo.org/geos/trunk@1829 + * ChangeLog, source/operation/distance/DistanceOp.cpp: (computeMinDistancePoints): fixed invalid reference. git-svn-id: + http://svn.osgeo.org/geos/trunk@1829 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-07 Sandro Santilli - * ChangeLog, autogen.sh: don't giveup on automake failures (testing) git-svn-id: http://svn.osgeo.org/geos/trunk@1828 + * ChangeLog, autogen.sh: don't giveup on automake failures (testing) + git-svn-id: http://svn.osgeo.org/geos/trunk@1828 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Ops, overlay result - validation erroenously committed git-svn-id: http://svn.osgeo.org/geos/trunk@1827 + validation erroenously committed git-svn-id: + http://svn.osgeo.org/geos/trunk@1827 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli * ChangeLog, tests/unit/Makefile.am, tests/unit/operation/overlay/OffsetPointGeneratorTest.cpp: new test - for OffsetPointGenerator class git-svn-id: http://svn.osgeo.org/geos/trunk@1826 + for OffsetPointGenerator class git-svn-id: + http://svn.osgeo.org/geos/trunk@1826 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli * source/operation/overlay/OffsetPointGenerator.cpp: Fixed - uninitialized memory bug git-svn-id: http://svn.osgeo.org/geos/trunk@1825 + uninitialized memory bug git-svn-id: + http://svn.osgeo.org/geos/trunk@1825 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli @@ -18054,18 +23429,21 @@ * ChangeLog, source/operation/overlay/OverlayOp.cpp, tests/unit/Makefile.am, tests/unit/operation/overlay/FuzzyPointLocatorTest.cpp: new test for - FuzzyPointLocator class git-svn-id: http://svn.osgeo.org/geos/trunk@1824 + FuzzyPointLocator class git-svn-id: + http://svn.osgeo.org/geos/trunk@1824 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli * tests/unit/precision/GeometrySnapperTest.cpp: updated after - GeometrySnapper interface change. git-svn-id: http://svn.osgeo.org/geos/trunk@1823 + GeometrySnapper interface change. git-svn-id: + http://svn.osgeo.org/geos/trunk@1823 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Mateusz Loskot - * ChangeLog: Set $ expansion for new files in 'overlay' module. git-svn-id: http://svn.osgeo.org/geos/trunk@1822 + * ChangeLog: Set $ expansion for new files in 'overlay' module. + git-svn-id: http://svn.osgeo.org/geos/trunk@1822 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli @@ -18079,19 +23457,21 @@ source/operation/overlay/Makefile.am, source/operation/overlay/OffsetPointGenerator.cpp, source/operation/overlay/OverlayResultValidator.cpp: Rest of Overlay - validation classes. git-svn-id: http://svn.osgeo.org/geos/trunk@1821 + validation classes. git-svn-id: + http://svn.osgeo.org/geos/trunk@1821 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Mateusz Loskot - * ChangeLog: Set svn:keyword property for Id keyword expansion. git-svn-id: http://svn.osgeo.org/geos/trunk@1820 + * ChangeLog: Set svn:keyword property for Id keyword expansion. + git-svn-id: http://svn.osgeo.org/geos/trunk@1820 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli * source/headers/geos/operation/overlay/FuzzyPointLocator.h, source/operation/overlay/FuzzyPointLocator.cpp: Fixed comments and - includes git-svn-id: http://svn.osgeo.org/geos/trunk@1819 + includes git-svn-id: http://svn.osgeo.org/geos/trunk@1819 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli @@ -18099,18 +23479,20 @@ * ChangeLog, source/headers/geos/operation/overlay/FuzzyPointLocator.h, source/operation/overlay/FuzzyPointLocator.cpp: new helper class for - Overlay op validation. git-svn-id: http://svn.osgeo.org/geos/trunk@1818 + Overlay op validation. git-svn-id: + http://svn.osgeo.org/geos/trunk@1818 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-06 Sandro Santilli - * source/headers/geos/geom/Geometry.h: (getBoundary) memory allocations documented git-svn-id: http://svn.osgeo.org/geos/trunk@1817 + * source/headers/geos/geom/Geometry.h: (getBoundary) memory allocations documented git-svn-id: + http://svn.osgeo.org/geos/trunk@1817 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-05 Sandro Santilli * ChangeLog: updated (last commit log was bogus, refer to ChangeLog - entry) git-svn-id: http://svn.osgeo.org/geos/trunk@1816 + entry) git-svn-id: http://svn.osgeo.org/geos/trunk@1816 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-09-05 Sandro Santilli @@ -18120,82 +23502,94 @@ source/operation/overlay/OverlayOp.cpp, source/precision/GeometrySnapper.cpp: (OverlayOp::checkObviouslyWrongResult): exceptions messages - rewording git-svn-id: http://svn.osgeo.org/geos/trunk@1815 + rewording git-svn-id: http://svn.osgeo.org/geos/trunk@1815 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-31 Sandro Santilli * ChangeLog, source/index/quadtree/Root.cpp: (insertContained): fixed bug reported in - geos-devel/2006-August/002541.html git-svn-id: http://svn.osgeo.org/geos/trunk@1814 + geos-devel/2006-August/002541.html git-svn-id: + http://svn.osgeo.org/geos/trunk@1814 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-31 Sandro Santilli * ChangeLog, configure.in: Reverted last two commits. Darwin host on - buildbot seems to have its own problems... git-svn-id: http://svn.osgeo.org/geos/trunk@1813 + buildbot seems to have its own problems... git-svn-id: + http://svn.osgeo.org/geos/trunk@1813 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-31 Sandro Santilli * configure.in: Ops, it was AM_CONFIG_HEADER the old version - still - testing git-svn-id: http://svn.osgeo.org/geos/trunk@1812 + testing git-svn-id: http://svn.osgeo.org/geos/trunk@1812 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-31 Sandro Santilli * ChangeLog, configure.in: AC_CONFIG_HEADERS => AM_CONFIG_HEADER (to - support older automake versions) git-svn-id: http://svn.osgeo.org/geos/trunk@1811 + support older automake versions) git-svn-id: + http://svn.osgeo.org/geos/trunk@1811 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-04 Howard Butler - * capi/geos_c.h.vc: version should be 3.0.0 instead of 3.3.0 git-svn-id: http://svn.osgeo.org/geos/trunk@1810 + * capi/geos_c.h.vc: version should be 3.0.0 instead of 3.3.0 + git-svn-id: http://svn.osgeo.org/geos/trunk@1810 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-04 Howard Butler - * source/headers/geos/version.h.vc: bump patch to rc1 git-svn-id: http://svn.osgeo.org/geos/trunk@1809 + * source/headers/geos/version.h.vc: bump patch to rc1 git-svn-id: + http://svn.osgeo.org/geos/trunk@1809 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-04 Howard Butler - * source/Makefile.vc: give makefile.vc some love git-svn-id: http://svn.osgeo.org/geos/trunk@1808 + * source/Makefile.vc: give makefile.vc some love git-svn-id: + http://svn.osgeo.org/geos/trunk@1808 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-04 Charlie Savage * swig/geos.i, swig/python/geos.py, swig/python/geos_wrap.cxx, swig/ruby/geos_wrap.cxx: Updated SWIG bindings to expose the - equalsExact and normalize methods. git-svn-id: http://svn.osgeo.org/geos/trunk@1807 + equalsExact and normalize methods. git-svn-id: + http://svn.osgeo.org/geos/trunk@1807 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage * source/headers/geos/platform.h.in, source/headers/geos/timeval.h: Two changes needed to include the correct definitions for compiling - geos using MingW/msys on Windows. git-svn-id: http://svn.osgeo.org/geos/trunk@1806 + geos using MingW/msys on Windows. git-svn-id: + http://svn.osgeo.org/geos/trunk@1806 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Sandro Santilli - * ChangeLog: try to keep text within 80 cols git-svn-id: http://svn.osgeo.org/geos/trunk@1805 + * ChangeLog: try to keep text within 80 cols git-svn-id: + http://svn.osgeo.org/geos/trunk@1805 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage - * configure.in: Changed configure.in to use *nix line feeds. git-svn-id: http://svn.osgeo.org/geos/trunk@1804 + * configure.in: Changed configure.in to use *nix line feeds. + git-svn-id: http://svn.osgeo.org/geos/trunk@1804 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_c.h.vc: Mistakenly - used Geometry* in C api headers instead of GEOSGeom. git-svn-id: http://svn.osgeo.org/geos/trunk@1803 + used Geometry* in C api headers instead of GEOSGeom. git-svn-id: + http://svn.osgeo.org/geos/trunk@1803 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage * configure.in: Removed native line endings for configure.in since - CR/LF does not work on Windows under msys. git-svn-id: http://svn.osgeo.org/geos/trunk@1802 + CR/LF does not work on Windows under msys. git-svn-id: + http://svn.osgeo.org/geos/trunk@1802 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage @@ -18204,8 +23598,7 @@ Added equalsExact and normalize to the c api as discussed on the mailing list - (http://geos.refractions.net/pipermail/geos-devel/2006-July/002452.html).git-svn-id: http://svn.osgeo.org/geos/trunk@1801 - 5242fede-7e19-0410-aef8-94bd7d2200fb + (http://geos.refractions.net/pipermail/geos-devel/2006-July/002452.html). git-svn-id: http://svn.osgeo.org/geos/trunk@1801 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage @@ -18217,56 +23610,118 @@ 2006-08-03 Mateusz Loskot - * ChangeLog, tests/unit/geos_unit.cpp: Fixed Bug #90 git-svn-id: http://svn.osgeo.org/geos/trunk@1799 + * ChangeLog, tests/unit/geos_unit.cpp: Fixed Bug #90 git-svn-id: + http://svn.osgeo.org/geos/trunk@1799 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-08-03 Charlie Savage * swig/python/geos.py, swig/python/geos_wrap.cxx, swig/ruby/geos_wrap.cxx: Added SWIG generated wrapper files for Ruby - and Python git-svn-id: http://svn.osgeo.org/geos/trunk@1798 + and Python git-svn-id: http://svn.osgeo.org/geos/trunk@1798 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-27 Mateusz Loskot * : Added svn:ignore property to ignore 'geos-3.0.0rc1' dir (testing - commit access to SVN). git-svn-id: http://svn.osgeo.org/geos/trunk@1797 + commit access to SVN). git-svn-id: + http://svn.osgeo.org/geos/trunk@1797 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-26 Sandro Santilli - * ChangeLog, capi/Makefile.am, tests/xmltester/XMLTester.cpp: * capi/Makefile.am: forced link of geostest against stdc++ lib * tests/xmltester/XMLTester.cpp: added include (for fabs - use) git-svn-id: http://svn.osgeo.org/geos/trunk@1794 + * .cvsignore, capi/.cvsignore, doc/.cvsignore, macros/.cvsignore, + source/.cvsignore, source/algorithm/.cvsignore, + source/examples/.cvsignore, source/geom/.cvsignore, + source/geom/util/.cvsignore, source/geomgraph/.cvsignore, + source/geomgraph/index/.cvsignore, source/headers/.cvsignore, + source/headers/geos/.cvsignore, + source/headers/geos/algorithm/.cvsignore, + source/headers/geos/geom/.cvsignore, + source/headers/geos/geom/util/.cvsignore, + source/headers/geos/geomgraph/.cvsignore, + source/headers/geos/geomgraph/index/.cvsignore, + source/headers/geos/index/.cvsignore, + source/headers/geos/index/bintree/.cvsignore, + source/headers/geos/index/chain/.cvsignore, + source/headers/geos/index/quadtree/.cvsignore, + source/headers/geos/index/strtree/.cvsignore, + source/headers/geos/index/sweepline/.cvsignore, + source/headers/geos/io/.cvsignore, + source/headers/geos/noding/.cvsignore, + source/headers/geos/noding/snapround/.cvsignore, + source/headers/geos/operation/.cvsignore, + source/headers/geos/operation/buffer/.cvsignore, + source/headers/geos/operation/distance/.cvsignore, + source/headers/geos/operation/linemerge/.cvsignore, + source/headers/geos/operation/overlay/.cvsignore, + source/headers/geos/operation/polygonize/.cvsignore, + source/headers/geos/operation/predicate/.cvsignore, + source/headers/geos/operation/relate/.cvsignore, + source/headers/geos/operation/valid/.cvsignore, + source/headers/geos/planargraph/.cvsignore, + source/headers/geos/planargraph/algorithm/.cvsignore, + source/headers/geos/precision/.cvsignore, + source/headers/geos/simplify/.cvsignore, + source/headers/geos/util/.cvsignore, source/index/.cvsignore, + source/index/bintree/.cvsignore, source/index/chain/.cvsignore, + source/index/quadtree/.cvsignore, source/index/strtree/.cvsignore, + source/index/sweepline/.cvsignore, source/io/.cvsignore, + source/noding/.cvsignore, source/noding/snapround/.cvsignore, + source/operation/.cvsignore, source/operation/buffer/.cvsignore, + source/operation/distance/.cvsignore, + source/operation/linemerge/.cvsignore, + source/operation/overlay/.cvsignore, + source/operation/polygonize/.cvsignore, + source/operation/predicate/.cvsignore, + source/operation/relate/.cvsignore, + source/operation/valid/.cvsignore, source/planargraph/.cvsignore, + source/precision/.cvsignore, source/simplify/.cvsignore, + source/util/.cvsignore, swig/.cvsignore, swig/python/.cvsignore, + swig/python/tests/.cvsignore, swig/ruby/.cvsignore, + swig/ruby/test/.cvsignore, tests/.cvsignore, + tests/bigtest/.cvsignore, tests/tut/.cvsignore, + tests/unit/.cvsignore, tests/xmltester/.cvsignore, tools/.cvsignore: + Removed .cvsignore files from repository git-svn-id: + http://svn.osgeo.org/geos/trunk@1795 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-26 Sandro Santilli - * ChangeLog, source/headers/geos/geom/BinaryOp.h: Added geometry snapping heuristic git-svn-id: http://svn.osgeo.org/geos/trunk@1776 + * ChangeLog, capi/Makefile.am, tests/xmltester/XMLTester.cpp: * capi/Makefile.am: forced link of geostest against stdc++ lib * + tests/xmltester/XMLTester.cpp: added include (for fabs use) + git-svn-id: http://svn.osgeo.org/geos/trunk@1794 5242fede-7e19-0410-aef8-94bd7d2200fb +2006-07-26 Sandro Santilli + + * ChangeLog, source/headers/geos/geom/BinaryOp.h: Added geometry snapping heuristic git-svn-id: + http://svn.osgeo.org/geos/trunk@1776 + 5242fede-7e19-0410-aef8-94bd7d2200fb + 2006-07-25 Sandro Santilli - * ChangeLog, autogen.sh: Made autogen.sh errors more visible git-svn-id: http://svn.osgeo.org/geos/trunk@1775 + * ChangeLog, autogen.sh: Made autogen.sh errors more visible + git-svn-id: http://svn.osgeo.org/geos/trunk@1775 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Charlie Savage * NEWS: Added note about inclusion of version.in.vc. See - http://geos.refractions.net/pipermail/geos-devel/2006-July/002463.html for more info.git-svn-id: http://svn.osgeo.org/geos/trunk@1773 - 5242fede-7e19-0410-aef8-94bd7d2200fb + http://geos.refractions.net/pipermail/geos-devel/2006-July/002463.html for more info. git-svn-id: http://svn.osgeo.org/geos/trunk@1773 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli * ChangeLog, tests/unit/Makefile.am, tests/unit/precision/GeometrySnapperTest.cpp: Added test for - GeometrySnapper git-svn-id: http://svn.osgeo.org/geos/trunk@1772 + GeometrySnapper git-svn-id: http://svn.osgeo.org/geos/trunk@1772 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli * source/precision/LineStringSnapper.cpp: Fixed preprocessor - directive use git-svn-id: http://svn.osgeo.org/geos/trunk@1771 + directive use git-svn-id: http://svn.osgeo.org/geos/trunk@1771 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli @@ -18279,26 +23734,29 @@ source/precision/Makefile.am, tests/unit/Makefile.am, tests/unit/precision/LineStringSnapperTest.cpp: Added new precision::LineStringSnapper class + test and - precision::GeometrySnapper (w/out test) git-svn-id: http://svn.osgeo.org/geos/trunk@1770 + precision::GeometrySnapper (w/out test) git-svn-id: + http://svn.osgeo.org/geos/trunk@1770 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli * ChangeLog, source/headers/geos/geom/CoordinateList.h: added - operator<< for CoordinateList class git-svn-id: http://svn.osgeo.org/geos/trunk@1769 + operator<< for CoordinateList class git-svn-id: + http://svn.osgeo.org/geos/trunk@1769 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli * ChangeLog, tests/unit/geom/LineSegmentTest.cpp: Added another - distance() test git-svn-id: http://svn.osgeo.org/geos/trunk@1768 + distance() test git-svn-id: http://svn.osgeo.org/geos/trunk@1768 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Mateusz Loskot * ChangeLog, source/headers/geos/geom.h, source/headers/geos/io.h: Wrapped FIXME message with #warning directive to shout about - potential headers removal in future. git-svn-id: http://svn.osgeo.org/geos/trunk@1767 + potential headers removal in future. git-svn-id: + http://svn.osgeo.org/geos/trunk@1767 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli @@ -18307,82 +23765,94 @@ source/headers/geos/geom/Makefile.am, tests/unit/Makefile.am, tests/unit/geom/CoordinateListTest.cpp: CoordinateList class re-introduced, for list-based ops (not strictly mapped to JTS - version, not yet at least) git-svn-id: http://svn.osgeo.org/geos/trunk@1766 + version, not yet at least) git-svn-id: + http://svn.osgeo.org/geos/trunk@1766 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli - * source/headers/geos/geom/LineSegment.h: Fixed typo in comment git-svn-id: http://svn.osgeo.org/geos/trunk@1765 + * source/headers/geos/geom/LineSegment.h: Fixed typo in comment + git-svn-id: http://svn.osgeo.org/geos/trunk@1765 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-21 Sandro Santilli * swig/ruby/test/Makefile.am: Removed blank space after backslash - (automake complained) git-svn-id: http://svn.osgeo.org/geos/trunk@1764 + (automake complained) git-svn-id: + http://svn.osgeo.org/geos/trunk@1764 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-19 Charlie Savage * source/headers/geos/Makefile.am: Added veresion.h.vc as EXTRA_DIST - to ensure it is packaged when doing make dist. git-svn-id: http://svn.osgeo.org/geos/trunk@1763 + to ensure it is packaged when doing make dist. git-svn-id: + http://svn.osgeo.org/geos/trunk@1763 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-15 Charlie Savage * configure.in: Removed python test/cases directory (tests are now - just in tests directory). git-svn-id: http://svn.osgeo.org/geos/trunk@1762 + just in tests directory). git-svn-id: + http://svn.osgeo.org/geos/trunk@1762 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * ChangeLog: Updated ChangeLog to note additional SWIG tests and - integration with the GEOS build system. git-svn-id: http://svn.osgeo.org/geos/trunk@1761 + integration with the GEOS build system. git-svn-id: + http://svn.osgeo.org/geos/trunk@1761 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * capi/geos_c.h.vc: Updated version number to 3.0.0rc1-CAPI-1.1.1 to - match the autoconf generated files. git-svn-id: http://svn.osgeo.org/geos/trunk@1760 + match the autoconf generated files. git-svn-id: + http://svn.osgeo.org/geos/trunk@1760 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage - * swig/ruby/test/Makefile.am: Fixed spelling mistake in test task. git-svn-id: http://svn.osgeo.org/geos/trunk@1759 + * swig/ruby/test/Makefile.am: Fixed spelling mistake in test task. + git-svn-id: http://svn.osgeo.org/geos/trunk@1759 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/Makefile.am: Removed dependency on README.txt since it has - been removed. git-svn-id: http://svn.osgeo.org/geos/trunk@1758 + been removed. git-svn-id: http://svn.osgeo.org/geos/trunk@1758 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage - * swig/ruby/test/test_buffer.rb: New tests for the buffer operation. git-svn-id: http://svn.osgeo.org/geos/trunk@1757 + * swig/ruby/test/test_buffer.rb: New tests for the buffer operation. + git-svn-id: http://svn.osgeo.org/geos/trunk@1757 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * configure.in: Added SWIG Python and Ruby bindings back into the - main GEOS build system. git-svn-id: http://svn.osgeo.org/geos/trunk@1756 + main GEOS build system. git-svn-id: + http://svn.osgeo.org/geos/trunk@1756 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/tests/Makefile.am, swig/ruby/test/Makefile.am: Updated - extra_dist for test directories. git-svn-id: http://svn.osgeo.org/geos/trunk@1755 + extra_dist for test directories. git-svn-id: + http://svn.osgeo.org/geos/trunk@1755 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/tests/Makefile.am: Remove the dependency on the cases - subdirectory which is no longer needed. git-svn-id: http://svn.osgeo.org/geos/trunk@1754 + subdirectory which is no longer needed. git-svn-id: + http://svn.osgeo.org/geos/trunk@1754 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/tests/runtests.py: Updated test suite to use the - correct tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1753 + correct tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1753 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage @@ -18393,13 +23863,15 @@ swig/python/tests/cases/pointtest.py, swig/python/tests/cases/testing.py, swig/python/tests/cases/wkttest.py: Removed old tests cases which - are no longer valid (worked using the C++ api). git-svn-id: http://svn.osgeo.org/geos/trunk@1752 + are no longer valid (worked using the C++ api). git-svn-id: + http://svn.osgeo.org/geos/trunk@1752 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/tests/test_geometry.py: New Python test case to ensure - creating coordinate sequences and geometries works correctly. git-svn-id: http://svn.osgeo.org/geos/trunk@1751 + creating coordinate sequences and geometries works correctly. + git-svn-id: http://svn.osgeo.org/geos/trunk@1751 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage @@ -18407,131 +23879,144 @@ * swig/README.txt, swig/python/Makefile.am, swig/python/README.txt, swig/ruby/Makefile.am, swig/ruby/README.txt: Removed README.txt files which are no longer applicable now that the SWIG bindings have - been intergrated into the GEOS build system. git-svn-id: http://svn.osgeo.org/geos/trunk@1750 + been intergrated into the GEOS build system. git-svn-id: + http://svn.osgeo.org/geos/trunk@1750 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage - * swig/ruby/test/test_geometry.rb: Renamed test class. git-svn-id: http://svn.osgeo.org/geos/trunk@1749 + * swig/ruby/test/test_geometry.rb: Renamed test class. git-svn-id: + http://svn.osgeo.org/geos/trunk@1749 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage - * swig/python/Makefile.am: Removed old, unused code. git-svn-id: http://svn.osgeo.org/geos/trunk@1748 + * swig/python/Makefile.am: Removed old, unused code. git-svn-id: + http://svn.osgeo.org/geos/trunk@1748 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/python.i: Added tyepmap to support creating polygons - with holes. git-svn-id: http://svn.osgeo.org/geos/trunk@1747 + with holes. git-svn-id: http://svn.osgeo.org/geos/trunk@1747 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/geos.i: Added default value for quadsegs parmeter in buffer - operation. git-svn-id: http://svn.osgeo.org/geos/trunk@1746 + operation. git-svn-id: http://svn.osgeo.org/geos/trunk@1746 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/tests/example.py: Manually moved from parent - directory. git-svn-id: http://svn.osgeo.org/geos/trunk@1745 + directory. git-svn-id: http://svn.osgeo.org/geos/trunk@1745 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/Makefile.am: Updated EXTRA_DIST to include python.i - and geos.pth git-svn-id: http://svn.osgeo.org/geos/trunk@1744 + and geos.pth git-svn-id: http://svn.osgeo.org/geos/trunk@1744 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage - * swig/python/example.py: Moved file to tests subdirectory. git-svn-id: http://svn.osgeo.org/geos/trunk@1743 + * swig/python/example.py: Moved file to tests subdirectory. + git-svn-id: http://svn.osgeo.org/geos/trunk@1743 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/python/setup.py: Installation is now done by autoconf macros - instead of setup.py git-svn-id: http://svn.osgeo.org/geos/trunk@1742 + instead of setup.py git-svn-id: + http://svn.osgeo.org/geos/trunk@1742 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/geos.i, swig/python/python.i, swig/ruby/ruby.i: Cleaned up ruby.i, added licenxe to python.i, commented back in python.i into - geos.i. git-svn-id: http://svn.osgeo.org/geos/trunk@1741 + geos.i. git-svn-id: http://svn.osgeo.org/geos/trunk@1741 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage - * swig/ruby/test/test_helper.rb: Added code to read xml test cases. git-svn-id: http://svn.osgeo.org/geos/trunk@1740 + * swig/ruby/test/test_helper.rb: Added code to read xml test cases. + git-svn-id: http://svn.osgeo.org/geos/trunk@1740 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * swig/geos.i: Added exception handling for results that return geometries. Added normalize and equalsExact, but for the moment - they are commented out. git-svn-id: http://svn.osgeo.org/geos/trunk@1739 + they are commented out. git-svn-id: + http://svn.osgeo.org/geos/trunk@1739 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-13 Charlie Savage * tests/xmltester/XMLTester.cpp: Changes to compile on VC++ - fully - qualified polygon name. Should also work on MingW, will test next. git-svn-id: http://svn.osgeo.org/geos/trunk@1738 + qualified polygon name. Should also work on MingW, will test next. + git-svn-id: http://svn.osgeo.org/geos/trunk@1738 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/test/geos_tests.rb: Disabled test_combinations.rb for - the moment since it fails. git-svn-id: http://svn.osgeo.org/geos/trunk@1737 + the moment since it fails. git-svn-id: + http://svn.osgeo.org/geos/trunk@1737 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/geos.i: Fixed serious bug in geom_to_hex and geom_to_wkb type - maps. Was using temporary variable instead of passed in variable. git-svn-id: http://svn.osgeo.org/geos/trunk@1736 + maps. Was using temporary variable instead of passed in variable. + git-svn-id: http://svn.osgeo.org/geos/trunk@1736 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * capi/geos_c.h.vc: Switched GeosBytesOrder to int in api - signatures. git-svn-id: http://svn.osgeo.org/geos/trunk@1735 + signatures. git-svn-id: http://svn.osgeo.org/geos/trunk@1735 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/geos.i: A number of changes to fix warning generated by gcc - and to make sure the bindings compile for Python. git-svn-id: http://svn.osgeo.org/geos/trunk@1734 + and to make sure the bindings compile for Python. git-svn-id: + http://svn.osgeo.org/geos/trunk@1734 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/python/Makefile.am: Updated Python SWIG makefile to build - with the c api. git-svn-id: http://svn.osgeo.org/geos/trunk@1733 + with the c api. git-svn-id: http://svn.osgeo.org/geos/trunk@1733 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/ruby.i: Minor change to fix gcc warning. git-svn-id: http://svn.osgeo.org/geos/trunk@1732 + * swig/ruby/ruby.i: Minor change to fix gcc warning. git-svn-id: + http://svn.osgeo.org/geos/trunk@1732 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/Makefile.am: Updated Ruby SWIG makefile to build with - the c api. git-svn-id: http://svn.osgeo.org/geos/trunk@1731 + the c api. git-svn-id: http://svn.osgeo.org/geos/trunk@1731 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * capi/geos_c.cpp, capi/geos_c.h.in, capi/geos_c.h.vc: Fixed an error in the way GEOSByteOrder was declared. It is now an enum in - geos_c.h git-svn-id: http://svn.osgeo.org/geos/trunk@1730 + geos_c.h git-svn-id: http://svn.osgeo.org/geos/trunk@1730 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/geos.i: Added %rename directive so that GeomUnion is exposed - as union is SWIG languages. git-svn-id: http://svn.osgeo.org/geos/trunk@1729 + as union is SWIG languages. git-svn-id: + http://svn.osgeo.org/geos/trunk@1729 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage @@ -18540,26 +24025,28 @@ swig/ruby/test/test_combinations.rb, swig/ruby/test/test_operations.rb: Updated tests for combinatins (union, intersection, etc.) and operaptions (buffer, centroid, - etc.). git-svn-id: http://svn.osgeo.org/geos/trunk@1728 + etc.). git-svn-id: http://svn.osgeo.org/geos/trunk@1728 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/test/test_simple.rb: These tests are no longer needed. git-svn-id: http://svn.osgeo.org/geos/trunk@1727 + * swig/ruby/test/test_simple.rb: These tests are no longer needed. + git-svn-id: http://svn.osgeo.org/geos/trunk@1727 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/test/geos_tests.rb, swig/ruby/test/test_helper.rb, swig/ruby/test/test_relations.rb: Ported old tests for relations, - such as intersects, touches, etc., to new swig bindings. git-svn-id: http://svn.osgeo.org/geos/trunk@1726 + such as intersects, touches, etc., to new swig bindings. + git-svn-id: http://svn.osgeo.org/geos/trunk@1726 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/ruby.i: Added type map needed to create polygons with holes. Unfortunately, this is Ruby specific. It needs to be ported - to Python next. git-svn-id: http://svn.osgeo.org/geos/trunk@1725 + to Python next. git-svn-id: http://svn.osgeo.org/geos/trunk@1725 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage @@ -18567,75 +24054,94 @@ * swig/geos.i: Removed wrapper classes and replace them with SWIG "fake" classes. This makes the interface cleaner, and makes memory management much easier. Also added area, dimension, length, - getExteriorRing, getInteriorRingN methods. git-svn-id: http://svn.osgeo.org/geos/trunk@1724 + getExteriorRing, getInteriorRingN methods. git-svn-id: + http://svn.osgeo.org/geos/trunk@1724 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/test/test_srid.rb: Added test to read from wkb geometry - - currently fails, needs more investigation. git-svn-id: http://svn.osgeo.org/geos/trunk@1723 + - currently fails, needs more investigation. git-svn-id: + http://svn.osgeo.org/geos/trunk@1723 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/test/test_io.rb: Added tests for invalid geometries. git-svn-id: http://svn.osgeo.org/geos/trunk@1722 + * swig/ruby/test/test_io.rb: Added tests for invalid geometries. + git-svn-id: http://svn.osgeo.org/geos/trunk@1722 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/test/geos_tests.rb: Updated ruby test suite. git-svn-id: http://svn.osgeo.org/geos/trunk@1721 + * swig/ruby/test/geos_tests.rb: Updated ruby test suite. + git-svn-id: http://svn.osgeo.org/geos/trunk@1721 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/test/test_geometry.rb: New tests for area, length, - distance. git-svn-id: http://svn.osgeo.org/geos/trunk@1720 + distance. git-svn-id: http://svn.osgeo.org/geos/trunk@1720 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2006-07-12 Charlie Savage + + * : Converted line feeds to Unix style. git-svn-id: + http://svn.osgeo.org/geos/trunk@1719 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * : Converted line feeds to Unix style. git-svn-id: http://svn.osgeo.org/geos/trunk@1719 + * swig/ruby/test/test_geometry.rb: New tests for creating geometries + and calling various functions such as numGeometries, isValid, etc. + git-svn-id: http://svn.osgeo.org/geos/trunk@1718 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/test/test_srid.rb: Tests for srid handling. git-svn-id: http://svn.osgeo.org/geos/trunk@1717 + * swig/ruby/test/test_srid.rb: Tests for srid handling. + git-svn-id: http://svn.osgeo.org/geos/trunk@1717 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/test/test_io.rb: Merged tests from test_wkb_reader.rb git-svn-id: http://svn.osgeo.org/geos/trunk@1716 + * swig/ruby/test/test_io.rb: Merged tests from test_wkb_reader.rb + git-svn-id: http://svn.osgeo.org/geos/trunk@1716 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage - * swig/ruby/test/test_wkb_reader.rb: Merging into test_io.rb git-svn-id: http://svn.osgeo.org/geos/trunk@1715 + * swig/ruby/test/test_wkb_reader.rb: Merging into test_io.rb + git-svn-id: http://svn.osgeo.org/geos/trunk@1715 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-12 Charlie Savage * swig/ruby/test/test_version.rb: Tests to verify returned version - numbers from C api. git-svn-id: http://svn.osgeo.org/geos/trunk@1714 + numbers from C api. git-svn-id: + http://svn.osgeo.org/geos/trunk@1714 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * swig/geos.i: Fixes for coordinate sequences. Fixed bug in range checking, chaned clone to be a method instead of copy constructor, - marked clone as creating a new object. git-svn-id: http://svn.osgeo.org/geos/trunk@1713 + marked clone as creating a new object. git-svn-id: + http://svn.osgeo.org/geos/trunk@1713 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * swig/ruby/test/test_coordinate_sequence.rb: Tests for SWIG - coordinate sequence class. git-svn-id: http://svn.osgeo.org/geos/trunk@1712 + coordinate sequence class. git-svn-id: + http://svn.osgeo.org/geos/trunk@1712 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * capi/geos_c.h.in, capi/geos_c.h.vc: Added reference to new enum called GEOSByteOrders. The enum has two values, GEOS_WKB_NDR and - GEOS_WKB_XDR which signify big endian and little endian byte orders. git-svn-id: http://svn.osgeo.org/geos/trunk@1711 + GEOS_WKB_XDR which signify big endian and little endian byte orders. + git-svn-id: http://svn.osgeo.org/geos/trunk@1711 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage @@ -18643,77 +24149,86 @@ * capi/geos_c.h.in, capi/geos_c.h.vc: Added 5 methods to the C API as documented in the changelong. The new methods are read/write WKB Hex values, read/write WKB byte order and read wkb output - dimensions. git-svn-id: http://svn.osgeo.org/geos/trunk@1710 + dimensions. git-svn-id: http://svn.osgeo.org/geos/trunk@1710 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * swig/ruby/test/test_wkb_reader.rb: Test cases for reading and writing geometries to WKT, WKB and hex encoded WKB formats via the - SWIG bindings. git-svn-id: http://svn.osgeo.org/geos/trunk@1709 + SWIG bindings. git-svn-id: http://svn.osgeo.org/geos/trunk@1709 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * capi/geos_c.h.vc: Updated visual studio header file to match - geos_c.h.in git-svn-id: http://svn.osgeo.org/geos/trunk@1708 + geos_c.h.in git-svn-id: http://svn.osgeo.org/geos/trunk@1708 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * capi/geos_c.cpp: Added 5 methods to the C API as documented in the changelong. The new methods are read/write WKB Hex values, - read/write WKB byte order and read wkb output dimensions. git-svn-id: http://svn.osgeo.org/geos/trunk@1707 + read/write WKB byte order and read wkb output dimensions. + git-svn-id: http://svn.osgeo.org/geos/trunk@1707 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage * ChangeLog: Noted additions to the C API and porting of SWIG to use - the C api. git-svn-id: http://svn.osgeo.org/geos/trunk@1706 + the C api. git-svn-id: http://svn.osgeo.org/geos/trunk@1706 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-11 Charlie Savage - * swig/geos.i, swig/ruby/ruby.i: Ported SWIG bindings to use c-api. git-svn-id: http://svn.osgeo.org/geos/trunk@1705 + * swig/geos.i, swig/ruby/ruby.i: Ported SWIG bindings to use c-api. + git-svn-id: http://svn.osgeo.org/geos/trunk@1705 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-10 Sandro Santilli - * tests/tut/.cvsignore: Added .cvsignore file git-svn-id: http://svn.osgeo.org/geos/trunk@1704 + * tests/tut/.cvsignore: Added .cvsignore file git-svn-id: + http://svn.osgeo.org/geos/trunk@1704 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-10 Sandro Santilli * ChangeLog, capi/geos_c.cpp: don't use dynamic strings as format - arg the formatted message callbacks. git-svn-id: http://svn.osgeo.org/geos/trunk@1703 + arg the formatted message callbacks. git-svn-id: + http://svn.osgeo.org/geos/trunk@1703 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-10 Sandro Santilli * ChangeLog, source/headers/geos/simplify/DouglasPeuckerLineSimplifier.h: changed - vector to vector (see bug#101) git-svn-id: http://svn.osgeo.org/geos/trunk@1702 + vector to vector (see bug#101) git-svn-id: + http://svn.osgeo.org/geos/trunk@1702 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-09 Mateusz Loskot * tests/xmltester/.cvsignore: Added 'testrunner' pattern to - tests/xmltester/.cvsignore. git-svn-id: http://svn.osgeo.org/geos/trunk@1701 + tests/xmltester/.cvsignore. git-svn-id: + http://svn.osgeo.org/geos/trunk@1701 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-09 Mateusz Loskot - * .cvsignore: Added 'testrunner' to .cvsignore patterns. git-svn-id: http://svn.osgeo.org/geos/trunk@1700 + * .cvsignore: Added 'testrunner' to .cvsignore patterns. + git-svn-id: http://svn.osgeo.org/geos/trunk@1700 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-09 Mateusz Loskot - * ChangeLog: Updated ChangeLog with details about new unit tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1699 + * ChangeLog: Updated ChangeLog with details about new unit tests. + git-svn-id: http://svn.osgeo.org/geos/trunk@1699 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-09 Mateusz Loskot - * tests/unit/Makefile.am: Added new tests to tests/unit/Makefile.am. git-svn-id: http://svn.osgeo.org/geos/trunk@1698 + * tests/unit/Makefile.am: Added new tests to tests/unit/Makefile.am. + git-svn-id: http://svn.osgeo.org/geos/trunk@1698 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-09 Mateusz Loskot @@ -18721,13 +24236,15 @@ * tests/unit/noding/SegmentNodeTest.cpp, tests/unit/noding/SegmentPointComparatorTest.cpp, tests/unit/noding/SegmentStringTest.cpp: Added new tests cases to - tests/unit/noding. Removed zero-to-pointer casts. git-svn-id: http://svn.osgeo.org/geos/trunk@1697 + tests/unit/noding. Removed zero-to-pointer casts. git-svn-id: + http://svn.osgeo.org/geos/trunk@1697 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-09 Sandro Santilli * tests/xmltester/Makefile.am: Added testrunner to CLEANFILES. make - distcheck now succeeds. git-svn-id: http://svn.osgeo.org/geos/trunk@1696 + distcheck now succeeds. git-svn-id: + http://svn.osgeo.org/geos/trunk@1696 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-08 Sandro Santilli @@ -18739,95 +24256,119 @@ source/headers/geos/geom/GeometryFactory.inl, source/headers/geos/geomgraph/EdgeRing.h, source/headers/geos/platform.h.in: * configure.in: incremented CAPI minor version, to avoid - falling behind any future version from the 2.2. branch. * source/geom/Geometry.cpp, source/geom/GeometryFactory.cpp, source/geomgraph/EdgeRing.cpp, source/headers/geos/geom/Geometry.h, source/headers/geos/geom/GeometryFactory.h, source/headers/geos/geom/GeometryFactory.inl, source/headers/geos/geomgraph/EdgeRing.h: updated doxygen comments (sync with JTS head). * source/headers/geos/platform.h.in: include rather then git-svn-id: http://svn.osgeo.org/geos/trunk@1693 - 5242fede-7e19-0410-aef8-94bd7d2200fb + falling behind any future version from the 2.2. branch. + * source/geom/Geometry.cpp, source/geom/GeometryFactory.cpp, + source/geomgraph/EdgeRing.cpp, + source/headers/geos/geom/Geometry.h, + source/headers/geos/geom/GeometryFactory.h, + source/headers/geos/geom/GeometryFactory.inl, + source/headers/geos/geomgraph/EdgeRing.h: updated + doxygen comments (sync with JTS head). * + source/headers/geos/platform.h.in: include + rather then git-svn-id: + http://svn.osgeo.org/geos/trunk@1693 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-07 Mateusz Loskot * ChangeLog: Updated ChangeLog with version comparison fix in - GEOS_UNIT. git-svn-id: http://svn.osgeo.org/geos/trunk@1691 + GEOS_UNIT. git-svn-id: http://svn.osgeo.org/geos/trunk@1691 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-07 Mateusz Loskot - * macros/geos.m4: Fixed versions comparison in the GEOS_UNIT macro. git-svn-id: http://svn.osgeo.org/geos/trunk@1690 + * macros/geos.m4: Fixed versions comparison in the GEOS_UNIT macro. + git-svn-id: http://svn.osgeo.org/geos/trunk@1690 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-07 Sandro Santilli - * ChangeLog, acsite.m4, configure.in: * acsite.m4: include rather then (the latter is not available on Solaris 9) * configure.in: make sure CFLAGS is set before compiling using the 64bit integer detection macro. git-svn-id: http://svn.osgeo.org/geos/trunk@1689 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, acsite.m4, configure.in: * acsite.m4: include rather then + (the latter is not available on Solaris 9) * + configure.in: make sure CFLAGS is set before compiling + using the 64bit integer detection macro. git-svn-id: + http://svn.osgeo.org/geos/trunk@1689 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-06 Mateusz Loskot * ChangeLog, macros/geos.m4: Fixed version query regexp with escaped - dots. Removed -lpq from GEOS_LIBS flags. git-svn-id: http://svn.osgeo.org/geos/trunk@1688 + dots. Removed -lpq from GEOS_LIBS flags. git-svn-id: + http://svn.osgeo.org/geos/trunk@1688 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Mateusz Loskot * ChangeLog, macros/geos.m4: Removed redundant -L and -I from - GEOS_LIBS and GEOS_CFLAGS. git-svn-id: http://svn.osgeo.org/geos/trunk@1687 + GEOS_LIBS and GEOS_CFLAGS. git-svn-id: + http://svn.osgeo.org/geos/trunk@1687 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Mateusz Loskot * ChangeLog, macros/geos.m4: Fixed GEOS_INIT to support full paths - to geos-config passed to --with-geos. Fixed version decoding. git-svn-id: http://svn.osgeo.org/geos/trunk@1686 + to geos-config passed to --with-geos. Fixed version decoding. + git-svn-id: http://svn.osgeo.org/geos/trunk@1686 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli - * ChangeLog, tests/unit/Makefile.am: distribute utility.h git-svn-id: http://svn.osgeo.org/geos/trunk@1685 + * ChangeLog, tests/unit/Makefile.am: distribute utility.h + git-svn-id: http://svn.osgeo.org/geos/trunk@1685 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli * ChangeLog, configure.in, tests/Makefile.am, tests/tut/Makefile.am: - distribute the TUT framework. git-svn-id: http://svn.osgeo.org/geos/trunk@1684 + distribute the TUT framework. git-svn-id: + http://svn.osgeo.org/geos/trunk@1684 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am: Distribute XML tests and - tester. git-svn-id: http://svn.osgeo.org/geos/trunk@1683 + tester. git-svn-id: http://svn.osgeo.org/geos/trunk@1683 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli * ChangeLog, source/operation/valid/Makefile.am: Fixed missing - SweeplineNestedRingTester.cpp file. git-svn-id: http://svn.osgeo.org/geos/trunk@1682 + SweeplineNestedRingTester.cpp file. git-svn-id: + http://svn.osgeo.org/geos/trunk@1682 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli * ChangeLog, source/headers/geos/operation/linemerge/Makefile.am: - Fixed missing backslash, dropping headers from distribution. git-svn-id: http://svn.osgeo.org/geos/trunk@1681 + Fixed missing backslash, dropping headers from distribution. + git-svn-id: http://svn.osgeo.org/geos/trunk@1681 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1680 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1680 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-07-05 Sandro Santilli * ChangeLog, source/headers/geos/operation/overlay/OverlayOp.h, source/operation/overlay/OverlayOp.cpp: added checks for obviously - wrong result of difference and intersection ops git-svn-id: http://svn.osgeo.org/geos/trunk@1679 + wrong result of difference and intersection ops git-svn-id: + http://svn.osgeo.org/geos/trunk@1679 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-27 Sandro Santilli * ChangeLog, source/algorithm/HCoordinate.cpp: * source/algorithm/HCoordinate.cpp: added support for MingW -ansi - builds. git-svn-id: http://svn.osgeo.org/geos/trunk@1677 + builds. git-svn-id: http://svn.osgeo.org/geos/trunk@1677 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-27 Sandro Santilli * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in: * capi/geos_c.cpp: fixed forward declaration of - GEOSCoordSeq_getOrdinate. * capi/geos_c.h.in: renamed GEOSGeomTypeId enum to GEOSGeomTypes, to - make VC++ 2005 happy. git-svn-id: http://svn.osgeo.org/geos/trunk@1676 + GEOSCoordSeq_getOrdinate. * capi/geos_c.h.in: renamed GEOSGeomTypeId + enum to GEOSGeomTypes, to make VC++ 2005 happy. git-svn-id: + http://svn.osgeo.org/geos/trunk@1676 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-19 Sandro Santilli @@ -18837,19 +24378,21 @@ source/headers/geos/util/CoordinateArrayFilter.h, source/headers/geos/util/UniqueCoordinateArrayFilter.h, source/noding/ScaledNoder.cpp: Don't *require* CoordinateFilters to - define both read-only and read-write methods. git-svn-id: http://svn.osgeo.org/geos/trunk@1675 + define both read-only and read-write methods. git-svn-id: + http://svn.osgeo.org/geos/trunk@1675 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-19 Sandro Santilli - * ChangeLog, source/geom/Polygon.cpp: optimized loops git-svn-id: http://svn.osgeo.org/geos/trunk@1674 + * ChangeLog, source/geom/Polygon.cpp: optimized loops git-svn-id: + http://svn.osgeo.org/geos/trunk@1674 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-19 Sandro Santilli * ChangeLog, source/geom/util/GeometryTransformer.cpp, source/headers/geos/geom/util/GeometryTransformer.h: updated port - info git-svn-id: http://svn.osgeo.org/geos/trunk@1673 + info git-svn-id: http://svn.osgeo.org/geos/trunk@1673 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-19 Sandro Santilli @@ -18857,13 +24400,14 @@ * ChangeLog, source/geom/GeometryFactory.cpp, source/headers/geos/geom/GeometryFactory.h, source/headers/geos/geom/GeometryFactory.inl: port info and doxygen - dox. git-svn-id: http://svn.osgeo.org/geos/trunk@1672 + dox. git-svn-id: http://svn.osgeo.org/geos/trunk@1672 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-19 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp: parseCase(): make sure - to exit the tag before returning git-svn-id: http://svn.osgeo.org/geos/trunk@1671 + to exit the tag before returning git-svn-id: + http://svn.osgeo.org/geos/trunk@1671 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli @@ -18872,30 +24416,35 @@ source/headers/geos/geom/Coordinate.h, source/headers/geos/geom/Coordinate.inl: Let the compiler synthetize copy ctor and assignment op for Coordinate class to obtain better - numerical stability. git-svn-id: http://svn.osgeo.org/geos/trunk@1670 + numerical stability. git-svn-id: + http://svn.osgeo.org/geos/trunk@1670 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp: Added support for - "AreaTest" operations. git-svn-id: http://svn.osgeo.org/geos/trunk@1669 + "AreaTest" operations. git-svn-id: + http://svn.osgeo.org/geos/trunk@1669 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli * ChangeLog, source/operation/overlay/PolygonBuilder.cpp: Fixed bug - in findShell() needlessly erasing vector elements git-svn-id: http://svn.osgeo.org/geos/trunk@1668 + in findShell() needlessly erasing vector elements git-svn-id: + http://svn.osgeo.org/geos/trunk@1668 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli - * source/operation/overlay/OverlayOp.cpp: Fixed just-introduced bug git-svn-id: http://svn.osgeo.org/geos/trunk@1667 + * source/operation/overlay/OverlayOp.cpp: Fixed just-introduced bug + git-svn-id: http://svn.osgeo.org/geos/trunk@1667 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli * ChangeLog, source/operation/overlay/OverlayOp.cpp: * source/operation/overlay/OverlayOp.cpp: use NodeMap::container and - related typedefs, removed (int) casts, optimized loops. git-svn-id: http://svn.osgeo.org/geos/trunk@1666 + related typedefs, removed (int) casts, optimized loops. + git-svn-id: http://svn.osgeo.org/geos/trunk@1666 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli @@ -18904,33 +24453,36 @@ source/headers/geos/geomgraph/DirectedEdge.h, source/headers/geos/geomgraph/DirectedEdge.inl, source/headers/geos/geomgraph/EdgeEnd.h: EdgeEnd::getEdge() made - non-virtual and inlined. git-svn-id: http://svn.osgeo.org/geos/trunk@1665 + non-virtual and inlined. git-svn-id: + http://svn.osgeo.org/geos/trunk@1665 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-14 Sandro Santilli * ChangeLog, source/operation/overlay/PolygonBuilder.cpp: Fixed bug in PolygonBuilder::placePolygonHoles, performance improved as a side - effect. git-svn-id: http://svn.osgeo.org/geos/trunk@1664 + effect. git-svn-id: http://svn.osgeo.org/geos/trunk@1664 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli * ChangeLog, source/headers/geos/operation/overlay/PolygonBuilder.h, - source/operation/overlay/PolygonBuilder.cpp: cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1663 + source/operation/overlay/PolygonBuilder.cpp: cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1663 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli * ChangeLog, source/headers/geos/io/WKTReader.inl: * source/headers/geos/io/WKTReader.inl: added missing include for - GEOS_DEBUG set case, use stderr for debugging output. git-svn-id: http://svn.osgeo.org/geos/trunk@1662 + GEOS_DEBUG set case, use stderr for debugging output. git-svn-id: + http://svn.osgeo.org/geos/trunk@1662 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli * ChangeLog, source/operation/overlay/LineBuilder.cpp: fixed unused - parameter warning git-svn-id: http://svn.osgeo.org/geos/trunk@1661 + parameter warning git-svn-id: http://svn.osgeo.org/geos/trunk@1661 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli @@ -18938,35 +24490,39 @@ * ChangeLog, source/headers/geos/geomgraph/GeometryGraph.h: Changed GeometryGraph::lineEdgeMap set comparison function to be pointer-based. Should be safe and much faster. Available tests all - succeed. git-svn-id: http://svn.osgeo.org/geos/trunk@1660 + succeed. git-svn-id: http://svn.osgeo.org/geos/trunk@1660 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli - * source/operation/overlay/OverlayOp.cpp: trimmed cvs log, cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1659 + * source/operation/overlay/OverlayOp.cpp: trimmed cvs log, cleanups + git-svn-id: http://svn.osgeo.org/geos/trunk@1659 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli * source/geomgraph/GeometryGraph.cpp: Cleanups and some more - debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1658 + debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1658 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli * ChangeLog, source/geom/Geometry.cpp: Added self comparison check - in Geometry::compareTo(). git-svn-id: http://svn.osgeo.org/geos/trunk@1657 + in Geometry::compareTo(). git-svn-id: + http://svn.osgeo.org/geos/trunk@1657 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-13 Sandro Santilli - * ChangeLog: fixed mis-assigned commit git-svn-id: http://svn.osgeo.org/geos/trunk@1656 + * ChangeLog: fixed mis-assigned commit git-svn-id: + http://svn.osgeo.org/geos/trunk@1656 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, source/simplify/LineSegmentIndex.cpp: LineSegmentIndex: - explicitly initialized parent class in constructors. git-svn-id: http://svn.osgeo.org/geos/trunk@1655 + explicitly initialized parent class in constructors. git-svn-id: + http://svn.osgeo.org/geos/trunk@1655 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli @@ -18974,34 +24530,38 @@ * ChangeLog, source/headers/geos/index/quadtree/Root.h, source/headers/geos/operation/distance/ConnectedElementPointFilter. h, source/headers/geos/operation/polygonize/Polygonizer.h: Removed - unused parameters warning git-svn-id: http://svn.osgeo.org/geos/trunk@1654 + unused parameters warning git-svn-id: + http://svn.osgeo.org/geos/trunk@1654 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, source/headers/geos/geom/GeometryFilter.h: added assert(0) version of filter_ro() and filter_rw() to allow - implementations to only defined the required one. git-svn-id: http://svn.osgeo.org/geos/trunk@1653 + implementations to only defined the required one. git-svn-id: + http://svn.osgeo.org/geos/trunk@1653 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * tests/bigtest/TestSweepLineSpeed.cpp, tests/xmltester/SimpleWKTTester.cpp: Removed unused parameter - warnings git-svn-id: http://svn.osgeo.org/geos/trunk@1652 + warnings git-svn-id: http://svn.osgeo.org/geos/trunk@1652 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * source/headers/geos/planargraph/Node.h: Added note about ownership - of return from getEdgesBetween() git-svn-id: http://svn.osgeo.org/geos/trunk@1651 + of return from getEdgesBetween() git-svn-id: + http://svn.osgeo.org/geos/trunk@1651 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, source/headers/geos/io/WKTWriter.h, source/io/WKTWriter.cpp: fixed compiler warnings, fixed some methods - to omit unused parameters. git-svn-id: http://svn.osgeo.org/geos/trunk@1650 + to omit unused parameters. git-svn-id: + http://svn.osgeo.org/geos/trunk@1650 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli @@ -19009,46 +24569,52 @@ * ChangeLog, source/geom/CoordinateSequence.cpp, source/headers/geos/geom/CoordinateSequence.h, tests/unit/geom/CoordinateArraySequenceTest.cpp: Added equality and - inequality operators and tests git-svn-id: http://svn.osgeo.org/geos/trunk@1649 + inequality operators and tests git-svn-id: + http://svn.osgeo.org/geos/trunk@1649 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, source/geom/CoordinateSequence.cpp, source/headers/geos/geom/CoordinateSequence.h: indentation, notes - about things to be fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@1648 + about things to be fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@1648 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, source/planargraph/Node.cpp: implemented missing - getEdgesBetween() method (untested). git-svn-id: http://svn.osgeo.org/geos/trunk@1647 + getEdgesBetween() method (untested). git-svn-id: + http://svn.osgeo.org/geos/trunk@1647 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * source/headers/geos/planargraph/DirectedEdge.h, source/planargraph/DirectedEdge.cpp: provided a memory friendly - version of toEdges() method. git-svn-id: http://svn.osgeo.org/geos/trunk@1646 + version of toEdges() method. git-svn-id: + http://svn.osgeo.org/geos/trunk@1646 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, source/geom/CoordinateArraySequence.cpp: explicitly - invoked CoordinateSequence (copy) ctor - suggested by GCC warning. git-svn-id: http://svn.osgeo.org/geos/trunk@1645 + invoked CoordinateSequence (copy) ctor - suggested by GCC warning. + git-svn-id: http://svn.osgeo.org/geos/trunk@1645 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * source/headers/geos/geom/CoordinateSequence.h: Added default ctor - and copy ctor (protected) git-svn-id: http://svn.osgeo.org/geos/trunk@1644 + and copy ctor (protected) git-svn-id: + http://svn.osgeo.org/geos/trunk@1644 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, acsite.m4, configure.in, source/headers/geos/platform.h.in: Check for int64_t type for int64 - typedef. git-svn-id: http://svn.osgeo.org/geos/trunk@1643 + typedef. git-svn-id: http://svn.osgeo.org/geos/trunk@1643 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli @@ -19092,7 +24658,8 @@ source/simplify/DouglasPeuckerLineSimplifier.cpp, source/simplify/LineSegmentIndex.cpp, source/simplify/TaggedLineString.cpp, source/util/Profiler.cpp: - unsigned int => size_t git-svn-id: http://svn.osgeo.org/geos/trunk@1642 + unsigned int => size_t git-svn-id: + http://svn.osgeo.org/geos/trunk@1642 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli @@ -19110,13 +24677,15 @@ source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp, source/operation/linemerge/LineSequencer.cpp, - source/planargraph/PlanarGraph.cpp: unsigned int => size_t git-svn-id: http://svn.osgeo.org/geos/trunk@1641 + source/planargraph/PlanarGraph.cpp: unsigned int => size_t + git-svn-id: http://svn.osgeo.org/geos/trunk@1641 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp: don't print test file - precision model if verbosity level < 2. git-svn-id: http://svn.osgeo.org/geos/trunk@1640 + precision model if verbosity level < 2. git-svn-id: + http://svn.osgeo.org/geos/trunk@1640 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-12 Sandro Santilli @@ -19139,31 +24708,36 @@ source/headers/geos/geom/LineSegment.h, source/headers/geos/util/UniqueCoordinateArrayFilter.h: Fixed getGeometryN() to take size_t rather then int, changed unsigned int - parameters to size_t. git-svn-id: http://svn.osgeo.org/geos/trunk@1639 + parameters to size_t. git-svn-id: + http://svn.osgeo.org/geos/trunk@1639 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-09 Sandro Santilli - * tests/xmltester/SimpleWKTTester.cpp: Removed compiler warning git-svn-id: http://svn.osgeo.org/geos/trunk@1638 + * tests/xmltester/SimpleWKTTester.cpp: Removed compiler warning + git-svn-id: http://svn.osgeo.org/geos/trunk@1638 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-09 Sandro Santilli * ChangeLog, tests/unit/noding/SegmentStringTest.cpp: removed - signed/unsigned comparison warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@1637 + signed/unsigned comparison warnings. git-svn-id: + http://svn.osgeo.org/geos/trunk@1637 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-09 Sandro Santilli * ChangeLog, tests/unit/geom/LinearRingTest.cpp, tests/unit/geom/MultiPointTest.cpp, tests/unit/geom/PolygonTest.cpp: - removed signed/unsigned comparison warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@1636 + removed signed/unsigned comparison warnings. git-svn-id: + http://svn.osgeo.org/geos/trunk@1636 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-09 Sandro Santilli * ChangeLog, tests/unit/geom/LineStringTest.cpp: Fixed - signed/unsigned comparison tests git-svn-id: http://svn.osgeo.org/geos/trunk@1635 + signed/unsigned comparison tests git-svn-id: + http://svn.osgeo.org/geos/trunk@1635 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-09 Sandro Santilli @@ -19176,24 +24750,28 @@ source/operation/overlay/OverlayOp.cpp, source/operation/valid/RepeatedPointTester.cpp: Fixed warning after Polygon ring accessor methods changed to work with size_t. Small - optimizations in loops. git-svn-id: http://svn.osgeo.org/geos/trunk@1634 + optimizations in loops. git-svn-id: + http://svn.osgeo.org/geos/trunk@1634 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-09 Sandro Santilli - * ChangeLog: Added missing log for mloskot change git-svn-id: http://svn.osgeo.org/geos/trunk@1633 + * ChangeLog: Added missing log for mloskot change git-svn-id: + http://svn.osgeo.org/geos/trunk@1633 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Mateusz Loskot * tests/unit/geom/DimensionTest.cpp: Fixed no-effect warning in - test<1> from DimensionTest.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@1632 + test<1> from DimensionTest.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@1632 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli * ChangeLog, tests/unit/geom/GeometryFactoryTest.cpp: * tests/unit/geom/GeometryFactoryTest.cpp: fixed compiler warnings - about signed/unsigned comparisons. git-svn-id: http://svn.osgeo.org/geos/trunk@1631 + about signed/unsigned comparisons. git-svn-id: + http://svn.osgeo.org/geos/trunk@1631 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli @@ -19202,38 +24780,43 @@ source/geom/Polygon.cpp, source/geom/util/GeometryEditor.cpp, source/headers/geos/geom/Polygon.h, source/io/WKTWriter.cpp: Polygon::getNumInteriorRing() return size_t, - Polygon::interiorRingN() takes size_t. git-svn-id: http://svn.osgeo.org/geos/trunk@1630 + Polygon::interiorRingN() takes size_t. git-svn-id: + http://svn.osgeo.org/geos/trunk@1630 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli * ChangeLog, tests/unit/geom/CoordinateArraySequenceTest.cpp: * tests/unit/geom/CoordinateArraySequenceTest.cpp: fix - signed/unsigned comparison warning. git-svn-id: http://svn.osgeo.org/geos/trunk@1629 + signed/unsigned comparison warning. git-svn-id: + http://svn.osgeo.org/geos/trunk@1629 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli * ChangeLog, tests/xmltester/markup/MarkupSTL.cpp: * tests/xmltester/markup/MarkupSTL.cpp: removed use of allocator, which brings in some incompatibilities with - libstdc++ 6.0.7 (gcc 4.0.2). git-svn-id: http://svn.osgeo.org/geos/trunk@1628 + libstdc++ 6.0.7 (gcc 4.0.2). git-svn-id: + http://svn.osgeo.org/geos/trunk@1628 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli - * configure.in: Commented out ruby and python detection git-svn-id: http://svn.osgeo.org/geos/trunk@1627 + * configure.in: Commented out ruby and python detection + git-svn-id: http://svn.osgeo.org/geos/trunk@1627 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/testrunner.sh: Fixed - xml testrunner rule git-svn-id: http://svn.osgeo.org/geos/trunk@1626 + xml testrunner rule git-svn-id: + http://svn.osgeo.org/geos/trunk@1626 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli * ChangeLog, tests/xmltester/Makefile.am, tests/xmltester/testrunner.sh: added XML tests run to the 'make - check' rule. git-svn-id: http://svn.osgeo.org/geos/trunk@1625 + check' rule. git-svn-id: http://svn.osgeo.org/geos/trunk@1625 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-08 Sandro Santilli @@ -19248,25 +24831,26 @@ source/headers/geos/index/ItemVisitor.h, source/headers/geos/index/strtree/AbstractSTRtree.h, source/headers/geos/index/sweepline/SweepLineOverlapAction.h: Added - missing virtual destructor to abstract classes. git-svn-id: http://svn.osgeo.org/geos/trunk@1624 + missing virtual destructor to abstract classes. git-svn-id: + http://svn.osgeo.org/geos/trunk@1624 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli * ChangeLog, configure.in: * configure.in: enforce -Wall -ansi -pedantic -Wno-long-long to C - and CXX flags. git-svn-id: http://svn.osgeo.org/geos/trunk@1623 + and CXX flags. git-svn-id: http://svn.osgeo.org/geos/trunk@1623 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli * swig/ruby/test/Makefile.am: Renamed (reserved) TESTS variable to - RUBY_TESTS git-svn-id: http://svn.osgeo.org/geos/trunk@1622 + RUBY_TESTS git-svn-id: http://svn.osgeo.org/geos/trunk@1622 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli * Makefile.am: Fixed SUBDIRS order, and added a NOTE about - maintaining it. git-svn-id: http://svn.osgeo.org/geos/trunk@1621 + maintaining it. git-svn-id: http://svn.osgeo.org/geos/trunk@1621 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli @@ -19274,44 +24858,50 @@ * ChangeLog, Makefile.am, configure.in, swig/python/Makefile.am, swig/ruby/Makefile.am, swig/ruby/test/Makefile.am: * Makefile.am, configure.in, swig/python/Makefile.am, swig/ruby/Makefile.am, swig/ruby/test/Makefile.am: swig removed from - automatic build process. * configure.in: removed check for boost availability. git-svn-id: http://svn.osgeo.org/geos/trunk@1620 + automatic build process. * configure.in: removed check for boost + availability. git-svn-id: http://svn.osgeo.org/geos/trunk@1620 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli - * configure.in: Set release version to 3.0.0rc1 git-svn-id: http://svn.osgeo.org/geos/trunk@1619 + * configure.in: Set release version to 3.0.0rc1 git-svn-id: + http://svn.osgeo.org/geos/trunk@1619 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Mateusz Loskot * ChangeLog, tests/unit/Makefile.am: Update ChangeLog with info - about new test case isPointInRingTest.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@1618 + about new test case isPointInRingTest.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@1618 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Mateusz Loskot * tests/unit/algorithm/CGAlgorithms/{isPointInRing.cpp => isPointInRingTest.cpp}: Renamed file isPointInRing.cpp to - isPointInRingTest.cpp to follow GEOS Unit Test convention. git-svn-id: http://svn.osgeo.org/geos/trunk@1617 + isPointInRingTest.cpp to follow GEOS Unit Test convention. + git-svn-id: http://svn.osgeo.org/geos/trunk@1617 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Mateusz Loskot * tests/unit/Makefile.am, tests/unit/algorithm/CGAlgorithms/isPointInRing.cpp: Added new test: - CGAlgorithms/isPointInRing.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@1616 + CGAlgorithms/isPointInRing.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@1616 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli * ChangeLog, source/headers/geos/geom.h: Removed Triangle.h include - from geom.h git-svn-id: http://svn.osgeo.org/geos/trunk@1615 + from geom.h git-svn-id: http://svn.osgeo.org/geos/trunk@1615 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-07 Sandro Santilli * ChangeLog, source/headers/geos/geom/Makefile.am: * source/headers/geos/geom/Makefile.am: removed Triangle.h from - installed header set. git-svn-id: http://svn.osgeo.org/geos/trunk@1614 + installed header set. git-svn-id: + http://svn.osgeo.org/geos/trunk@1614 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-05 Sandro Santilli @@ -19351,7 +24941,8 @@ source/headers/geos/planargraph/algorithm/Makefile.am, source/headers/geos/precision/Makefile.am, source/headers/geos/util.h, source/headers/geos/util/Makefile.am: - Fixed noinst_geos_HEADERS => noinst_HEADERS. git-svn-id: http://svn.osgeo.org/geos/trunk@1613 + Fixed noinst_geos_HEADERS => noinst_HEADERS. git-svn-id: + http://svn.osgeo.org/geos/trunk@1613 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-05 Sandro Santilli @@ -19367,19 +24958,22 @@ source/operation/overlay/PointBuilder.cpp, tests/xmltester/XMLTester.cpp: Given OverlayOp funx code enum a name and renamed values to have a lowercase prefix. Drop all of noding - headers from installed header set. git-svn-id: http://svn.osgeo.org/geos/trunk@1612 + headers from installed header set. git-svn-id: + http://svn.osgeo.org/geos/trunk@1612 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-03 Howard Butler - * source/Makefile.vc: update to track latest removals git-svn-id: http://svn.osgeo.org/geos/trunk@1611 + * source/Makefile.vc: update to track latest removals git-svn-id: + http://svn.osgeo.org/geos/trunk@1611 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-03 Howard Butler * source/simplify/DouglasPeuckerLineSimplifier.cpp: Use a fully qualified namespace for LineSegment because we're inside of - geos::simplify at the time git-svn-id: http://svn.osgeo.org/geos/trunk@1610 + geos::simplify at the time git-svn-id: + http://svn.osgeo.org/geos/trunk@1610 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-01 Sandro Santilli @@ -19397,7 +24991,7 @@ source/headers/geos/precision.h, source/headers/geos/precision/Makefile.am, source/io/WKTWriter.cpp, source/io/Writer.cpp: Reduced installed headers form geomgraph - namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1609 + namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1609 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-06-01 Sandro Santilli @@ -19414,38 +25008,43 @@ source/headers/geos/indexSweepline.h, source/headers/geos/operation/valid/SweeplineNestedRingTester.h, source/operation/valid/Makefile.am: Reduced number of installed - headers for the geos::index namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1608 + headers for the geos::index namespace git-svn-id: + http://svn.osgeo.org/geos/trunk@1608 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-25 Sandro Santilli * ChangeLog, tests/unit/geom/TriangleTest.cpp: * tests/unit/geom/TriangleTest.cpp: take floating-point rounding - error into account. git-svn-id: http://svn.osgeo.org/geos/trunk@1607 + error into account. git-svn-id: + http://svn.osgeo.org/geos/trunk@1607 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-25 Mateusz Loskot * tests/tut/tut.h: Changed precision constant with epsilon() from - std::numeric_limits. git-svn-id: http://svn.osgeo.org/geos/trunk@1606 + std::numeric_limits. git-svn-id: + http://svn.osgeo.org/geos/trunk@1606 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-25 Mateusz Loskot * tests/tut/tut.h: Added specialization of ensure_equals for double - type. git-svn-id: http://svn.osgeo.org/geos/trunk@1605 + type. git-svn-id: http://svn.osgeo.org/geos/trunk@1605 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli * ChangeLog, source/index/quadtree/DoubleBits.cpp: * source/index/quadtree/DoubleBits.cpp: handled negative or zero - values in getExponent(). git-svn-id: http://svn.osgeo.org/geos/trunk@1604 + values in getExponent(). git-svn-id: + http://svn.osgeo.org/geos/trunk@1604 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli * ChangeLog, tests/unit/utility.h: * tests/unit/utility.h: fixed missing return from isSameStructure's specialization on GeometryCollection, also fixed a signed/unsigned - mismatch warning there. git-svn-id: http://svn.osgeo.org/geos/trunk@1603 + mismatch warning there. git-svn-id: + http://svn.osgeo.org/geos/trunk@1603 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli @@ -19455,14 +25054,16 @@ source/util/UniqueCoordinateArrayFilter.cpp: * source/util/Makefile.am, source/util/CoordinateArrayFiter.cpp, source/util/GEOSException.cpp, source/util/UniqueCoordinateArrayFilter.cpp: removed empty - implementation files. git-svn-id: http://svn.osgeo.org/geos/trunk@1602 + implementation files. git-svn-id: + http://svn.osgeo.org/geos/trunk@1602 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli * ChangeLog, source/headers/geos/simplify/TaggedLinesSimplifier.h: * source/headers/geos/simplify/TaggedLinesSimplifier.h: added LineSegmentIndex.h include so that every use of the templated - simplify() function get all the required definitions. git-svn-id: http://svn.osgeo.org/geos/trunk@1601 + simplify() function get all the required definitions. git-svn-id: + http://svn.osgeo.org/geos/trunk@1601 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli @@ -19479,30 +25080,41 @@ source/headers/geos/operation/polygonize/Makefile.am, source/headers/geos/operation/relate/Makefile.am, source/headers/geos/planargraph/Makefile.am: Reduced number of - installed headers in geos/operation/ subdir git-svn-id: http://svn.osgeo.org/geos/trunk@1600 + installed headers in geos/operation/ subdir git-svn-id: + http://svn.osgeo.org/geos/trunk@1600 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli - * NEWS: Added a note about unit tests being introduced git-svn-id: http://svn.osgeo.org/geos/trunk@1599 + * NEWS: Added a note about unit tests being introduced git-svn-id: + http://svn.osgeo.org/geos/trunk@1599 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Mateusz Loskot - * ChangeLog: Added missing entries to ChangeLog. git-svn-id: http://svn.osgeo.org/geos/trunk@1598 + * ChangeLog: Added missing entries to ChangeLog. git-svn-id: + http://svn.osgeo.org/geos/trunk@1598 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli * ChangeLog, source/headers/geos/simplify/TaggedLinesSimplifier.h, source/simplify/TaggedLinesSimplifier.cpp, - source/simplify/TopologyPreservingSimplifier.cpp: * source/headers/geos/simplify/TaggedLinesSimplifier.h, source/simplify/TaggedLinesSimplifier.cpp, source/simplify/TopologyPreservingSimplifier.cpp: fixed bug in TopologyPreservingSimplifier failing to detect intersections, refactored TaggedLinesSimplifier class to more closely match JTS and use templated functions. git-svn-id: http://svn.osgeo.org/geos/trunk@1597 - 5242fede-7e19-0410-aef8-94bd7d2200fb + source/simplify/TopologyPreservingSimplifier.cpp: * source/headers/geos/simplify/TaggedLinesSimplifier.h, + source/simplify/TaggedLinesSimplifier.cpp, + source/simplify/TopologyPreservingSimplifier.cpp: + fixed bug in TopologyPreservingSimplifier failing to + detect intersections, refactored TaggedLinesSimplifier + class to more closely match JTS and use templated + functions. git-svn-id: + http://svn.osgeo.org/geos/trunk@1597 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Sandro Santilli * ChangeLog, capi/geos_c.h.in: * capi/geos_c.h.in: #include to get size_t definition - (only #ifndef __cplusplus) git-svn-id: http://svn.osgeo.org/geos/trunk@1596 + (only #ifndef __cplusplus) git-svn-id: + http://svn.osgeo.org/geos/trunk@1596 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-24 Mateusz Loskot @@ -19511,19 +25123,21 @@ tests/unit/simplify/TopologyPreservingSimplifierTest.cpp, tests/unit/utility.h: Added new test: TopologyPreservingSimplifierTest.cpp. Added new utility.cpp helper - for Unit Tests (implementes utils from JTS Unit Tests). git-svn-id: http://svn.osgeo.org/geos/trunk@1595 + for Unit Tests (implementes utils from JTS Unit Tests). + git-svn-id: http://svn.osgeo.org/geos/trunk@1595 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, source/headers/geos/geom/Coordinate.h: * source/headers/geos/geom/Coordinate.h: added missing - include. git-svn-id: http://svn.osgeo.org/geos/trunk@1594 + include. git-svn-id: http://svn.osgeo.org/geos/trunk@1594 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, source/headers/geos/config.h: * source/headers/geos/config.h: removed file which is not supposed - to be in the repository. git-svn-id: http://svn.osgeo.org/geos/trunk@1593 + to be in the repository. git-svn-id: + http://svn.osgeo.org/geos/trunk@1593 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli @@ -19531,54 +25145,60 @@ * ChangeLog, source/headers/geos/index/quadtree/DoubleBits.h, source/index/quadtree/DoubleBits.cpp: * source/headers/geos/index/quadtree/DoubleBits.h, source/index/quadtree/DoubleBits.cpp: const correctness and - documentation. git-svn-id: http://svn.osgeo.org/geos/trunk@1592 + documentation. git-svn-id: http://svn.osgeo.org/geos/trunk@1592 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * tests/unit/io/ByteOrderValuesTest.cpp: Added test for put/get Long - values git-svn-id: http://svn.osgeo.org/geos/trunk@1591 + values git-svn-id: http://svn.osgeo.org/geos/trunk@1591 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, source/io/WKBWriter.cpp: Fixed a bug in - WKBWriter::writeByteOrder() failing to consider machine's byte order git-svn-id: http://svn.osgeo.org/geos/trunk@1590 + WKBWriter::writeByteOrder() failing to consider machine's byte order + git-svn-id: http://svn.osgeo.org/geos/trunk@1590 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli - * tests/unit/geom/CoordinateTest.cpp: Fixed small typo in label git-svn-id: http://svn.osgeo.org/geos/trunk@1589 + * tests/unit/geom/CoordinateTest.cpp: Fixed small typo in label + git-svn-id: http://svn.osgeo.org/geos/trunk@1589 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, source/io/ByteOrderValues.cpp: * source/io/ByteOrderValues.cpp: fixed bug in putLong() also - affecting putDouble() git-svn-id: http://svn.osgeo.org/geos/trunk@1588 + affecting putDouble() git-svn-id: + http://svn.osgeo.org/geos/trunk@1588 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, tests/unit/Makefile.am, tests/unit/io/ByteOrderValuesTest.cpp: * tests/unit/Makefile.am, tests/unit/io/ByteOrderValuesTest.cpp: - unit test for ByteOrderValues class. git-svn-id: http://svn.osgeo.org/geos/trunk@1587 + unit test for ByteOrderValues class. git-svn-id: + http://svn.osgeo.org/geos/trunk@1587 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, source/io/WKBWriter.cpp: * source/io/WKBWriter.cpp: fixed bug in ::writeInt missing to honour - the requested byte order. git-svn-id: http://svn.osgeo.org/geos/trunk@1586 + the requested byte order. git-svn-id: + http://svn.osgeo.org/geos/trunk@1586 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli - * tests/unit/io/WKBReaderTest.cpp: Fixed top comment git-svn-id: http://svn.osgeo.org/geos/trunk@1585 + * tests/unit/io/WKBReaderTest.cpp: Fixed top comment git-svn-id: + http://svn.osgeo.org/geos/trunk@1585 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli * ChangeLog, tests/unit/io/WKBReaderTest.cpp: * tests/unit/io/WKBReaderTest.cpp: cleaned up and added both XDR and - NDR tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1584 + NDR tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1584 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-23 Sandro Santilli @@ -19586,79 +25206,99 @@ * ChangeLog, source/headers/geos/io/WKBConstants.h, source/io/ByteOrderValues.cpp: * source/io/ByteOrderValues.cpp: changed ENDIAN_BIG and ENDIAN_LITTLE values to match WKBConstants::XDR and - WKBConstants::NDR respectively. * source/headers/geos/io/WKBConstants.h: added comments about - meaning of XDR/NDR. git-svn-id: http://svn.osgeo.org/geos/trunk@1583 + WKBConstants::NDR respectively. * + source/headers/geos/io/WKBConstants.h: added comments about meaning + of XDR/NDR. git-svn-id: http://svn.osgeo.org/geos/trunk@1583 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-22 Sandro Santilli * source/headers/geos/util/GEOSException.h: Print colon after - exception name (as it has always been) git-svn-id: http://svn.osgeo.org/geos/trunk@1582 + exception name (as it has always been) git-svn-id: + http://svn.osgeo.org/geos/trunk@1582 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-19 Sandro Santilli - * ChangeLog, source/simplify/TopologyPreservingSimplifier.cpp: * source/simplify/TopologyPreservingSimplifier.cpp: removed friend specification in TopologyPreservingSimplifier helper class (no more needed) git-svn-id: http://svn.osgeo.org/geos/trunk@1581 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, source/simplify/TopologyPreservingSimplifier.cpp: * source/simplify/TopologyPreservingSimplifier.cpp: + removed friend specification in + TopologyPreservingSimplifier helper class (no more + needed) git-svn-id: http://svn.osgeo.org/geos/trunk@1581 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-19 Sandro Santilli - * ChangeLog, tests/unit/geom/Geometry/coversTest.cpp: * tests/unit/geom/Geometry/coversTest.cpp: keep tests in 'tut' namespace. git-svn-id: http://svn.osgeo.org/geos/trunk@1580 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, tests/unit/geom/Geometry/coversTest.cpp: * tests/unit/geom/Geometry/coversTest.cpp: keep + tests in 'tut' namespace. git-svn-id: + http://svn.osgeo.org/geos/trunk@1580 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-19 Sandro Santilli - * ChangeLog, tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: report error on load of requested tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1579 - 5242fede-7e19-0410-aef8-94bd7d2200fb + * ChangeLog, tests/xmltester/XMLTester.cpp: * tests/xmltester/XMLTester.cpp: report error on + load of requested tests. git-svn-id: + http://svn.osgeo.org/geos/trunk@1579 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-18 Sandro Santilli - * ChangeLog, source/headers/geos/geom.h: * source/headers/geos/geom.h: fixed doxygen header for mainpage. git-svn-id: http://svn.osgeo.org/geos/trunk@1578 + * ChangeLog, source/headers/geos/geom.h: * source/headers/geos/geom.h: fixed doxygen header for mainpage. + git-svn-id: http://svn.osgeo.org/geos/trunk@1578 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-18 Sandro Santilli - * NEWS: Added note about the new BinaryOp class and its uses. git-svn-id: http://svn.osgeo.org/geos/trunk@1577 + * NEWS: Added note about the new BinaryOp class and its uses. + git-svn-id: http://svn.osgeo.org/geos/trunk@1577 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-18 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: * source/headers/geos/geom/BinaryOp.h: added compile-time defines to avoid precision-reduction and simplify based policies (default to - enabled). git-svn-id: http://svn.osgeo.org/geos/trunk@1576 + enabled). git-svn-id: http://svn.osgeo.org/geos/trunk@1576 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-18 Sandro Santilli - * NEWS: added note about new Geometry predicates git-svn-id: http://svn.osgeo.org/geos/trunk@1575 + * NEWS: added note about new Geometry predicates git-svn-id: + http://svn.osgeo.org/geos/trunk@1575 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-18 Sandro Santilli * ChangeLog, tests/unit/geom/Geometry/coversTest.cpp: Added tests - for coveredBy(), fixed ChangeLog entry git-svn-id: http://svn.osgeo.org/geos/trunk@1574 + for coveredBy(), fixed ChangeLog entry git-svn-id: + http://svn.osgeo.org/geos/trunk@1574 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-18 Sandro Santilli * ChangeLog, source/geom/Geometry.cpp, source/headers/geos/geom/Geometry.h, tests/unit/Makefile.am, - tests/unit/geom/Geometry/coversTest.cpp: * source/geom/Geometry.cpp, source/headers/geos/geom/Geometry.h: added covers() and isCoveredBy() predicates. * tests/unit/Makefile.am, tests/unit/geom/Geometry/coversTest.cpp: added test for covers() predicates. git-svn-id: http://svn.osgeo.org/geos/trunk@1573 - 5242fede-7e19-0410-aef8-94bd7d2200fb + tests/unit/geom/Geometry/coversTest.cpp: * source/geom/Geometry.cpp, + source/headers/geos/geom/Geometry.h: added covers() + and isCoveredBy() predicates. * + tests/unit/Makefile.am, + tests/unit/geom/Geometry/coversTest.cpp: added test + for covers() predicates. git-svn-id: + http://svn.osgeo.org/geos/trunk@1573 + 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-17 Sandro Santilli * source/geom/IntersectionMatrix.cpp, source/headers/geos/geom/IntersectionMatrix.h, tests/unit/geom/IntersectionMatrixTest.cpp: Added output operator + - test git-svn-id: http://svn.osgeo.org/geos/trunk@1572 + test git-svn-id: http://svn.osgeo.org/geos/trunk@1572 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-17 Sandro Santilli * ChangeLog, source/geom/IntersectionMatrix.cpp, source/headers/geos/geom/IntersectionMatrix.h: Added port info, - fixed isCoveredBy() comment. git-svn-id: http://svn.osgeo.org/geos/trunk@1571 + fixed isCoveredBy() comment. git-svn-id: + http://svn.osgeo.org/geos/trunk@1571 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-17 Sandro Santilli @@ -19667,18 +25307,27 @@ source/headers/geos/geom/IntersectionMatrix.h, tests/unit/geom/IntersectionMatrixTest.cpp: added isCovers() and isCoveredBy() public methods to IntersectionMatrix and associated - tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1570 + tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1570 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-17 Sandro Santilli * source/headers/geos/geom/BinaryOp.h: typo fixed to make - description more clear git-svn-id: http://svn.osgeo.org/geos/trunk@1569 + description more clear git-svn-id: + http://svn.osgeo.org/geos/trunk@1569 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2006-05-13 Mateusz Loskot + + * : Fixed line-ends in PointLocatorTest.cpp file. git-svn-id: + http://svn.osgeo.org/geos/trunk@1563 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-13 Mateusz Loskot - * : Fixed line-ends in PointLocatorTest.cpp file. git-svn-id: http://svn.osgeo.org/geos/trunk@1563 + * .cvsignore, tests/unit/.cvsignore: Fixed line-ends in + isRectangleTest.cpp. Added new patterns to .cvsignore. git-svn-id: + http://svn.osgeo.org/geos/trunk@1562 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-05 Sandro Santilli @@ -19686,13 +25335,15 @@ * ChangeLog, source/noding/snapround/MCIndexSnapRounder.cpp, source/noding/snapround/SimpleSnapRounder.cpp: Had nodind validation error throw an exception for SimpleSnapRounder and - MCIndexSnapRounder git-svn-id: http://svn.osgeo.org/geos/trunk@1561 + MCIndexSnapRounder git-svn-id: + http://svn.osgeo.org/geos/trunk@1561 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-05 Sandro Santilli * ChangeLog, tests/unit/Makefile.am, - tests/unit/noding/SegmentStringTest.cpp: New SegmentString unit test git-svn-id: http://svn.osgeo.org/geos/trunk@1560 + tests/unit/noding/SegmentStringTest.cpp: New SegmentString unit test + git-svn-id: http://svn.osgeo.org/geos/trunk@1560 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-05 Sandro Santilli @@ -19701,7 +25352,8 @@ source/headers/geos/noding/SegmentString.inl, source/noding/SegmentString.cpp: moved getSegmentOctant out of .inl into .cpp, renamed private eiList to nodeList as in JTS, added more - assertion checking and fixed doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1559 + assertion checking and fixed doxygen comments git-svn-id: + http://svn.osgeo.org/geos/trunk@1559 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-05 Sandro Santilli @@ -19710,13 +25362,14 @@ source/headers/geos/noding/SegmentString.inl, source/noding/SegmentNodeList.cpp: droppped SegmentString::getContext(), new name is getData() to reflect change - in JTS git-svn-id: http://svn.osgeo.org/geos/trunk@1558 + in JTS git-svn-id: http://svn.osgeo.org/geos/trunk@1558 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-05 Sandro Santilli * ChangeLog, source/headers/geos/geom.h: * source/headers/geos/geom.h: fixed namespace qualification in - doxygen page about C++ interface. git-svn-id: http://svn.osgeo.org/geos/trunk@1557 + doxygen page about C++ interface. git-svn-id: + http://svn.osgeo.org/geos/trunk@1557 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli @@ -19736,7 +25389,7 @@ source/headers/geos/geom/Polygon.h, source/operation/buffer/BufferOp.cpp: updated all Geometry::getDimension() methods to return Dimension::DimensionType - (closes bug#93) git-svn-id: http://svn.osgeo.org/geos/trunk@1556 + (closes bug#93) git-svn-id: http://svn.osgeo.org/geos/trunk@1556 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli @@ -19746,167 +25399,188 @@ source/headers/geos/util/math.h, source/noding/ScaledNoder.cpp: * source/headers/geos/util/math.h: provided an util::round() method being an inline proxy to call appropriate default rounding function for the whole GEOS codebase. Currently pointing at - util::java_math_round() being the last being used. git-svn-id: http://svn.osgeo.org/geos/trunk@1555 + util::java_math_round() being the last being used. git-svn-id: + http://svn.osgeo.org/geos/trunk@1555 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/headers/geos/geomgraph/DirectedEdge.h: doxygen comments - cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1554 + cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1554 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/headers/geos/geomgraph/NodeMap.h: Added invariant tester for NodeMap class, fixed comment about ownership of - NodeFactory git-svn-id: http://svn.osgeo.org/geos/trunk@1553 + NodeFactory git-svn-id: http://svn.osgeo.org/geos/trunk@1553 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/operation/buffer/BufferSubgraph.cpp: Added some comments - about RightmostEdgeFinder only considering forward DirectedEdge git-svn-id: http://svn.osgeo.org/geos/trunk@1552 + about RightmostEdgeFinder only considering forward DirectedEdge + git-svn-id: http://svn.osgeo.org/geos/trunk@1552 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/headers/geos/operation/buffer/RightmostEdgeFinder.h: Added - note about findEdge() only scanning for forward DirectedEdges git-svn-id: http://svn.osgeo.org/geos/trunk@1551 + note about findEdge() only scanning for forward DirectedEdges + git-svn-id: http://svn.osgeo.org/geos/trunk@1551 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/geomgraph/PlanarGraph.cpp: Added comment about management - of newly created DirectedEdges git-svn-id: http://svn.osgeo.org/geos/trunk@1550 + of newly created DirectedEdges git-svn-id: + http://svn.osgeo.org/geos/trunk@1550 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/headers/geos/operation/buffer/OffsetCurveSetBuilder.h: - Doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1549 + Doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1549 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Added JTS debugging, - for comparison with JTS git-svn-id: http://svn.osgeo.org/geos/trunk@1548 + for comparison with JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@1548 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/headers/geos/geom/CoordinateSequence.h: Added - note about the CoordinateSequence::toVector() method. git-svn-id: http://svn.osgeo.org/geos/trunk@1547 + note about the CoordinateSequence::toVector() method. git-svn-id: + http://svn.osgeo.org/geos/trunk@1547 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/noding/SegmentNodeList.cpp: noding/SegmentNodeList.cpp: cleanups, changed output operator to be - more similar to JTS git-svn-id: http://svn.osgeo.org/geos/trunk@1546 + more similar to JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@1546 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/noding/ScaledNoder.cpp: removed use of - SegmentString::setCoordinates() [dropped] git-svn-id: http://svn.osgeo.org/geos/trunk@1545 + SegmentString::setCoordinates() [dropped] git-svn-id: + http://svn.osgeo.org/geos/trunk@1545 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/headers/geos/noding/SegmentString.h, source/headers/geos/noding/SegmentString.inl: * source/noding/ScaledNoder.cpp: removed use of - SegmentString::setCoordinates(). * source/headers/geos/noding/SegmentStrign.{h,inl}: removed new - setCoordinates() interface. git-svn-id: http://svn.osgeo.org/geos/trunk@1544 + SegmentString::setCoordinates(). * + source/headers/geos/noding/SegmentStrign.{h,inl}: removed new + setCoordinates() interface. git-svn-id: + http://svn.osgeo.org/geos/trunk@1544 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/headers/geos/noding/SegmentString.h, source/noding/SegmentString.cpp: output operator for SegmentString - class git-svn-id: http://svn.osgeo.org/geos/trunk@1543 + class git-svn-id: http://svn.osgeo.org/geos/trunk@1543 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * ChangeLog, source/headers/geos/noding/SegmentNodeList.h: - const-correct size() method for SegmentNodeList git-svn-id: http://svn.osgeo.org/geos/trunk@1542 + const-correct size() method for SegmentNodeList git-svn-id: + http://svn.osgeo.org/geos/trunk@1542 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-04 Sandro Santilli * source/headers/geos/noding/ScaledNoder.h: Extended definition to - take new CoordinateSequence tracking into account git-svn-id: http://svn.osgeo.org/geos/trunk@1541 + take new CoordinateSequence tracking into account git-svn-id: + http://svn.osgeo.org/geos/trunk@1541 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/noding/ScaledNoder.cpp: Added SQL debugging - output git-svn-id: http://svn.osgeo.org/geos/trunk@1540 + output git-svn-id: http://svn.osgeo.org/geos/trunk@1540 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/geom/CoordinateSequence.cpp, source/headers/geos/geom/CoordinateSequence.h: added operator<< for - CoordinateSequence git-svn-id: http://svn.osgeo.org/geos/trunk@1539 + CoordinateSequence git-svn-id: + http://svn.osgeo.org/geos/trunk@1539 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/headers/geos/noding/SegmentString.h, source/headers/geos/noding/SegmentString.inl: added - SegmentString::setCoordinates() interface git-svn-id: http://svn.osgeo.org/geos/trunk@1538 + SegmentString::setCoordinates() interface git-svn-id: + http://svn.osgeo.org/geos/trunk@1538 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/noding/snapround/SimpleSnapRounder.cpp: Uncommented - correctness checker git-svn-id: http://svn.osgeo.org/geos/trunk@1537 + correctness checker git-svn-id: + http://svn.osgeo.org/geos/trunk@1537 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/noding/snapround/HotPixel.cpp: system headers included - after package headers git-svn-id: http://svn.osgeo.org/geos/trunk@1536 + after package headers git-svn-id: + http://svn.osgeo.org/geos/trunk@1536 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/headers/geos/noding/snapround/HotPixel.h: - Doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1535 + Doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1535 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * source/headers/geos/nodingSnapround.h: Forgot a slash git-svn-id: http://svn.osgeo.org/geos/trunk@1534 + * source/headers/geos/nodingSnapround.h: Forgot a slash + git-svn-id: http://svn.osgeo.org/geos/trunk@1534 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * ChangeLog, source/headers/geos/nodingSnapround.h: Doxygen brief git-svn-id: http://svn.osgeo.org/geos/trunk@1533 + * ChangeLog, source/headers/geos/nodingSnapround.h: Doxygen brief + git-svn-id: http://svn.osgeo.org/geos/trunk@1533 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Howard Butler - * source/Makefile.vc: tweak clean target git-svn-id: http://svn.osgeo.org/geos/trunk@1532 + * source/Makefile.vc: tweak clean target git-svn-id: + http://svn.osgeo.org/geos/trunk@1532 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Howard Butler * source/Makefile.vc: Build the C API and shared lib separate from - the normal lib Add missing files git-svn-id: http://svn.osgeo.org/geos/trunk@1531 + the normal lib Add missing files git-svn-id: + http://svn.osgeo.org/geos/trunk@1531 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * source/headers/geos/noding/SegmentString.h: fit in 80 columns git-svn-id: http://svn.osgeo.org/geos/trunk@1530 + * source/headers/geos/noding/SegmentString.h: fit in 80 columns + git-svn-id: http://svn.osgeo.org/geos/trunk@1530 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Howard Butler * capi/geos_c.h.vc: Maintain a geos_c.h.vc until we come up with a - better solution git-svn-id: http://svn.osgeo.org/geos/trunk@1529 + better solution git-svn-id: http://svn.osgeo.org/geos/trunk@1529 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Howard Butler @@ -19917,24 +25591,26 @@ * ChangeLog, source/noding/snapround/SimpleSnapRounder.cpp: fixed bug in SimpleSnapRounder::computeSnaps, trying to access - out-of-bound vector element. git-svn-id: http://svn.osgeo.org/geos/trunk@1527 + out-of-bound vector element. git-svn-id: + http://svn.osgeo.org/geos/trunk@1527 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Howard Butler * source/Makefile.vc: add additional files and change names where - necessary git-svn-id: http://svn.osgeo.org/geos/trunk@1526 + necessary git-svn-id: http://svn.osgeo.org/geos/trunk@1526 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/noding/ScaledNoder.cpp: test SegmentString invariant before - and after scaling git-svn-id: http://svn.osgeo.org/geos/trunk@1525 + and after scaling git-svn-id: http://svn.osgeo.org/geos/trunk@1525 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * ChangeLog: Tabs for indent git-svn-id: http://svn.osgeo.org/geos/trunk@1524 + * ChangeLog: Tabs for indent git-svn-id: + http://svn.osgeo.org/geos/trunk@1524 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Howard Butler @@ -19944,60 +25620,67 @@ 2006-05-03 Howard Butler * source/headers/geos/version.h.vc: Maintain a version.h.vc until we - come up with a better solution git-svn-id: http://svn.osgeo.org/geos/trunk@1522 + come up with a better solution git-svn-id: + http://svn.osgeo.org/geos/trunk@1522 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * ChangeLog, configure.in: updated JTS_PORT to 1.7.1 git-svn-id: http://svn.osgeo.org/geos/trunk@1521 + * ChangeLog, configure.in: updated JTS_PORT to 1.7.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@1521 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/headers/geos/noding/SegmentString.h, source/headers/geos/noding/SegmentString.inl: testInvariant made - public and always inlined git-svn-id: http://svn.osgeo.org/geos/trunk@1520 + public and always inlined git-svn-id: + http://svn.osgeo.org/geos/trunk@1520 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/headers/geos/noding/snapround/HotPixel.inl: - Changed sym_round() to java_math_round() git-svn-id: http://svn.osgeo.org/geos/trunk@1519 + Changed sym_round() to java_math_round() git-svn-id: + http://svn.osgeo.org/geos/trunk@1519 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * source/noding/ScaledNoder.cpp: Oops, uninitialized value fix git-svn-id: http://svn.osgeo.org/geos/trunk@1518 + * source/noding/ScaledNoder.cpp: Oops, uninitialized value fix + git-svn-id: http://svn.osgeo.org/geos/trunk@1518 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * ChangeLog: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@1517 + * ChangeLog: Updated git-svn-id: + http://svn.osgeo.org/geos/trunk@1517 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/headers/geos/noding/IntersectionFinderAdder.h: Better - doxygen comment git-svn-id: http://svn.osgeo.org/geos/trunk@1516 + doxygen comment git-svn-id: http://svn.osgeo.org/geos/trunk@1516 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/operation/buffer/RightmostEdgeFinder.cpp: Assertions - checking git-svn-id: http://svn.osgeo.org/geos/trunk@1515 + checking git-svn-id: http://svn.osgeo.org/geos/trunk@1515 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/headers/geos/noding/ScaledNoder.h: removed reduntant port - info git-svn-id: http://svn.osgeo.org/geos/trunk@1514 + info git-svn-id: http://svn.osgeo.org/geos/trunk@1514 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * source/headers/geos/noding/snapround/SimpleSnapRounder.h, source/noding/snapround/SimpleSnapRounder.cpp: moved some - implementations from header to .cpp file (taken out of inline) git-svn-id: http://svn.osgeo.org/geos/trunk@1513 + implementations from header to .cpp file (taken out of inline) + git-svn-id: http://svn.osgeo.org/geos/trunk@1513 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli @@ -20005,18 +25688,20 @@ * source/headers/geos/noding/ScaledNoder.h, source/noding/ScaledNoder.cpp: Fixed scale() function to remove repeated points *after* rounding. Added brief doxygen class - description. git-svn-id: http://svn.osgeo.org/geos/trunk@1512 + description. git-svn-id: http://svn.osgeo.org/geos/trunk@1512 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli * ChangeLog, source/operation/buffer/BufferOp.cpp: Fixed misuse of - precision model in noder (bufferFixedPrecision) git-svn-id: http://svn.osgeo.org/geos/trunk@1511 + precision model in noder (bufferFixedPrecision) git-svn-id: + http://svn.osgeo.org/geos/trunk@1511 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli - * ChangeLog: buffer headers reduction item git-svn-id: http://svn.osgeo.org/geos/trunk@1510 + * ChangeLog: buffer headers reduction item git-svn-id: + http://svn.osgeo.org/geos/trunk@1510 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli @@ -20024,7 +25709,8 @@ * source/headers/geos/opBuffer.h, source/headers/geos/operation/buffer/Makefile.am: Do not install following buffer headers: BufferBuilder.h, OffsetCurveSetBuilder.h, - BufferSubgraph.h, SubgraphDepthLocater.h, RightmostEdgeFinder.h git-svn-id: http://svn.osgeo.org/geos/trunk@1509 + BufferSubgraph.h, SubgraphDepthLocater.h, RightmostEdgeFinder.h + git-svn-id: http://svn.osgeo.org/geos/trunk@1509 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli @@ -20032,9 +25718,10 @@ * ChangeLog, source/headers/geos/noding/ScaledNoder.h, source/noding/ScaledNoder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: * source/operation/buffer/OffsetCurveSetBuilder.cpp: used auto_ptr - to protect leaks of CoordinateSequence * source/noding/ScaledNoder.cpp, + to protect leaks of CoordinateSequence * + source/noding/ScaledNoder.cpp, source/headers/geos/noding/ScaledNoder.h: ported JTS bugfix in scale - method. git-svn-id: http://svn.osgeo.org/geos/trunk@1508 + method. git-svn-id: http://svn.osgeo.org/geos/trunk@1508 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-03 Sandro Santilli @@ -20043,20 +25730,22 @@ source/headers/geos/geom/CoordinateArraySequence.h, source/headers/geos/geom/CoordinateSequence.h, tests/unit/geom/CoordinateArraySequenceTest.cpp: added new - non-static CoordinateSequence::removeRepeatedPoints() mutator. git-svn-id: http://svn.osgeo.org/geos/trunk@1507 + non-static CoordinateSequence::removeRepeatedPoints() mutator. + git-svn-id: http://svn.osgeo.org/geos/trunk@1507 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-02 Sandro Santilli * ChangeLog, source/noding/ScaledNoder.cpp: * source/noding/ScaledNoder.cpp: use java_math_round instead of - sym_round. git-svn-id: http://svn.osgeo.org/geos/trunk@1506 + sym_round. git-svn-id: http://svn.osgeo.org/geos/trunk@1506 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-02 Sandro Santilli * source/algorithm/CGAlgorithms.cpp, source/headers/geos/algorithm/CGAlgorithms.h: Added port info and - fixed doxygen comments for CGAlgorithms class git-svn-id: http://svn.osgeo.org/geos/trunk@1505 + fixed doxygen comments for CGAlgorithms class git-svn-id: + http://svn.osgeo.org/geos/trunk@1505 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-02 Sandro Santilli @@ -20066,29 +25755,33 @@ source/headers/geos/operation/polygonize/Makefile.am, source/operation/polygonize/EdgeRing.cpp: Added port info for polygonize/EdgeRing class, polygonize/EdgeRing.h header not - installed. git-svn-id: http://svn.osgeo.org/geos/trunk@1503 + installed. git-svn-id: http://svn.osgeo.org/geos/trunk@1503 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-02 Sandro Santilli * ChangeLog, source/operation/polygonize/{polygonizeEdgeRing.cpp => EdgeRing.cpp}, source/operation/polygonize/Makefile.am: * source/operation/polygonize/: polygonizeEdgeRing.cpp renamed to - EdgeRing.cpp, to follow JTS naming. git-svn-id: http://svn.osgeo.org/geos/trunk@1502 + EdgeRing.cpp, to follow JTS naming. git-svn-id: + http://svn.osgeo.org/geos/trunk@1502 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-05-02 Sandro Santilli - * ChangeLog, source/io/WKBReader.cpp: * source/io/WKBReader.cpp: fixed reads of XDR WKB. git-svn-id: http://svn.osgeo.org/geos/trunk@1500 + * ChangeLog, source/io/WKBReader.cpp: * source/io/WKBReader.cpp: fixed reads of XDR WKB. git-svn-id: + http://svn.osgeo.org/geos/trunk@1500 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-28 Sandro Santilli - * tests/xmltester/Makefile.am: Added 'verbose-test' rule git-svn-id: http://svn.osgeo.org/geos/trunk@1497 + * tests/xmltester/Makefile.am: Added 'verbose-test' rule + git-svn-id: http://svn.osgeo.org/geos/trunk@1497 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-28 Sandro Santilli - * NEWS: Added note about Geometry constructors git-svn-id: http://svn.osgeo.org/geos/trunk@1496 + * NEWS: Added note about Geometry constructors git-svn-id: + http://svn.osgeo.org/geos/trunk@1496 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-28 Sandro Santilli @@ -20096,8 +25789,9 @@ * ChangeLog, source/geom/GeometryFactory.cpp, source/geom/Polygon.cpp, source/headers/geos/geom/GeometryFactory.h: * source/geom/GeometryFactory.cpp, source/headers/geos/geom/GeometryFactory.h: added LineString copy - constructor. * source/geom/Polygon.cpp: fixed getBoundary method to always return - a geometry composed by LineStrings (not LinearRings) git-svn-id: http://svn.osgeo.org/geos/trunk@1495 + constructor. * source/geom/Polygon.cpp: fixed getBoundary method to + always return a geometry composed by LineStrings (not LinearRings) + git-svn-id: http://svn.osgeo.org/geos/trunk@1495 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-28 Sandro Santilli @@ -20106,7 +25800,8 @@ source/headers/geos/operation/predicate/RectangleIntersects.h, source/io/WKTWriter.cpp, source/operation/predicate/RectangleIntersects.cpp: removed warnings - related to change in getNumPoints() return type. git-svn-id: http://svn.osgeo.org/geos/trunk@1494 + related to change in getNumPoints() return type. git-svn-id: + http://svn.osgeo.org/geos/trunk@1494 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-28 Sandro Santilli @@ -20125,7 +25820,8 @@ source/headers/geos/geom/Polygon.h: Geometry constructors made protected, to ensure all constructions use GeometryFactory, which has been made friend of all Geometry derivates. getNumPoints() - changed to return size_t. git-svn-id: http://svn.osgeo.org/geos/trunk@1493 + changed to return size_t. git-svn-id: + http://svn.osgeo.org/geos/trunk@1493 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-28 Sandro Santilli @@ -20133,56 +25829,62 @@ * ChangeLog, tests/unit/geom/LineStringTest.cpp, tests/unit/geom/MultiPointTest.cpp, tests/unit/geom/PointTest.cpp, tests/unit/geom/PolygonTest.cpp: Unit tests: only construct Geoms - using GeometryFactory. git-svn-id: http://svn.osgeo.org/geos/trunk@1492 + using GeometryFactory. git-svn-id: + http://svn.osgeo.org/geos/trunk@1492 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-27 Sandro Santilli * ChangeLog, source/headers/geos/geomgraph/Node.h: Z check removed from invariant tester to avoid aborts due to differences in FP - computations. git-svn-id: http://svn.osgeo.org/geos/trunk@1491 + computations. git-svn-id: http://svn.osgeo.org/geos/trunk@1491 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-27 Sandro Santilli * source/geomgraph/PlanarGraph.cpp: use output operators in - debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1490 + debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1490 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-27 Sandro Santilli * ChangeLog, source/geomgraph/NodeMap.cpp: (addNode): always use the Node Coordinate as a key in the map to - reduce likeliness of a premature deletion. git-svn-id: http://svn.osgeo.org/geos/trunk@1489 + reduce likeliness of a premature deletion. git-svn-id: + http://svn.osgeo.org/geos/trunk@1489 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-27 Sandro Santilli * source/geomgraph/Node.cpp: standard algorithm used in addZ() for - vector seek git-svn-id: http://svn.osgeo.org/geos/trunk@1488 + vector seek git-svn-id: http://svn.osgeo.org/geos/trunk@1488 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-26 Sandro Santilli * ChangeLog, source/io/StringTokenizer.cpp, source/io/WKTReader.cpp, tests/xmltester/testLeaksBig.xml: Had - WKTReader accept correct form for MultiPoint git-svn-id: http://svn.osgeo.org/geos/trunk@1485 + WKTReader accept correct form for MultiPoint git-svn-id: + http://svn.osgeo.org/geos/trunk@1485 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-26 Sandro Santilli - * ChangeLog: Added mloskot item (bug#100) git-svn-id: http://svn.osgeo.org/geos/trunk@1482 + * ChangeLog: Added mloskot item (bug#100) git-svn-id: + http://svn.osgeo.org/geos/trunk@1482 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-26 Sandro Santilli * ChangeLog, tools/geos-config.in: tools/geos-config.in: fixed - library path to use layout detected by autoconf git-svn-id: http://svn.osgeo.org/geos/trunk@1481 + library path to use layout detected by autoconf git-svn-id: + http://svn.osgeo.org/geos/trunk@1481 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-24 Sandro Santilli * source/simplify/TopologyPreservingSimplifier.cpp: Public - constructors change made permanent git-svn-id: http://svn.osgeo.org/geos/trunk@1480 + constructors change made permanent git-svn-id: + http://svn.osgeo.org/geos/trunk@1480 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-23 Mateusz Loskot @@ -20190,30 +25892,33 @@ * .cvsignore, tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: Small refactoring of DouglasPeuckerSimplifierTest (prefer to use ctor instead of operator= to create objects). Added new patterns to - .cvsignore. git-svn-id: http://svn.osgeo.org/geos/trunk@1479 + .cvsignore. git-svn-id: http://svn.osgeo.org/geos/trunk@1479 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-23 Mateusz Loskot - * .cvsignore: Added new patterns to .cvsignore file. git-svn-id: http://svn.osgeo.org/geos/trunk@1478 + * .cvsignore: Added new patterns to .cvsignore file. git-svn-id: + http://svn.osgeo.org/geos/trunk@1478 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-22 Mateusz Loskot * source/simplify/TopologyPreservingSimplifier.cpp: Temporar fix of - Bug #100. This report requires deeper analysis!. git-svn-id: http://svn.osgeo.org/geos/trunk@1477 + Bug #100. This report requires deeper analysis!. git-svn-id: + http://svn.osgeo.org/geos/trunk@1477 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-21 Sandro Santilli * ChangeLog, source/geom/PrecisionModel.cpp: Fixed constructor by - type to always initialize scale factor git-svn-id: http://svn.osgeo.org/geos/trunk@1476 + type to always initialize scale factor git-svn-id: + http://svn.osgeo.org/geos/trunk@1476 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-20 Sandro Santilli * ChangeLog, source/headers/geos/geom/BinaryOp.h: Added missing - debugging output git-svn-id: http://svn.osgeo.org/geos/trunk@1475 + debugging output git-svn-id: http://svn.osgeo.org/geos/trunk@1475 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-20 Sandro Santilli @@ -20221,13 +25926,14 @@ * ChangeLog, source/algorithm/HCoordinate.cpp, source/headers/geos/algorithm/HCoordinate.h: HCoordinate class changed to use long double types internally, in order to improve - computation precision git-svn-id: http://svn.osgeo.org/geos/trunk@1474 + computation precision git-svn-id: + http://svn.osgeo.org/geos/trunk@1474 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-20 Sandro Santilli * source/headers/geos/algorithm/LineIntersector.h: Added some more - doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1473 + doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1473 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-20 Sandro Santilli @@ -20235,51 +25941,59 @@ * ChangeLog, source/algorithm/HCoordinate.cpp: source/algorithm/HCoordinate.cpp: added compile time define to force storage of intermediate computation values to variables (in order to - make the -ffloat-store gcc switch effective). Disabled by default. git-svn-id: http://svn.osgeo.org/geos/trunk@1472 + make the -ffloat-store gcc switch effective). Disabled by default. + git-svn-id: http://svn.osgeo.org/geos/trunk@1472 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-19 Sandro Santilli - * TODO: Added snapround and simplify tests items git-svn-id: http://svn.osgeo.org/geos/trunk@1471 + * TODO: Added snapround and simplify tests items git-svn-id: + http://svn.osgeo.org/geos/trunk@1471 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-19 Sandro Santilli - * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1470 + * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1470 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli * ChangeLog, capi/geos_c.cpp: Had CAPI use new BinaryOp class in an - aim to reduce robustness problems git-svn-id: http://svn.osgeo.org/geos/trunk@1469 + aim to reduce robustness problems git-svn-id: + http://svn.osgeo.org/geos/trunk@1469 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli - * TODO: updated, somehow git-svn-id: http://svn.osgeo.org/geos/trunk@1468 + * TODO: updated, somehow git-svn-id: + http://svn.osgeo.org/geos/trunk@1468 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli * ChangeLog, source/operation/overlay/OverlayOp.cpp: removed - precision reduction code (use BinaryOp for that) git-svn-id: http://svn.osgeo.org/geos/trunk@1467 + precision reduction code (use BinaryOp for that) git-svn-id: + http://svn.osgeo.org/geos/trunk@1467 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli - * source/headers/geos/geom/Makefile.am: Added BinaryOp.h header git-svn-id: http://svn.osgeo.org/geos/trunk@1466 + * source/headers/geos/geom/Makefile.am: Added BinaryOp.h header + git-svn-id: http://svn.osgeo.org/geos/trunk@1466 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli * source/headers/geos/operation/overlay/OverlayOp.h: fixed missing - namespace qualification in overlay::overlayOp git-svn-id: http://svn.osgeo.org/geos/trunk@1465 + namespace qualification in overlay::overlayOp git-svn-id: + http://svn.osgeo.org/geos/trunk@1465 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli * ChangeLog, tests/xmltester/XMLTester.cpp: XMLTester binary ops - invoked using the new BinaryOp template function. git-svn-id: http://svn.osgeo.org/geos/trunk@1464 + invoked using the new BinaryOp template function. git-svn-id: + http://svn.osgeo.org/geos/trunk@1464 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli @@ -20287,51 +26001,59 @@ * ChangeLog, source/headers/geos/geom/BinaryOp.h: new geos::Geom::BinaryOp template function implementing various heuristics aimed at making binary geometry ops work around - robustness issues. git-svn-id: http://svn.osgeo.org/geos/trunk@1463 + robustness issues. git-svn-id: + http://svn.osgeo.org/geos/trunk@1463 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli * ChangeLog, source/headers/geos/operation/overlay/OverlayOp.h: - Added overlayOp() adapter for use in templates expecting binary ops git-svn-id: http://svn.osgeo.org/geos/trunk@1462 + Added overlayOp() adapter for use in templates expecting binary ops + git-svn-id: http://svn.osgeo.org/geos/trunk@1462 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-14 Sandro Santilli * ChangeLog, source/algorithm/HCoordinate.cpp, source/headers/geos/algorithm/HCoordinate.h: Hadded output operator - and debugging prints for HCoordinate. git-svn-id: http://svn.osgeo.org/geos/trunk@1461 + and debugging prints for HCoordinate. git-svn-id: + http://svn.osgeo.org/geos/trunk@1461 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Disables reduced precision - overlayOp (is broken) git-svn-id: http://svn.osgeo.org/geos/trunk@1460 + overlayOp (is broken) git-svn-id: + http://svn.osgeo.org/geos/trunk@1460 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Plugged CommonBitsOp attempts in overlay op, before brute force precision reduction (this - is likely going to change) git-svn-id: http://svn.osgeo.org/geos/trunk@1459 + is likely going to change) git-svn-id: + http://svn.osgeo.org/geos/trunk@1459 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * source/precision/CommonBitsOp.cpp: "always build before commit" - (forgot a closing paren) git-svn-id: http://svn.osgeo.org/geos/trunk@1458 + (forgot a closing paren) git-svn-id: + http://svn.osgeo.org/geos/trunk@1458 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * ChangeLog, source/headers/geos/precision/CommonBitsOp.h, source/precision/CommonBitsOp.cpp: fixed bug in binary ops failing - to consistently reduce operands. git-svn-id: http://svn.osgeo.org/geos/trunk@1457 + to consistently reduce operands. git-svn-id: + http://svn.osgeo.org/geos/trunk@1457 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli - * capi/geostest.c: fixed bug introduced by previous commit git-svn-id: http://svn.osgeo.org/geos/trunk@1456 + * capi/geostest.c: fixed bug introduced by previous commit + git-svn-id: http://svn.osgeo.org/geos/trunk@1456 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli @@ -20341,26 +26063,30 @@ source/simplify/TaggedLineString.cpp, source/simplify/TaggedLineStringSimplifier.cpp, source/simplify/TopologyPreservingSimplifier.cpp: Many debugging - lines and assertions added. Fixed bug in TaggedLineString class. git-svn-id: http://svn.osgeo.org/geos/trunk@1455 + lines and assertions added. Fixed bug in TaggedLineString class. + git-svn-id: http://svn.osgeo.org/geos/trunk@1455 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * ChangeLog, capi/geos_c.cpp: Use default GeometryFactory instance - (finishGEOS() is a no-op now) git-svn-id: http://svn.osgeo.org/geos/trunk@1454 + (finishGEOS() is a no-op now) git-svn-id: + http://svn.osgeo.org/geos/trunk@1454 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * ChangeLog, capi/geos_c.cpp, capi/geos_c.h.in, capi/geostest.c: Added GEOSSimplify and GEOSTopologyPreserveSimplify interfaces. - Removed compiler warnings in geostest git-svn-id: http://svn.osgeo.org/geos/trunk@1453 + Removed compiler warnings in geostest git-svn-id: + http://svn.osgeo.org/geos/trunk@1453 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * source/simplify/DouglasPeuckerSimplifier.cpp: Fixed a bug in - DPTransformer handling of MultiPolygons git-svn-id: http://svn.osgeo.org/geos/trunk@1452 + DPTransformer handling of MultiPolygons git-svn-id: + http://svn.osgeo.org/geos/trunk@1452 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli @@ -20369,13 +26095,15 @@ source/headers/geos/simplify/TopologyPreservingSimplifier.h, source/simplify/Makefile.am, source/simplify/TopologyPreservingSimplifier.cpp: Made - TopologyPreservingSimplifier implementation successfully build git-svn-id: http://svn.osgeo.org/geos/trunk@1451 + TopologyPreservingSimplifier implementation successfully build + git-svn-id: http://svn.osgeo.org/geos/trunk@1451 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli * ChangeLog, tests/unit/io/WKBReaderTest.cpp: Forced NDR output (to - not rely on architecture). Removed CRs endings. git-svn-id: http://svn.osgeo.org/geos/trunk@1450 + not rely on architecture). Removed CRs endings. git-svn-id: + http://svn.osgeo.org/geos/trunk@1450 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli @@ -20388,7 +26116,8 @@ source/simplify/Makefile.am, source/simplify/TaggedLinesSimplifier.cpp, source/simplify/TopologyPreservingSimplifier.cpp: - TopologyPreservingSimplifier initial port git-svn-id: http://svn.osgeo.org/geos/trunk@1449 + TopologyPreservingSimplifier initial port git-svn-id: + http://svn.osgeo.org/geos/trunk@1449 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Sandro Santilli @@ -20403,29 +26132,33 @@ source/simplify/Makefile.am, source/simplify/TaggedLinesSimplifier.cpp, source/simplify/TopologyPreservingSimplifier.cpp: Initial - implementation of TaggedLinesSimplifier class git-svn-id: http://svn.osgeo.org/geos/trunk@1448 + implementation of TaggedLinesSimplifier class git-svn-id: + http://svn.osgeo.org/geos/trunk@1448 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Mateusz Loskot * source/headers/geos/simplify/LineSegmentIndex.h, source/simplify/LineSegmentIndex.cpp: Removed definition of copy - ctor and assignment operator for LineSegmentString class. git-svn-id: http://svn.osgeo.org/geos/trunk@1447 + ctor and assignment operator for LineSegmentString class. + git-svn-id: http://svn.osgeo.org/geos/trunk@1447 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-13 Mateusz Loskot * source/headers/geos/simplify/TaggedLineString.h, source/simplify/TaggedLineString.cpp: Removed definition of copy - ctor and assignment operator for TaggedLineString class. According + ctor and assignment operator for TaggedLineString class. According to following rule: Declaring, but not defining, private copy - operations has the effect of "turning off" copying for the class. git-svn-id: http://svn.osgeo.org/geos/trunk@1446 + operations has the effect of "turning off" copying for the class. + git-svn-id: http://svn.osgeo.org/geos/trunk@1446 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli * ChangeLog: Added note about reduction of installed headers in - simplify namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1445 + simplify namespace git-svn-id: + http://svn.osgeo.org/geos/trunk@1445 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli @@ -20438,7 +26171,8 @@ source/simplify/Makefile.am, source/simplify/TaggedLineSegment.cpp, source/simplify/TaggedLineStringSimplifier.cpp: Ported TaggedLineStringSimplifier class, made LineSegment class polymorphic - to fix derivation of TaggedLineSegment git-svn-id: http://svn.osgeo.org/geos/trunk@1444 + to fix derivation of TaggedLineSegment git-svn-id: + http://svn.osgeo.org/geos/trunk@1444 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli @@ -20447,7 +26181,8 @@ source/headers/geos/simplify/Makefile.am, source/headers/geos/simplify/TaggedLineString.h, source/simplify/LineSegmentIndex.cpp, source/simplify/Makefile.am, - source/simplify/TaggedLineString.cpp: LineSegmentIndex class git-svn-id: http://svn.osgeo.org/geos/trunk@1443 + source/simplify/TaggedLineString.cpp: LineSegmentIndex class + git-svn-id: http://svn.osgeo.org/geos/trunk@1443 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli @@ -20457,38 +26192,43 @@ source/headers/geos/simplify/TaggedLineString.h, source/simplify/Makefile.am, source/simplify/TaggedLineSegment.cpp, source/simplify/TaggedLineString.cpp: Initial implementation of - TaggedLineSegment and TaggedLineString classes git-svn-id: http://svn.osgeo.org/geos/trunk@1442 + TaggedLineSegment and TaggedLineString classes git-svn-id: + http://svn.osgeo.org/geos/trunk@1442 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Added support for use of - CommonBitsOp in reduced precision attempts (compile-time option) git-svn-id: http://svn.osgeo.org/geos/trunk@1441 + CommonBitsOp in reduced precision attempts (compile-time option) + git-svn-id: http://svn.osgeo.org/geos/trunk@1441 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli - * source/algorithm/LineIntersector.cpp: Fixed debugging line git-svn-id: http://svn.osgeo.org/geos/trunk@1440 + * source/algorithm/LineIntersector.cpp: Fixed debugging line + git-svn-id: http://svn.osgeo.org/geos/trunk@1440 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli * source/headers/geos/geom/GeometryFactory.h: Removed Geometry.h and - CoordinateSequence.h includes. The former created a circular - dependency. git-svn-id: http://svn.osgeo.org/geos/trunk@1439 + CoordinateSequence.h includes. The former created a circular + dependency. git-svn-id: http://svn.osgeo.org/geos/trunk@1439 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli * ChangeLog, source/io/WKBReader.cpp: Fixed exceptions constructors - (were using operator+ with strings and const char*) git-svn-id: http://svn.osgeo.org/geos/trunk@1438 + (were using operator+ with strings and const char*) git-svn-id: + http://svn.osgeo.org/geos/trunk@1438 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-12 Sandro Santilli * ChangeLog, source/headers/geos/io/WKBReader.h, source/io/WKBReader.cpp: Added WKBReader default ctor using default - GeometryFactory instance git-svn-id: http://svn.osgeo.org/geos/trunk@1437 + GeometryFactory instance git-svn-id: + http://svn.osgeo.org/geos/trunk@1437 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli @@ -20499,13 +26239,15 @@ source/simplify/DouglasPeuckerSimplifier.cpp, source/simplify/Makefile.am, tests/unit/Makefile.am, tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp: - geos::simplify::DouglasPeukerSimplifier class + unit test git-svn-id: http://svn.osgeo.org/geos/trunk@1436 + geos::simplify::DouglasPeukerSimplifier class + unit test + git-svn-id: http://svn.osgeo.org/geos/trunk@1436 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli * source/headers/geos/geom/util/GeometryTransformer.h: used typedef - for auto_ptr git-svn-id: http://svn.osgeo.org/geos/trunk@1435 + for auto_ptr git-svn-id: + http://svn.osgeo.org/geos/trunk@1435 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli @@ -20514,13 +26256,14 @@ source/geom/util/Makefile.am, source/headers/geos/geom/util/GeometryTransformer.h, source/headers/geos/geom/util/Makefile.am: GeometryTransformer class - ported git-svn-id: http://svn.osgeo.org/geos/trunk@1434 + ported git-svn-id: http://svn.osgeo.org/geos/trunk@1434 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli * source/headers/geos/geom/CoordinateSequence.h: Added - CoordinateSequence::AutoPtr typedef git-svn-id: http://svn.osgeo.org/geos/trunk@1433 + CoordinateSequence::AutoPtr typedef git-svn-id: + http://svn.osgeo.org/geos/trunk@1433 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli @@ -20530,13 +26273,14 @@ source/headers/geos/geom/GeometryFactory.h, source/headers/geos/geom/LineString.h, source/headers/geos/geom/LinearRing.h: Added LineString and - LinearRing constructors by auto_ptr git-svn-id: http://svn.osgeo.org/geos/trunk@1432 + LinearRing constructors by auto_ptr git-svn-id: + http://svn.osgeo.org/geos/trunk@1432 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli * source/headers/geos/geom/GeometryList.h: Added missing duplicated - include sentinel git-svn-id: http://svn.osgeo.org/geos/trunk@1431 + include sentinel git-svn-id: http://svn.osgeo.org/geos/trunk@1431 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli @@ -20544,19 +26288,20 @@ * source/geom/GeometryList.cpp, source/geom/Makefile.am, source/headers/geos/geom/GeometryList.h, source/headers/geos/geom/Makefile.am: Initial implementation of a - GeometryList class, to be used to manage lists of Geometry pointers. git-svn-id: http://svn.osgeo.org/geos/trunk@1430 + GeometryList class, to be used to manage lists of Geometry pointers. + git-svn-id: http://svn.osgeo.org/geos/trunk@1430 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli * source/headers/geos/geom/Geometry.h: Added Geometry::AutoPtr - typedef git-svn-id: http://svn.osgeo.org/geos/trunk@1429 + typedef git-svn-id: http://svn.osgeo.org/geos/trunk@1429 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-11 Sandro Santilli * source/geom/Geometry.cpp: Fixed initialization list (removed - compiler warning) git-svn-id: http://svn.osgeo.org/geos/trunk@1428 + compiler warning) git-svn-id: http://svn.osgeo.org/geos/trunk@1428 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli @@ -20570,8 +26315,9 @@ source/headers/geos/geom/LineString.h, source/headers/geos/geom/Point.h, source/headers/geos/geom/Polygon.h: Changed Geometry::envelope - member to be of type auto_ptr. Changed - computeEnvelopeInternal() signater to return auto_ptr git-svn-id: http://svn.osgeo.org/geos/trunk@1427 + member to be of type auto_ptr. Changed + computeEnvelopeInternal() signater to return auto_ptr + git-svn-id: http://svn.osgeo.org/geos/trunk@1427 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli @@ -20583,43 +26329,50 @@ source/headers/geos/geom/Point.h, tests/unit/geom/LineStringTest.cpp, tests/unit/geom/PointTest.cpp: Changed LineString::points and Point::coordinates to be wrapped in - an auto_ptr<>. This should close bugs #86 and #89 git-svn-id: http://svn.osgeo.org/geos/trunk@1426 + an auto_ptr<>. This should close bugs #86 and #89 git-svn-id: + http://svn.osgeo.org/geos/trunk@1426 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli * ChangeLog: First manual edit (will likely update later tonight... - with changes grouped by date) git-svn-id: http://svn.osgeo.org/geos/trunk@1425 + with changes grouped by date) git-svn-id: + http://svn.osgeo.org/geos/trunk@1425 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli * tests/xmltester/TestInteriorPoint.xml: Re-synced with JTS version - (so this actually *was* a bug :) git-svn-id: http://svn.osgeo.org/geos/trunk@1424 + (so this actually *was* a bug :) git-svn-id: + http://svn.osgeo.org/geos/trunk@1424 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli * source/geom/Geometry.cpp: Fixed a bug introduced by previous - commit in getCentroid() git-svn-id: http://svn.osgeo.org/geos/trunk@1423 + commit in getCentroid() git-svn-id: + http://svn.osgeo.org/geos/trunk@1423 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli * source/geom/Geometry.cpp: Fixed getCentroid(Coordinate&) to round - using PrecisionModel all unit tests succeed. git-svn-id: http://svn.osgeo.org/geos/trunk@1422 + using PrecisionModel all unit tests succeed. git-svn-id: + http://svn.osgeo.org/geos/trunk@1422 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli * source/headers/geos/io/WKTReader.h, source/headers/geos/io/WKTReader.inl: Added default ctor for - WKTReader (using GeometryFactory's default instance) git-svn-id: http://svn.osgeo.org/geos/trunk@1421 + WKTReader (using GeometryFactory's default instance) git-svn-id: + http://svn.osgeo.org/geos/trunk@1421 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli - * tools/geos-config.in: Removed INLINE flags from geos-config --libs git-svn-id: http://svn.osgeo.org/geos/trunk@1420 + * tools/geos-config.in: Removed INLINE flags from geos-config --libs + git-svn-id: http://svn.osgeo.org/geos/trunk@1420 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli @@ -20628,7 +26381,8 @@ source/headers/geos/geom/GeometryFactory.h, source/io/Unload.cpp: Added GeometryFactory::defaultInstance() Made Geometry::INTERNAL_GEOMETRY_FACTORY an alias for it removed last - deletion from Unload::Release class git-svn-id: http://svn.osgeo.org/geos/trunk@1419 + deletion from Unload::Release class git-svn-id: + http://svn.osgeo.org/geos/trunk@1419 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli @@ -20644,14 +26398,16 @@ source/inlines.cpp, source/io/ByteOrderDataInStream.cpp, source/io/WKTReader.cpp, source/operation/overlay/OverlayOp.cpp: Added inline-replicator implementation files to make sure functions - in .inl files are still available out-of-line. A side effect is - this should fix MingW build. git-svn-id: http://svn.osgeo.org/geos/trunk@1418 + in .inl files are still available out-of-line. A side effect is this + should fix MingW build. git-svn-id: + http://svn.osgeo.org/geos/trunk@1418 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Sandro Santilli * tests/unit/algorithm/PointLocatorTest.cpp: Uncommented required - Geometry.h include (for use in auto_ptr) git-svn-id: http://svn.osgeo.org/geos/trunk@1417 + Geometry.h include (for use in auto_ptr) git-svn-id: + http://svn.osgeo.org/geos/trunk@1417 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-10 Mateusz Loskot @@ -20666,37 +26422,43 @@ tests/unit/geom/MultiPointTest.cpp, tests/unit/util/UniqueCoordinateArrayFilterTest.cpp: Added new test for UniqueCoordinateArrayFilter class. Small fixes related to - signed/unsigned comparison. git-svn-id: http://svn.osgeo.org/geos/trunk@1416 + signed/unsigned comparison. git-svn-id: + http://svn.osgeo.org/geos/trunk@1416 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot - * doc/example.cpp: Small fixes in doc/example.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@1413 + * doc/example.cpp: Small fixes in doc/example.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@1413 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot * tests/xmltester/markup/MarkupSTL.cpp: Removed redundant semicolons - from xmltester sources. git-svn-id: http://svn.osgeo.org/geos/trunk@1412 + from xmltester sources. git-svn-id: + http://svn.osgeo.org/geos/trunk@1412 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot * tests/xmltester/markup/MarkupSTL.cpp: Removed redundant semicolon - reported by g++ -pedantic. git-svn-id: http://svn.osgeo.org/geos/trunk@1411 + reported by g++ -pedantic. git-svn-id: + http://svn.osgeo.org/geos/trunk@1411 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot * source/operation/valid/SweeplineNestedRingTester.cpp: Removed - redundant semicolon reported by g++ -pedantic. git-svn-id: http://svn.osgeo.org/geos/trunk@1410 + redundant semicolon reported by g++ -pedantic. git-svn-id: + http://svn.osgeo.org/geos/trunk@1410 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot * tests/unit/Makefile.am, tests/unit/geom/IntersectionMatrixTest.cpp: Added Unit Test for - IntersectionMatrix class. git-svn-id: http://svn.osgeo.org/geos/trunk@1409 + IntersectionMatrix class. git-svn-id: + http://svn.osgeo.org/geos/trunk@1409 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot @@ -20704,62 +26466,75 @@ * source/headers/geos/geom/IntersectionMatrix.h: [SORRY] Added comments for doxygen based on JTS docs. Added row/col dimension consts. Added asserts in functions to check if given row/col is in - range. git-svn-id: http://svn.osgeo.org/geos/trunk@1408 + range. git-svn-id: http://svn.osgeo.org/geos/trunk@1408 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-09 Mateusz Loskot * source/geom/IntersectionMatrix.cpp: Added comments for doxygen based on JTS docs. Added row/col dimension consts. Added asserts in - functions to check if given row/col is in range. git-svn-id: http://svn.osgeo.org/geos/trunk@1407 + functions to check if given row/col is in range. git-svn-id: + http://svn.osgeo.org/geos/trunk@1407 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-08 Mateusz Loskot * tests/tut/tut.h, tests/tut/tut_reporter.h, tests/tut/tut_restartable.h: Added copyright notice to TUT files. - Small cleaning. git-svn-id: http://svn.osgeo.org/geos/trunk@1406 + Small cleaning. git-svn-id: http://svn.osgeo.org/geos/trunk@1406 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-08 Sandro Santilli - * source/geomgraph/EdgeEnd.cpp: Added assertion git-svn-id: http://svn.osgeo.org/geos/trunk@1405 + * source/geomgraph/EdgeEnd.cpp: Added assertion git-svn-id: + http://svn.osgeo.org/geos/trunk@1405 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-08 Sandro Santilli * source/geomgraph/NodeMap.cpp: assertion checking, mergeLabel() - call fix (bug#91) git-svn-id: http://svn.osgeo.org/geos/trunk@1404 + call fix (bug#91) git-svn-id: http://svn.osgeo.org/geos/trunk@1404 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli * source/geomgraph/PlanarGraph.cpp, source/headers/geos/geomgraph/PlanarGraph.h: Port info, doxygen - comments, assertion checking git-svn-id: http://svn.osgeo.org/geos/trunk@1403 + comments, assertion checking git-svn-id: + http://svn.osgeo.org/geos/trunk@1403 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli * source/geomgraph/Node.cpp, source/headers/geos/geomgraph/Node.h: Port info, doxygen comments, testInvariant(), many assertionss, - handling of the NULL EdgeEndStar member git-svn-id: http://svn.osgeo.org/geos/trunk@1402 + handling of the NULL EdgeEndStar member git-svn-id: + http://svn.osgeo.org/geos/trunk@1402 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Use of - auto_ptr<> to prevent confusing leaks in tester git-svn-id: http://svn.osgeo.org/geos/trunk@1401 + auto_ptr<> to prevent confusing leaks in tester git-svn-id: + http://svn.osgeo.org/geos/trunk@1401 + 5242fede-7e19-0410-aef8-94bd7d2200fb + +2006-04-07 Mateusz Loskot + + * tests/tut/tut_reporter.h: Fixed annoying warnings from TUT. + git-svn-id: http://svn.osgeo.org/geos/trunk@1400 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot - * tests/tut/tut_reporter.h: Fixed annoying warnings from TUT. git-svn-id: http://svn.osgeo.org/geos/trunk@1400 + * : Fixed line-ends to LF. git-svn-id: + http://svn.osgeo.org/geos/trunk@1399 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot - * : Fixed line-ends to LF. git-svn-id: http://svn.osgeo.org/geos/trunk@1399 + * tests/unit/geom/PolygonTest.cpp: Uncommented test nr 38 in + PolygonTest.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@1398 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot @@ -20770,14 +26545,16 @@ tests/unit/geom/MultiPolygonTest.cpp, tests/unit/geom/PointTest.cpp, tests/unit/geom/PolygonTest.cpp, tests/unit/geos_unit.cpp: Added java_math_round() function for - Asymmetric Arithmetic Rounding. Small fixes in Unit Tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1397 + Asymmetric Arithmetic Rounding. Small fixes in Unit Tests. + git-svn-id: http://svn.osgeo.org/geos/trunk@1397 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot * tests/unit/geom/GeometryFactoryTest.cpp, tests/unit/geom/PointTest.cpp: Added test nr 29 to PointTest (JTS - conformance). Removed inform() calls from GeometryFactoryTest. git-svn-id: http://svn.osgeo.org/geos/trunk@1396 + conformance). Removed inform() calls from GeometryFactoryTest. + git-svn-id: http://svn.osgeo.org/geos/trunk@1396 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli @@ -20794,47 +26571,52 @@ source/io/WKTWriter.cpp, source/operation/valid/IsValidOp.cpp, source/operation/valid/RepeatedPointTester.cpp: Geometry::getNumGeometries() changed to return 'unsigned int' rather - then 'int' git-svn-id: http://svn.osgeo.org/geos/trunk@1395 + then 'int' git-svn-id: http://svn.osgeo.org/geos/trunk@1395 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli * source/algorithm/LineIntersector.cpp: kept isInSegmentEnvelopes() - check even when not debugging git-svn-id: http://svn.osgeo.org/geos/trunk@1394 + check even when not debugging git-svn-id: + http://svn.osgeo.org/geos/trunk@1394 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli - * source/precision/EnhancedPrecisionOp.cpp: Debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1393 + * source/precision/EnhancedPrecisionOp.cpp: Debugging lines + git-svn-id: http://svn.osgeo.org/geos/trunk@1393 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli * source/headers/geos/precision/CommonBitsRemover.h: made addCommonBits/removeCommonBits interface consistent, doxygen - comments git-svn-id: http://svn.osgeo.org/geos/trunk@1392 + comments git-svn-id: http://svn.osgeo.org/geos/trunk@1392 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli * source/precision/CommonBitsRemover.cpp: debugging lines, - assertions git-svn-id: http://svn.osgeo.org/geos/trunk@1391 + assertions git-svn-id: http://svn.osgeo.org/geos/trunk@1391 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Sandro Santilli - * source/precision/CommonBitsOp.cpp: debugging blocks git-svn-id: http://svn.osgeo.org/geos/trunk@1390 + * source/precision/CommonBitsOp.cpp: debugging blocks git-svn-id: + http://svn.osgeo.org/geos/trunk@1390 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot * tests/unit/Makefile.am, tests/unit/geom/CoordinateTest.cpp: Add - new-line at the EOF some files. git-svn-id: http://svn.osgeo.org/geos/trunk@1389 + new-line at the EOF some files. git-svn-id: + http://svn.osgeo.org/geos/trunk@1389 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot - * .cvsignore: Added new objects to .cvsignore. git-svn-id: http://svn.osgeo.org/geos/trunk@1388 + * .cvsignore: Added new objects to .cvsignore. git-svn-id: + http://svn.osgeo.org/geos/trunk@1388 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot @@ -20844,13 +26626,14 @@ tests/unit/geom/LocationTest.cpp, tests/unit/geom/PointTest.cpp: Added name for anonymous enum in Dimension class (bug). Added missing new-line at the end of source files. Removed CR from line - ends. git-svn-id: http://svn.osgeo.org/geos/trunk@1387 + ends. git-svn-id: http://svn.osgeo.org/geos/trunk@1387 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-07 Mateusz Loskot * tests/unit/geom/Geometry/isRectangleTest.cpp: Adding missing - isRectangleTest.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@1386 + isRectangleTest.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@1386 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot @@ -20871,24 +26654,27 @@ tests/unit/geom/MultiPolygonTest.cpp, tests/unit/geom/PointTest.cpp, tests/unit/geom/PolygonTest.cpp, tests/unit/geom/TriangleTest.cpp, tests/unit/io/WKBReaderTest.cpp: - Adding new Unit Tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1385 + Adding new Unit Tests. git-svn-id: + http://svn.osgeo.org/geos/trunk@1385 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli - * AUTHORS: Added Mateusz Loskot git-svn-id: http://svn.osgeo.org/geos/trunk@1384 + * AUTHORS: Added Mateusz Loskot git-svn-id: + http://svn.osgeo.org/geos/trunk@1384 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot * tests/unit/algorithm/PointLocatorTest.cpp: [UT Files Renaming] Add - PointLocatorTest.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@1383 + PointLocatorTest.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@1383 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot * tests/unit/io/WKBReader.cpp: [UT Files Renaming] Remove 'io' - tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1382 + tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1382 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot @@ -20896,45 +26682,49 @@ * tests/unit/geom/Envelope.cpp, tests/unit/geom/Geometry/isRectangle.cpp, tests/unit/geom/LineSegment.cpp: [UT Files Renaming] Remove 'geom' - tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1381 + tests. git-svn-id: http://svn.osgeo.org/geos/trunk@1381 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot * tests/unit/algorithm/PointLocator.cpp: [UT Files Renaming] Remove - file PointLocator.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@1380 + file PointLocator.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@1380 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot * tests/unit/geos_unit.cpp: New version of Unit Test runner. Now, - it's more GNU style compatible git-svn-id: http://svn.osgeo.org/geos/trunk@1379 + it's more GNU style compatible git-svn-id: + http://svn.osgeo.org/geos/trunk@1379 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Mateusz Loskot * tests/tut/tut.h, tests/tut/tut_reporter.h: Add inform() target in - tut.h and new callbacks in tut_reporter.h git-svn-id: http://svn.osgeo.org/geos/trunk@1378 + tut.h and new callbacks in tut_reporter.h git-svn-id: + http://svn.osgeo.org/geos/trunk@1378 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/algorithm/LineIntersector.cpp, source/headers/geos/algorithm/LineIntersector.h: Const correctness - for debugging function git-svn-id: http://svn.osgeo.org/geos/trunk@1377 + for debugging function git-svn-id: + http://svn.osgeo.org/geos/trunk@1377 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/headers/geos/util/math.h: Added missing rint_vc() forward - declaration git-svn-id: http://svn.osgeo.org/geos/trunk@1376 + declaration git-svn-id: http://svn.osgeo.org/geos/trunk@1376 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * tests/unit/Makefile.am, tests/unit/index/quadtree/DoubleBitsTest.cpp: Added unit test for - DoubleBits git-svn-id: http://svn.osgeo.org/geos/trunk@1375 + DoubleBits git-svn-id: http://svn.osgeo.org/geos/trunk@1375 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli @@ -20945,38 +26735,41 @@ source/precision/CommonBitsOp.cpp, source/precision/CommonBitsRemover.cpp, source/precision/EnhancedPrecisionOp.cpp: Cleanup in geos::precision - namespace (leaks plugged, auto_ptr use, ...) git-svn-id: http://svn.osgeo.org/geos/trunk@1374 + namespace (leaks plugged, auto_ptr use, ...) git-svn-id: + http://svn.osgeo.org/geos/trunk@1374 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/geomgraph/DirectedEdge.cpp: Added printing of EdgeRing if - available git-svn-id: http://svn.osgeo.org/geos/trunk@1373 + available git-svn-id: http://svn.osgeo.org/geos/trunk@1373 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/headers/geos/operation/valid/ConnectedInteriorTester.h: Added private vector to keep track of allocated MaximalEdgeRings - objects git-svn-id: http://svn.osgeo.org/geos/trunk@1372 + objects git-svn-id: http://svn.osgeo.org/geos/trunk@1372 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli - * source/geomgraph/EdgeEnd.cpp: Fixed output function git-svn-id: http://svn.osgeo.org/geos/trunk@1371 + * source/geomgraph/EdgeEnd.cpp: Fixed output function git-svn-id: + http://svn.osgeo.org/geos/trunk@1371 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/operation/valid/ConnectedInteriorTester.cpp: Delayed - deletion of newly allocated MaximalEdgeRings. Existing 'valid' - operation tests don't should instability with this patch. git-svn-id: http://svn.osgeo.org/geos/trunk@1370 + deletion of newly allocated MaximalEdgeRings. Existing 'valid' + operation tests don't should instability with this patch. + git-svn-id: http://svn.osgeo.org/geos/trunk@1370 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/geom/PrecisionModel.cpp: removed spurious lines from - previous commi git-svn-id: http://svn.osgeo.org/geos/trunk@1369 + previous commi git-svn-id: http://svn.osgeo.org/geos/trunk@1369 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli @@ -20984,31 +26777,36 @@ * source/geom/PrecisionModel.cpp, source/headers/geos/geom/PrecisionModel.h, source/headers/geos/geom/PrecisionModel.inl: Port info, more - debugging lines, doxygen comments git-svn-id: http://svn.osgeo.org/geos/trunk@1368 + debugging lines, doxygen comments git-svn-id: + http://svn.osgeo.org/geos/trunk@1368 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli - * source/geom/GeometryFactory.cpp: More debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1367 + * source/geom/GeometryFactory.cpp: More debugging lines + git-svn-id: http://svn.osgeo.org/geos/trunk@1367 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/io/WKBReader.cpp: Fixed bogus static PrecisionModel - variable in ::readCoordinate(). git-svn-id: http://svn.osgeo.org/geos/trunk@1366 + variable in ::readCoordinate(). git-svn-id: + http://svn.osgeo.org/geos/trunk@1366 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/geomgraph/EdgeRing.cpp, source/headers/geos/geomgraph/EdgeRing.h: Added operator<<, added - pts!=NULL assertion in testInvariant() function git-svn-id: http://svn.osgeo.org/geos/trunk@1365 + pts!=NULL assertion in testInvariant() function git-svn-id: + http://svn.osgeo.org/geos/trunk@1365 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli * source/geomgraph/EdgeEnd.cpp, - source/headers/geos/geomgraph/EdgeEnd.h: Added operator<< git-svn-id: http://svn.osgeo.org/geos/trunk@1364 + source/headers/geos/geomgraph/EdgeEnd.h: Added operator<< + git-svn-id: http://svn.osgeo.org/geos/trunk@1364 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli @@ -21017,100 +26815,113 @@ source/geomgraph/TopologyLocation.cpp, source/headers/geos/geomgraph/Label.h, source/headers/geos/geomgraph/TopologyLocation.h: Doxygen comments, - port info, operator<<, assertion checking git-svn-id: http://svn.osgeo.org/geos/trunk@1363 + port info, operator<<, assertion checking git-svn-id: + http://svn.osgeo.org/geos/trunk@1363 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-06 Sandro Santilli - * source/geomgraph/DirectedEdge.cpp: Fixed bug in ::print() function git-svn-id: http://svn.osgeo.org/geos/trunk@1362 + * source/geomgraph/DirectedEdge.cpp: Fixed bug in ::print() function + git-svn-id: http://svn.osgeo.org/geos/trunk@1362 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli * source/headers/geos/geomgraph/Edge.h, source/headers/geos/geomgraph/EdgeRing.h: Moved testInvariant() - methods from private to public, added some comments about them. git-svn-id: http://svn.osgeo.org/geos/trunk@1361 + methods from private to public, added some comments about them. + git-svn-id: http://svn.osgeo.org/geos/trunk@1361 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli - * source/operation/overlay/OverlayOp.cpp: Removed dead code git-svn-id: http://svn.osgeo.org/geos/trunk@1360 + * source/operation/overlay/OverlayOp.cpp: Removed dead code + git-svn-id: http://svn.osgeo.org/geos/trunk@1360 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli * tests/xmltester/markup/MarkupSTL.cpp, tests/xmltester/markup/MarkupSTL.h: Removed annoying warnings from - external source git-svn-id: http://svn.osgeo.org/geos/trunk@1359 + external source git-svn-id: http://svn.osgeo.org/geos/trunk@1359 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli * source/geom/Envelope.cpp, source/headers/geos/geom/Envelope.h, source/headers/geos/geom/Envelope.inl: Fixed copy ctor to support - "Null" Envelope copies. Drop init(Envelope&) method. Port info and - various cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@1358 + "Null" Envelope copies. Drop init(Envelope&) method. Port info and + various cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@1358 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli * source/geom/LineString.cpp, source/headers/geos/geom/LineString.h: Fixed LineString constructor to ensure deletion of - CoordinateSequence argument on exception throw git-svn-id: http://svn.osgeo.org/geos/trunk@1357 + CoordinateSequence argument on exception throw git-svn-id: + http://svn.osgeo.org/geos/trunk@1357 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli * source/headers/geos/util/GEOSException.h: GEOSException derived - from std::exception again, hopefully the correct way now git-svn-id: http://svn.osgeo.org/geos/trunk@1356 + from std::exception again, hopefully the correct way now + git-svn-id: http://svn.osgeo.org/geos/trunk@1356 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-05 Sandro Santilli * source/headers/geos/operation/buffer/RightmostEdgeFinder.h, source/operation/buffer/RightmostEdgeFinder.cpp: Added port - informations and many assertion checking. Fixed bug in - getRightmostSide() method ( a "testing-only" corner case ) git-svn-id: http://svn.osgeo.org/geos/trunk@1355 + informations and many assertion checking. Fixed bug in + getRightmostSide() method ( a "testing-only" corner case ) + git-svn-id: http://svn.osgeo.org/geos/trunk@1355 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli * source/geomgraph/DirectedEdgeStar.cpp: More assertion checking, - less overhead when built with NDEBUG defined git-svn-id: http://svn.osgeo.org/geos/trunk@1353 + less overhead when built with NDEBUG defined git-svn-id: + http://svn.osgeo.org/geos/trunk@1353 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli * source/geomgraph/EdgeEndStar.cpp, source/headers/geos/geomgraph/EdgeEndStar.h: Port info, assertion - checking, indentation git-svn-id: http://svn.osgeo.org/geos/trunk@1352 + checking, indentation git-svn-id: + http://svn.osgeo.org/geos/trunk@1352 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli * source/algorithm/LineIntersector.cpp: Changed NotRepresentableCoordinate exception handler to throw a - TopologyException. This allows further handling. git-svn-id: http://svn.osgeo.org/geos/trunk@1351 + TopologyException. This allows further handling. git-svn-id: + http://svn.osgeo.org/geos/trunk@1351 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli * source/algorithm/HCoordinate.cpp, source/headers/geos/algorithm/HCoordinate.h: Port information + - initialization lists in ctors git-svn-id: http://svn.osgeo.org/geos/trunk@1350 + initialization lists in ctors git-svn-id: + http://svn.osgeo.org/geos/trunk@1350 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli * source/algorithm/HCoordinate.cpp: NotRepresentable condition detected using finite() from rather then using FINITE() - macro. Made ::intersection() body more readable. git-svn-id: http://svn.osgeo.org/geos/trunk@1349 + macro. Made ::intersection() body more readable. git-svn-id: + http://svn.osgeo.org/geos/trunk@1349 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli * source/headers/geos/geom/CoordinateSequence.h: Fixed - applyCoordinateFilter() templated function body git-svn-id: http://svn.osgeo.org/geos/trunk@1348 + applyCoordinateFilter() templated function body git-svn-id: + http://svn.osgeo.org/geos/trunk@1348 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Sandro Santilli @@ -21126,45 +26937,50 @@ source/io/ParseException.cpp, source/operation/overlay/ElevationMatrix.cpp, source/util/GEOSException.cpp: Changed GEOSException hierarchy to be - derived from std::runtime_exception. Removed the - GEOSException::toString redundant method (use ::what() instead) git-svn-id: http://svn.osgeo.org/geos/trunk@1345 + derived from std::runtime_exception. Removed the + GEOSException::toString redundant method (use ::what() instead) + git-svn-id: http://svn.osgeo.org/geos/trunk@1345 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Howard Butler * source/Makefile.vc: Add in changes/missing from previous - rearranging. git-svn-id: http://svn.osgeo.org/geos/trunk@1344 + rearranging. git-svn-id: http://svn.osgeo.org/geos/trunk@1344 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Howard Butler - * capi/geos_c.cpp: GEOS_JTS_PORT is in version.h not platform.h git-svn-id: http://svn.osgeo.org/geos/trunk@1343 + * capi/geos_c.cpp: GEOS_JTS_PORT is in version.h not platform.h + git-svn-id: http://svn.osgeo.org/geos/trunk@1343 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-04 Howard Butler * source/Makefile.vc: remove objects that no longer exist default to - MSVC_VER=1310 git-svn-id: http://svn.osgeo.org/geos/trunk@1342 + MSVC_VER=1310 git-svn-id: http://svn.osgeo.org/geos/trunk@1342 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/geomgraph/DirectedEdge.cpp, source/geomgraph/EdgeEnd.cpp, source/geomgraph/Label.cpp, source/headers/geos/geomgraph/EdgeEnd.h: - Assertion checking, port info, cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1341 + Assertion checking, port info, cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1341 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/headers/geos/operation/GeometryGraphOperation.h, source/operation/GeometryGraphOperation.cpp: - getArgGeometry() parameter type changed from 'int' to 'unsigned - int' - Added port informations - minor assertions checking - minor cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1340 + int' - Added port informations - minor assertions checking - minor + cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1340 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/headers/geos/geom/PrecisionModel.h: Commented out obsoleted - toInternal() method git-svn-id: http://svn.osgeo.org/geos/trunk@1339 + toInternal() method git-svn-id: + http://svn.osgeo.org/geos/trunk@1339 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli @@ -21172,14 +26988,18 @@ * macros/ac_pkg_swig.m4, macros/ac_python_devel.m4, swig/geos.i, swig/python/Makefile.am, swig/python/python.i, swig/ruby/ruby.i, swig/ruby/test/geos_tests.rb, swig/ruby/test/test_helper.rb: Applied - patch by Charlie Savage: - Fixes up the SWIG bindings to use the new GEOS namespaces - Fixes a bug in the Python m4 macro - Adds the -modern flag for SWIG when compiling a Python extension git-svn-id: http://svn.osgeo.org/geos/trunk@1337 + patch by Charlie Savage: - Fixes up the SWIG bindings to use the new + GEOS namespaces - Fixes a bug in the Python m4 macro - Adds the + -modern flag for SWIG when compiling a Python extension + git-svn-id: http://svn.osgeo.org/geos/trunk@1337 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/headers/geos/precision/SimpleGeometryPrecisionReducer.h, source/precision/SimpleGeometryPrecisionReducer.cpp: Made - externally-owned PrecisionModel const git-svn-id: http://svn.osgeo.org/geos/trunk@1336 + externally-owned PrecisionModel const git-svn-id: + http://svn.osgeo.org/geos/trunk@1336 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli @@ -21192,14 +27012,15 @@ source/util/AssertionFailedException.cpp, source/util/IllegalArgumentException.cpp, source/util/Makefile.am, source/util/UnsupportedOperationException.cpp: Removed - implementation files build spec for fully-inlined classes git-svn-id: http://svn.osgeo.org/geos/trunk@1334 + implementation files build spec for fully-inlined classes + git-svn-id: http://svn.osgeo.org/geos/trunk@1334 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/index/strtree/STRtree.cpp, source/noding/snapround/MCIndexSnapRounder.cpp: Added missing - headers git-svn-id: http://svn.osgeo.org/geos/trunk@1333 + headers git-svn-id: http://svn.osgeo.org/geos/trunk@1333 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli @@ -21211,20 +27032,23 @@ source/headers/geos/simplify/Makefile.am, source/simplify/.cvsignore, source/simplify/DouglasPeuckerLineSimplifier.cpp, - source/simplify/Makefile.am: DouglasPeuckerLineSimplifier class port git-svn-id: http://svn.osgeo.org/geos/trunk@1332 + source/simplify/Makefile.am: DouglasPeuckerLineSimplifier class port + git-svn-id: http://svn.osgeo.org/geos/trunk@1332 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/headers/geos/index/strtree/STRtree.h, - source/index/strtree/STRtree.cpp: Added port info, minor cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1331 + source/index/strtree/STRtree.cpp: Added port info, minor cleanups + git-svn-id: http://svn.osgeo.org/geos/trunk@1331 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-04-03 Sandro Santilli * source/headers/geos/index/quadtree/Quadtree.h, source/index/quadtree/Quadtree.cpp: Added port info, cleaned up log - message, minor assertion checking. git-svn-id: http://svn.osgeo.org/geos/trunk@1330 + message, minor assertion checking. git-svn-id: + http://svn.osgeo.org/geos/trunk@1330 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-31 Sandro Santilli @@ -21232,39 +27056,44 @@ * source/geom/GeometryFactory.cpp, source/headers/geos/geom/GeometryFactory.h: A few assertion checking, comments cleanup, use of initialization lists in - constructors, handled NULL parameters. git-svn-id: http://svn.osgeo.org/geos/trunk@1329 + constructors, handled NULL parameters. git-svn-id: + http://svn.osgeo.org/geos/trunk@1329 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-31 Sandro Santilli * NEWS, source/geom/LineString.cpp, source/headers/geos/geom/LineString.h: Added many assertions - checking in LineString implementation. Changed ::getCoordinate() to - return NULL on empty geom. Changed ::get{Start,End}Point() to - return NULL on empty geom. git-svn-id: http://svn.osgeo.org/geos/trunk@1328 + checking in LineString implementation. Changed ::getCoordinate() to + return NULL on empty geom. Changed ::get{Start,End}Point() to return + NULL on empty geom. git-svn-id: + http://svn.osgeo.org/geos/trunk@1328 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-31 Sandro Santilli * source/headers/geos/geom/Geometry.h: Added comment about possible - NULL return from getCoordinate() git-svn-id: http://svn.osgeo.org/geos/trunk@1327 + NULL return from getCoordinate() git-svn-id: + http://svn.osgeo.org/geos/trunk@1327 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-31 Sandro Santilli * source/geom/Geometry.cpp: Fixed NULL-GeometryFactory constructor - to use INTERNAL_GEOMETRY_FACTORY (should fix bug #81) git-svn-id: http://svn.osgeo.org/geos/trunk@1325 + to use INTERNAL_GEOMETRY_FACTORY (should fix bug #81) git-svn-id: + http://svn.osgeo.org/geos/trunk@1325 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-30 Sandro Santilli - * source/headers/geos/io/WKTReader.h: minor cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1324 + * source/headers/geos/io/WKTReader.h: minor cleanup git-svn-id: + http://svn.osgeo.org/geos/trunk@1324 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli * capi/geos_c.cpp: Added missing 'const' in catch std::exception - statements git-svn-id: http://svn.osgeo.org/geos/trunk@1323 + statements git-svn-id: http://svn.osgeo.org/geos/trunk@1323 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli @@ -21274,18 +27103,21 @@ source/headers/geos/geomgraph/GeometryGraph.h, source/headers/geos/geomgraph/GeometryGraph.inl, source/headers/geos/geomgraph/Makefile.am: Moved GeometryGraph - inlines from .h to .inl file git-svn-id: http://svn.osgeo.org/geos/trunk@1322 + inlines from .h to .inl file git-svn-id: + http://svn.osgeo.org/geos/trunk@1322 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli - * tests/xmltester/TestValid.xml: Sync'ed testfile with JTS head git-svn-id: http://svn.osgeo.org/geos/trunk@1321 + * tests/xmltester/TestValid.xml: Sync'ed testfile with JTS head + git-svn-id: http://svn.osgeo.org/geos/trunk@1321 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli * tests/unit/Makefile.am, tests/unit/algorithm/PointLocator.cpp, - tests/unit/io/WKBReader.cpp: Added PointLocator unit test git-svn-id: http://svn.osgeo.org/geos/trunk@1320 + tests/unit/io/WKBReader.cpp: Added PointLocator unit test + git-svn-id: http://svn.osgeo.org/geos/trunk@1320 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli @@ -21296,68 +27128,76 @@ source/operation/valid/ConnectedInteriorTester.cpp, source/operation/valid/IsValidOp.cpp: EdgeRing equipped with Invariant testing function and lots of exceptional assertions. - Removed useless heap allocations, and pointers usages. git-svn-id: http://svn.osgeo.org/geos/trunk@1319 + Removed useless heap allocations, and pointers usages. git-svn-id: + http://svn.osgeo.org/geos/trunk@1319 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli * source/algorithm/MCPointInRing.cpp, source/headers/geos/algorithm/MCPointInRing.h: const correctness, - useless heap allocations removal git-svn-id: http://svn.osgeo.org/geos/trunk@1318 + useless heap allocations removal git-svn-id: + http://svn.osgeo.org/geos/trunk@1318 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-29 Sandro Santilli * source/headers/geos/operation/valid/QuadtreeNestedRingTester.h, source/operation/valid/QuadtreeNestedRingTester.cpp: Removed useless - heap allocations in construction, enforced const correctness git-svn-id: http://svn.osgeo.org/geos/trunk@1317 + heap allocations in construction, enforced const correctness + git-svn-id: http://svn.osgeo.org/geos/trunk@1317 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * source/io/WKBReader.cpp: Reintroduced rewind of input parameter in - printHEX() [dropped by prev commit] git-svn-id: http://svn.osgeo.org/geos/trunk@1316 + printHEX() [dropped by prev commit] git-svn-id: + http://svn.osgeo.org/geos/trunk@1316 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * source/headers/geos/geom/GeometryFactory.h: Added note about args - responsibility in GeometryFactory constructor git-svn-id: http://svn.osgeo.org/geos/trunk@1315 + responsibility in GeometryFactory constructor git-svn-id: + http://svn.osgeo.org/geos/trunk@1315 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * tests/unit/io/WKBReader.cpp: swapped assert_equals() args to get - obtained/expected the right way. git-svn-id: http://svn.osgeo.org/geos/trunk@1314 + obtained/expected the right way. git-svn-id: + http://svn.osgeo.org/geos/trunk@1314 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli - * source/io/WKBReader.cpp: Simplified printHEX() implementation git-svn-id: http://svn.osgeo.org/geos/trunk@1313 + * source/io/WKBReader.cpp: Simplified printHEX() implementation + git-svn-id: http://svn.osgeo.org/geos/trunk@1313 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * doc/example.cpp: Added macros for sections skip (useful in - debugging) git-svn-id: http://svn.osgeo.org/geos/trunk@1312 + debugging) git-svn-id: http://svn.osgeo.org/geos/trunk@1312 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * tests/unit/Makefile.am, tests/unit/io/WKBReader.cpp: Added simple - test for WKB reader. git-svn-id: http://svn.osgeo.org/geos/trunk@1311 + test for WKB reader. git-svn-id: + http://svn.osgeo.org/geos/trunk@1311 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * source/io/WKBReader.cpp: added missing header for non-inlined - builds git-svn-id: http://svn.osgeo.org/geos/trunk@1310 + builds git-svn-id: http://svn.osgeo.org/geos/trunk@1310 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * source/io/ByteOrderDataInStream.cpp: forgot to add in previous - commit git-svn-id: http://svn.osgeo.org/geos/trunk@1309 + commit git-svn-id: http://svn.osgeo.org/geos/trunk@1309 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli @@ -21367,36 +27207,41 @@ source/headers/geos/io/Makefile.am, source/headers/geos/io/WKBWriter.h, source/io/Makefile.am: ByteOrderDataInStream inlines moved to .inl file, updated - implementation files includes. git-svn-id: http://svn.osgeo.org/geos/trunk@1308 + implementation files includes. git-svn-id: + http://svn.osgeo.org/geos/trunk@1308 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli - * source/io/WKBWriter.cpp: Assertion checking git-svn-id: http://svn.osgeo.org/geos/trunk@1307 + * source/io/WKBWriter.cpp: Assertion checking git-svn-id: + http://svn.osgeo.org/geos/trunk@1307 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * source/headers/geos/geom/LineSegment.h, - source/headers/geos/geom/LineSegment.inl: Headers inclusion fix. git-svn-id: http://svn.osgeo.org/geos/trunk@1306 + source/headers/geos/geom/LineSegment.inl: Headers inclusion fix. + git-svn-id: http://svn.osgeo.org/geos/trunk@1306 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * source/headers/geos/geom/PrecisionModel.h, source/headers/geos/geom/PrecisionModel.inl: Comments cleanup, - system headers included after project headers git-svn-id: http://svn.osgeo.org/geos/trunk@1305 + system headers included after project headers git-svn-id: + http://svn.osgeo.org/geos/trunk@1305 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-28 Sandro Santilli * configure.in: C-API lib version bumped to 1.1.1 (release 2.2.2 - will ship 1.1.0) git-svn-id: http://svn.osgeo.org/geos/trunk@1304 + will ship 1.1.0) git-svn-id: http://svn.osgeo.org/geos/trunk@1304 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli - * source/operation/buffer/OffsetCurveBuilder.cpp: Fixed small leak. git-svn-id: http://svn.osgeo.org/geos/trunk@1302 + * source/operation/buffer/OffsetCurveBuilder.cpp: Fixed small leak. + git-svn-id: http://svn.osgeo.org/geos/trunk@1302 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli @@ -21404,7 +27249,8 @@ * source/headers/geos/operation/buffer/OffsetCurveBuilder.h, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Cleanups and - explicit initializations git-svn-id: http://svn.osgeo.org/geos/trunk@1301 + explicit initializations git-svn-id: + http://svn.osgeo.org/geos/trunk@1301 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli @@ -21419,20 +27265,22 @@ source/operation/overlay/MinimalEdgeRing.cpp, source/operation/valid/ConnectedInteriorTester.cpp: Added INL file for MinimalEdgeRing, added many debugging blocks, fixed memory leak - in ConnectedInteriorTester (bug #59) git-svn-id: http://svn.osgeo.org/geos/trunk@1300 + in ConnectedInteriorTester (bug #59) git-svn-id: + http://svn.osgeo.org/geos/trunk@1300 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * source/headers/geos/geom/Coordinate.h, source/headers/geos/geom/Coordinate.inl: Commented need for - platform.h include git-svn-id: http://svn.osgeo.org/geos/trunk@1299 + platform.h include git-svn-id: + http://svn.osgeo.org/geos/trunk@1299 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * source/geom/Coordinate.cpp: Added missing platform.h include (for - ISNAN macro) git-svn-id: http://svn.osgeo.org/geos/trunk@1298 + ISNAN macro) git-svn-id: http://svn.osgeo.org/geos/trunk@1298 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli @@ -21440,7 +27288,8 @@ * source/headers/geos/operation/valid/ConnectedInteriorTester.h, source/operation/valid/ConnectedInteriorTester.cpp: Added paranoid assertion checking and a note in header about responsibility of - return from buildMaximalEdgeRings() git-svn-id: http://svn.osgeo.org/geos/trunk@1297 + return from buildMaximalEdgeRings() git-svn-id: + http://svn.osgeo.org/geos/trunk@1297 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli @@ -21448,32 +27297,37 @@ * source/headers/geos/operation/valid/ConsistentAreaTester.h, source/operation/valid/ConsistentAreaTester.cpp: Reduced heap allocations and probability of error by making LineIntersector and - RelateNodeGraph part of ConsistentAreaTester class . git-svn-id: http://svn.osgeo.org/geos/trunk@1296 + RelateNodeGraph part of ConsistentAreaTester class . git-svn-id: + http://svn.osgeo.org/geos/trunk@1296 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * source/operation/valid/TopologyValidationError.cpp: added missing - space in exception message git-svn-id: http://svn.osgeo.org/geos/trunk@1295 + space in exception message git-svn-id: + http://svn.osgeo.org/geos/trunk@1295 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * source/headers/geos/geom/Coordinate.inl: moved external includes - after internal ones git-svn-id: http://svn.osgeo.org/geos/trunk@1294 + after internal ones git-svn-id: + http://svn.osgeo.org/geos/trunk@1294 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/TestValid2-big.xml: - Added final isValid test from JTS (floating version) git-svn-id: http://svn.osgeo.org/geos/trunk@1293 + Added final isValid test from JTS (floating version) git-svn-id: + http://svn.osgeo.org/geos/trunk@1293 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/TestValid2.xml, tests/xmltester/testLeaksBig.xml: Extracted TestValid2.xml from - testLeaksBig.xml (target file is taken from JTS source tree) git-svn-id: http://svn.osgeo.org/geos/trunk@1292 + testLeaksBig.xml (target file is taken from JTS source tree) + git-svn-id: http://svn.osgeo.org/geos/trunk@1292 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli @@ -21481,50 +27335,55 @@ * tests/xmltester/Makefile.am, tests/xmltester/TestValid.xml, tests/xmltester/testLeaksBig.xml: Added TestValid.xml test, taken from JTS source tree, already present in testLeaksBig (from which - tests were removed) git-svn-id: http://svn.osgeo.org/geos/trunk@1291 + tests were removed) git-svn-id: + http://svn.osgeo.org/geos/trunk@1291 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli - * NEWS: added namespaces use and headers split git-svn-id: http://svn.osgeo.org/geos/trunk@1290 + * NEWS: added namespaces use and headers split git-svn-id: + http://svn.osgeo.org/geos/trunk@1290 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * capi/geos_c.h.in: Added note about responsibility of return from - GEOSGeomType() git-svn-id: http://svn.osgeo.org/geos/trunk@1289 + GEOSGeomType() git-svn-id: http://svn.osgeo.org/geos/trunk@1289 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-27 Sandro Santilli * source/geom/CoordinateArraySequence.cpp: Bug #79 - Small fix in - CoordinateArraySequence::toString() git-svn-id: http://svn.osgeo.org/geos/trunk@1288 + CoordinateArraySequence::toString() git-svn-id: + http://svn.osgeo.org/geos/trunk@1288 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli - * configure.in: reverted default of assertion checking git-svn-id: http://svn.osgeo.org/geos/trunk@1287 + * configure.in: reverted default of assertion checking git-svn-id: + http://svn.osgeo.org/geos/trunk@1287 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli * TODO, configure.in, tools/geos-config.in: Inlining enabled by - default, assertion checking disabled by default. Added - --enable-cassert and --disable-inline configure switches. Had + default, assertion checking disabled by default. Added + --enable-cassert and --disable-inline configure switches. Had geos-config --cflags output appropriate inline flag if required - (-DGEOS_INLINE) git-svn-id: http://svn.osgeo.org/geos/trunk@1286 + (-DGEOS_INLINE) git-svn-id: http://svn.osgeo.org/geos/trunk@1286 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli * source/operation/linemerge/LineSequencer.cpp: Changed assert() - with Assert::isTrue in addReverseSubpath git-svn-id: http://svn.osgeo.org/geos/trunk@1285 + with Assert::isTrue in addReverseSubpath git-svn-id: + http://svn.osgeo.org/geos/trunk@1285 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli * source/operation/linemerge/LineSequencer.cpp: Fixed to build with - -DNDEBUG git-svn-id: http://svn.osgeo.org/geos/trunk@1284 + -DNDEBUG git-svn-id: http://svn.osgeo.org/geos/trunk@1284 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli @@ -21611,24 +27470,27 @@ source/noding/SegmentString.cpp, source/noding/snapround/HotPixel.cpp, source/noding/snapround/MCIndexSnapRounder.cpp, - source/operation/distance/DistanceOp.cpp: USE_INLINE => GEOS_INLINE git-svn-id: http://svn.osgeo.org/geos/trunk@1283 + source/operation/distance/DistanceOp.cpp: USE_INLINE => GEOS_INLINE + git-svn-id: http://svn.osgeo.org/geos/trunk@1283 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli - * capi/geos_c.cpp: Bug #77 - Missing platform.h git-svn-id: http://svn.osgeo.org/geos/trunk@1282 + * capi/geos_c.cpp: Bug #77 - Missing platform.h git-svn-id: + http://svn.osgeo.org/geos/trunk@1282 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli * source/noding/snapround/MCIndexPointSnapper.cpp, source/operation/buffer/BufferBuilder.cpp: Bugs #77 and #76: missing - git-svn-id: http://svn.osgeo.org/geos/trunk@1281 + git-svn-id: http://svn.osgeo.org/geos/trunk@1281 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-24 Sandro Santilli - * tests/unit/geos_unit.cpp: Bug #78 - Small fixes and cleaning git-svn-id: http://svn.osgeo.org/geos/trunk@1280 + * tests/unit/geos_unit.cpp: Bug #78 - Small fixes and cleaning + git-svn-id: http://svn.osgeo.org/geos/trunk@1280 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli @@ -21641,7 +27503,8 @@ source/headers/geos/geomgraph/DirectedEdgeStar.h, source/headers/geos/util/TopologyException.h, source/operation/overlay/OverlayOp.cpp: Dropped by-pointer - TopologyException constructor, various small cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1278 + TopologyException constructor, various small cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1278 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli @@ -21652,7 +27515,7 @@ source/index/chain/MonotoneChainBuilder.cpp, source/index/quadtree/Node.cpp, source/index/quadtree/NodeBase.cpp, source/index/quadtree/Quadtree.cpp: Fixed to allow build with - GEOS_DEBUG git-svn-id: http://svn.osgeo.org/geos/trunk@1277 + GEOS_DEBUG git-svn-id: http://svn.osgeo.org/geos/trunk@1277 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli @@ -21667,27 +27530,28 @@ source/headers/geos/geom/MultiLineString.inl, source/headers/geos/geom/MultiPolygon.inl, source/operation/distance/DistanceOp.cpp: Fixes to allow build with - -DUSE_INLINE git-svn-id: http://svn.osgeo.org/geos/trunk@1276 + -DUSE_INLINE git-svn-id: http://svn.osgeo.org/geos/trunk@1276 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli * Makefile.am, configure.in: Temporarly excluded 'swig' extension from distribution, to allow for successufull 'dist' rule and - distributed testing. git-svn-id: http://svn.osgeo.org/geos/trunk@1275 + distributed testing. git-svn-id: + http://svn.osgeo.org/geos/trunk@1275 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli * source/headers/geos/Makefile.am, source/headers/geos/operation/relate/Makefile.am: Fixed automake - files git-svn-id: http://svn.osgeo.org/geos/trunk@1274 + files git-svn-id: http://svn.osgeo.org/geos/trunk@1274 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli * source/headers/geos/operation/predicate/Makefile.am: Fixed missing - backslash git-svn-id: http://svn.osgeo.org/geos/trunk@1273 + backslash git-svn-id: http://svn.osgeo.org/geos/trunk@1273 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-23 Sandro Santilli @@ -21707,7 +27571,8 @@ source/precision/CommonBitsRemover.cpp, source/precision/EnhancedPrecisionOp.cpp, source/precision/SimpleGeometryPrecisionReducer.cpp: precision.h - header split, minor optimizations git-svn-id: http://svn.osgeo.org/geos/trunk@1272 + header split, minor optimizations git-svn-id: + http://svn.osgeo.org/geos/trunk@1272 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21734,12 +27599,14 @@ source/noding/snapround/MCIndexPointSnapper.cpp, source/noding/snapround/MCIndexSnapRounder.cpp, source/operation/buffer/BufferBuilder.cpp, - source/operation/valid/IsValidOp.cpp: indexChain.h header split. git-svn-id: http://svn.osgeo.org/geos/trunk@1271 + source/operation/valid/IsValidOp.cpp: indexChain.h header split. + git-svn-id: http://svn.osgeo.org/geos/trunk@1271 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli - * source/headers/geos/geosAlgorithm.h: cleaned up git-svn-id: http://svn.osgeo.org/geos/trunk@1270 + * source/headers/geos/geosAlgorithm.h: cleaned up git-svn-id: + http://svn.osgeo.org/geos/trunk@1270 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21764,9 +27631,10 @@ source/io/WKTWriter.cpp, source/util/CoordinateArrayFiter.cpp, source/util/GeometricShapeFactory.cpp, source/util/UniqueCoordinateArrayFilter.cpp: Removed (almost) all - inclusions of geom.h. Removed obsoleted .cpp files. Fixed a bug in + inclusions of geom.h. Removed obsoleted .cpp files. Fixed a bug in WKTReader not using the provided CoordinateSequence implementation, - optimized out some memory allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@1269 + optimized out some memory allocations. git-svn-id: + http://svn.osgeo.org/geos/trunk@1269 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21788,7 +27656,8 @@ source/index/bintree/{BinTreeNode.cpp => Node.cpp}, source/index/bintree/NodeBase.cpp, source/index/bintree/Root.cpp, tests/xmltester/XMLTester.cpp: indexBintree.h header split, classes - renamed to match JTS git-svn-id: http://svn.osgeo.org/geos/trunk@1268 + renamed to match JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@1268 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21798,7 +27667,8 @@ source/index/quadtree/{QuadTreeNode.cpp => Node.cpp}, source/index/quadtree/{QuadTreeNodeBase.cpp => NodeBase.cpp}, source/index/quadtree/{QuadTreeRoot.cpp => Root.cpp}: Filenames - renamed to match class names (matching JTS) git-svn-id: http://svn.osgeo.org/geos/trunk@1267 + renamed to match class names (matching JTS) git-svn-id: + http://svn.osgeo.org/geos/trunk@1267 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21824,7 +27694,7 @@ source/index/quadtree/QuadTreeRoot.cpp, source/index/quadtree/Quadtree.cpp, source/operation/valid/QuadtreeNestedRingTester.cpp: indexQuadtree.h - split git-svn-id: http://svn.osgeo.org/geos/trunk@1266 + split git-svn-id: http://svn.osgeo.org/geos/trunk@1266 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21845,7 +27715,7 @@ source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp, source/operation/polygonize/polygonizeEdgeRing.cpp: opPolygonize.h - headers split. git-svn-id: http://svn.osgeo.org/geos/trunk@1265 + headers split. git-svn-id: http://svn.osgeo.org/geos/trunk@1265 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21853,7 +27723,7 @@ * source/operation/buffer/BufferSubgraph.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Changed back 'unable to find edge to compute depths' from assertion to - TopologyException git-svn-id: http://svn.osgeo.org/geos/trunk@1264 + TopologyException git-svn-id: http://svn.osgeo.org/geos/trunk@1264 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-22 Sandro Santilli @@ -21872,7 +27742,8 @@ source/operation/linemerge/LineMergeEdge.cpp, source/operation/linemerge/LineMergeGraph.cpp, source/operation/linemerge/LineMerger.cpp, - source/operation/linemerge/LineSequencer.cpp: opLinemerge.h split git-svn-id: http://svn.osgeo.org/geos/trunk@1263 + source/operation/linemerge/LineSequencer.cpp: opLinemerge.h split + git-svn-id: http://svn.osgeo.org/geos/trunk@1263 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -21915,7 +27786,8 @@ source/planargraph/planarNode.cpp, source/planargraph/planarNodeMap.cpp, source/planargraph/planarSubgraph.cpp: planargraph.h header split, - planargraph:: classes renamed to match JTS symbols git-svn-id: http://svn.osgeo.org/geos/trunk@1262 + planargraph:: classes renamed to match JTS symbols git-svn-id: + http://svn.osgeo.org/geos/trunk@1262 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -21936,7 +27808,7 @@ source/operation/distance/ConnectedElementPointFilter.cpp, source/operation/distance/DistanceOp.cpp, source/operation/distance/GeometryLocation.cpp: opDistance.h header - split git-svn-id: http://svn.osgeo.org/geos/trunk@1261 + split git-svn-id: http://svn.osgeo.org/geos/trunk@1261 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -21952,7 +27824,8 @@ , source/operation/predicate/RectangleContains.cpp, source/operation/predicate/RectangleIntersects.cpp, source/operation/predicate/SegmentIntersectionTester.cpp: - opPredicate.h header split git-svn-id: http://svn.osgeo.org/geos/trunk@1260 + opPredicate.h header split git-svn-id: + http://svn.osgeo.org/geos/trunk@1260 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -21979,7 +27852,7 @@ source/operation/relate/RelateNodeGraph.cpp, source/operation/relate/RelateOp.cpp, source/operation/valid/ConsistentAreaTester.cpp: opRelate.h header - split git-svn-id: http://svn.osgeo.org/geos/trunk@1259 + split git-svn-id: http://svn.osgeo.org/geos/trunk@1259 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -21987,7 +27860,8 @@ * tests/xmltester/TestInteriorPoint.xml: Changed expected result to the obtained one :) We're not cheating, it's a 2-vertex linestring for which an InteriorPoint is requested, both vertexes are correct - answer (equidistant from centroid). git-svn-id: http://svn.osgeo.org/geos/trunk@1258 + answer (equidistant from centroid). git-svn-id: + http://svn.osgeo.org/geos/trunk@1258 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -22012,7 +27886,8 @@ source/algorithm/SimplePointInAreaLocator.cpp, source/algorithm/SimplePointInRing.cpp, source/headers/geos/algorithm/SIRtreePointInRing.h: Cleanups: - headers inclusion and Log section git-svn-id: http://svn.osgeo.org/geos/trunk@1257 + headers inclusion and Log section git-svn-id: + http://svn.osgeo.org/geos/trunk@1257 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -22033,13 +27908,15 @@ source/index/strtree/Interval.cpp, source/index/strtree/ItemBoundable.cpp, source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: - indexStrtree.h split git-svn-id: http://svn.osgeo.org/geos/trunk@1256 + indexStrtree.h split git-svn-id: + http://svn.osgeo.org/geos/trunk@1256 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli * source/algorithm/RobustDeterminant.cpp: streamlined header - inclusion, put original copyright on top git-svn-id: http://svn.osgeo.org/geos/trunk@1255 + inclusion, put original copyright on top git-svn-id: + http://svn.osgeo.org/geos/trunk@1255 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-21 Sandro Santilli @@ -22057,7 +27934,8 @@ SweepLineEvent.cpp}, source/index/sweepline/SweepLineIndex.cpp, source/index/sweepline/SweepLineInterval.cpp, source/operation/valid/SweeplineNestedRingTester.cpp: - indexSweepline.h header split git-svn-id: http://svn.osgeo.org/geos/trunk@1254 + indexSweepline.h header split git-svn-id: + http://svn.osgeo.org/geos/trunk@1254 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli @@ -22080,20 +27958,20 @@ source/io/WKBReader.cpp, source/io/WKBWriter.cpp, source/io/WKTReader.cpp, source/io/WKTWriter.cpp, source/io/Writer.cpp, source/operation/buffer/BufferSubgraph.cpp: - io.h header split git-svn-id: http://svn.osgeo.org/geos/trunk@1253 + io.h header split git-svn-id: http://svn.osgeo.org/geos/trunk@1253 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/index/quadtree/DoubleBits.cpp: included when - appropriate git-svn-id: http://svn.osgeo.org/geos/trunk@1252 + appropriate git-svn-id: http://svn.osgeo.org/geos/trunk@1252 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/headers/geos/geom/CoordinateSequence.h, source/headers/geos/geom/GeometryFactory.h: Bug #72 - Missing - header git-svn-id: http://svn.osgeo.org/geos/trunk@1251 + header git-svn-id: http://svn.osgeo.org/geos/trunk@1251 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli @@ -22103,7 +27981,8 @@ source/headers/geos/noding/snapround/Makefile.am, source/headers/geos/operation/buffer/Makefile.am, source/headers/geos/operation/overlay/Makefile.am, - source/headers/geos/operation/valid/Makefile.am: Fixed geosdir git-svn-id: http://svn.osgeo.org/geos/trunk@1250 + source/headers/geos/operation/valid/Makefile.am: Fixed geosdir + git-svn-id: http://svn.osgeo.org/geos/trunk@1250 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli @@ -22148,19 +28027,22 @@ source/operation/valid/RepeatedPointTester.cpp, source/operation/valid/SimpleNestedRingTester.cpp, source/operation/valid/TopologyValidationError.cpp: spatialindex.h - and opValid.h headers split git-svn-id: http://svn.osgeo.org/geos/trunk@1249 + and opValid.h headers split git-svn-id: + http://svn.osgeo.org/geos/trunk@1249 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli - * macros/ac_python_devel.m4: redirected find stderr to /dev/null git-svn-id: http://svn.osgeo.org/geos/trunk@1248 + * macros/ac_python_devel.m4: redirected find stderr to /dev/null + git-svn-id: http://svn.osgeo.org/geos/trunk@1248 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/operation/overlay/PolygonBuilder.cpp: Changed assertion to TopologyException for the "orphaned" hole case in order to allow for - reduced precision ops to catch the case. git-svn-id: http://svn.osgeo.org/geos/trunk@1247 + reduced precision ops to catch the case. git-svn-id: + http://svn.osgeo.org/geos/trunk@1247 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli @@ -22168,19 +28050,22 @@ * source/headers/geos/operation/overlay/PolygonBuilder.h, source/operation/overlay/PolygonBuilder.cpp: Simplified some privat methods to use refs instead of pointers, added debugging section for - failiures of holes/shells associations git-svn-id: http://svn.osgeo.org/geos/trunk@1246 + failiures of holes/shells associations git-svn-id: + http://svn.osgeo.org/geos/trunk@1246 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/headers/geos/geomgraph/EdgeRing.h: Added note about - responsibility of return from ::toPolygon git-svn-id: http://svn.osgeo.org/geos/trunk@1245 + responsibility of return from ::toPolygon git-svn-id: + http://svn.osgeo.org/geos/trunk@1245 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geos/geom/Geometry.h: - Added operator<< for Geometry, writing HEXWKB git-svn-id: http://svn.osgeo.org/geos/trunk@1244 + Added operator<< for Geometry, writing HEXWKB git-svn-id: + http://svn.osgeo.org/geos/trunk@1244 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli @@ -22188,38 +28073,43 @@ * source/noding/Octant.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Added missing - include git-svn-id: http://svn.osgeo.org/geos/trunk@1243 + include git-svn-id: http://svn.osgeo.org/geos/trunk@1243 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/operation/predicate/RectangleContains.cpp, source/operation/predicate/RectangleIntersects.cpp: Bug #61 - - Disambiguated geom::Polygon use git-svn-id: http://svn.osgeo.org/geos/trunk@1242 + Disambiguated geom::Polygon use git-svn-id: + http://svn.osgeo.org/geos/trunk@1242 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/headers/geos/timeval.h: Bug #69 - Check for macro - WIN32_LEAN_AND_MEAN git-svn-id: http://svn.osgeo.org/geos/trunk@1241 + WIN32_LEAN_AND_MEAN git-svn-id: + http://svn.osgeo.org/geos/trunk@1241 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/operation/buffer/SubgraphDepthLocater.cpp: Bug #71 - - Missing git-svn-id: http://svn.osgeo.org/geos/trunk@1240 + Missing git-svn-id: + http://svn.osgeo.org/geos/trunk@1240 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/headers/geos/geom/Coordinate.h: Bug #70 - Small fix in fwd - decl. of CoordinateLessThen git-svn-id: http://svn.osgeo.org/geos/trunk@1239 + decl. of CoordinateLessThen git-svn-id: + http://svn.osgeo.org/geos/trunk@1239 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-20 Sandro Santilli * source/geom/GeometryFactory.cpp: Bug #67 - Debugging helpers in - GeometryFactory class git-svn-id: http://svn.osgeo.org/geos/trunk@1238 + GeometryFactory class git-svn-id: + http://svn.osgeo.org/geos/trunk@1238 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-17 Sandro Santilli @@ -22235,13 +28125,14 @@ source/operation/valid/SimpleNestedRingTester.cpp: LineIntersector and PointLocator made complete components of RelateComputer (were statics const pointers before). Reduced inclusions from opRelate.h - and opValid.h, updated .cpp files to allow build. git-svn-id: http://svn.osgeo.org/geos/trunk@1237 + and opValid.h, updated .cpp files to allow build. git-svn-id: + http://svn.osgeo.org/geos/trunk@1237 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-17 Sandro Santilli * tests/xmltester/XMLTester.cpp: Fixed filename normalizer for sql - output git-svn-id: http://svn.osgeo.org/geos/trunk@1236 + output git-svn-id: http://svn.osgeo.org/geos/trunk@1236 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-17 Sandro Santilli @@ -22278,18 +28169,21 @@ source/operation/overlay/PolygonBuilder.cpp: opOverlay.h header splitted. Reduced header inclusions in operation/overlay implementation files. ElevationMatrixFilter code moved from own file - to ElevationMatrix.cpp (ideally a class-private). git-svn-id: http://svn.osgeo.org/geos/trunk@1235 + to ElevationMatrix.cpp (ideally a class-private). git-svn-id: + http://svn.osgeo.org/geos/trunk@1235 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli - * tests/xmltester/linemerge.xml: Added missing testfile git-svn-id: http://svn.osgeo.org/geos/trunk@1234 + * tests/xmltester/linemerge.xml: Added missing testfile + git-svn-id: http://svn.osgeo.org/geos/trunk@1234 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli * tests/unit/Makefile.am, tests/unit/geom/LineSegment.cpp: new unit - test for LineSegment (adding tests would be helpful) git-svn-id: http://svn.osgeo.org/geos/trunk@1233 + test for LineSegment (adding tests would be helpful) git-svn-id: + http://svn.osgeo.org/geos/trunk@1233 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli @@ -22297,30 +28191,34 @@ * source/geom/LineSegment.cpp, source/headers/geos/geom/LineSegment.h, source/headers/geos/geom/LineSegment.inl: obsoleted getCoordinate(), - replaced by operator[] git-svn-id: http://svn.osgeo.org/geos/trunk@1232 + replaced by operator[] git-svn-id: + http://svn.osgeo.org/geos/trunk@1232 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli - * README: Added notes about testing git-svn-id: http://svn.osgeo.org/geos/trunk@1231 + * README: Added notes about testing git-svn-id: + http://svn.osgeo.org/geos/trunk@1231 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli * tests/unit/geos_unit.cpp: Bug #65 - Command line changes and EOL - fixes Unit Test git-svn-id: http://svn.osgeo.org/geos/trunk@1230 + fixes Unit Test git-svn-id: http://svn.osgeo.org/geos/trunk@1230 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli * source/geom/Geometry.cpp: Bug #64 - Not all control paths return a - value in geos::geom::Geometry::getClassSortIndex git-svn-id: http://svn.osgeo.org/geos/trunk@1229 + value in geos::geom::Geometry::getClassSortIndex git-svn-id: + http://svn.osgeo.org/geos/trunk@1229 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli * source/algorithm/LineIntersector.cpp: Bug #63 - Remove - unreferenced local variable warning git-svn-id: http://svn.osgeo.org/geos/trunk@1228 + unreferenced local variable warning git-svn-id: + http://svn.osgeo.org/geos/trunk@1228 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-16 Sandro Santilli @@ -22329,36 +28227,42 @@ tests/tut/tut_restartable.h, tests/unit/Makefile.am, tests/unit/envelope_class_test.cpp, tests/unit/geom/Envelope.cpp, tests/unit/geom/Geometry/isRectangle.cpp, tests/unit/geos_unit.cpp: - Initial unit tests git-svn-id: http://svn.osgeo.org/geos/trunk@1227 + Initial unit tests git-svn-id: + http://svn.osgeo.org/geos/trunk@1227 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/headers/geos/operation/IsSimpleOp.h: Bug #62: 'struct' - CoordinateLessThen in forward declaration git-svn-id: http://svn.osgeo.org/geos/trunk@1226 + CoordinateLessThen in forward declaration git-svn-id: + http://svn.osgeo.org/geos/trunk@1226 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli - * source/operation/buffer/SubgraphDepthLocater.cpp: small cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1225 + * source/operation/buffer/SubgraphDepthLocater.cpp: small cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@1225 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli - * source/operation/buffer/BufferBuilder.cpp: cleanups in DEBUG lines git-svn-id: http://svn.osgeo.org/geos/trunk@1224 + * source/operation/buffer/BufferBuilder.cpp: cleanups in DEBUG lines + git-svn-id: http://svn.osgeo.org/geos/trunk@1224 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Temporary hack to avoid snapround:: Noders (still using ScaledNoder wrapper) to allow for - buffer_snapround.xml test to succeed git-svn-id: http://svn.osgeo.org/geos/trunk@1223 + buffer_snapround.xml test to succeed git-svn-id: + http://svn.osgeo.org/geos/trunk@1223 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * tests/xmltester/buffer_snapround.xml: Added xml testfile showing - bug in snapround:: noders git-svn-id: http://svn.osgeo.org/geos/trunk@1222 + bug in snapround:: noders git-svn-id: + http://svn.osgeo.org/geos/trunk@1222 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli @@ -22371,13 +28275,15 @@ source/index/quadtree/QuadTreeKey.cpp, source/index/strtree/STRtree.cpp, source/util/GeometricShapeFactory.cpp: Bug #60 - Missing - header in some files git-svn-id: http://svn.osgeo.org/geos/trunk@1221 + header in some files git-svn-id: + http://svn.osgeo.org/geos/trunk@1221 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/operation/buffer/BufferSubgraph.cpp: Changed operator<< to - use operator<< for Nodes git-svn-id: http://svn.osgeo.org/geos/trunk@1220 + use operator<< for Nodes git-svn-id: + http://svn.osgeo.org/geos/trunk@1220 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli @@ -22385,7 +28291,8 @@ * source/headers/geos/geomgraph/DirectedEdgeStar.h, source/headers/geos/geomgraph/EdgeRing.h, source/headers/geos/geomgraph/index/SweepLineEvent.h: Added missing - forward declarations git-svn-id: http://svn.osgeo.org/geos/trunk@1219 + forward declarations git-svn-id: + http://svn.osgeo.org/geos/trunk@1219 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli @@ -22409,43 +28316,46 @@ source/geomgraph/index/SimpleSweepLineIntersector.cpp, source/geomgraph/index/SweepLineEvent.cpp, source/geomgraph/index/SweepLineSegment.cpp: streamlined headers - inclusion git-svn-id: http://svn.osgeo.org/geos/trunk@1218 + inclusion git-svn-id: http://svn.osgeo.org/geos/trunk@1218 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/geomgraph/Node.cpp, source/headers/geos/geomgraph/Node.h: - operator<< for Node class git-svn-id: http://svn.osgeo.org/geos/trunk@1217 + operator<< for Node class git-svn-id: + http://svn.osgeo.org/geos/trunk@1217 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/headers/geos/operation/buffer/SubgraphDepthLocater.h, source/operation/buffer/SubgraphDepthLocater.cpp: const correctness, - cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1216 + cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1216 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/headers/geos/geomgraph/DirectedEdge.h, - source/headers/geos/geomgraph/EdgeEnd.h: cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1215 + source/headers/geos/geomgraph/EdgeEnd.h: cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1215 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/geomgraph/DirectedEdge.cpp, source/geomgraph/EdgeRing.cpp: - Cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1214 + Cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1214 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: removed leftover - debugging line git-svn-id: http://svn.osgeo.org/geos/trunk@1213 + debugging line git-svn-id: http://svn.osgeo.org/geos/trunk@1213 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli - * source/headers/geos/opBuffer.h: Removed DepthSegment.h include git-svn-id: http://svn.osgeo.org/geos/trunk@1212 + * source/headers/geos/opBuffer.h: Removed DepthSegment.h include + git-svn-id: http://svn.osgeo.org/geos/trunk@1212 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli @@ -22453,7 +28363,7 @@ * source/headers/geos/operation/buffer/DepthSegment.h, source/headers/geos/operation/buffer/Makefile.am: Removed public DepthSegment definition (moved inside SubgraphDepthLocater - implementation) git-svn-id: http://svn.osgeo.org/geos/trunk@1211 + implementation) git-svn-id: http://svn.osgeo.org/geos/trunk@1211 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli @@ -22463,44 +28373,48 @@ source/operation/buffer/SubgraphDepthLocater.cpp: DepthSegment class moved inside SubgraphDepthLocator implementaion as it was private to this file in JTS. Also, changed to reduce copies of LineSegment - copies. git-svn-id: http://svn.osgeo.org/geos/trunk@1210 + copies. git-svn-id: http://svn.osgeo.org/geos/trunk@1210 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/headers/geos/operation/buffer/BufferSubgraph.h: doxygen - comments git-svn-id: http://svn.osgeo.org/geos/trunk@1209 + comments git-svn-id: http://svn.osgeo.org/geos/trunk@1209 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/operation/overlay/PolygonBuilder.cpp: debug blocks, dumping - SQL when GEOS_DEBUG > 1 git-svn-id: http://svn.osgeo.org/geos/trunk@1208 + SQL when GEOS_DEBUG > 1 git-svn-id: + http://svn.osgeo.org/geos/trunk@1208 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: more debugging lines, - with two levels of debugging handled git-svn-id: http://svn.osgeo.org/geos/trunk@1207 + with two levels of debugging handled git-svn-id: + http://svn.osgeo.org/geos/trunk@1207 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/operation/buffer/BufferSubgraph.cpp: comments cleanup, changed computeDepths to use a list<> rather then a vector - (performance related) git-svn-id: http://svn.osgeo.org/geos/trunk@1206 + (performance related) git-svn-id: + http://svn.osgeo.org/geos/trunk@1206 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * doc/Doxyfile.in: Fixed to allow doxygen runs from external - builddir git-svn-id: http://svn.osgeo.org/geos/trunk@1205 + builddir git-svn-id: http://svn.osgeo.org/geos/trunk@1205 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli * source/headers/geos/noding/SegmentString.inl, - source/headers/geos/noding/SimpleNoder.h: streamlined header usage git-svn-id: http://svn.osgeo.org/geos/trunk@1204 + source/headers/geos/noding/SimpleNoder.h: streamlined header usage + git-svn-id: http://svn.osgeo.org/geos/trunk@1204 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli @@ -22514,51 +28428,57 @@ source/noding/SimpleNoder.cpp, source/noding/snapround/MCIndexPointSnapper.cpp, source/noding/snapround/SimpleSnapRounder.cpp: streamlined headers - usage git-svn-id: http://svn.osgeo.org/geos/trunk@1203 + usage git-svn-id: http://svn.osgeo.org/geos/trunk@1203 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli - * source/geom/Polygon.cpp: updated port info git-svn-id: http://svn.osgeo.org/geos/trunk@1202 + * source/geom/Polygon.cpp: updated port info git-svn-id: + http://svn.osgeo.org/geos/trunk@1202 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-15 Sandro Santilli - * source/headers/geos/geom/Polygon.h: isSimple doc git-svn-id: http://svn.osgeo.org/geos/trunk@1201 + * source/headers/geos/geom/Polygon.h: isSimple doc git-svn-id: + http://svn.osgeo.org/geos/trunk@1201 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli - * source/headers/geos/util/Assert.h: Removed unrequired include git-svn-id: http://svn.osgeo.org/geos/trunk@1200 + * source/headers/geos/util/Assert.h: Removed unrequired include + git-svn-id: http://svn.osgeo.org/geos/trunk@1200 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli - * source/operation/buffer/BufferSubgraph.cpp: cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1199 + * source/operation/buffer/BufferSubgraph.cpp: cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1199 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli * source/headers/geos/opOverlay.h, source/operation/overlay/MaximalEdgeRing.cpp: comments cleanup, - integrity checks git-svn-id: http://svn.osgeo.org/geos/trunk@1198 + integrity checks git-svn-id: http://svn.osgeo.org/geos/trunk@1198 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli * source/operation/overlay/PolygonBuilder.cpp: oops, GEOS_DEBUG - default to 0 git-svn-id: http://svn.osgeo.org/geos/trunk@1197 + default to 0 git-svn-id: http://svn.osgeo.org/geos/trunk@1197 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli * source/headers/geos/opOverlay.h, - source/operation/overlay/PolygonBuilder.cpp: comments cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1196 + source/operation/overlay/PolygonBuilder.cpp: comments cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@1196 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli - * source/geomgraph/Edge.cpp: removed endline from printing funx git-svn-id: http://svn.osgeo.org/geos/trunk@1195 + * source/geomgraph/Edge.cpp: removed endline from printing funx + git-svn-id: http://svn.osgeo.org/geos/trunk@1195 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22566,7 +28486,8 @@ * source/headers/geos/operation/buffer/BufferBuilder.h, source/operation/buffer/BufferBuilder.cpp: changed buildSubgraphs signature to use refs rather then pointers, made it const-correct. - Reduced heap allocations in createSubgraphs() git-svn-id: http://svn.osgeo.org/geos/trunk@1194 + Reduced heap allocations in createSubgraphs() git-svn-id: + http://svn.osgeo.org/geos/trunk@1194 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22574,7 +28495,7 @@ * source/geomgraph/PlanarGraph.cpp, source/headers/geos/geomgraph/PlanarGraph.h: Added PlanarGraph::getNodes(vector&) func, to reduce useless heap - allocations git-svn-id: http://svn.osgeo.org/geos/trunk@1193 + allocations git-svn-id: http://svn.osgeo.org/geos/trunk@1193 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22583,7 +28504,7 @@ source/geom/CoordinateArraySequence.cpp, source/geomgraph/DirectedEdge.cpp, source/geomgraph/Edge.cpp, source/geomgraph/Node.cpp: Cleaned up toString funx (more WKT - friendly) git-svn-id: http://svn.osgeo.org/geos/trunk@1192 + friendly) git-svn-id: http://svn.osgeo.org/geos/trunk@1192 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22592,7 +28513,8 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferSubgraph.cpp, source/operation/overlay/PolygonBuilder.cpp: operator<< for - BufferSubgraph, more debugging calls git-svn-id: http://svn.osgeo.org/geos/trunk@1191 + BufferSubgraph, more debugging calls git-svn-id: + http://svn.osgeo.org/geos/trunk@1191 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22636,7 +28558,8 @@ source/noding/snapround/MCIndexSnapRounder.cpp, source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferOp.cpp: Headers split: - geomgraphindex.h, nodingSnapround.h git-svn-id: http://svn.osgeo.org/geos/trunk@1190 + geomgraphindex.h, nodingSnapround.h git-svn-id: + http://svn.osgeo.org/geos/trunk@1190 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22644,19 +28567,19 @@ * source/geomgraph/Edge.cpp, source/geomgraph/EdgeList.cpp, source/headers/geos/geomgraph/Edge.h, source/headers/geos/geomgraph/EdgeList.h: Added operator<< for Edge - and EdgeList git-svn-id: http://svn.osgeo.org/geos/trunk@1189 + and EdgeList git-svn-id: http://svn.osgeo.org/geos/trunk@1189 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli * source/headers/geos/operation/buffer/Makefile.am: Fixed include - filenames git-svn-id: http://svn.osgeo.org/geos/trunk@1188 + filenames git-svn-id: http://svn.osgeo.org/geos/trunk@1188 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Reduced 'buffer' headers - inclusion git-svn-id: http://svn.osgeo.org/geos/trunk@1187 + inclusion git-svn-id: http://svn.osgeo.org/geos/trunk@1187 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-14 Sandro Santilli @@ -22679,13 +28602,14 @@ source/operation/buffer/OffsetCurveSetBuilder.cpp, source/operation/buffer/RightmostEdgeFinder.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: opBuffer.h split, - streamlined headers in some (not all) files in operation/buffer/ git-svn-id: http://svn.osgeo.org/geos/trunk@1186 + streamlined headers in some (not all) files in operation/buffer/ + git-svn-id: http://svn.osgeo.org/geos/trunk@1186 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-13 Sandro Santilli * source/headers/geos/geom/LineSegment.h: Added missing forward - declarations git-svn-id: http://svn.osgeo.org/geos/trunk@1185 + declarations git-svn-id: http://svn.osgeo.org/geos/trunk@1185 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-13 Sandro Santilli @@ -22694,7 +28618,8 @@ source/geom/CoordinateSequenceFactory.cpp, source/geom/Geometry.cpp, source/geom/GeometryComponentFilter.cpp, source/geom/IntersectionMatrix.cpp, source/geom/LineSegment.cpp, - source/geom/Triangle.cpp: Streamlined headers inclusion. git-svn-id: http://svn.osgeo.org/geos/trunk@1184 + source/geom/Triangle.cpp: Streamlined headers inclusion. + git-svn-id: http://svn.osgeo.org/geos/trunk@1184 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-13 Sandro Santilli @@ -22703,26 +28628,29 @@ source/noding/ScaledNoder.cpp: Fixed bug in ScaledNoder scaling mechanism (hugly code, due to CoordinateSequence visitor pattern design). Tests are still failing so this possibly needs some other - fix. Streamlined includes by implementation file. git-svn-id: http://svn.osgeo.org/geos/trunk@1183 + fix. Streamlined includes by implementation file. git-svn-id: + http://svn.osgeo.org/geos/trunk@1183 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-13 Sandro Santilli * source/headers/geos/noding/SegmentString.h: Added missing forward - declarations git-svn-id: http://svn.osgeo.org/geos/trunk@1182 + declarations git-svn-id: http://svn.osgeo.org/geos/trunk@1182 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-13 Sandro Santilli * source/headers/geos/geom/CoordinateFilter.h: Added comment about - possible refactoring git-svn-id: http://svn.osgeo.org/geos/trunk@1181 + possible refactoring git-svn-id: + http://svn.osgeo.org/geos/trunk@1181 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-11 Sandro Santilli * source/headers/geos/opBuffer.h, source/operation/buffer/OffsetCurveBuilder.cpp: Fixed bug in - OffsetCurveBuilder::getCoordinates. git-svn-id: http://svn.osgeo.org/geos/trunk@1180 + OffsetCurveBuilder::getCoordinates. git-svn-id: + http://svn.osgeo.org/geos/trunk@1180 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli @@ -22730,61 +28658,66 @@ * source/geomgraph/EdgeRing.cpp: Changed 'found null Directed Edge' from an Assertion to a TopologyException, to give 'precision-reducing' overlay operation a chance to handle it (it - seems to work) git-svn-id: http://svn.osgeo.org/geos/trunk@1179 + seems to work) git-svn-id: http://svn.osgeo.org/geos/trunk@1179 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * source/geomgraph/EdgeRing.cpp: fine-tuned includes, reverted - Assert=>assert due to user-input based failure git-svn-id: http://svn.osgeo.org/geos/trunk@1178 + Assert=>assert due to user-input based failure git-svn-id: + http://svn.osgeo.org/geos/trunk@1178 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * configure.in, tests/unit/Makefile.am, tests/unit/envelope_class_test.cpp: boost detection code fix, first - UTF source for testing purposes git-svn-id: http://svn.osgeo.org/geos/trunk@1177 + UTF source for testing purposes git-svn-id: + http://svn.osgeo.org/geos/trunk@1177 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1176 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1176 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * configure.in: Update configure script to work with new boost.m4 - file git-svn-id: http://svn.osgeo.org/geos/trunk@1175 + file git-svn-id: http://svn.osgeo.org/geos/trunk@1175 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli - * macros/boost.m4: Updated boost detection macro git-svn-id: http://svn.osgeo.org/geos/trunk@1174 + * macros/boost.m4: Updated boost detection macro git-svn-id: + http://svn.osgeo.org/geos/trunk@1174 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * source/index/quadtree/QuadTreeNodeBase.cpp: Added missing - include (bug#56) git-svn-id: http://svn.osgeo.org/geos/trunk@1173 + include (bug#56) git-svn-id: + http://svn.osgeo.org/geos/trunk@1173 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * configure.in, macros/boost.m4, tests/Makefile.am, tests/unit/.cvsignore, tests/unit/Makefile.am: Initial boost - detection code git-svn-id: http://svn.osgeo.org/geos/trunk@1172 + detection code git-svn-id: http://svn.osgeo.org/geos/trunk@1172 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * source/operation/valid/ConnectedInteriorTester.cpp: Comments - cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1171 + cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1171 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * source/Makefile.vc: Bug #58 - Patch to makefile.vc after big - refactoring commit git-svn-id: http://svn.osgeo.org/geos/trunk@1170 + refactoring commit git-svn-id: + http://svn.osgeo.org/geos/trunk@1170 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli @@ -22792,24 +28725,28 @@ * source/operation/buffer/BufferBuilder.cpp, source/operation/overlay/ElevationMatrixFilter.cpp, source/precision/EnhancedPrecisionOp.cpp: Unreferenced exception - objects cleanup (#52) git-svn-id: http://svn.osgeo.org/geos/trunk@1169 + objects cleanup (#52) git-svn-id: + http://svn.osgeo.org/geos/trunk@1169 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli * source/geomgraph/index/SimpleSweepLineIntersector.cpp: Added - missing include (#55) git-svn-id: http://svn.osgeo.org/geos/trunk@1168 + missing include (#55) git-svn-id: + http://svn.osgeo.org/geos/trunk@1168 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-10 Sandro Santilli - * source/geom/Polygon.cpp: Added missing include (#54) git-svn-id: http://svn.osgeo.org/geos/trunk@1167 + * source/geom/Polygon.cpp: Added missing include (#54) + git-svn-id: http://svn.osgeo.org/geos/trunk@1167 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/TestIsValid.xml: - Added isvalid test for latest validop patch git-svn-id: http://svn.osgeo.org/geos/trunk@1166 + Added isvalid test for latest validop patch git-svn-id: + http://svn.osgeo.org/geos/trunk@1166 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli @@ -22818,14 +28755,15 @@ source/operation/overlay/MaximalEdgeRing.cpp, source/operation/valid/ConnectedInteriorTester.cpp: Added memory-friendly MaximalEdgeRing::buildMinimalRings() implementation. - Applied patch to IsValid operation from JTS-1.7.1 git-svn-id: http://svn.osgeo.org/geos/trunk@1165 + Applied patch to IsValid operation from JTS-1.7.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@1165 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * source/headers/geos/opBuffer.h, source/operation/buffer/OffsetCurveBuilder.cpp: Fixed bug#33 - (hopefully) git-svn-id: http://svn.osgeo.org/geos/trunk@1164 + (hopefully) git-svn-id: http://svn.osgeo.org/geos/trunk@1164 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli @@ -23032,104 +28970,118 @@ source/operation/valid/RepeatedPointTester.cpp, source/util/Assert.cpp, tests/xmltester/SimpleWKTTester.cpp, tests/xmltester/XMLTester.cpp, tests/xmltester/buffer.xml: - geos::geom namespace definition, first pass at headers split git-svn-id: http://svn.osgeo.org/geos/trunk@1163 + geos::geom namespace definition, first pass at headers split + git-svn-id: http://svn.osgeo.org/geos/trunk@1163 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * tests/xmltester/Makefile.am: Fixed to allow tests from external - build tree (thanks Norman:) git-svn-id: http://svn.osgeo.org/geos/trunk@1162 + build tree (thanks Norman:) git-svn-id: + http://svn.osgeo.org/geos/trunk@1162 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * source/geomgraph/Position.cpp, source/operation/overlay/ElevationMatrixFilter.cpp: Fixed debugging - lines git-svn-id: http://svn.osgeo.org/geos/trunk@1161 + lines git-svn-id: http://svn.osgeo.org/geos/trunk@1161 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Fixed debugging lines, - added missing header git-svn-id: http://svn.osgeo.org/geos/trunk@1160 + added missing header git-svn-id: + http://svn.osgeo.org/geos/trunk@1160 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * source/operation/linemerge/LineMergeGraph.cpp: Fixed debugging - lines git-svn-id: http://svn.osgeo.org/geos/trunk@1159 + lines git-svn-id: http://svn.osgeo.org/geos/trunk@1159 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli * source/index/quadtree/QuadTreeKey.cpp, source/index/quadtree/QuadTreeRoot.cpp, - source/noding/SegmentNodeList.cpp: Fixed debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1158 + source/noding/SegmentNodeList.cpp: Fixed debugging lines + git-svn-id: http://svn.osgeo.org/geos/trunk@1158 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-09 Sandro Santilli - * capi/Makefile.am: Added missing INCLUDES line git-svn-id: http://svn.osgeo.org/geos/trunk@1157 + * capi/Makefile.am: Added missing INCLUDES line git-svn-id: + http://svn.osgeo.org/geos/trunk@1157 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli * tests/xmltester/XMLTester.cpp: Leak plugged, tweeked output to be - nice with --sql-output git-svn-id: http://svn.osgeo.org/geos/trunk@1156 + nice with --sql-output git-svn-id: + http://svn.osgeo.org/geos/trunk@1156 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli * source/headers/geos/opBuffer.h, source/operation/buffer/OffsetCurveBuilder.cpp: Big deal of heap - allocations reduction git-svn-id: http://svn.osgeo.org/geos/trunk@1155 + allocations reduction git-svn-id: + http://svn.osgeo.org/geos/trunk@1155 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli * source/util/Profiler.cpp: Profiler singleton implemented with a - function-static Profiler instance git-svn-id: http://svn.osgeo.org/geos/trunk@1154 + function-static Profiler instance git-svn-id: + http://svn.osgeo.org/geos/trunk@1154 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli * tests/xmltester/buffer.xml: addedvalidity test for a case with - invalid input git-svn-id: http://svn.osgeo.org/geos/trunk@1153 + invalid input git-svn-id: http://svn.osgeo.org/geos/trunk@1153 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Added - --wkb-output and made --sql-output compatible with -v git-svn-id: http://svn.osgeo.org/geos/trunk@1152 + --wkb-output and made --sql-output compatible with -v git-svn-id: + http://svn.osgeo.org/geos/trunk@1152 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli - * tests/xmltester/XMLTester.cpp: table name for sqlOutput normalized git-svn-id: http://svn.osgeo.org/geos/trunk@1151 + * tests/xmltester/XMLTester.cpp: table name for sqlOutput normalized + git-svn-id: http://svn.osgeo.org/geos/trunk@1151 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Added - --sql-output switch for debugging git-svn-id: http://svn.osgeo.org/geos/trunk@1150 + --sql-output switch for debugging git-svn-id: + http://svn.osgeo.org/geos/trunk@1150 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-07 Sandro Santilli - * tests/xmltester/XMLTester.cpp: verbose validity errors git-svn-id: http://svn.osgeo.org/geos/trunk@1149 + * tests/xmltester/XMLTester.cpp: verbose validity errors + git-svn-id: http://svn.osgeo.org/geos/trunk@1149 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * doc/example.cpp, source/headers/geos/geom.h, source/headers/geos/opRelate.h, tests/xmltester/XMLTester.cpp: - Cascading fixed after Unload definition moved to geos::io namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1148 + Cascading fixed after Unload definition moved to geos::io namespace + git-svn-id: http://svn.osgeo.org/geos/trunk@1148 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * source/headers/geos/unload.h: Fixed Unload class definition - namespace (geos::io) git-svn-id: http://svn.osgeo.org/geos/trunk@1147 + namespace (geos::io) git-svn-id: + http://svn.osgeo.org/geos/trunk@1147 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli @@ -23202,7 +29154,7 @@ source/util/UnsupportedOperationException.cpp, tests/xmltester/SimpleWKTTester.cpp, tests/xmltester/XMLTester.cpp: geos::util namespace. New GeometryCollection::iterator interface, - many cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@1146 + many cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@1146 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli @@ -23215,85 +29167,96 @@ source/io/WKTWriter.cpp, source/io/Writer.cpp, tests/xmltester/SimpleWKTTester.cpp, tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h, tests/xmltester/buffer.xml: geos::io - namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1145 + namespace git-svn-id: http://svn.osgeo.org/geos/trunk@1145 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli - * capi/geos_c.cpp: Validity error include Coordinate git-svn-id: http://svn.osgeo.org/geos/trunk@1143 + * capi/geos_c.cpp: Validity error include Coordinate git-svn-id: + http://svn.osgeo.org/geos/trunk@1143 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli - * source/geom/Polygon.cpp: Cleaned up equalsExact git-svn-id: http://svn.osgeo.org/geos/trunk@1142 + * source/geom/Polygon.cpp: Cleaned up equalsExact git-svn-id: + http://svn.osgeo.org/geos/trunk@1142 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * tests/xmltester/XMLTester.cpp: Fixed equalsExact check, and also - reduced tolerance git-svn-id: http://svn.osgeo.org/geos/trunk@1141 + reduced tolerance git-svn-id: http://svn.osgeo.org/geos/trunk@1141 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * source/headers/geos/opValid.h, source/operation/valid/IsValidOp.cpp: TopologyValidationError error - names (enum) renamed to avoid conflicts. git-svn-id: http://svn.osgeo.org/geos/trunk@1140 + names (enum) renamed to avoid conflicts. git-svn-id: + http://svn.osgeo.org/geos/trunk@1140 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli - * tests/xmltester/robustness.xml: Added second case for Union git-svn-id: http://svn.osgeo.org/geos/trunk@1139 + * tests/xmltester/robustness.xml: Added second case for Union + git-svn-id: http://svn.osgeo.org/geos/trunk@1139 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: precision.h => - geos/precision.h (#48) git-svn-id: http://svn.osgeo.org/geos/trunk@1138 + geos/precision.h (#48) git-svn-id: + http://svn.osgeo.org/geos/trunk@1138 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * tests/xmltester/robustness.xml: Added test extracted from data - provided by Guillaume Sueur git-svn-id: http://svn.osgeo.org/geos/trunk@1137 + provided by Guillaume Sueur git-svn-id: + http://svn.osgeo.org/geos/trunk@1137 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * source/headers/geos/geom.h: Dropped unused/unmaintained/platform-problematic serial version info for - classes (#47) git-svn-id: http://svn.osgeo.org/geos/trunk@1136 + classes (#47) git-svn-id: http://svn.osgeo.org/geos/trunk@1136 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * capi/geos_c.cpp: added a compile-time option to get - VERBOSE_EXCEPTION (print args on exceptions) git-svn-id: http://svn.osgeo.org/geos/trunk@1135 + VERBOSE_EXCEPTION (print args on exceptions) git-svn-id: + http://svn.osgeo.org/geos/trunk@1135 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: precision reducing - overlayOp made compile-time optional git-svn-id: http://svn.osgeo.org/geos/trunk@1134 + overlayOp made compile-time optional git-svn-id: + http://svn.osgeo.org/geos/trunk@1134 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-06 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Added - input and output validity test facilities git-svn-id: http://svn.osgeo.org/geos/trunk@1133 + input and output validity test facilities git-svn-id: + http://svn.osgeo.org/geos/trunk@1133 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-03 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Experimental - precision-reducing overlayOp git-svn-id: http://svn.osgeo.org/geos/trunk@1132 + precision-reducing overlayOp git-svn-id: + http://svn.osgeo.org/geos/trunk@1132 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-03 Sandro Santilli * source/algorithm/InteriorPointLine.cpp, source/headers/geos/geom.h, source/headers/geos/geosAlgorithm.h: - Cleaned up InteriorPointLine class git-svn-id: http://svn.osgeo.org/geos/trunk@1131 + Cleaned up InteriorPointLine class git-svn-id: + http://svn.osgeo.org/geos/trunk@1131 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-03 Sandro Santilli @@ -23412,18 +29375,21 @@ source/util/GeometricShapeFactory.cpp, source/util/Profiler.cpp, tests/xmltester/XMLTester.cpp, tests/xmltester/XMLTester.h: Removed 'using namespace' from headers, added missing headers in .cpp files, - removed useless includes in headers (bug#46) git-svn-id: http://svn.osgeo.org/geos/trunk@1130 + removed useless includes in headers (bug#46) git-svn-id: + http://svn.osgeo.org/geos/trunk@1130 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/robustness.xml: Added - robustness testcases git-svn-id: http://svn.osgeo.org/geos/trunk@1129 + robustness testcases git-svn-id: + http://svn.osgeo.org/geos/trunk@1129 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli - * tests/xmltester/XMLTester.cpp: Updated copyright notice git-svn-id: http://svn.osgeo.org/geos/trunk@1128 + * tests/xmltester/XMLTester.cpp: Updated copyright notice + git-svn-id: http://svn.osgeo.org/geos/trunk@1128 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli @@ -23434,7 +29400,7 @@ source/precision/CommonBitsRemover.cpp, source/precision/EnhancedPrecisionOp.cpp, source/precision/SimpleGeometryPrecisionReducer.cpp: geos::precision - namespace added git-svn-id: http://svn.osgeo.org/geos/trunk@1127 + namespace added git-svn-id: http://svn.osgeo.org/geos/trunk@1127 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli @@ -23443,7 +29409,8 @@ source/headers/geos/geomgraphindex.h, source/headers/geos/indexSweepline.h, source/index/sweepline/indexSweepLineEvent.cpp: - SweepLineEvent::DELETE=>DELETE_EVENT, INSERT=>INSERT_EVENT (#45) git-svn-id: http://svn.osgeo.org/geos/trunk@1126 + SweepLineEvent::DELETE=>DELETE_EVENT, INSERT=>INSERT_EVENT (#45) + git-svn-id: http://svn.osgeo.org/geos/trunk@1126 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli @@ -23453,12 +29420,13 @@ source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PolygonBuilder.cpp: GeometryGraphOperation::li made a non-static member, and not more a - pointer git-svn-id: http://svn.osgeo.org/geos/trunk@1125 + pointer git-svn-id: http://svn.osgeo.org/geos/trunk@1125 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli - * capi/geos_c.cpp: DEBUG => GEOS_DEBUG [#44] git-svn-id: http://svn.osgeo.org/geos/trunk@1124 + * capi/geos_c.cpp: DEBUG => GEOS_DEBUG [#44] git-svn-id: + http://svn.osgeo.org/geos/trunk@1124 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli @@ -23497,68 +29465,73 @@ source/operation/overlay/PolygonBuilder.cpp, source/operation/polygonize/Polygonizer.cpp: Renamed DEBUG macros to GEOS_DEBUG, all wrapped in #ifndef block to allow global override - (bug#43) git-svn-id: http://svn.osgeo.org/geos/trunk@1123 + (bug#43) git-svn-id: http://svn.osgeo.org/geos/trunk@1123 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * tests/xmltester/XMLTester.cpp: Added assertion in relate test - handler git-svn-id: http://svn.osgeo.org/geos/trunk@1122 + handler git-svn-id: http://svn.osgeo.org/geos/trunk@1122 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * source/geom/IntersectionMatrix.cpp, source/headers/geos/geom.h: Changed IntersectionMatrix funx taking strings to take const string& - instead git-svn-id: http://svn.osgeo.org/geos/trunk@1121 + instead git-svn-id: http://svn.osgeo.org/geos/trunk@1121 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * tests/xmltester/XMLTester.cpp, tests/xmltester/buffer.xml: Added - support for FLOATING_SINGLE precisionmodel in XML tests git-svn-id: http://svn.osgeo.org/geos/trunk@1120 + support for FLOATING_SINGLE precisionmodel in XML tests + git-svn-id: http://svn.osgeo.org/geos/trunk@1120 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * capi/Makefile.am, capi/geos_c.cpp: Removed use of strdup, changed GEOSjtsport() to return const char* instead of char* (is not - advertised in headerfile, so no compatibility problems) git-svn-id: http://svn.osgeo.org/geos/trunk@1119 + advertised in headerfile, so no compatibility problems) + git-svn-id: http://svn.osgeo.org/geos/trunk@1119 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Fixes in DEBUG lines - (bug#42) git-svn-id: http://svn.osgeo.org/geos/trunk@1118 + (bug#42) git-svn-id: http://svn.osgeo.org/geos/trunk@1118 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * source/headers/geos/LineSegment.inl: Changed LineSegment output to - use 'LINESEGMENT' label rather then 'LINESTRING' git-svn-id: http://svn.osgeo.org/geos/trunk@1117 + use 'LINESEGMENT' label rather then 'LINESTRING' git-svn-id: + http://svn.osgeo.org/geos/trunk@1117 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * source/headers/geos/timeval.h: WINCE implmentation of gettimeofday - (bug#40) git-svn-id: http://svn.osgeo.org/geos/trunk@1116 + (bug#40) git-svn-id: http://svn.osgeo.org/geos/trunk@1116 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-02 Sandro Santilli * source/operation/buffer/SubgraphDepthLocater.cpp: cleaned up - debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1115 + debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1115 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli - * NEWS: added note about getInteriorPoint() possibly returning NULL git-svn-id: http://svn.osgeo.org/geos/trunk@1114 + * NEWS: added note about getInteriorPoint() possibly returning NULL + git-svn-id: http://svn.osgeo.org/geos/trunk@1114 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * capi/geos_c.cpp: Handled new NULL return from - Geometry::getInteriorPoint() git-svn-id: http://svn.osgeo.org/geos/trunk@1113 + Geometry::getInteriorPoint() git-svn-id: + http://svn.osgeo.org/geos/trunk@1113 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli @@ -23567,15 +29540,17 @@ source/algorithm/InteriorPointPoint.cpp, source/geom/Geometry.cpp, source/geom/GeometryFactory.cpp, source/headers/geos/geom.h: Geometry::createPointFromInternalCoord dropped (it's a duplication - of GeometryFactory::createPointFromInternalCoord). Fixed bugs in - InteriorPoint* and getCentroid() inserted by previous commits. git-svn-id: http://svn.osgeo.org/geos/trunk@1112 + of GeometryFactory::createPointFromInternalCoord). Fixed bugs in + InteriorPoint* and getCentroid() inserted by previous commits. + git-svn-id: http://svn.osgeo.org/geos/trunk@1112 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * tests/xmltester/Makefile.am, tests/xmltester/TestCentroid.xml, tests/xmltester/testLeaksBig.xml: getCentroid() test moved from - testLeaksBig.xml to TestCentroid.xml (synced with JTS-1.7) git-svn-id: http://svn.osgeo.org/geos/trunk@1111 + testLeaksBig.xml to TestCentroid.xml (synced with JTS-1.7) + git-svn-id: http://svn.osgeo.org/geos/trunk@1111 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli @@ -23584,13 +29559,14 @@ tests/xmltester/TestInteriorPoint.xml, tests/xmltester/testLeaksBig.xml: Extracted getInteriorPoint() tests out of testLeaksBig.xml and into TestInteriorPoint.xml (synced with - JTS-1.7). git-svn-id: http://svn.osgeo.org/geos/trunk@1110 + JTS-1.7). git-svn-id: http://svn.osgeo.org/geos/trunk@1110 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * tests/xmltester/XMLTester.cpp: Handled NULL return from - Geometry::getInteriorPoint() git-svn-id: http://svn.osgeo.org/geos/trunk@1109 + Geometry::getInteriorPoint() git-svn-id: + http://svn.osgeo.org/geos/trunk@1109 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli @@ -23608,31 +29584,35 @@ source/headers/geos/opBuffer.h, source/operation/buffer/SubgraphDepthLocater.cpp, source/operation/distance/DistanceOp.cpp: LineSegment class made - final and optionally (compile-time) inlined. Reduced heap + final and optionally (compile-time) inlined. Reduced heap allocations in Centroid{Area,Line,Point} and - InteriorPoint{Area,Line,Point}. git-svn-id: http://svn.osgeo.org/geos/trunk@1108 + InteriorPoint{Area,Line,Point}. git-svn-id: + http://svn.osgeo.org/geos/trunk@1108 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli - * source/Makefile.vc: Fixed include name (Bug#41) git-svn-id: http://svn.osgeo.org/geos/trunk@1107 + * source/Makefile.vc: Fixed include name (Bug#41) git-svn-id: + http://svn.osgeo.org/geos/trunk@1107 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * source/noding/SegmentNodeList.cpp: Fixed const correctness of - operator<<(ostream&, SegmentNodeList&) [bug#37] git-svn-id: http://svn.osgeo.org/geos/trunk@1106 + operator<<(ostream&, SegmentNodeList&) [bug#37] git-svn-id: + http://svn.osgeo.org/geos/trunk@1106 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli - * source/index/quadtree/Quadtree.cpp: Fixed debug lines (bug#36) git-svn-id: http://svn.osgeo.org/geos/trunk@1105 + * source/index/quadtree/Quadtree.cpp: Fixed debug lines (bug#36) + git-svn-id: http://svn.osgeo.org/geos/trunk@1105 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * tests/xmltester/Stackwalker.cpp: Fixed missing type specifier - (bug#35) git-svn-id: http://svn.osgeo.org/geos/trunk@1104 + (bug#35) git-svn-id: http://svn.osgeo.org/geos/trunk@1104 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli @@ -23641,18 +29621,21 @@ tests/xmltester/buffer.xml: Used FLOATING precision model in buffer.xml test, added expected results, changed XMLTester.cpp to use a tolerance when comparing expected and obtained results from - buffer operations. git-svn-id: http://svn.osgeo.org/geos/trunk@1103 + buffer operations. git-svn-id: + http://svn.osgeo.org/geos/trunk@1103 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * tests/xmltester/XMLTester.cpp: Fixed a bug in verbose output - preventing geometry arg 'A' from being properly printed git-svn-id: http://svn.osgeo.org/geos/trunk@1102 + preventing geometry arg 'A' from being properly printed + git-svn-id: http://svn.osgeo.org/geos/trunk@1102 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli - * source/Makefile.vc: Applied patch by Mateusz Loskot (Bug #39) git-svn-id: http://svn.osgeo.org/geos/trunk@1101 + * source/Makefile.vc: Applied patch by Mateusz Loskot (Bug #39) + git-svn-id: http://svn.osgeo.org/geos/trunk@1101 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli @@ -23660,42 +29643,49 @@ * source/headers/geos/opValid.h, source/operation/valid/TopologyValidationError.cpp: Changed static TopologyValidationError::errMsg[] from 'string' to 'const char*' to - reduce dynamic memory allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@1100 + reduce dynamic memory allocations. git-svn-id: + http://svn.osgeo.org/geos/trunk@1100 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * source/headers/geos/unload.h, source/io/Unload.cpp: ctor and dtor - made private and inlined git-svn-id: http://svn.osgeo.org/geos/trunk@1099 + made private and inlined git-svn-id: + http://svn.osgeo.org/geos/trunk@1099 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * tests/xmltester/XMLTester.cpp: Case insensitive operation names - and geometry arguments names (a/b) git-svn-id: http://svn.osgeo.org/geos/trunk@1098 + and geometry arguments names (a/b) git-svn-id: + http://svn.osgeo.org/geos/trunk@1098 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli * tests/xmltester/XMLTester.cpp: Unrecognized tests always printed - (was only printed when verbose before) git-svn-id: http://svn.osgeo.org/geos/trunk@1097 + (was only printed when verbose before) git-svn-id: + http://svn.osgeo.org/geos/trunk@1097 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-03-01 Sandro Santilli - * source/dirlist.mk: File to be included by Makefile.vc git-svn-id: http://svn.osgeo.org/geos/trunk@1096 + * source/dirlist.mk: File to be included by Makefile.vc + git-svn-id: http://svn.osgeo.org/geos/trunk@1096 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli * source/headers/geos/opBuffer.h, source/operation/buffer/OffsetCurveBuilder.cpp: Fixed in-place - definition of static members in OffsetCurveBuilder (bug#33) git-svn-id: http://svn.osgeo.org/geos/trunk@1095 + definition of static members in OffsetCurveBuilder (bug#33) + git-svn-id: http://svn.osgeo.org/geos/trunk@1095 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli - * tests/xmltester/XMLTester.cpp: Added cctype include (bug #34) git-svn-id: http://svn.osgeo.org/geos/trunk@1094 + * tests/xmltester/XMLTester.cpp: Added cctype include (bug #34) + git-svn-id: http://svn.osgeo.org/geos/trunk@1094 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli @@ -23705,14 +29695,15 @@ source/noding/SegmentNodeList.cpp, source/noding/SegmentString.cpp, source/operation/buffer/BufferBuilder.cpp: Added a check in SegmentNode::addSplitEdge to prevent attempts to build SegmentString - with less then 2 points. This is a temporary fix for the buffer.xml + with less then 2 points. This is a temporary fix for the buffer.xml assertion failure, temporary as Martin Davis review would really be - needed there. git-svn-id: http://svn.osgeo.org/geos/trunk@1093 + needed there. git-svn-id: http://svn.osgeo.org/geos/trunk@1093 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli - * tests/xmltester/XMLTester.cpp: Fix for VC++ builds (Bug #32) git-svn-id: http://svn.osgeo.org/geos/trunk@1092 + * tests/xmltester/XMLTester.cpp: Fix for VC++ builds (Bug #32) + git-svn-id: http://svn.osgeo.org/geos/trunk@1092 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli @@ -23731,39 +29722,46 @@ source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp, tests/xmltester/buffer.xml: Added many assertions and debugging - output hunting for a bug in BufferOp git-svn-id: http://svn.osgeo.org/geos/trunk@1091 + output hunting for a bug in BufferOp git-svn-id: + http://svn.osgeo.org/geos/trunk@1091 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli - * source/geomgraph/Edge.cpp: Fixed a bug in a debugging line git-svn-id: http://svn.osgeo.org/geos/trunk@1090 + * source/geomgraph/Edge.cpp: Fixed a bug in a debugging line + git-svn-id: http://svn.osgeo.org/geos/trunk@1090 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli * source/headers/geos/noding.h: Added missing definition of - IteratedNoder::MAX_ITER, moving it to private access level git-svn-id: http://svn.osgeo.org/geos/trunk@1089 + IteratedNoder::MAX_ITER, moving it to private access level + git-svn-id: http://svn.osgeo.org/geos/trunk@1089 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli - * tests/xmltester/markup/MarkupSTL.cpp: Fixed strchr use (Bug #30) git-svn-id: http://svn.osgeo.org/geos/trunk@1088 + * tests/xmltester/markup/MarkupSTL.cpp: Fixed strchr use (Bug #30) + git-svn-id: http://svn.osgeo.org/geos/trunk@1088 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sandro Santilli - * capi/geos_c.cpp: Fixed typo in GEOSLenght function git-svn-id: http://svn.osgeo.org/geos/trunk@1087 + * capi/geos_c.cpp: Fixed typo in GEOSLenght function git-svn-id: + http://svn.osgeo.org/geos/trunk@1087 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-28 Sean Gillies * NEWS, capi/geos_c.cpp, capi/geos_c.h.in: added GEOSLength(), - GEOSEnvelope() to the C API git-svn-id: http://svn.osgeo.org/geos/trunk@1085 + GEOSEnvelope() to the C API git-svn-id: + http://svn.osgeo.org/geos/trunk@1085 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-27 Sandro Santilli - * tests/xmltester/XMLTester.cpp: More verbose handling of exceptions git-svn-id: http://svn.osgeo.org/geos/trunk@1076 + * tests/xmltester/XMLTester.cpp: More verbose handling of exceptions + git-svn-id: http://svn.osgeo.org/geos/trunk@1076 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-27 Sandro Santilli @@ -23771,7 +29769,8 @@ * source/geomgraph/DirectedEdgeStar.cpp, source/headers/geos/geomgraph.h: DirectedEdgeStar made more safe trough assert(), use of standard iterator and dynamic casts - substituting static ones. git-svn-id: http://svn.osgeo.org/geos/trunk@1075 + substituting static ones. git-svn-id: + http://svn.osgeo.org/geos/trunk@1075 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-27 Sandro Santilli @@ -23784,7 +29783,8 @@ source/headers/geos/opOverlay.h, source/headers/geos/operation.h, source/operation/GeometryGraphOperation.cpp, source/operation/overlay/OverlayOp.cpp: Doxygen comments, a few - inlines and general cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1074 + inlines and general cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1074 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-24 Sandro Santilli @@ -23794,8 +29794,9 @@ source/util/Makefile.am, source/util/math.cpp, tests/xmltester/testLeaksBig.xml: Added Mateusz implementation of round() in a new math.cpp file named sym_round(). Changed use of - rint_vc to sym_round in PrecisionModel. Moved rint_vc to math.cpp - (geos::util namespace), to be renamed to something more meaningful git-svn-id: http://svn.osgeo.org/geos/trunk@1073 + rint_vc to sym_round in PrecisionModel. Moved rint_vc to math.cpp + (geos::util namespace), to be renamed to something more meaningful + git-svn-id: http://svn.osgeo.org/geos/trunk@1073 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-24 Sandro Santilli @@ -23806,12 +29807,16 @@ source/operation/linemerge/LineMergeGraph.cpp, source/operation/linemerge/LineMerger.cpp, source/planargraph/planarEdge.cpp, - source/planargraph/planarNode.cpp, tests/xmltester/Makefile.am: - operator>> for Coordinate, planarNode and planarEdge - Fixed bug in planarGraphComponent::setMarked - Added linemerge.xml test (single test, should grow a bit) git-svn-id: http://svn.osgeo.org/geos/trunk@1072 + source/planargraph/planarNode.cpp, tests/xmltester/Makefile.am: - operator>> for Coordinate, planarNode and planarEdge - Fixed bug + in planarGraphComponent::setMarked - Added linemerge.xml test + (single test, should grow a bit) git-svn-id: + http://svn.osgeo.org/geos/trunk@1072 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-24 Sandro Santilli - * doc/Doxyfile.in: Fixed typo in config file git-svn-id: http://svn.osgeo.org/geos/trunk@1071 + * doc/Doxyfile.in: Fixed typo in config file git-svn-id: + http://svn.osgeo.org/geos/trunk@1071 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-23 Sandro Santilli @@ -23827,13 +29832,17 @@ source/operation/polygonize/polygonizeEdgeRing.cpp, source/operation/valid/TopologyValidationError.cpp, source/planargraph/planarDirectedEdgeStar.cpp, - source/util/GeometricShapeFactory.cpp: - Coordinate::nullCoordinate made private - Simplified Coordinate inline definitions - LMGeometryComponentFilter definition moved to LineMerger.cpp file - Misc cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1070 + source/util/GeometricShapeFactory.cpp: - Coordinate::nullCoordinate made private - Simplified Coordinate + inline definitions - LMGeometryComponentFilter definition moved to + LineMerger.cpp file - Misc cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1070 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-23 Sandro Santilli * tests/xmltester/XMLTester.cpp: Added support for LineMerge tests. - Exception printed on stderr. git-svn-id: http://svn.osgeo.org/geos/trunk@1069 + Exception printed on stderr. git-svn-id: + http://svn.osgeo.org/geos/trunk@1069 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-23 Sandro Santilli @@ -23845,12 +29854,14 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferOp.cpp: Fixed bug in MCIndexNoder constructor making memory checker go crazy, more doxygen-friendly - comments, miscellaneous cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1068 + comments, miscellaneous cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@1068 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-23 Sandro Santilli - * doc/Doxyfile.in: updated to also show undocumented methods git-svn-id: http://svn.osgeo.org/geos/trunk@1067 + * doc/Doxyfile.in: updated to also show undocumented methods + git-svn-id: http://svn.osgeo.org/geos/trunk@1067 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-23 Sandro Santilli @@ -23886,8 +29897,13 @@ source/util/GEOSException.cpp, source/util/IllegalArgumentException.cpp, source/util/Makefile.am, source/util/UnsupportedOperationException.cpp, - tests/xmltester/buffer.xml: - MCIndexPointSnapper - MCIndexSnapRounder - SnapRounding BufferOp - ScaledNoder - GEOSException hierarchy cleanups - SpatialIndex memory-friendly query interface - GeometryGraph::getBoundaryNodes memory-friendly - NodeMap::getBoundaryNodes memory-friendly - Cleanups in geomgraph::Edge - Added an XML test for snaprounding buffer (shows leaks, working on - it) git-svn-id: http://svn.osgeo.org/geos/trunk@1066 + tests/xmltester/buffer.xml: - MCIndexPointSnapper - MCIndexSnapRounder - SnapRounding BufferOp - + ScaledNoder - GEOSException hierarchy cleanups - SpatialIndex + memory-friendly query interface - GeometryGraph::getBoundaryNodes + memory-friendly - NodeMap::getBoundaryNodes memory-friendly - + Cleanups in geomgraph::Edge - Added an XML test for snaprounding + buffer (shows leaks, working on it) git-svn-id: + http://svn.osgeo.org/geos/trunk@1066 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-21 Sandro Santilli @@ -23903,7 +29919,8 @@ source/noding/snapround/MCIndexPointSnapper.cpp, source/noding/snapround/MCIndexSnapRounder.cpp, source/noding/snapround/SimpleSnapRounder.cpp: MCIndexPointSnapper, - MCIndexSnapRounder git-svn-id: http://svn.osgeo.org/geos/trunk@1065 + MCIndexSnapRounder git-svn-id: + http://svn.osgeo.org/geos/trunk@1065 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-20 Sandro Santilli @@ -23915,7 +29932,8 @@ source/index/quadtree/QuadTreeNodeBase.cpp, source/index/quadtree/Quadtree.cpp, source/index/strtree/AbstractSTRtree.cpp, - source/index/strtree/STRtree.cpp: - namespace geos::index - SpatialIndex interface synced git-svn-id: http://svn.osgeo.org/geos/trunk@1064 + source/index/strtree/STRtree.cpp: - namespace geos::index - SpatialIndex interface synced + git-svn-id: http://svn.osgeo.org/geos/trunk@1064 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-20 Sandro Santilli @@ -23960,7 +29978,8 @@ source/io/Unload.cpp, source/noding/MCIndexNoder.cpp, source/noding/snapround/MCIndexPointSnapper.cpp, source/operation/valid/QuadtreeNestedRingTester.cpp, - source/operation/valid/SweeplineNestedRingTester.cpp: - namespaces geos::index::* - Doxygen documentation cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@1063 + source/operation/valid/SweeplineNestedRingTester.cpp: - namespaces geos::index::* - Doxygen documentation cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@1063 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-19 Sandro Santilli @@ -24104,7 +30123,8 @@ source/planargraph/planarSubgraph.cpp, tests/xmltester/XMLTester.cpp: Packages <-> namespaces mapping for most GEOS internal code (uncomplete, but working). Dir-level libs - for index/ subdirs. git-svn-id: http://svn.osgeo.org/geos/trunk@1062 + for index/ subdirs. git-svn-id: + http://svn.osgeo.org/geos/trunk@1062 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-18 Sandro Santilli @@ -24125,30 +30145,37 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: - new CoordinateSequence::applyCoordinateFilter method (slow but - useful) - SegmentString::getCoordinates() doesn't return a clone anymore. - SegmentString::getCoordinatesRO() obsoleted. - SegmentString constructor does not promises constness of passed CoordinateSequence anymore. - NEW ScaledNoder class - Stubs for MCIndexPointSnapper and MCIndexSnapRounder - Simplified internal interaces of OffsetCurveBuilder and - OffsetCurveSetBuilder git-svn-id: http://svn.osgeo.org/geos/trunk@1061 + useful) - SegmentString::getCoordinates() doesn't return a clone + anymore. - SegmentString::getCoordinatesRO() obsoleted. - + SegmentString constructor does not promises constness of passed + CoordinateSequence anymore. - NEW ScaledNoder class - Stubs for + MCIndexPointSnapper and MCIndexSnapRounder - Simplified internal + interaces of OffsetCurveBuilder and OffsetCurveSetBuilder + git-svn-id: http://svn.osgeo.org/geos/trunk@1061 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-16 Sandro Santilli * source/noding/NodingValidator.cpp: Fixed include: "util.h" => - "geos/util.h" git-svn-id: http://svn.osgeo.org/geos/trunk@1060 + "geos/util.h" git-svn-id: http://svn.osgeo.org/geos/trunk@1060 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-16 Sandro Santilli * source/headers/geos/nodingSnapround.h: added include for - round() git-svn-id: http://svn.osgeo.org/geos/trunk@1059 + round() git-svn-id: http://svn.osgeo.org/geos/trunk@1059 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-16 Sandro Santilli - * source/noding/IntersectionAdder.cpp: Missed from last commit git-svn-id: http://svn.osgeo.org/geos/trunk@1058 + * source/noding/IntersectionAdder.cpp: Missed from last commit + git-svn-id: http://svn.osgeo.org/geos/trunk@1058 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-15 Sean Gillies - * capi/geos_c.h.in: added GEOSGeomType git-svn-id: http://svn.osgeo.org/geos/trunk@1057 + * capi/geos_c.h.in: added GEOSGeomType git-svn-id: + http://svn.osgeo.org/geos/trunk@1057 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-15 Sandro Santilli @@ -24158,7 +30185,8 @@ source/headers/geos/noding.h, source/noding/NodingValidator.cpp, source/noding/snapround/SimpleSnapRounder.cpp: NodingValidator synced with JTS-1.7, added CoordinateSequence::operator[] and size() - to easy port maintainance. git-svn-id: http://svn.osgeo.org/geos/trunk@1056 + to easy port maintainance. git-svn-id: + http://svn.osgeo.org/geos/trunk@1056 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-15 Sandro Santilli @@ -24166,7 +30194,8 @@ * source/headers/geos/noding.h, source/noding/SegmentNode.cpp, source/noding/SegmentNodeList.cpp, source/noding/SegmentString.cpp: JTS-1.7 sync for: noding/SegmentNode.cpp noding/SegmentNodeList.cpp - noding/SegmentString.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@1055 + noding/SegmentString.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@1055 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-14 Sandro Santilli @@ -24197,8 +30226,9 @@ source/noding/snapround/SnapRounder.cpp, source/operation/buffer/BufferBuilder.cpp, tests/xmltester/XMLTester.cpp: New SnapRounding code ported from - JTS-1.7 (not complete yet). Buffer op optimized by using new - snaprounding code. Leaks fixed in XMLTester. git-svn-id: http://svn.osgeo.org/geos/trunk@1054 + JTS-1.7 (not complete yet). Buffer op optimized by using new + snaprounding code. Leaks fixed in XMLTester. git-svn-id: + http://svn.osgeo.org/geos/trunk@1054 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Sandro Santilli @@ -24247,44 +30277,50 @@ source/util/UnsupportedOperationException.cpp, tests/xmltester/CTS.cpp, tests/xmltester/SimpleWKTTester.cpp, tests/xmltester/XMLTester.cpp: GEOSException derived from - std::exception; always thrown and cought by const ref. git-svn-id: http://svn.osgeo.org/geos/trunk@1053 + std::exception; always thrown and cought by const ref. git-svn-id: + http://svn.osgeo.org/geos/trunk@1053 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Sean Gillies - * configure.in: incrementing C API patch level git-svn-id: http://svn.osgeo.org/geos/trunk@1052 + * configure.in: incrementing C API patch level git-svn-id: + http://svn.osgeo.org/geos/trunk@1052 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Sean Gillies * capi/geos_c.cpp, capi/geos_c.h.in, capi/geostest.c: added - GEOSArea() to the C API git-svn-id: http://svn.osgeo.org/geos/trunk@1051 + GEOSArea() to the C API git-svn-id: + http://svn.osgeo.org/geos/trunk@1051 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geos/geom.h, source/io/WKBReader.cpp: Added support for SRID in input WKB, - undeprecated Geometry::setSRID and Geometry::getSRID git-svn-id: http://svn.osgeo.org/geos/trunk@1050 + undeprecated Geometry::setSRID and Geometry::getSRID git-svn-id: + http://svn.osgeo.org/geos/trunk@1050 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Frank Warmerdam * source/io/WKBReader.cpp: Botched last fix. Hopefully this is - better. git-svn-id: http://svn.osgeo.org/geos/trunk@1049 + better. git-svn-id: http://svn.osgeo.org/geos/trunk@1049 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Sandro Santilli * ChangeLog, source/operation/linemerge/LineSequencer.cpp: Added - missing include git-svn-id: http://svn.osgeo.org/geos/trunk@1048 + missing include git-svn-id: + http://svn.osgeo.org/geos/trunk@1048 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-09 Frank Warmerdam * ChangeLog, source/io/WKBReader.cpp: Fixed support for consuming WKB for 'POLYGON EMPTY' with numRings==0. - http://bugzilla.remotesensing.org/show_bug.cgi?id=1064 git-svn-id: http://svn.osgeo.org/geos/trunk@1047 + http://bugzilla.remotesensing.org/show_bug.cgi?id=1064 git-svn-id: + http://svn.osgeo.org/geos/trunk@1047 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-08 Sandro Santilli @@ -24296,12 +30332,20 @@ source/headers/geos/opValid.h, source/io/WKTWriter.cpp, source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferOp.cpp, - source/operation/valid/IsValidOp.cpp: - New WKTWriter::toLineString and ::toPoint convenience methods - New IsValidOp::setSelfTouchingRingFormingHoleValid method - New Envelope::centre() - New Envelope::intersection(Envelope) - New Envelope::expandBy(distance, [ydistance]) - New LineString::reverse() - New MultiLineString::reverse() - New Geometry::buffer(distance, quadSeg, endCapStyle) - Obsoleted toInternalGeometry/fromInternalGeometry - More const-correctness in Buffer "package" git-svn-id: http://svn.osgeo.org/geos/trunk@1046 + source/operation/valid/IsValidOp.cpp: - New WKTWriter::toLineString and ::toPoint convenience methods - + New IsValidOp::setSelfTouchingRingFormingHoleValid method - New + Envelope::centre() - New Envelope::intersection(Envelope) - New + Envelope::expandBy(distance, [ydistance]) - New + LineString::reverse() - New MultiLineString::reverse() - New + Geometry::buffer(distance, quadSeg, endCapStyle) - Obsoleted + toInternalGeometry/fromInternalGeometry - More const-correctness in + Buffer "package" git-svn-id: http://svn.osgeo.org/geos/trunk@1046 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-08 Sandro Santilli - * NEWS: Added note about new LineSequencer class git-svn-id: http://svn.osgeo.org/geos/trunk@1045 + * NEWS: Added note about new LineSequencer class git-svn-id: + http://svn.osgeo.org/geos/trunk@1045 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-08 Sandro Santilli @@ -24312,24 +30356,35 @@ source/operation/linemerge/Makefile.am, source/planargraph/algorithm/ConnectedSubgraphFinder.cpp, source/planargraph/planarDirectedEdgeStar.cpp, - source/planargraph/planarSubgraph.cpp: - NEW Geometry::applyComponentFilter() templated method - Changed Geometry::getGeometryN() to take unsigned int and - getNumGeometries to return unsigned int. - Changed planarNode::getDegree() to return unsigned int. - Added Geometry::NonConstVect typedef - NEW LineSequencer class - Changed planarDirectedEdgeStar::outEdges from protected to private - added static templated setVisitedMap to change Visited flag for all values in a map - Added const versions of some planarDirectedEdgeStar methods. - Added containers typedefs for planarDirectedEdgeStar git-svn-id: http://svn.osgeo.org/geos/trunk@1044 + source/planargraph/planarSubgraph.cpp: - NEW Geometry::applyComponentFilter() templated method - Changed + Geometry::getGeometryN() to take unsigned int and getNumGeometries + to return unsigned int. - Changed planarNode::getDegree() to return + unsigned int. - Added Geometry::NonConstVect typedef - NEW + LineSequencer class - Changed planarDirectedEdgeStar::outEdges from + protected to private - added static templated setVisitedMap to + change Visited flag for all values in a map - Added const versions + of some planarDirectedEdgeStar methods. - Added containers typedefs + for planarDirectedEdgeStar git-svn-id: + http://svn.osgeo.org/geos/trunk@1044 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-07 Sandro Santilli - * source/Makefile.am: Added missing geomgraph SUBDIR git-svn-id: http://svn.osgeo.org/geos/trunk@1043 + * source/Makefile.am: Added missing geomgraph SUBDIR git-svn-id: + http://svn.osgeo.org/geos/trunk@1043 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-07 Sandro Santilli * tests/xmltester/Makefile.am: Removed TestConvexHull.xml file - (already included in testLeaksBig.xml git-svn-id: http://svn.osgeo.org/geos/trunk@1042 + (already included in testLeaksBig.xml git-svn-id: + http://svn.osgeo.org/geos/trunk@1042 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-06 Sandro Santilli - * tests/.cvsignore: new entry git-svn-id: http://svn.osgeo.org/geos/trunk@1041 + * tests/.cvsignore: new entry git-svn-id: + http://svn.osgeo.org/geos/trunk@1041 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-05 Sandro Santilli @@ -24340,7 +30395,9 @@ source/planargraph/planarDirectedEdgeStar.cpp, source/planargraph/planarNode.cpp, source/planargraph/planarNodeMap.cpp, - source/planargraph/planarPlanarGraph.cpp: - New ConnectedSubgraphFinder class. - More iterators returning methods, inlining and cleanups in planargraph. git-svn-id: http://svn.osgeo.org/geos/trunk@1040 + source/planargraph/planarPlanarGraph.cpp: - New ConnectedSubgraphFinder class. - More iterators returning + methods, inlining and cleanups in planargraph. git-svn-id: + http://svn.osgeo.org/geos/trunk@1040 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-04 Sandro Santilli @@ -24348,25 +30405,29 @@ * ChangeLog, NEWS, source/headers/geos/geom.h, source/headers/geos/geomgraph.h, source/headers/geos/planargraph.h, source/planargraph/planarSubgraph.cpp, swig/ruby/Makefile.am, - tests/xmltester/Makefile.am: - Doxygen dox updated - LineStringLT struct moved from geomgraph.h to geom.h - New planarSubgraph class - Fixed ruby Makefiles to avoid running tests when disabled - Renamed TESTS variable to XMLTESTS to not confuse 'make check' - rule git-svn-id: http://svn.osgeo.org/geos/trunk@1039 + tests/xmltester/Makefile.am: - Doxygen dox updated - LineStringLT struct moved from geomgraph.h + to geom.h - New planarSubgraph class - Fixed ruby Makefiles to avoid + running tests when disabled - Renamed TESTS variable to XMLTESTS to + not confuse 'make check' rule git-svn-id: + http://svn.osgeo.org/geos/trunk@1039 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-03 Sandro Santilli * source/geom/util/ShortCircuitedGeometryVisitor.cpp: Added missing - file git-svn-id: http://svn.osgeo.org/geos/trunk@1038 + file git-svn-id: http://svn.osgeo.org/geos/trunk@1038 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-02 Sandro Santilli * source/geom/Polygon.cpp: Fixed bug in isRectangle() failing to - detect rectangles. git-svn-id: http://svn.osgeo.org/geos/trunk@1037 + detect rectangles. git-svn-id: + http://svn.osgeo.org/geos/trunk@1037 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-01 Sandro Santilli - * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1036 + * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1036 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-02-01 Sandro Santilli @@ -24377,40 +30438,46 @@ source/headers/geos/planargraph.h, source/operation/Makefile.am, source/operation/predicate/Makefile.am, source/planargraph/planarGraphComponent.cpp: - Added rectangle-based optimizations of intersects() and contains() - ops - Inlined all planarGraphComponent class git-svn-id: http://svn.osgeo.org/geos/trunk@1035 + ops - Inlined all planarGraphComponent class git-svn-id: + http://svn.osgeo.org/geos/trunk@1035 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli - * source/Makefile.vc: Added DepthSegment object git-svn-id: http://svn.osgeo.org/geos/trunk@1034 + * source/Makefile.vc: Added DepthSegment object git-svn-id: + http://svn.osgeo.org/geos/trunk@1034 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli * swig/geos.i: Fixes error in calling read_hex from scripting - languages. git-svn-id: http://svn.osgeo.org/geos/trunk@1033 + languages. git-svn-id: http://svn.osgeo.org/geos/trunk@1033 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli - * capi/Makefile.in: Erroneusly ended in CVS git-svn-id: http://svn.osgeo.org/geos/trunk@1032 + * capi/Makefile.in: Erroneusly ended in CVS git-svn-id: + http://svn.osgeo.org/geos/trunk@1032 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli * source/operation/predicate/RectangleContains.cpp: Added missing - file from last commits git-svn-id: http://svn.osgeo.org/geos/trunk@1031 + file from last commits git-svn-id: + http://svn.osgeo.org/geos/trunk@1031 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli - * source/bigtest/.cvsignore: Another left-over from cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@1030 + * source/bigtest/.cvsignore: Another left-over from cleanups + git-svn-id: http://svn.osgeo.org/geos/trunk@1030 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli * source/capi/.cvsignore, source/test/.cvsignore: Removed leftover - files in obsoleted dirs git-svn-id: http://svn.osgeo.org/geos/trunk@1029 + files in obsoleted dirs git-svn-id: + http://svn.osgeo.org/geos/trunk@1029 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-31 Sandro Santilli @@ -24421,8 +30488,7 @@ capi}/geos_c.h.in, {source/capi => capi}/geostest.c, {source/capi => capi}/test.wkt, configure.in, doc/Doxyfile.in, doc/Makefile.am, doc/example.cpp, source/.cvsignore, source/Makefile.am, - source/{io/markup => algorithm}/.cvsignore, - source/algorithm/CGAlgorithms.cpp, + source/algorithm/.cvsignore, source/algorithm/CGAlgorithms.cpp, source/algorithm/CentroidArea.cpp, source/algorithm/CentroidLine.cpp, source/algorithm/ConvexHull.cpp, source/algorithm/InteriorPointArea.cpp, @@ -24506,7 +30572,7 @@ source/operation/predicate/Makefile.am, source/operation/predicate/RectangleIntersects.cpp, source/operation/predicate/SegmentIntersectionTester.cpp, - source/operation/relate/.cvsignore, + source/{io/markup => operation/relate}/.cvsignore, source/operation/relate/Makefile.am, source/operation/valid/.cvsignore, source/operation/valid/ConnectedInteriorTester.cpp, @@ -24539,86 +30605,108 @@ tests/xmltester}/markup/MarkupSTL.cpp, {source/io => tests/xmltester}/markup/MarkupSTL.h, {source/test => tests/xmltester}/test.xml, {source/test => - tests/xmltester}/testLeaksBig.xml: - Renamed DefaultCoordinateSequence to CoordinateArraySequence. - Moved GetNumGeometries() and GetGeometryN() interfaces from GeometryCollection to Geometry class. - Added getAt(int pos, Coordinate &to) funtion to CoordinateSequence - class. - Reworked automake scripts to produce a static lib for each subdir - and then link all subsystem's libs togheter - Moved C-API in it's own top-level dir capi/ - Moved source/bigtest and source/test to tests/bigtest and - test/xmltester - Fixed PointLocator handling of LinearRings - Changed CoordinateArrayFilter to reduce memory copies - Changed UniqueCoordinateArrayFilter to reduce memory copies - Added CGAlgorithms::isPointInRing() version working with Coordinate::ConstVect type (faster!) - Ported JTS-1.7 version of ConvexHull with big attention to memory usage optimizations. - Improved XMLTester output and user interface - geos::geom::util namespace used for geom/util stuff - Improved memory use in geos::geom::util::PolygonExtractor - New ShortCircuitedGeometryVisitor class - New operation/predicate package git-svn-id: http://svn.osgeo.org/geos/trunk@1028 + tests/xmltester}/testLeaksBig.xml: - Renamed DefaultCoordinateSequence to CoordinateArraySequence. - + Moved GetNumGeometries() and GetGeometryN() interfaces from + GeometryCollection to Geometry class. - Added getAt(int pos, + Coordinate &to) funtion to CoordinateSequence class. - Reworked + automake scripts to produce a static lib for each subdir and then + link all subsystem's libs togheter - Moved C-API in it's own + top-level dir capi/ - Moved source/bigtest and source/test to + tests/bigtest and test/xmltester - Fixed PointLocator handling of + LinearRings - Changed CoordinateArrayFilter to reduce memory copies + - Changed UniqueCoordinateArrayFilter to reduce memory copies - + Added CGAlgorithms::isPointInRing() version working with + Coordinate::ConstVect type (faster!) - Ported JTS-1.7 version of + ConvexHull with big attention to memory usage optimizations. - + Improved XMLTester output and user interface - geos::geom::util + namespace used for geom/util stuff - Improved memory use in + geos::geom::util::PolygonExtractor - New + ShortCircuitedGeometryVisitor class - New operation/predicate + package git-svn-id: http://svn.osgeo.org/geos/trunk@1028 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-30 Frank Warmerdam * source/algorithm/LineIntersector.cpp: yikes! comment out debug - define again git-svn-id: http://svn.osgeo.org/geos/trunk@1027 + define again git-svn-id: http://svn.osgeo.org/geos/trunk@1027 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-30 Frank Warmerdam * ChangeLog, source/algorithm/LineIntersector.cpp: fixed up some - debug messages git-svn-id: http://svn.osgeo.org/geos/trunk@1026 + debug messages git-svn-id: http://svn.osgeo.org/geos/trunk@1026 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-30 Sandro Santilli * macros/ac_python_devel.m4, swig/python/Makefile.am, swig/python/example.py, swig/python/geos.pth, swig/python/python.i, - swig/ruby/test/geos_tests.rb: More patches from Charlie Savage git-svn-id: http://svn.osgeo.org/geos/trunk@1025 + swig/ruby/test/geos_tests.rb: More patches from Charlie Savage + git-svn-id: http://svn.osgeo.org/geos/trunk@1025 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-27 Sandro Santilli * configure.in: Python and Ruby build disable by default (until - we've properly tested it) git-svn-id: http://svn.osgeo.org/geos/trunk@1024 + we've properly tested it) git-svn-id: + http://svn.osgeo.org/geos/trunk@1024 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-27 Sandro Santilli * macros/ac_python_devel.m4, swig/python/Makefile.am, swig/ruby/ruby.i: * Ruby - removes dependency on renames.i file which is no longer - deleted and was removed from CVS last week * Python - fixes autoconf search for Python include path * Python - fixes autoconf search for Python lib directory on - MingW/windows * Python - adds python library to link line so that python extension - can be built git-svn-id: http://svn.osgeo.org/geos/trunk@1023 + deleted and was removed from CVS last week * Python - fixes + autoconf search for Python include path * Python - fixes autoconf + search for Python lib directory on MingW/windows * Python - adds + python library to link line so that python extension can be built + git-svn-id: http://svn.osgeo.org/geos/trunk@1023 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-22 Sandro Santilli * TODO: Added Safe's performance improvement idea for - CoordinateSequence git-svn-id: http://svn.osgeo.org/geos/trunk@1022 + CoordinateSequence git-svn-id: + http://svn.osgeo.org/geos/trunk@1022 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-21 Sandro Santilli - * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1021 + * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@1021 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-21 Sandro Santilli * source/io/ByteOrderValues.cpp: Fixed integer conversion bug - (ported from JTS-1.7). Added last port information. git-svn-id: http://svn.osgeo.org/geos/trunk@1020 + (ported from JTS-1.7). Added last port information. git-svn-id: + http://svn.osgeo.org/geos/trunk@1020 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-21 Sandro Santilli * source/test/hexwkb.xml: Added endian specification to case - descriptions. All tests are Little Endian, should add the same - tests with Big Endian format. git-svn-id: http://svn.osgeo.org/geos/trunk@1019 + descriptions. All tests are Little Endian, should add the same tests + with Big Endian format. git-svn-id: + http://svn.osgeo.org/geos/trunk@1019 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-20 Sandro Santilli * source/operation/overlay/PolygonBuilder.cpp: Updated port - information git-svn-id: http://svn.osgeo.org/geos/trunk@1018 + information git-svn-id: http://svn.osgeo.org/geos/trunk@1018 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-20 Sandro Santilli - * source/operation/overlay/PolygonBuilder.cpp: Fixed bug #13 git-svn-id: http://svn.osgeo.org/geos/trunk@1017 + * source/operation/overlay/PolygonBuilder.cpp: Fixed bug #13 + git-svn-id: http://svn.osgeo.org/geos/trunk@1017 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-20 Sandro Santilli * source/operation/valid/IsValidOp.cpp, source/operation/valid/TopologyValidationError.cpp: Updated last - port info git-svn-id: http://svn.osgeo.org/geos/trunk@1016 + port info git-svn-id: http://svn.osgeo.org/geos/trunk@1016 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-20 Sandro Santilli @@ -24626,50 +30714,57 @@ * configure.in, macros/ruby.m4, swig/python/Makefile.am, swig/ruby/Makefile.am, swig/ruby/renames.i, swig/ruby/test/Makefile.am, swig/ruby/{ => test}/example.rb, - swig/ruby/test/test_envelope.rb: More SWIG/python/ruby patches git-svn-id: http://svn.osgeo.org/geos/trunk@1015 + swig/ruby/test/test_envelope.rb: More SWIG/python/ruby patches + git-svn-id: http://svn.osgeo.org/geos/trunk@1015 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-20 Sandro Santilli - * source/io/WKBReader.cpp: Better debugging git-svn-id: http://svn.osgeo.org/geos/trunk@1014 + * source/io/WKBReader.cpp: Better debugging git-svn-id: + http://svn.osgeo.org/geos/trunk@1014 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-20 Sandro Santilli - * source/test/hexwkb.xml: PrecisionModel made FLOATING git-svn-id: http://svn.osgeo.org/geos/trunk@1013 + * source/test/hexwkb.xml: PrecisionModel made FLOATING git-svn-id: + http://svn.osgeo.org/geos/trunk@1013 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli * source/test/XMLTester.cpp, source/test/XMLTester.h: Reworked - XMLTester to be quiet by default. Use -v switch to make it verbose. git-svn-id: http://svn.osgeo.org/geos/trunk@1012 + XMLTester to be quiet by default. Use -v switch to make it verbose. + git-svn-id: http://svn.osgeo.org/geos/trunk@1012 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli - * source/test/hexwkb.xml: Added GEOMETRYCOLLECTION test git-svn-id: http://svn.osgeo.org/geos/trunk@1011 + * source/test/hexwkb.xml: Added GEOMETRYCOLLECTION test + git-svn-id: http://svn.osgeo.org/geos/trunk@1011 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli - * source/test/Makefile.am: Added another local test to the test rule git-svn-id: http://svn.osgeo.org/geos/trunk@1010 + * source/test/Makefile.am: Added another local test to the test rule + git-svn-id: http://svn.osgeo.org/geos/trunk@1010 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli * source/io/WKTWriter.cpp: Fixed leak in ::writeFormatted(Geometry - *) git-svn-id: http://svn.osgeo.org/geos/trunk@1009 + *) git-svn-id: http://svn.osgeo.org/geos/trunk@1009 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli - * source/io/WKBReader.cpp: more debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@1008 + * source/io/WKBReader.cpp: more debugging lines git-svn-id: + http://svn.osgeo.org/geos/trunk@1008 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli * source/io/WKBReader.cpp: Set binary flag for stringstream used in - ::readHEX() git-svn-id: http://svn.osgeo.org/geos/trunk@1007 + ::readHEX() git-svn-id: http://svn.osgeo.org/geos/trunk@1007 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli @@ -24678,20 +30773,22 @@ source/test/XMLTester.h, source/test/hexwkb.xml: Added HEXWKB support in XMLTester. Added a simple test in HEXWKB form and a 'test' rule running the locally-available tests and showing result - summay. git-svn-id: http://svn.osgeo.org/geos/trunk@1006 + summay. git-svn-id: http://svn.osgeo.org/geos/trunk@1006 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-18 Sandro Santilli - * macros/ac_python_devel.m4: Added missing macro file git-svn-id: http://svn.osgeo.org/geos/trunk@1005 + * macros/ac_python_devel.m4: Added missing macro file git-svn-id: + http://svn.osgeo.org/geos/trunk@1005 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-17 Sandro Santilli * configure.in, macros/ac_pkg_swig.m4: Modified AC_PROG_SWIG macro to set SWIG to the empty string on error (rather then making it echo - an error and return false). SWIG version 1.3.28 or up required in - order to build SWIG-based extensions. git-svn-id: http://svn.osgeo.org/geos/trunk@1004 + an error and return false). SWIG version 1.3.28 or up required in + order to build SWIG-based extensions. git-svn-id: + http://svn.osgeo.org/geos/trunk@1004 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-16 Sandro Santilli @@ -24699,7 +30796,8 @@ * autogen.sh, configure.in, macros/ac_pkg_swig.m4, macros/python.m4, swig/python/.cvsignore, swig/python/Makefile.am, swig/python/python.i, swig/ruby/Makefile.am: Added initial - conditional build of python and ruby wrappers git-svn-id: http://svn.osgeo.org/geos/trunk@1003 + conditional build of python and ruby wrappers git-svn-id: + http://svn.osgeo.org/geos/trunk@1003 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-15 Sandro Santilli @@ -24708,7 +30806,8 @@ swig/ruby/.cvsignore, swig/ruby/Makefile, swig/ruby/Makefile.am, swig/ruby/renames.i, swig/ruby/ruby.i, swig/ruby/test/.cvsignore, swig/ruby/test/Makefile.am: Added bare build/install/dist scripts - support for ruby interface git-svn-id: http://svn.osgeo.org/geos/trunk@1001 + support for ruby interface git-svn-id: + http://svn.osgeo.org/geos/trunk@1001 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-15 Sandro Santilli @@ -24717,37 +30816,41 @@ swig/ruby/test/test_combinations.rb, swig/ruby/test/test_helper.rb, swig/ruby/test/test_io.rb, swig/ruby/test/test_operations.rb, swig/ruby/test/test_relations.rb, swig/ruby/test/test_simple.rb: - Initial import of ruby unit tests git-svn-id: http://svn.osgeo.org/geos/trunk@1000 + Initial import of ruby unit tests git-svn-id: + http://svn.osgeo.org/geos/trunk@1000 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-15 Sandro Santilli * source/geom/Envelope.cpp, source/headers/geos/geom.h: Added Envelope constructor by string (accepting what's returned by - ::toString) git-svn-id: http://svn.osgeo.org/geos/trunk@999 + ::toString) git-svn-id: http://svn.osgeo.org/geos/trunk@999 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-15 Sandro Santilli * source/headers/geos/io.h, source/io/WKBReader.cpp, source/io/WKBWriter.cpp: Added WKBWriter::writeHEX() and - WKBReader::readHEX() git-svn-id: http://svn.osgeo.org/geos/trunk@998 + WKBReader::readHEX() git-svn-id: + http://svn.osgeo.org/geos/trunk@998 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-12 Sandro Santilli - * NEWS: synced after 2.2.1 release git-svn-id: http://svn.osgeo.org/geos/trunk@997 + * NEWS: synced after 2.2.1 release git-svn-id: + http://svn.osgeo.org/geos/trunk@997 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-12 Sandro Santilli - * source/capi/geos_c.cpp: Removed double call to ::isValid git-svn-id: http://svn.osgeo.org/geos/trunk@996 + * source/capi/geos_c.cpp: Removed double call to ::isValid + git-svn-id: http://svn.osgeo.org/geos/trunk@996 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-08 Sandro Santilli * source/capi/geos_c.cpp: Changed finite() function call with - FINITE() macro. git-svn-id: http://svn.osgeo.org/geos/trunk@994 + FINITE() macro. git-svn-id: http://svn.osgeo.org/geos/trunk@994 5242fede-7e19-0410-aef8-94bd7d2200fb 2006-01-08 Sandro Santilli @@ -24761,10 +30864,11 @@ source/operation/relate/RelateNodeGraph.cpp, source/operation/valid/IsValidOp.cpp, source/util/GeometricShapeFactory.cpp: Changed container-related - typedef to class-scoped STL-like typedefs. Fixed const correctness + typedef to class-scoped STL-like typedefs. Fixed const correctness of EdgeIntersectionList::begin() and ::end() consts; defined M_PI - when undef as suggested by Charlie Savage. Removed - include from GeometricShapeFactory.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@993 + when undef as suggested by Charlie Savage. Removed include + from GeometricShapeFactory.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@993 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-22 Sandro Santilli @@ -24772,25 +30876,26 @@ * swig/README.txt, swig/geos.i, swig/ruby/Makefile, swig/ruby/README.txt, swig/ruby/example.rb, swig/ruby/renames.i, swig/ruby/ruby.i: Imported Charlie Savage new ruby wrapper and swig - changes git-svn-id: http://svn.osgeo.org/geos/trunk@992 + changes git-svn-id: http://svn.osgeo.org/geos/trunk@992 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-14 Sandro Santilli * HOWTO_RELEASE: Added a note about the need to *always* increment - CAPI version git-svn-id: http://svn.osgeo.org/geos/trunk@991 + CAPI version git-svn-id: http://svn.osgeo.org/geos/trunk@991 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-14 Sandro Santilli - * HOWTO_RELEASE, source/algorithm/ConvexHull.cpp: New entry git-svn-id: http://svn.osgeo.org/geos/trunk@990 + * HOWTO_RELEASE, source/algorithm/ConvexHull.cpp: New entry + git-svn-id: http://svn.osgeo.org/geos/trunk@990 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-13 Sandro Santilli * source/capi/geos_c.h.in: Removed INTERFACE_* defines (obsoleted). Made GEOSCoordSeq_clone() arg const (won't change ABI, it's C world, - lucky ;) git-svn-id: http://svn.osgeo.org/geos/trunk@989 + lucky ;) git-svn-id: http://svn.osgeo.org/geos/trunk@989 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-13 Sandro Santilli @@ -24798,60 +30903,67 @@ * source/capi/geos_c.cpp: Removed conditional blocks based on GEOS version (we're always in sync). This fixed an annoying problem introduced since INTERFACE_LAST and INTERFACE_CURREN were taken off - geos/version.h git-svn-id: http://svn.osgeo.org/geos/trunk@988 + geos/version.h git-svn-id: http://svn.osgeo.org/geos/trunk@988 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-12 Sandro Santilli * configure.in, source/geom/Makefile.am, source/headers/geos/version.h.in: Switched to -release mode for C++ - library versioning. Every release will be binary-incompatible with - previous. Removed GEOS_FIRST_INTERFACE and GEOS_LAST_INTERFACE - defines from geos/version.h. git-svn-id: http://svn.osgeo.org/geos/trunk@987 + library versioning. Every release will be binary-incompatible with + previous. Removed GEOS_FIRST_INTERFACE and GEOS_LAST_INTERFACE + defines from geos/version.h. git-svn-id: + http://svn.osgeo.org/geos/trunk@987 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-11 Sandro Santilli * source/operation/overlay/ElevationMatrix.cpp, source/operation/overlay/ElevationMatrixFilter.cpp: Fixed premature - initialization of average Z value in ElevationMatrixFilter git-svn-id: http://svn.osgeo.org/geos/trunk@984 + initialization of average Z value in ElevationMatrixFilter + git-svn-id: http://svn.osgeo.org/geos/trunk@984 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-11 Sandro Santilli - * configure.in: Fixed mungled versions (1.0.0/3.0.1 => 1.0.1/3.0.0) git-svn-id: http://svn.osgeo.org/geos/trunk@983 + * configure.in: Fixed mungled versions (1.0.0/3.0.1 => 1.0.1/3.0.0) + git-svn-id: http://svn.osgeo.org/geos/trunk@983 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-10 Sandro Santilli - * source/capi/geos_c.cpp: Unkown -> Unknown typo fix git-svn-id: http://svn.osgeo.org/geos/trunk@981 + * source/capi/geos_c.cpp: Unkown -> Unknown typo fix git-svn-id: + http://svn.osgeo.org/geos/trunk@981 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-09 Sandro Santilli * configure.in: Capi lib version set to 1.0.1 (due to leak fix in - GEOSHasZ) git-svn-id: http://svn.osgeo.org/geos/trunk@980 + GEOSHasZ) git-svn-id: http://svn.osgeo.org/geos/trunk@980 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-09 Sandro Santilli * NEWS, source/capi/geos_c.cpp, source/operation/polygonize/PolygonizeGraph.cpp: Small leak plugged - in CAPI::GEOSHasZ() and in invalid input to PolygonizeGraph (again) git-svn-id: http://svn.osgeo.org/geos/trunk@977 + in CAPI::GEOSHasZ() and in invalid input to PolygonizeGraph (again) + git-svn-id: http://svn.osgeo.org/geos/trunk@977 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-09 Sandro Santilli * source/operation/polygonize/Polygonizer.cpp: Cleaned up debugging - line left over from previous commit git-svn-id: http://svn.osgeo.org/geos/trunk@974 + line left over from previous commit git-svn-id: + http://svn.osgeo.org/geos/trunk@974 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-09 Sandro Santilli * NEWS, source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp: Fixed a bug making - PolygonizeGraph choking on invalid LineStrings. Minor optimizations - in Polygonizer loops. git-svn-id: http://svn.osgeo.org/geos/trunk@972 + PolygonizeGraph choking on invalid LineStrings. Minor optimizations + in Polygonizer loops. git-svn-id: + http://svn.osgeo.org/geos/trunk@972 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-08 Sandro Santilli @@ -24869,41 +30981,45 @@ used for both elevation and Matrix fill, thus removing CoordinateSequence copy in ElevetaionMatrix::add(Geometry *). Changed CoordinateFilter::filter_rw to be a const method: updated - all apply_rw() methods to take a const CoordinateFilter. git-svn-id: http://svn.osgeo.org/geos/trunk@971 + all apply_rw() methods to take a const CoordinateFilter. + git-svn-id: http://svn.osgeo.org/geos/trunk@971 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-08 Sandro Santilli * NEWS, source/headers/geos/noding.h, source/noding/Noder.cpp, source/noding/SegmentString.cpp: SegmentString::eiList made a real - object rather then a pointer. Adde getter for const and non-const - references of it (dropping get by pointer) git-svn-id: http://svn.osgeo.org/geos/trunk@970 + object rather then a pointer. Adde getter for const and non-const + references of it (dropping get by pointer) git-svn-id: + http://svn.osgeo.org/geos/trunk@970 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-08 Sandro Santilli * source/geomgraph/EdgeIntersectionList.cpp: minor optimizations in - loops git-svn-id: http://svn.osgeo.org/geos/trunk@969 + loops git-svn-id: http://svn.osgeo.org/geos/trunk@969 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-08 Sandro Santilli * source/geomgraph/EdgeIntersectionList.cpp: Reduced coordinate - assignments in ::createSplitEdge git-svn-id: http://svn.osgeo.org/geos/trunk@968 + assignments in ::createSplitEdge git-svn-id: + http://svn.osgeo.org/geos/trunk@968 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-08 Sandro Santilli * NEWS, source/headers/geos/opOverlay.h, source/operation/overlay/LineBuilder.cpp: LineBuilder::lineEdgesList - made a real vector, rather then pointer (private member). Small + made a real vector, rather then pointer (private member). Small optimizations in LineBuilder loops, cleanups in LineBuilder class - dox. git-svn-id: http://svn.osgeo.org/geos/trunk@967 + dox. git-svn-id: http://svn.osgeo.org/geos/trunk@967 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli - * source/geomgraph/EdgeIntersection.cpp: standard indentation git-svn-id: http://svn.osgeo.org/geos/trunk@966 + * source/geomgraph/EdgeIntersection.cpp: standard indentation + git-svn-id: http://svn.osgeo.org/geos/trunk@966 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli @@ -24913,37 +31029,41 @@ CoordinateSequence::apply_rw(CoordinateFilter *) and CoordinateSequence::apply_ro(CoordinateFilter *) const to reduce coordinate copies on read-write CoordinateFilter applications - (previously required getAt()/setAt() calls). Undefined + (previously required getAt()/setAt() calls). Undefined PROFILE_COORDINATE_COPIES (erroneously left defined by previous - commit) git-svn-id: http://svn.osgeo.org/geos/trunk@965 + commit) git-svn-id: http://svn.osgeo.org/geos/trunk@965 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli * source/geom/CoordinateSequence.cpp: Optimized memory allocations - in ::removeRepeatedPoints git-svn-id: http://svn.osgeo.org/geos/trunk@964 + in ::removeRepeatedPoints git-svn-id: + http://svn.osgeo.org/geos/trunk@964 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli * source/geomgraph/GeometryGraph.cpp: minor container methods call - reduction git-svn-id: http://svn.osgeo.org/geos/trunk@963 + reduction git-svn-id: http://svn.osgeo.org/geos/trunk@963 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli - * source/geomgraph/EdgeEndStar.cpp: removed dead code git-svn-id: http://svn.osgeo.org/geos/trunk@962 + * source/geomgraph/EdgeEndStar.cpp: removed dead code git-svn-id: + http://svn.osgeo.org/geos/trunk@962 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli - * source/geomgraph/DirectedEdgeStar.cpp: minor cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@961 + * source/geomgraph/DirectedEdgeStar.cpp: minor cleanups + git-svn-id: http://svn.osgeo.org/geos/trunk@961 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli * source/geomgraph/Edge.cpp: Oops, removed Coordinate copies - introduced by recent code cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@960 + introduced by recent code cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@960 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-07 Sandro Santilli @@ -24954,95 +31074,106 @@ source/operation/overlay/OverlayOp.cpp, source/operation/valid/ConnectedInteriorTester.cpp: Changed PlanarGraph::addEdges and EdgeList::addAll to take a const vector by - reference rather then a non-const vector by pointer. Optimized - polygon vector allocations in OverlayOp::computeOverlay. git-svn-id: http://svn.osgeo.org/geos/trunk@959 + reference rather then a non-const vector by pointer. Optimized + polygon vector allocations in OverlayOp::computeOverlay. + git-svn-id: http://svn.osgeo.org/geos/trunk@959 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-12-06 Sandro Santilli * Makefile.am, NEWS, configure.in, source/capi/Makefile.am, - source/geom/Makefile.am: Added acsite.m4 to distribution. Added - macros and flags required to build on mingw arch. git-svn-id: http://svn.osgeo.org/geos/trunk@958 + source/geom/Makefile.am: Added acsite.m4 to distribution. Added + macros and flags required to build on mingw arch. git-svn-id: + http://svn.osgeo.org/geos/trunk@958 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-30 Sandro Santilli - * source/capi/.cvsignore: Added geos_c.h git-svn-id: http://svn.osgeo.org/geos/trunk@955 + * source/capi/.cvsignore: Added geos_c.h git-svn-id: + http://svn.osgeo.org/geos/trunk@955 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-30 Sandro Santilli - * tools/geos-config.in: Added --ldflags git-svn-id: http://svn.osgeo.org/geos/trunk@951 + * tools/geos-config.in: Added --ldflags git-svn-id: + http://svn.osgeo.org/geos/trunk@951 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-30 Sandro Santilli - * README: Updated with C-API usage git-svn-id: http://svn.osgeo.org/geos/trunk@949 + * README: Updated with C-API usage git-svn-id: + http://svn.osgeo.org/geos/trunk@949 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-30 Sandro Santilli - * doc/example.cpp: catch std::exception by ref git-svn-id: http://svn.osgeo.org/geos/trunk@945 + * doc/example.cpp: catch std::exception by ref git-svn-id: + http://svn.osgeo.org/geos/trunk@945 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-30 Sandro Santilli - * doc/example.cpp: includes cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@944 + * doc/example.cpp: includes cleanup git-svn-id: + http://svn.osgeo.org/geos/trunk@944 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli - * NEWS: updated moving some items to 2.2.0 git-svn-id: http://svn.osgeo.org/geos/trunk@942 + * NEWS: updated moving some items to 2.2.0 git-svn-id: + http://svn.osgeo.org/geos/trunk@942 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli * source/geomgraph/TopologyLocation.cpp, source/headers/geos/geomgraph.h: Fixed signedness of - TopologyLocation methods, cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@936 + TopologyLocation methods, cleanups. git-svn-id: + http://svn.osgeo.org/geos/trunk@936 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli * ChangeLog, source/algorithm/MinimumDiameter.cpp, source/headers/geos/geosAlgorithm.h: Fixed sign-related warnings and - signatures. git-svn-id: http://svn.osgeo.org/geos/trunk@935 + signatures. git-svn-id: http://svn.osgeo.org/geos/trunk@935 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli - * NEWS: More info git-svn-id: http://svn.osgeo.org/geos/trunk@934 + * NEWS: More info git-svn-id: http://svn.osgeo.org/geos/trunk@934 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli - * NEWS: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@933 + * NEWS: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@933 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli * source/geomgraph/Edge.cpp, source/headers/geos/geomgraph.h: - Removed number of points cache in Edge, replaced with local caches. git-svn-id: http://svn.osgeo.org/geos/trunk@932 + Removed number of points cache in Edge, replaced with local caches. + git-svn-id: http://svn.osgeo.org/geos/trunk@932 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli * source/geom/CoordinateSequence.cpp, source/geom/DefaultCoordinateSequence.cpp: More signed/unsigned - fixes git-svn-id: http://svn.osgeo.org/geos/trunk@931 + fixes git-svn-id: http://svn.osgeo.org/geos/trunk@931 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli * source/headers/geos/geom.h, source/headers/geos/io.h: Moved byte - typedef from geom.h to io.h. Removed useless commas at inlined funx - end. Changed CoordinateSequenceFactory::create(siz,dims) to use - unsigned for dims. git-svn-id: http://svn.osgeo.org/geos/trunk@930 + typedef from geom.h to io.h. Removed useless commas at inlined funx + end. Changed CoordinateSequenceFactory::create(siz,dims) to use + unsigned for dims. git-svn-id: http://svn.osgeo.org/geos/trunk@930 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli - * NEWS: organized changes info git-svn-id: http://svn.osgeo.org/geos/trunk@929 + * NEWS: organized changes info git-svn-id: + http://svn.osgeo.org/geos/trunk@929 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-29 Sandro Santilli @@ -25053,26 +31184,29 @@ source/operation/buffer/BufferSubgraph.cpp, source/operation/relate/EdgeEndBundleStar.cpp, source/operation/valid/ConsistentAreaTester.cpp: Removed edgeList - cache from EdgeEndRing. edgeMap is enough. Restructured iterated + cache from EdgeEndRing. edgeMap is enough. Restructured iterated access by use of standard ::iterator abstraction with scoped - typedefs. git-svn-id: http://svn.osgeo.org/geos/trunk@928 + typedefs. git-svn-id: http://svn.osgeo.org/geos/trunk@928 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-28 Sandro Santilli - * source/geom/LineString.cpp: Minor warning removal git-svn-id: http://svn.osgeo.org/geos/trunk@927 + * source/geom/LineString.cpp: Minor warning removal git-svn-id: + http://svn.osgeo.org/geos/trunk@927 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-25 Sandro Santilli * NEWS, source/test/XMLTester.cpp, source/test/XMLTester.h: Made - XMLTester able to run multiple test files and keep overall counters. git-svn-id: http://svn.osgeo.org/geos/trunk@926 + XMLTester able to run multiple test files and keep overall counters. + git-svn-id: http://svn.osgeo.org/geos/trunk@926 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-25 Sandro Santilli * source/precision/SimpleGeometryPrecisionReducer.cpp: Another - getSize in for loop, another int-unsigned int warning git-svn-id: http://svn.osgeo.org/geos/trunk@925 + getSize in for loop, another int-unsigned int warning git-svn-id: + http://svn.osgeo.org/geos/trunk@925 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-25 Sandro Santilli @@ -25087,37 +31221,42 @@ source/operation/valid/ConnectedInteriorTester.cpp, source/operation/valid/IsValidOp.cpp, source/operation/valid/RepeatedPointTester.cpp: Removed all - CoordinateSequence::getSize() calls embedded in for loops. git-svn-id: http://svn.osgeo.org/geos/trunk@924 + CoordinateSequence::getSize() calls embedded in for loops. + git-svn-id: http://svn.osgeo.org/geos/trunk@924 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-25 Sandro Santilli * source/geomgraph/Edge.cpp: Fix in ::equals() - this finally passes - testLeaksBig.xml tests git-svn-id: http://svn.osgeo.org/geos/trunk@923 + testLeaksBig.xml tests git-svn-id: + http://svn.osgeo.org/geos/trunk@923 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-25 Sandro Santilli * source/geom/GeometryCollection.cpp: Fixed bug in getCoordinates() - [ introduced by previous commit ] git-svn-id: http://svn.osgeo.org/geos/trunk@922 + [ introduced by previous commit ] git-svn-id: + http://svn.osgeo.org/geos/trunk@922 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-24 Sandro Santilli * source/geomgraph/Edge.cpp, source/headers/geos/geomgraph.h: Yes - another fix, sorry. Missing const-correctness. git-svn-id: http://svn.osgeo.org/geos/trunk@921 + another fix, sorry. Missing const-correctness. git-svn-id: + http://svn.osgeo.org/geos/trunk@921 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-24 Sandro Santilli * source/geomgraph/Edge.cpp, source/headers/geos/geomgraph.h: Fixed - equals() function [ optimized in previous commit, but unchecked ] git-svn-id: http://svn.osgeo.org/geos/trunk@920 + equals() function [ optimized in previous commit, but unchecked ] + git-svn-id: http://svn.osgeo.org/geos/trunk@920 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-24 Sandro Santilli * NEWS: Added note about CoordinateSequence signed->unsigned change - in API git-svn-id: http://svn.osgeo.org/geos/trunk@919 + in API git-svn-id: http://svn.osgeo.org/geos/trunk@919 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-24 Sandro Santilli @@ -25139,7 +31278,8 @@ source/noding/snapround/SimpleSegmentStringsSnapper.cpp: CoordinateSequence indexes switched from int to the more the correct unsigned int. Optimizations here and there to avoid calling - getSize() in loops. Update of all callers is not complete yet. git-svn-id: http://svn.osgeo.org/geos/trunk@918 + getSize() in loops. Update of all callers is not complete yet. + git-svn-id: http://svn.osgeo.org/geos/trunk@918 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-24 Sandro Santilli @@ -25147,7 +31287,8 @@ * source/algorithm/CentroidLine.cpp, source/headers/geos/geosAlgorithm.h: CentroidLine made concrete class (only destructor was virtual) - avoided heap allocation for - owned Coordinate centSum git-svn-id: http://svn.osgeo.org/geos/trunk@917 + owned Coordinate centSum git-svn-id: + http://svn.osgeo.org/geos/trunk@917 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-21 Sandro Santilli @@ -25180,7 +31321,28 @@ source/operation/relate/RelateNodeGraph.cpp, source/operation/relate/RelateOp.cpp, source/operation/valid/ConnectedInteriorTester.cpp, - source/operation/valid/IsValidOp.cpp: Coordinate interface change: Removed setCoordinate call, use assignment operator instead. Provided a compile-time switch to make copy ctor and assignment operators non-inline to allow for more accurate profiling. Coordinate copies removal: NodeFactory::createNode() takes now a Coordinate reference rather then real value. This brings coordinate copies in the testLeaksBig.xml test from 654818 to 645991 (tested in 2.1 branch). In the head branch Coordinate copies are 222198. Removed useless coordinate copies in ConvexHull operations STL containers heap allocations reduction: Converted many containers element from pointers to real objects. Made some use of .reserve() or size initialization when final container size is known in advance. Stateless classes allocations reduction: Provided ::instance() function for NodeFactories, to avoid allocating more then one (they are all stateless). HCoordinate improvements: Changed HCoordinate constructor by HCoordinates take reference rather then real objects. Changed HCoordinate::intersection to avoid a new allocation but rather return into a provided storage. LineIntersector changed to reflect the above change. git-svn-id: http://svn.osgeo.org/geos/trunk@916 + source/operation/valid/IsValidOp.cpp: Coordinate interface change: + Removed setCoordinate call, use assignment operator instead. + Provided a compile-time switch to make copy ctor and + assignment operators non-inline to allow for more accurate + profiling. Coordinate copies removal: + NodeFactory::createNode() takes now a Coordinate reference + rather then real value. This brings coordinate copies in the + testLeaksBig.xml test from 654818 to 645991 (tested in 2.1 + branch). In the head branch Coordinate copies are 222198. + Removed useless coordinate copies in ConvexHull operations + STL containers heap allocations reduction: Converted many + containers element from pointers to real objects. + Made some use of .reserve() or size initialization when + final container size is known in advance. Stateless classes + allocations reduction: Provided ::instance() function for + NodeFactories, to avoid allocating more then one (they are + all stateless). HCoordinate improvements: Changed + HCoordinate constructor by HCoordinates take reference + rather then real objects. Changed HCoordinate::intersection + to avoid a new allocation but rather return into a provided + storage. LineIntersector changed to reflect the above + change. git-svn-id: http://svn.osgeo.org/geos/trunk@916 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-18 Sandro Santilli @@ -25190,11 +31352,12 @@ source/operation/overlay/MaximalEdgeRing.cpp, source/operation/overlay/MinimalEdgeRing.cpp, source/operation/overlay/PolygonBuilder.cpp: Fixed a bug in - EdgeRing::containsPoint(). Changed EdgeRing::getLinearRing() to + EdgeRing::containsPoint(). Changed EdgeRing::getLinearRing() to avoid LinearRing copy and updated usages from PolygonBuilder. Removed CoordinateSequence copy in EdgeRing (ownership is - transferred to its LinearRing). Removed heap allocations for - EdgeRing containers. Initialization lists and cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@915 + transferred to its LinearRing). Removed heap allocations for + EdgeRing containers. Initialization lists and cleanups. + git-svn-id: http://svn.osgeo.org/geos/trunk@915 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-16 Sandro Santilli @@ -25204,7 +31367,8 @@ source/geomgraph/GeometryGraph.cpp, source/geomgraph/PlanarGraph.cpp, source/headers/geos/geomgraph.h, source/operation/valid/IsValidOp.cpp: enforced const-correctness and - use of initializer lists. git-svn-id: http://svn.osgeo.org/geos/trunk@913 + use of initializer lists. git-svn-id: + http://svn.osgeo.org/geos/trunk@913 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-16 Sandro Santilli @@ -25219,7 +31383,7 @@ source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateNodeGraph.cpp, source/operation/valid/IsValidOp.cpp: Reduced gratuitous heap - allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@912 + allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@912 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-15 Sandro Santilli @@ -25227,7 +31391,8 @@ * source/algorithm/LineIntersector.cpp, source/geomgraph/Label.cpp, source/geomgraph/TopologyLocation.cpp, source/headers/geos/geomgraph.h, - source/headers/geos/geosAlgorithm.h: Removed dead code git-svn-id: http://svn.osgeo.org/geos/trunk@911 + source/headers/geos/geosAlgorithm.h: Removed dead code git-svn-id: + http://svn.osgeo.org/geos/trunk@911 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-15 Sandro Santilli @@ -25247,7 +31412,7 @@ source/planargraph/planarNodeMap.cpp, source/planargraph/planarPlanarGraph.cpp: Reduced heap allocations, made use of references when appropriate, small optimizations here - and there. git-svn-id: http://svn.osgeo.org/geos/trunk@909 + and there. git-svn-id: http://svn.osgeo.org/geos/trunk@909 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-15 Sandro Santilli @@ -25260,14 +31425,16 @@ source/geomgraph/index/SimpleSweepLineIntersector.cpp, source/geomgraph/index/SweepLineSegment.cpp, source/headers/geos/geomgraphindex.h: Reduced heap allocations - (vectors, mostly). Enforced const-correctness, changed some - interfaces to use references rather then pointers when appropriate. git-svn-id: http://svn.osgeo.org/geos/trunk@908 + (vectors, mostly). Enforced const-correctness, changed some + interfaces to use references rather then pointers when appropriate. + git-svn-id: http://svn.osgeo.org/geos/trunk@908 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-15 Sandro Santilli * source/geom/LineString.cpp: optimized envelope computation - reducing virtual calls git-svn-id: http://svn.osgeo.org/geos/trunk@907 + reducing virtual calls git-svn-id: + http://svn.osgeo.org/geos/trunk@907 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-14 Sandro Santilli @@ -25282,14 +31449,15 @@ source/operation/overlay/OverlayOp.cpp, source/operation/relate/EdgeEndBuilder.cpp, source/operation/relate/EdgeEndBundle.cpp: Reduced heap allocations - made by TopologyLocation and Label objects. Enforced - const-correctness on GraphComponent. Cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@906 + made by TopologyLocation and Label objects. Enforced + const-correctness on GraphComponent. Cleanups. git-svn-id: + http://svn.osgeo.org/geos/trunk@906 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-10 Sandro Santilli * source/io/WKBReader.cpp: Fixed printHEX (was printing one char - past the WKB) git-svn-id: http://svn.osgeo.org/geos/trunk@904 + past the WKB) git-svn-id: http://svn.osgeo.org/geos/trunk@904 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-10 Sandro Santilli @@ -25297,45 +31465,51 @@ * source/headers/geos/geomUtil.h, source/headers/geos/geomgraph.h, source/headers/geos/geosAlgorithm.h, source/headers/geos/indexStrtree.h, source/headers/geos/noding.h, - source/headers/geos/precision.h: Made virtual overloads explicit. git-svn-id: http://svn.osgeo.org/geos/trunk@903 + source/headers/geos/precision.h: Made virtual overloads explicit. + git-svn-id: http://svn.osgeo.org/geos/trunk@903 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-10 Sandro Santilli * source/geom/MultiPoint.cpp, source/headers/geos/geom.h: Renamed MultiPoint::getCoordinate(int) to MultiPoint::getCoordinateN(int) to - avoid hiding of Geometry::getCoordinate(). git-svn-id: http://svn.osgeo.org/geos/trunk@902 + avoid hiding of Geometry::getCoordinate(). git-svn-id: + http://svn.osgeo.org/geos/trunk@902 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-10 Sandro Santilli * source/headers/geos/util.h, source/util/CoordinateArrayFiter.cpp: - Fixed virtual overload of CoordinateArrayFilter::filter* git-svn-id: http://svn.osgeo.org/geos/trunk@901 + Fixed virtual overload of CoordinateArrayFilter::filter* + git-svn-id: http://svn.osgeo.org/geos/trunk@901 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-10 Sandro Santilli * source/geom/LineString.cpp, source/headers/geos/geom.h: Removed - virtual overloading LineString::compareTo(LineString *) git-svn-id: http://svn.osgeo.org/geos/trunk@900 + virtual overloading LineString::compareTo(LineString *) + git-svn-id: http://svn.osgeo.org/geos/trunk@900 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-09 Sandro Santilli - * source/operation/buffer/DepthSegment.cpp: Forgot to add this git-svn-id: http://svn.osgeo.org/geos/trunk@899 + * source/operation/buffer/DepthSegment.cpp: Forgot to add this + git-svn-id: http://svn.osgeo.org/geos/trunk@899 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-09 Sandro Santilli * source/geomgraph/Node.cpp, source/geomgraph/NodeMap.cpp, source/headers/geos/geomgraph.h: Cleanups in Node and NodeMap. - Optimization of EdgeIntersectionLessThen. git-svn-id: http://svn.osgeo.org/geos/trunk@898 + Optimization of EdgeIntersectionLessThen. git-svn-id: + http://svn.osgeo.org/geos/trunk@898 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-09 Sandro Santilli * source/geom/IntersectionMatrix.cpp, source/headers/geos/geom.h: - IntersectionMatrix made a concrete and final type. Cleanups in - class definition. git-svn-id: http://svn.osgeo.org/geos/trunk@897 + IntersectionMatrix made a concrete and final type. Cleanups in class + definition. git-svn-id: http://svn.osgeo.org/geos/trunk@897 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-08 Sandro Santilli @@ -25344,59 +31518,68 @@ source/headers/geos/opBuffer.h, source/operation/buffer/BufferSubgraph.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: Memory overhead - reductions in buffer operations. git-svn-id: http://svn.osgeo.org/geos/trunk@896 + reductions in buffer operations. git-svn-id: + http://svn.osgeo.org/geos/trunk@896 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-08 Sandro Santilli * source/geom/DefaultCoordinateSequence.cpp: Cleanups, ::setPoint - small improvement git-svn-id: http://svn.osgeo.org/geos/trunk@895 + small improvement git-svn-id: http://svn.osgeo.org/geos/trunk@895 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-08 Sandro Santilli - * source/operation/overlay/OverlayOp.cpp: comments cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@894 + * source/operation/overlay/OverlayOp.cpp: comments cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@894 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-08 Sandro Santilli - * configure.in: Library versioning took back to 3.0.0 git-svn-id: http://svn.osgeo.org/geos/trunk@893 + * configure.in: Library versioning took back to 3.0.0 git-svn-id: + http://svn.osgeo.org/geos/trunk@893 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-08 Sandro Santilli * configure.in, doc/Doxyfile.in, source/geom/Envelope.cpp, source/geom/Geometry.cpp, source/headers/geos/geom.h: Set library - version to 2.2.0. Cleaned up Doxygen warnings. Inlined more - Envelope methods. Dropped deprecated Envelope::overlaps methods. git-svn-id: http://svn.osgeo.org/geos/trunk@892 + version to 2.2.0. Cleaned up Doxygen warnings. Inlined more Envelope + methods. Dropped deprecated Envelope::overlaps methods. + git-svn-id: http://svn.osgeo.org/geos/trunk@892 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Sandro Santilli - * configure.in: Removed VisualStudio knowledge from configure script git-svn-id: http://svn.osgeo.org/geos/trunk@890 + * configure.in: Removed VisualStudio knowledge from configure script + git-svn-id: http://svn.osgeo.org/geos/trunk@890 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Sandro Santilli * source/geomgraph/EdgeIntersectionList.cpp, source/headers/geos/noding.h, source/noding/SegmentNodeList.cpp: - Reduced set<> lookups git-svn-id: http://svn.osgeo.org/geos/trunk@889 + Reduced set<> lookups git-svn-id: + http://svn.osgeo.org/geos/trunk@889 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Frank Warmerdam * VisualStudio/GEOS.sln, VisualStudio/GEOS.vcproj, - VisualStudio/Makefile.am: no longer used git-svn-id: http://svn.osgeo.org/geos/trunk@888 + VisualStudio/Makefile.am: no longer used git-svn-id: + http://svn.osgeo.org/geos/trunk@888 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Frank Warmerdam - * Makefile.am: removed VisualStudio, no longer distributed git-svn-id: http://svn.osgeo.org/geos/trunk@887 + * Makefile.am: removed VisualStudio, no longer distributed + git-svn-id: http://svn.osgeo.org/geos/trunk@887 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Frank Warmerdam - * VisualStudio/.cvsignore: obsolete git-svn-id: http://svn.osgeo.org/geos/trunk@886 + * VisualStudio/.cvsignore: obsolete git-svn-id: + http://svn.osgeo.org/geos/trunk@886 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Sandro Santilli @@ -25415,25 +31598,28 @@ source/operation/relate/RelateNodeGraph.cpp, source/operation/valid/IsValidOp.cpp: Changed EdgeIntersectionList to use a set<> rathern then a vector<>, and to avoid dynamic - allocation of initial header. Inlined short SweepLineEvent methods. git-svn-id: http://svn.osgeo.org/geos/trunk@885 + allocation of initial header. Inlined short SweepLineEvent methods. + git-svn-id: http://svn.osgeo.org/geos/trunk@885 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-07 Sandro Santilli * source/capi/geos_c.h.in: Added const qualifiers to function to - reflect paradigm of immutable Geometry objects. git-svn-id: http://svn.osgeo.org/geos/trunk@884 + reflect paradigm of immutable Geometry objects. git-svn-id: + http://svn.osgeo.org/geos/trunk@884 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-04 Sandro Santilli * source/geomgraph/index/SweepLineEvent.cpp: Fixed bug in SweepLineEventLessThen functor (didn't conform to strict weak - ordering). Note: this was introduced by previous commit. git-svn-id: http://svn.osgeo.org/geos/trunk@883 + ordering). Note: this was introduced by previous commit. + git-svn-id: http://svn.osgeo.org/geos/trunk@883 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-04 Sandro Santilli - * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@882 + * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@882 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-04 Sandro Santilli @@ -25444,24 +31630,25 @@ source/operation/valid/SimpleNestedRingTester.cpp, source/operation/valid/SweeplineNestedRingTester.cpp, source/operation/valid/TopologyValidationError.cpp: Ported revision - 1.38 of IsValidOp.java (adding closed Ring checks). Changed + 1.38 of IsValidOp.java (adding closed Ring checks). Changed NestedRingTester classes to use Coorinate pointers rather then - actual objects, to speedup NULL tests. Added JTS port revision when - applicable. git-svn-id: http://svn.osgeo.org/geos/trunk@881 + actual objects, to speedup NULL tests. Added JTS port revision when + applicable. git-svn-id: http://svn.osgeo.org/geos/trunk@881 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-04 Sandro Santilli * NEWS, source/operation/overlay/OverlayOp.cpp: Ported speedup of OverlayOp::insertUniqueEdge() from JTS-1.7 (rev 1.23) Updated NEWS - file. git-svn-id: http://svn.osgeo.org/geos/trunk@880 + file. git-svn-id: http://svn.osgeo.org/geos/trunk@880 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-03 Sandro Santilli * source/geomgraph/index/SimpleMCSweepLineIntersector.cpp, source/geomgraph/index/SimpleSweepLineIntersector.cpp: Fixed - constructors broke by previous commit git-svn-id: http://svn.osgeo.org/geos/trunk@878 + constructors broke by previous commit git-svn-id: + http://svn.osgeo.org/geos/trunk@878 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-03 Sandro Santilli @@ -25469,19 +31656,21 @@ * source/geomgraph/index/SimpleMCSweepLineIntersector.cpp, source/geomgraph/index/SimpleSweepLineIntersector.cpp, source/headers/geos/geomgraphindex.h: Indentation changes, small - vector memory allocation optimization. git-svn-id: http://svn.osgeo.org/geos/trunk@877 + vector memory allocation optimization. git-svn-id: + http://svn.osgeo.org/geos/trunk@877 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-03 Sandro Santilli * source/headers/geos/geom.h: Removed declaration of - PointCoordinateSequence and PointCoordinateSequenceFactory git-svn-id: http://svn.osgeo.org/geos/trunk@876 + PointCoordinateSequence and PointCoordinateSequenceFactory + git-svn-id: http://svn.osgeo.org/geos/trunk@876 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-11-01 Sandro Santilli * source/operation/valid/IsValidOp.cpp: Replaced finite() with - FINITE() calls. git-svn-id: http://svn.osgeo.org/geos/trunk@875 + FINITE() calls. git-svn-id: http://svn.osgeo.org/geos/trunk@875 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-27 Sandro Santilli @@ -25489,165 +31678,187 @@ * source/geomgraph/index/SimpleMCSweepLineIntersector.cpp, source/geomgraph/index/SweepLineEvent.cpp, source/headers/geos/geomgraphindex.h: Added a SweepLineEventLessThen - functor to be used by sort algorithm. git-svn-id: http://svn.osgeo.org/geos/trunk@873 + functor to be used by sort algorithm. git-svn-id: + http://svn.osgeo.org/geos/trunk@873 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-24 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h.in, source/capi/geostest.c: Changed constructors to take ownership of - GEOSGeom and GEOSCoordSeq objects. Changed inspectors to retain - ownership of GEOSGeom and GEOSCoordSeq objects. Added - GEOSGeom_clone() method. git-svn-id: http://svn.osgeo.org/geos/trunk@872 + GEOSGeom and GEOSCoordSeq objects. Changed inspectors to retain + ownership of GEOSGeom and GEOSCoordSeq objects. Added + GEOSGeom_clone() method. git-svn-id: + http://svn.osgeo.org/geos/trunk@872 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h.in: Added - GEOSGeom_clone() function git-svn-id: http://svn.osgeo.org/geos/trunk@871 + GEOSGeom_clone() function git-svn-id: + http://svn.osgeo.org/geos/trunk@871 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Sandro Santilli - * source/capi/geos_c.h.in: Added missing GEOS_DLL specifiers git-svn-id: http://svn.osgeo.org/geos/trunk@870 + * source/capi/geos_c.h.in: Added missing GEOS_DLL specifiers + git-svn-id: http://svn.osgeo.org/geos/trunk@870 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h.in, source/capi/geostest.c: Added fine-grained geometry constructors and - GEOSCoordSeq abstract data type. Renamed GEOSmakeCollection to - GEOSGeom_createCollection git-svn-id: http://svn.osgeo.org/geos/trunk@869 + GEOSCoordSeq abstract data type. Renamed GEOSmakeCollection to + GEOSGeom_createCollection git-svn-id: + http://svn.osgeo.org/geos/trunk@869 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Sandro Santilli - * configure.in: typo fixed git-svn-id: http://svn.osgeo.org/geos/trunk@868 + * configure.in: typo fixed git-svn-id: + http://svn.osgeo.org/geos/trunk@868 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * AUTHORS: added myself to authors - isn't that cheeky! git-svn-id: http://svn.osgeo.org/geos/trunk@867 + * AUTHORS: added myself to authors - isn't that cheeky! + git-svn-id: http://svn.osgeo.org/geos/trunk@867 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * README: added note on source\makefile.vc git-svn-id: http://svn.osgeo.org/geos/trunk@866 + * README: added note on source\makefile.vc git-svn-id: + http://svn.osgeo.org/geos/trunk@866 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * source/Makefile.vc: added a wee readme git-svn-id: http://svn.osgeo.org/geos/trunk@865 + * source/Makefile.vc: added a wee readme git-svn-id: + http://svn.osgeo.org/geos/trunk@865 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * source/Makefile.vc: added DLL building, and geostest.exe git-svn-id: http://svn.osgeo.org/geos/trunk@864 + * source/Makefile.vc: added DLL building, and geostest.exe + git-svn-id: http://svn.osgeo.org/geos/trunk@864 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * source/capi/geos_c.h.in: need to DLL export C API git-svn-id: http://svn.osgeo.org/geos/trunk@863 + * source/capi/geos_c.h.in: need to DLL export C API git-svn-id: + http://svn.osgeo.org/geos/trunk@863 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * source/capi/geos_c.cpp: DLL Export functions git-svn-id: http://svn.osgeo.org/geos/trunk@862 + * source/capi/geos_c.cpp: DLL Export functions git-svn-id: + http://svn.osgeo.org/geos/trunk@862 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam * source/capi/geostest.c: avoid non-portable vasprintf, make big - buffer static git-svn-id: http://svn.osgeo.org/geos/trunk@861 + buffer static git-svn-id: http://svn.osgeo.org/geos/trunk@861 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-21 Frank Warmerdam - * source/Makefile.vc: updated for 3.0.0 and added C API git-svn-id: http://svn.osgeo.org/geos/trunk@860 + * source/Makefile.vc: updated for 3.0.0 and added C API + git-svn-id: http://svn.osgeo.org/geos/trunk@860 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-20 Frank Warmerdam * source/headers/geos/platform.h.vc: added getMachineByteOrder(), - convert to unix text mode git-svn-id: http://svn.osgeo.org/geos/trunk@859 + convert to unix text mode git-svn-id: + http://svn.osgeo.org/geos/trunk@859 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-19 Sandro Santilli * source/io/WKBReader.cpp: Added support for SRID flag in WKB (full - EWKB is accepted now) git-svn-id: http://svn.osgeo.org/geos/trunk@858 + EWKB is accepted now) git-svn-id: + http://svn.osgeo.org/geos/trunk@858 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-19 Sandro Santilli * source/headers/geos/io.h: Added input stream checks in - ByteOrderDataInStream, throwing ParseException on unexpected EOF git-svn-id: http://svn.osgeo.org/geos/trunk@857 + ByteOrderDataInStream, throwing ParseException on unexpected EOF + git-svn-id: http://svn.osgeo.org/geos/trunk@857 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-17 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h.in: Added - GetGeometryN, GetInteriorRingN, GetExteriorRing git-svn-id: http://svn.osgeo.org/geos/trunk@856 + GetGeometryN, GetInteriorRingN, GetExteriorRing git-svn-id: + http://svn.osgeo.org/geos/trunk@856 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-17 Sandro Santilli * source/capi/geos_c.h.in: Added comments on exception returns for - Geometry info functions git-svn-id: http://svn.osgeo.org/geos/trunk@855 + Geometry info functions git-svn-id: + http://svn.osgeo.org/geos/trunk@855 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-17 Sandro Santilli * source/capi/geos_c.cpp: Added missing exception handlers from - previous commit. Fixed GEOSGeomTypeId signatures. git-svn-id: http://svn.osgeo.org/geos/trunk@854 + previous commit. Fixed GEOSGeomTypeId signatures. git-svn-id: + http://svn.osgeo.org/geos/trunk@854 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-17 Sandro Santilli * source/geom/Makefile.am: Removed GEOS_VERSION define (Geometry.cpp, the only file using this will use the one in - version.h) git-svn-id: http://svn.osgeo.org/geos/trunk@853 + version.h) git-svn-id: http://svn.osgeo.org/geos/trunk@853 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-17 Sandro Santilli * source/capi/geos_c.h.in: Fixed GEOSGeom typedef to be accepted by C++ compilers, added extern "C" namespace for inclusion by C++ code - (really needed?) git-svn-id: http://svn.osgeo.org/geos/trunk@852 + (really needed?) git-svn-id: http://svn.osgeo.org/geos/trunk@852 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-10-17 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h.in, - source/capi/geostest.c: Added GEOSDistance() function. Trapped all + source/capi/geostest.c: Added GEOSDistance() function. Trapped all exceptions and reported using ERROR_MESSAGE rather then - NOTICE_MESSAGE. Changed WKB functions to use 'unsigned char' rather + NOTICE_MESSAGE. Changed WKB functions to use 'unsigned char' rather then 'char' Added missing GEOS_setWKBOutputDims() function in header - file. git-svn-id: http://svn.osgeo.org/geos/trunk@851 + file. git-svn-id: http://svn.osgeo.org/geos/trunk@851 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-28 Sandro Santilli * source/capi/geos_c.cpp: Added GEOS_setWKBOutputDims(int) function - to specify coordinate dimension in WKB output. git-svn-id: http://svn.osgeo.org/geos/trunk@850 + to specify coordinate dimension in WKB output. git-svn-id: + http://svn.osgeo.org/geos/trunk@850 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-28 Sandro Santilli * source/headers/geos/io.h, source/io/WKBWriter.cpp: WKBWriter ctor out-lined (will require changes in the near future, for higher - dimensions support), added support for 3d WKB output git-svn-id: http://svn.osgeo.org/geos/trunk@849 + dimensions support), added support for 3d WKB output git-svn-id: + http://svn.osgeo.org/geos/trunk@849 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-28 Sandro Santilli - * source/io/WKBReader.cpp: Cleanups in the printHEX function git-svn-id: http://svn.osgeo.org/geos/trunk@848 + * source/io/WKBReader.cpp: Cleanups in the printHEX function + git-svn-id: http://svn.osgeo.org/geos/trunk@848 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-27 Sandro Santilli * source/io/WKBReader.cpp: Ported JTS-1.7 use of PrecisionModel in - WKBReader git-svn-id: http://svn.osgeo.org/geos/trunk@847 + WKBReader git-svn-id: http://svn.osgeo.org/geos/trunk@847 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-27 Sandro Santilli @@ -25657,7 +31868,8 @@ change, fixed the bug by turning WKBReader.factory into a reference rather then a real object. ABI still breaks, but API at least is safe (we didn't release any WKB-aware package so breaking ABI is not - a big deal at this stage). git-svn-id: http://svn.osgeo.org/geos/trunk@846 + a big deal at this stage). git-svn-id: + http://svn.osgeo.org/geos/trunk@846 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-27 Sandro Santilli @@ -25666,32 +31878,34 @@ source/headers/geos/io.h, source/io/WKBReader.cpp: Fixed bug in WKBReader destroying the GeometryFactory used in Geometry construction. Changed it's definition to *require* a GeometryFactory - pointer parameter. git-svn-id: http://svn.osgeo.org/geos/trunk@845 + pointer parameter. git-svn-id: http://svn.osgeo.org/geos/trunk@845 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-27 Sandro Santilli * source/test/Makefile.am: Added XMLTester.h in XMLTester_SOURCES - list git-svn-id: http://svn.osgeo.org/geos/trunk@844 + list git-svn-id: http://svn.osgeo.org/geos/trunk@844 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli * source/io/WKBReader.cpp: Fixed handling of higher dimensional WKB - streams git-svn-id: http://svn.osgeo.org/geos/trunk@843 + streams git-svn-id: http://svn.osgeo.org/geos/trunk@843 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli * source/capi/Makefile.am: Modified GEOS_CAPI_VERSION to include - underlying GEOS version git-svn-id: http://svn.osgeo.org/geos/trunk@842 + underlying GEOS version git-svn-id: + http://svn.osgeo.org/geos/trunk@842 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli * configure.in, source/capi/Makefile.am, source/capi/geos_c.cpp, source/capi/{geos_c.h => geos_c.h.in}: Moved C-api versioning to - top-level configure.in Added version info in geos_c.h git-svn-id: http://svn.osgeo.org/geos/trunk@841 + top-level configure.in Added version info in geos_c.h git-svn-id: + http://svn.osgeo.org/geos/trunk@841 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli @@ -25700,18 +31914,20 @@ source/capi/geostest.c: Changed LineMerge interface to accept a single Geometry and return the simpler Geometry obtainable with the set of merger LineStrings. Fixed leaks in geostest, fixed a leak in - GEOSRelate(). git-svn-id: http://svn.osgeo.org/geos/trunk@840 + GEOSRelate(). git-svn-id: http://svn.osgeo.org/geos/trunk@840 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli * source/geom/PrecisionModel.cpp: Initializzation lists in - PrecisionModel ctors git-svn-id: http://svn.osgeo.org/geos/trunk@839 + PrecisionModel ctors git-svn-id: + http://svn.osgeo.org/geos/trunk@839 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli - * NEWS: Added changes in LineMerger git-svn-id: http://svn.osgeo.org/geos/trunk@838 + * NEWS: Added changes in LineMerger git-svn-id: + http://svn.osgeo.org/geos/trunk@838 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli @@ -25721,62 +31937,71 @@ source/operation/linemerge/LineMergeEdge.cpp, source/operation/linemerge/LineMergeGraph.cpp, source/operation/linemerge/LineMerger.cpp: Const correctness changes - in LineMerger package, and a few speedups. git-svn-id: http://svn.osgeo.org/geos/trunk@837 + in LineMerger package, and a few speedups. git-svn-id: + http://svn.osgeo.org/geos/trunk@837 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli - * source/capi/.cvsignore: Added .lo, .la and geostest git-svn-id: http://svn.osgeo.org/geos/trunk@836 + * source/capi/.cvsignore: Added .lo, .la and geostest git-svn-id: + http://svn.osgeo.org/geos/trunk@836 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-26 Sandro Santilli - * doc/example.cpp: Removed memory leak from WKB tester git-svn-id: http://svn.osgeo.org/geos/trunk@835 + * doc/example.cpp: Removed memory leak from WKB tester git-svn-id: + http://svn.osgeo.org/geos/trunk@835 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-23 Sandro Santilli * source/headers/geos/opLinemerge.h, source/operation/linemerge/LineMerger.cpp: Made LineMerger graph be - a real object (rather then a pointer to it) git-svn-id: http://svn.osgeo.org/geos/trunk@834 + a real object (rather then a pointer to it) git-svn-id: + http://svn.osgeo.org/geos/trunk@834 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-23 Sandro Santilli * source/capi/geos_c.cpp: Fixed export of GEOSPolygonize() and - GEOSMakeCollection() git-svn-id: http://svn.osgeo.org/geos/trunk@833 + GEOSMakeCollection() git-svn-id: + http://svn.osgeo.org/geos/trunk@833 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-23 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h: Added - GEOSMakeCollection. Changed GEOSGetCentroid to return an + GEOSMakeCollection. Changed GEOSGetCentroid to return an EmptyGeometry when no Centroid can be computed (Empty input, for - example). git-svn-id: http://svn.osgeo.org/geos/trunk@832 + example). git-svn-id: http://svn.osgeo.org/geos/trunk@832 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-19 Sandro Santilli - * NEWS: Added C api git-svn-id: http://svn.osgeo.org/geos/trunk@831 + * NEWS: Added C api git-svn-id: + http://svn.osgeo.org/geos/trunk@831 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-14 Sandro Santilli * source/capi/geos_c.h: Removed functions returning not-new GEOSGeom objects to avoid ambiguity whereas when to destroy returns. Added - not about memory management. git-svn-id: http://svn.osgeo.org/geos/trunk@830 + not about memory management. git-svn-id: + http://svn.osgeo.org/geos/trunk@830 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-14 Sandro Santilli * source/capi/geos_c.cpp, source/capi/geos_c.h, - source/capi/geostest.c: Added copyright notices and usage notes git-svn-id: http://svn.osgeo.org/geos/trunk@829 + source/capi/geostest.c: Added copyright notices and usage notes + git-svn-id: http://svn.osgeo.org/geos/trunk@829 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-14 Sandro Santilli * source/io/WKBWriter.cpp: Fixed bug writing WKB for all Multi* - geoms as Collections. git-svn-id: http://svn.osgeo.org/geos/trunk@828 + geoms as Collections. git-svn-id: + http://svn.osgeo.org/geos/trunk@828 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-14 Sandro Santilli @@ -25784,12 +32009,14 @@ * configure.in, source/Makefile.am, source/capi/.cvsignore, source/capi/Makefile.am, source/capi/geos_c.cpp, source/capi/geos_c.h, source/capi/geostest.c, source/capi/test.wkt: - Initial abstract C api. git-svn-id: http://svn.osgeo.org/geos/trunk@827 + Initial abstract C api. git-svn-id: + http://svn.osgeo.org/geos/trunk@827 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-14 Sandro Santilli - * source/io/WKBReader.cpp: Typo fixed git-svn-id: http://svn.osgeo.org/geos/trunk@826 + * source/io/WKBReader.cpp: Typo fixed git-svn-id: + http://svn.osgeo.org/geos/trunk@826 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-09-03 Sandro Santilli @@ -25799,12 +32026,14 @@ source/headers/geos/Makefile.am, source/headers/geos/WKBWriterT.h, source/headers/geos/io.h, source/{headers/geos/WKBReaderT.h => io/WKBReader.cpp}, source/io/WKBWriter.cpp: Reworked WKB I/O to - avoid use of templates and make better use of STL git-svn-id: http://svn.osgeo.org/geos/trunk@825 + avoid use of templates and make better use of STL git-svn-id: + http://svn.osgeo.org/geos/trunk@825 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-08-22 Sandro Santilli - * NEWS: Added 2.1.4 section git-svn-id: http://svn.osgeo.org/geos/trunk@822 + * NEWS: Added 2.1.4 section git-svn-id: + http://svn.osgeo.org/geos/trunk@822 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-08-22 Sandro Santilli @@ -25813,41 +32042,47 @@ source/operation/buffer/BufferBuilder.cpp, source/planargraph/planarDirectedEdgeStar.cpp: Fixed comparator functions used with STL sort() algorithm to implement - StrictWeakOrdering semantic. git-svn-id: http://svn.osgeo.org/geos/trunk@821 + StrictWeakOrdering semantic. git-svn-id: + http://svn.osgeo.org/geos/trunk@821 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-12 Sandro Santilli - * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@819 + * NEWS: updated git-svn-id: http://svn.osgeo.org/geos/trunk@819 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli * source/headers/geos/ByteOrderDataInStreamT.h, source/headers/geos/WKBReaderT.h, source/headers/geos/WKBWriterT.h: - Removed '_' prefix from header guards git-svn-id: http://svn.osgeo.org/geos/trunk@818 + Removed '_' prefix from header guards git-svn-id: + http://svn.osgeo.org/geos/trunk@818 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli * source/headers/geos/io.h, source/headers/geos/opOverlay.h, - source/headers/geos/platform.h.in: Cleaned up syntax git-svn-id: http://svn.osgeo.org/geos/trunk@817 + source/headers/geos/platform.h.in: Cleaned up syntax git-svn-id: + http://svn.osgeo.org/geos/trunk@817 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli - * doc/example.cpp: Commented out useless include git-svn-id: http://svn.osgeo.org/geos/trunk@816 + * doc/example.cpp: Commented out useless include git-svn-id: + http://svn.osgeo.org/geos/trunk@816 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli - * source/geom/Geometry.cpp: Added parens suggested by compiler git-svn-id: http://svn.osgeo.org/geos/trunk@815 + * source/geom/Geometry.cpp: Added parens suggested by compiler + git-svn-id: http://svn.osgeo.org/geos/trunk@815 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli * source/geomgraph/Edge.cpp, source/headers/geos/WKBReaderT.h: - Cleaned up signed/unsigned mismatches git-svn-id: http://svn.osgeo.org/geos/trunk@814 + Cleaned up signed/unsigned mismatches git-svn-id: + http://svn.osgeo.org/geos/trunk@814 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli @@ -25855,18 +32090,21 @@ * source/geomgraph/DirectedEdge.cpp, source/operation/buffer/BufferOp.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: Fixed - initializzazion lists git-svn-id: http://svn.osgeo.org/geos/trunk@813 + initializzazion lists git-svn-id: + http://svn.osgeo.org/geos/trunk@813 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli * source/headers/geos/geom.h: Made CoordinateSequence::getDimension - return unsigned int instead of int git-svn-id: http://svn.osgeo.org/geos/trunk@812 + return unsigned int instead of int git-svn-id: + http://svn.osgeo.org/geos/trunk@812 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-07-11 Sandro Santilli - * source/geom/Geometry.cpp: removed useless assignment git-svn-id: http://svn.osgeo.org/geos/trunk@811 + * source/geom/Geometry.cpp: removed useless assignment git-svn-id: + http://svn.osgeo.org/geos/trunk@811 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-30 Sandro Santilli @@ -25874,68 +32112,76 @@ * source/headers/geos/opBuffer.h, source/operation/buffer/BufferSubgraph.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: Ported - SubgraphDepthLocator optimizations from JTS code git-svn-id: http://svn.osgeo.org/geos/trunk@807 + SubgraphDepthLocator optimizations from JTS code git-svn-id: + http://svn.osgeo.org/geos/trunk@807 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-28 Sandro Santilli * source/operation/buffer/SubgraphDepthLocater.cpp: Fixed a bug introduced by LineSegment skip - made LineSegment skip a - compile-time optione git-svn-id: http://svn.osgeo.org/geos/trunk@803 + compile-time optione git-svn-id: + http://svn.osgeo.org/geos/trunk@803 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-28 Sandro Santilli * source/test/XMLTester.cpp: Added number of points count as a - debugging aid git-svn-id: http://svn.osgeo.org/geos/trunk@802 + debugging aid git-svn-id: http://svn.osgeo.org/geos/trunk@802 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-28 Sandro Santilli - * NEWS: Added DepthSegmentLT bugfix git-svn-id: http://svn.osgeo.org/geos/trunk@801 + * NEWS: Added DepthSegmentLT bugfix git-svn-id: + http://svn.osgeo.org/geos/trunk@801 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-28 Sandro Santilli * source/headers/geos/opOverlay.h, source/operation/overlay/PointBuilder.cpp: improved extraction of - result points in overlay op git-svn-id: http://svn.osgeo.org/geos/trunk@796 + result points in overlay op git-svn-id: + http://svn.osgeo.org/geos/trunk@796 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-28 Sandro Santilli * source/geomgraph/Node.cpp: improved ::isIncidentEdgeInResult() - method git-svn-id: http://svn.osgeo.org/geos/trunk@794 + method git-svn-id: http://svn.osgeo.org/geos/trunk@794 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-27 Sandro Santilli * source/operation/buffer/SubgraphDepthLocater.cpp: Bugfix in - DepthSegmentLT as suggested by Graeme Hiebert git-svn-id: http://svn.osgeo.org/geos/trunk@793 + DepthSegmentLT as suggested by Graeme Hiebert git-svn-id: + http://svn.osgeo.org/geos/trunk@793 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-27 Sandro Santilli * source/operation/buffer/SubgraphDepthLocater.cpp: Fixed bug - just-introduced with optimization. git-svn-id: http://svn.osgeo.org/geos/trunk@790 + just-introduced with optimization. git-svn-id: + http://svn.osgeo.org/geos/trunk@790 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-27 Sandro Santilli * NEWS, source/operation/buffer/SubgraphDepthLocater.cpp: Reduced - Coordinate copies due to LineSegment overuse git-svn-id: http://svn.osgeo.org/geos/trunk@789 + Coordinate copies due to LineSegment overuse git-svn-id: + http://svn.osgeo.org/geos/trunk@789 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-25 Sandro Santilli * NEWS, source/geomgraph/Node.cpp, source/headers/geos/geomgraph.h, source/operation/overlay/PointBuilder.cpp: OverlayOp speedup (JTS - port) git-svn-id: http://svn.osgeo.org/geos/trunk@787 + port) git-svn-id: http://svn.osgeo.org/geos/trunk@787 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-24 Sandro Santilli - * NEWS: Added LineIntersector concrete type note git-svn-id: http://svn.osgeo.org/geos/trunk@786 + * NEWS: Added LineIntersector concrete type note git-svn-id: + http://svn.osgeo.org/geos/trunk@786 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-24 Sandro Santilli @@ -25953,10 +32199,9 @@ source/operation/relate/RelateComputer.cpp, source/operation/valid/ConsistentAreaTester.cpp, source/operation/valid/IsValidOp.cpp: Dropped RobustLineIntersector, - made LineIntersector a concrete class. Added + made LineIntersector a concrete class. Added - LineIntersector::hasIntersection(Coordinate&,Coordinate&,Coordinate&)to avoid computing intersection point (Z) when it's not necessary. git-svn-id: http://svn.osgeo.org/geos/trunk@785 - 5242fede-7e19-0410-aef8-94bd7d2200fb + LineIntersector::hasIntersection(Coordinate&,Coordinate&,Coordinate&) to avoid computing intersection point (Z) when it's not necessary. git-svn-id: http://svn.osgeo.org/geos/trunk@785 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-23 Sandro Santilli @@ -25964,144 +32209,162 @@ source/geom/LineString.cpp, source/geom/LinearRing.cpp, source/geom/Point.cpp, source/geom/Polygon.cpp, source/headers/geos/geom.h: Inlined and added missing ::clone() for - Geometry subclasses git-svn-id: http://svn.osgeo.org/geos/trunk@784 + Geometry subclasses git-svn-id: + http://svn.osgeo.org/geos/trunk@784 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-23 Sandro Santilli * NEWS, source/algorithm/CGAlgorithms.cpp: performance improvement - for CGAlgorithms::isOnLine() git-svn-id: http://svn.osgeo.org/geos/trunk@782 + for CGAlgorithms::isOnLine() git-svn-id: + http://svn.osgeo.org/geos/trunk@782 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-22 Sandro Santilli - * NEWS, source/geom/Geometry.cpp: Shortcircuit tests for Union git-svn-id: http://svn.osgeo.org/geos/trunk@779 + * NEWS, source/geom/Geometry.cpp: Shortcircuit tests for Union + git-svn-id: http://svn.osgeo.org/geos/trunk@779 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-22 Sandro Santilli * source/geom/GeometryFactory.cpp: Fixed bugus handling of - collections in ::buildGeometry git-svn-id: http://svn.osgeo.org/geos/trunk@777 + collections in ::buildGeometry git-svn-id: + http://svn.osgeo.org/geos/trunk@777 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-21 Sandro Santilli * NEWS, source/test/XMLTester.cpp, source/test/XMLTester.h: - XMLTester code cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@773 + XMLTester code cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@773 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-20 Sandro Santilli - * NEWS, source/test/Makefile.am: XMLTester installed by default git-svn-id: http://svn.osgeo.org/geos/trunk@772 + * NEWS, source/test/Makefile.am: XMLTester installed by default + git-svn-id: http://svn.osgeo.org/geos/trunk@772 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-17 Sandro Santilli * .cvsignore, ltmain.sh: Removed ltmain.sh from repository, will be - created by autogen.sh git-svn-id: http://svn.osgeo.org/geos/trunk@770 + created by autogen.sh git-svn-id: + http://svn.osgeo.org/geos/trunk@770 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-17 Sandro Santilli * NEWS, source/operation/polygonize/Polygonizer.cpp, source/operation/polygonize/polygonizeEdgeRing.cpp: Polygonizer - segfault fix git-svn-id: http://svn.osgeo.org/geos/trunk@766 + segfault fix git-svn-id: http://svn.osgeo.org/geos/trunk@766 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-17 Sandro Santilli * source/geom/GeometryFactory.cpp: Fixed segfault in LinearRing and - LineString constructors git-svn-id: http://svn.osgeo.org/geos/trunk@764 + LineString constructors git-svn-id: + http://svn.osgeo.org/geos/trunk@764 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-14 Sandro Santilli * NEWS, source/test/XMLTester.cpp: Added workaround for mingw - Polygon name clash git-svn-id: http://svn.osgeo.org/geos/trunk@761 + Polygon name clash git-svn-id: http://svn.osgeo.org/geos/trunk@761 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-10 Sandro Santilli - * autogen.sh: Added libtoolize call git-svn-id: http://svn.osgeo.org/geos/trunk@760 + * autogen.sh: Added libtoolize call git-svn-id: + http://svn.osgeo.org/geos/trunk@760 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-10 Sandro Santilli * source/test/XMLTester.cpp: Added use declaration to make MingW - build work git-svn-id: http://svn.osgeo.org/geos/trunk@758 + build work git-svn-id: http://svn.osgeo.org/geos/trunk@758 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-08 Sandro Santilli - * INSTALL: Added GCC version requirement note git-svn-id: http://svn.osgeo.org/geos/trunk@754 + * INSTALL: Added GCC version requirement note git-svn-id: + http://svn.osgeo.org/geos/trunk@754 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-06-05 Sandro Santilli * CHANGES, NEWS: Changes file renamed back to NEWS, automake insists - on finding it. git-svn-id: http://svn.osgeo.org/geos/trunk@752 + on finding it. git-svn-id: http://svn.osgeo.org/geos/trunk@752 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-30 No Body - * NEWS: Blank news file to molfify new versions of autoconf git-svn-id: http://svn.osgeo.org/geos/trunk@750 + * NEWS: Blank news file to molfify new versions of autoconf + git-svn-id: http://svn.osgeo.org/geos/trunk@750 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-24 Sandro Santilli - * NEWS: Info moved into CHANGES file git-svn-id: http://svn.osgeo.org/geos/trunk@749 + * NEWS: Info moved into CHANGES file git-svn-id: + http://svn.osgeo.org/geos/trunk@749 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-24 Sandro Santilli - * CHANGES: Filled in section from 2.0.0 to 2.1.1 git-svn-id: http://svn.osgeo.org/geos/trunk@748 + * CHANGES: Filled in section from 2.0.0 to 2.1.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@748 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-24 Sandro Santilli - * CHANGES: Initial import git-svn-id: http://svn.osgeo.org/geos/trunk@744 + * CHANGES: Initial import git-svn-id: + http://svn.osgeo.org/geos/trunk@744 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-23 Sandro Santilli - * source/geom/Point.cpp: Added Refractions copyright git-svn-id: http://svn.osgeo.org/geos/trunk@728 + * source/geom/Point.cpp: Added Refractions copyright git-svn-id: + http://svn.osgeo.org/geos/trunk@728 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-23 Sandro Santilli * source/operation/buffer/BufferSubgraph.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: Added debugging - output git-svn-id: http://svn.osgeo.org/geos/trunk@717 + output git-svn-id: http://svn.osgeo.org/geos/trunk@717 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-23 Sandro Santilli - * source/geom/LineSegment.cpp: Fixed bug in ::reverse() git-svn-id: http://svn.osgeo.org/geos/trunk@716 + * source/geom/LineSegment.cpp: Fixed bug in ::reverse() + git-svn-id: http://svn.osgeo.org/geos/trunk@716 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-22 Sandro Santilli * source/operation/buffer/BufferSubgraph.cpp: Fixed initialization - list order git-svn-id: http://svn.osgeo.org/geos/trunk@715 + list order git-svn-id: http://svn.osgeo.org/geos/trunk@715 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-22 Sandro Santilli * ChangeLog, source/headers/geos/Makefile.am: Added missing - WKBWriterT.h git-svn-id: http://svn.osgeo.org/geos/trunk@714 + WKBWriterT.h git-svn-id: http://svn.osgeo.org/geos/trunk@714 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-20 Sandro Santilli * source/geomgraph/Position.cpp, source/operation/buffer/BufferSubgraph.cpp, - source/operation/buffer/SubgraphDepthLocater.cpp: Code cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@713 + source/operation/buffer/SubgraphDepthLocater.cpp: Code cleanups + git-svn-id: http://svn.osgeo.org/geos/trunk@713 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-20 Sandro Santilli * source/operation/buffer/OffsetCurveSetBuilder.cpp: Fixed a bug in - addPolygonRing setting wrong depths on Edges git-svn-id: http://svn.osgeo.org/geos/trunk@712 + addPolygonRing setting wrong depths on Edges git-svn-id: + http://svn.osgeo.org/geos/trunk@712 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-19 Sandro Santilli @@ -26124,51 +32387,55 @@ CGAlgorithms instances substituting them with direct calls to the static functions. Interfaces accepting CGAlgorithms pointers kept for backward compatibility but modified to make the argument - optional. Fixed a small memory leak in - OffsetCurveBuilder::getRingCurve. Inlined some smaller functions - encountered during bug hunting. Updated Copyright notices in the - touched files. git-svn-id: http://svn.osgeo.org/geos/trunk@711 + optional. Fixed a small memory leak in + OffsetCurveBuilder::getRingCurve. Inlined some smaller functions + encountered during bug hunting. Updated Copyright notices in the + touched files. git-svn-id: http://svn.osgeo.org/geos/trunk@711 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-19 Sandro Santilli * source/test/testLeaksBig.xml: Added bogus multipolygon buffering - test git-svn-id: http://svn.osgeo.org/geos/trunk@710 + test git-svn-id: http://svn.osgeo.org/geos/trunk@710 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-13 Sandro Santilli * source/headers/geos/geom.h: Added default tolerance parameter for - equalsExact git-svn-id: http://svn.osgeo.org/geos/trunk@709 + equalsExact git-svn-id: http://svn.osgeo.org/geos/trunk@709 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-13 Sandro Santilli - * source/geom/Point.cpp: cleanups and indentations git-svn-id: http://svn.osgeo.org/geos/trunk@708 + * source/geom/Point.cpp: cleanups and indentations git-svn-id: + http://svn.osgeo.org/geos/trunk@708 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-13 Sandro Santilli * source/geom/Geometry.cpp: Added comment about 2D-only comparison - of ::equal(Coordinate, Coordinate, double) git-svn-id: http://svn.osgeo.org/geos/trunk@707 + of ::equal(Coordinate, Coordinate, double) git-svn-id: + http://svn.osgeo.org/geos/trunk@707 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-09 Sandro Santilli * source/headers/geos/WKBWriterT.h: Second argument to ::write made - mandatory. git-svn-id: http://svn.osgeo.org/geos/trunk@706 + mandatory. git-svn-id: http://svn.osgeo.org/geos/trunk@706 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-09 Sandro Santilli * source/algorithm/RobustLineIntersector.cpp, source/headers/geos/geosAlgorithm.h: Ported JTS robustness patches - made by Martin on suggestions by Kevin. git-svn-id: http://svn.osgeo.org/geos/trunk@705 + made by Martin on suggestions by Kevin. git-svn-id: + http://svn.osgeo.org/geos/trunk@705 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-05-03 Sandro Santilli - * TODO: Added WKB TODOs git-svn-id: http://svn.osgeo.org/geos/trunk@704 + * TODO: Added WKB TODOs git-svn-id: + http://svn.osgeo.org/geos/trunk@704 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-29 Sandro Santilli @@ -26178,18 +32445,21 @@ source/headers/geos/geom.h, source/headers/geos/io.h, source/headers/geos/opOverlay.h, source/io/ByteOrderValues.cpp, source/operation/overlay/OverlayOp.cpp: Updated Doxygen - documentation and some Copyright headers. git-svn-id: http://svn.osgeo.org/geos/trunk@703 + documentation and some Copyright headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@703 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-29 Sandro Santilli - * source/headers/geos/io.h: Fixed biostringstream stream output. git-svn-id: http://svn.osgeo.org/geos/trunk@702 + * source/headers/geos/io.h: Fixed biostringstream stream output. + git-svn-id: http://svn.osgeo.org/geos/trunk@702 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-29 Sandro Santilli * doc/example.cpp: Made WKBReader use global_factory, for having WKB - reads produce same context of input geoms. git-svn-id: http://svn.osgeo.org/geos/trunk@701 + reads produce same context of input geoms. git-svn-id: + http://svn.osgeo.org/geos/trunk@701 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-29 Sandro Santilli @@ -26197,9 +32467,10 @@ * doc/example.cpp, source/headers/geos/WKBReaderT.h, source/headers/geos/WKBWriterT.h, source/headers/geos/io.h, source/io/ByteOrderValues.cpp: Typedef'ed biostringstream, preferred - parameter for WKB parser templates. Added << operator for - biostringstream. Typedef'ed WKBWriter and WKBReader to be - parametrized by biostringstream. Added WKBtest in doc/example.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@700 + parameter for WKB parser templates. Added << operator for + biostringstream. Typedef'ed WKBWriter and WKBReader to be + parametrized by biostringstream. Added WKBtest in doc/example.cpp + git-svn-id: http://svn.osgeo.org/geos/trunk@700 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-29 Sandro Santilli @@ -26213,31 +32484,34 @@ source/headers/geos/WKBReaderT.h, source/headers/geos/WKBWriterT.h, source/headers/geos/geom.h, source/headers/geos/io.h: Added new JTS interfaces for CoordinateSequence and factories, removed example - implementations to reduce maintainance costs. Added first + implementations to reduce maintainance costs. Added first implementation of WKBWriter, made ByteOrderDataInStream a template - class. git-svn-id: http://svn.osgeo.org/geos/trunk@699 + class. git-svn-id: http://svn.osgeo.org/geos/trunk@699 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-29 Sandro Santilli * source/headers/geos/platform.h.in: Added machine byte order - extractor git-svn-id: http://svn.osgeo.org/geos/trunk@698 + extractor git-svn-id: http://svn.osgeo.org/geos/trunk@698 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-21 Sandro Santilli - * configure.in: library version bumped to 3.0.0 git-svn-id: http://svn.osgeo.org/geos/trunk@697 + * configure.in: library version bumped to 3.0.0 git-svn-id: + http://svn.osgeo.org/geos/trunk@697 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-21 Sandro Santilli - * ChangeLog, NEWS: Updated chage logs git-svn-id: http://svn.osgeo.org/geos/trunk@696 + * ChangeLog, NEWS: Updated chage logs git-svn-id: + http://svn.osgeo.org/geos/trunk@696 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-21 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Removed useless Coordinate - copies in mergeZ() - patch by Safe Software git-svn-id: http://svn.osgeo.org/geos/trunk@695 + copies in mergeZ() - patch by Safe Software git-svn-id: + http://svn.osgeo.org/geos/trunk@695 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-20 Sandro Santilli @@ -26245,7 +32519,8 @@ * source/algorithm/NonRobustCGAlgorithms.cpp, source/algorithm/RobustCGAlgorithms.cpp, source/geom/Makefile.am: Removed NonRobustCGAlgorithms and RobustCGAlgorithms, already unused - (CGAlgorithms replaces both with robust implementation). git-svn-id: http://svn.osgeo.org/geos/trunk@694 + (CGAlgorithms replaces both with robust implementation). + git-svn-id: http://svn.osgeo.org/geos/trunk@694 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-20 Sandro Santilli @@ -26256,32 +32531,37 @@ source/headers/geos/geom.h, source/headers/geos/io.h, source/io/ByteOrderValues.cpp, source/io/WKBReader.cpp: Added initial implementation of WKBReaderT and ByteOrderDataInStreamT - class templates and ByteOrderValues class. Work is unfinished as + class templates and ByteOrderValues class. Work is unfinished as WKBReader requires new interface of CoordinateSequence taking higher - dimensions into account. git-svn-id: http://svn.osgeo.org/geos/trunk@693 + dimensions into account. git-svn-id: + http://svn.osgeo.org/geos/trunk@693 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-20 Sandro Santilli - * source/headers/geos.h: Added standard copyright header git-svn-id: http://svn.osgeo.org/geos/trunk@692 + * source/headers/geos.h: Added standard copyright header + git-svn-id: http://svn.osgeo.org/geos/trunk@692 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-19 Sandro Santilli - * source/geom/Point.cpp: Fixed segfault in ::isEmpty git-svn-id: http://svn.osgeo.org/geos/trunk@691 + * source/geom/Point.cpp: Fixed segfault in ::isEmpty git-svn-id: + http://svn.osgeo.org/geos/trunk@691 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-14 Sandro Santilli * source/headers/geos/io.h, source/io/StringTokenizer.cpp, source/io/WKTReader.cpp: Applied slightly modified patch by Cheng - Shan to speedup WKT parsing. git-svn-id: http://svn.osgeo.org/geos/trunk@690 + Shan to speedup WKT parsing. git-svn-id: + http://svn.osgeo.org/geos/trunk@690 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-07 Sandro Santilli * source/operation/valid/IsValidOp.cpp: Fixed bug throwing an - exception when a result could be returned instead (ported JTS patch) git-svn-id: http://svn.osgeo.org/geos/trunk@689 + exception when a result could be returned instead (ported JTS patch) + git-svn-id: http://svn.osgeo.org/geos/trunk@689 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-06 Sandro Santilli @@ -26296,36 +32576,41 @@ source/headers/geos/platform.h.in, source/noding/snapround/SegmentSnapper.cpp, source/planargraph/planarDirectedEdge.cpp: Applied patch from Jon - Schlueter (math.h => cmath; ieeefp.h in "C" block) git-svn-id: http://svn.osgeo.org/geos/trunk@688 + Schlueter (math.h => cmath; ieeefp.h in "C" block) git-svn-id: + http://svn.osgeo.org/geos/trunk@688 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-04-02 Sean Gillies * swig/python/setup.py: now supporting the win32 platform, thanks to - Howard Butler git-svn-id: http://svn.osgeo.org/geos/trunk@687 + Howard Butler git-svn-id: http://svn.osgeo.org/geos/trunk@687 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-03-26 Sandro Santilli * source/headers/geos/opPolygonize.h: Commented out - Polygonizer::LineStringAdder friendship git-svn-id: http://svn.osgeo.org/geos/trunk@686 + Polygonizer::LineStringAdder friendship git-svn-id: + http://svn.osgeo.org/geos/trunk@686 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-03-10 Sandro Santilli - * source/io/WKBReader.cpp: ported from current JTS git-svn-id: http://svn.osgeo.org/geos/trunk@685 + * source/io/WKBReader.cpp: ported from current JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@685 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-03-04 Sandro Santilli * source/algorithm/CGAlgorithms.cpp: Removed useless copy from - ::isOnLine() - suggested by Dale Lutz git-svn-id: http://svn.osgeo.org/geos/trunk@684 + ::isOnLine() - suggested by Dale Lutz git-svn-id: + http://svn.osgeo.org/geos/trunk@684 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-03-02 Sandro Santilli * source/headers/Makefile.am: Removed commented line, cousing - strange behaviours with autotools. git-svn-id: http://svn.osgeo.org/geos/trunk@683 + strange behaviours with autotools. git-svn-id: + http://svn.osgeo.org/geos/trunk@683 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli @@ -26333,7 +32618,8 @@ * source/headers/geos/noding.h, source/index/strtree/STRtree.cpp, source/noding/SegmentNode.cpp, source/noding/SegmentNodeList.cpp, source/noding/SegmentString.cpp: Changed SegmentNode to contain a - *real* Coordinate (not a pointer) to reduce construction costs. git-svn-id: http://svn.osgeo.org/geos/trunk@682 + *real* Coordinate (not a pointer) to reduce construction costs. + git-svn-id: http://svn.osgeo.org/geos/trunk@682 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli @@ -26341,55 +32627,63 @@ * source/geom/CoordinateSequence.cpp, source/geom/LineString.cpp, source/noding/MCQuadtreeNoder.cpp, source/operation/buffer/RightmostEdgeFinder.cpp: Reduced - CoordinateSequence::getSize() calls. git-svn-id: http://svn.osgeo.org/geos/trunk@681 + CoordinateSequence::getSize() calls. git-svn-id: + http://svn.osgeo.org/geos/trunk@681 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli * source/geomgraph/Edge.cpp, source/headers/geos/geomgraph.h: cached - number of points in Edge git-svn-id: http://svn.osgeo.org/geos/trunk@680 + number of points in Edge git-svn-id: + http://svn.osgeo.org/geos/trunk@680 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli * source/headers/geos/noding.h, source/noding/SegmentString.cpp: - Cached number of points in CoordinateSequence. git-svn-id: http://svn.osgeo.org/geos/trunk@679 + Cached number of points in CoordinateSequence. git-svn-id: + http://svn.osgeo.org/geos/trunk@679 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli * source/noding/SegmentString.cpp: Reduced calls to - DefaultCoordinateSequence->getSize(). git-svn-id: http://svn.osgeo.org/geos/trunk@678 + DefaultCoordinateSequence->getSize(). git-svn-id: + http://svn.osgeo.org/geos/trunk@678 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli * source/headers/geos/indexStrtree.h, source/index/strtree/STRtree.cpp: STRtree::avg() and - STRtree::centreY() inlined. git-svn-id: http://svn.osgeo.org/geos/trunk@677 + STRtree::centreY() inlined. git-svn-id: + http://svn.osgeo.org/geos/trunk@677 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-22 Sandro Santilli - * source/geomgraph/Edge.cpp: Optimized Edge::equals(Edge *e) git-svn-id: http://svn.osgeo.org/geos/trunk@676 + * source/geomgraph/Edge.cpp: Optimized Edge::equals(Edge *e) + git-svn-id: http://svn.osgeo.org/geos/trunk@676 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-18 Sandro Santilli * source/test/XMLTester.cpp: Added support for point-per-quadrant - argument in buffer tests (using arg2). git-svn-id: http://svn.osgeo.org/geos/trunk@675 + argument in buffer tests (using arg2). git-svn-id: + http://svn.osgeo.org/geos/trunk@675 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-17 Sandro Santilli * source/operation/buffer/OffsetCurveBuilder.cpp: Commented out - unused variable. git-svn-id: http://svn.osgeo.org/geos/trunk@674 + unused variable. git-svn-id: http://svn.osgeo.org/geos/trunk@674 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-17 Sandro Santilli * source/headers/geos/geom.h: Applied patch from Jon Schlueter using - instead of git-svn-id: http://svn.osgeo.org/geos/trunk@673 + instead of git-svn-id: + http://svn.osgeo.org/geos/trunk@673 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-15 Sandro Santilli @@ -26405,14 +32699,15 @@ source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp, source/noding/MCQuadtreeNoder.cpp: Inlined most Envelope methods, reserved() memory for some vectors when the usage was known a - priori. git-svn-id: http://svn.osgeo.org/geos/trunk@672 + priori. git-svn-id: http://svn.osgeo.org/geos/trunk@672 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-11 Sandro Santilli * source/geom/Makefile.am, source/headers/Makefile.am, source/headers/geos/Makefile.am: Applied patch from Curtis Barrett - handling --includedir and --libdir params for configure. git-svn-id: http://svn.osgeo.org/geos/trunk@671 + handling --includedir and --libdir params for configure. + git-svn-id: http://svn.osgeo.org/geos/trunk@671 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-05 Sandro Santilli @@ -26440,55 +32735,62 @@ source/operation/valid/ConsistentAreaTester.cpp, source/operation/valid/IsValidOp.cpp: Changed geomgraph nodeMap to use Coordinate pointers as keys, reduces lots of other Coordinate - copies. git-svn-id: http://svn.osgeo.org/geos/trunk@670 + copies. git-svn-id: http://svn.osgeo.org/geos/trunk@670 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-04 Sandro Santilli * source/headers/geos/geom.h: Envelope destructor made non-virtual - to give compiler more static binding options. git-svn-id: http://svn.osgeo.org/geos/trunk@669 + to give compiler more static binding options. git-svn-id: + http://svn.osgeo.org/geos/trunk@669 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-04 Sandro Santilli * source/headers/geos/opBuffer.h, source/operation/buffer/BufferSubgraph.cpp: Changed ::computeDepths - to use a set instead of a vector for checking visited Edges. git-svn-id: http://svn.osgeo.org/geos/trunk@668 + to use a set instead of a vector for checking visited Edges. + git-svn-id: http://svn.osgeo.org/geos/trunk@668 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-04 Sandro Santilli * source/test/Makefile.am: Added rule to build staticXMLTester (for - profiling with gprof) git-svn-id: http://svn.osgeo.org/geos/trunk@667 + profiling with gprof) git-svn-id: + http://svn.osgeo.org/geos/trunk@667 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-03 Sandro Santilli - * source/geom/CoordinateSequence.cpp: more profiling label git-svn-id: http://svn.osgeo.org/geos/trunk@666 + * source/geom/CoordinateSequence.cpp: more profiling label + git-svn-id: http://svn.osgeo.org/geos/trunk@666 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-01 Sandro Santilli * source/noding/MCQuadtreeNoder.cpp, source/noding/Noder.cpp: more - profiling labels git-svn-id: http://svn.osgeo.org/geos/trunk@665 + profiling labels git-svn-id: http://svn.osgeo.org/geos/trunk@665 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-01 Sandro Santilli * source/geom/Envelope.cpp, - source/index/chain/indexMonotoneChain.cpp: Small optimizations. git-svn-id: http://svn.osgeo.org/geos/trunk@664 + source/index/chain/indexMonotoneChain.cpp: Small optimizations. + git-svn-id: http://svn.osgeo.org/geos/trunk@664 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-01 Sandro Santilli * source/noding/SegmentNodeList.cpp, - source/noding/SegmentString.cpp: More profiler labels git-svn-id: http://svn.osgeo.org/geos/trunk@663 + source/noding/SegmentString.cpp: More profiler labels git-svn-id: + http://svn.osgeo.org/geos/trunk@663 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-01 Sandro Santilli * source/headers/geos/profiler.h, source/util/Profiler.cpp: Made - profiler start/stop inline git-svn-id: http://svn.osgeo.org/geos/trunk@662 + profiler start/stop inline git-svn-id: + http://svn.osgeo.org/geos/trunk@662 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-02-01 Sandro Santilli @@ -26497,20 +32799,22 @@ source/index/chain/MonotoneChainOverlapAction.cpp, source/noding/IteratedNoder.cpp, source/noding/SegmentNodeList.cpp, source/operation/buffer/BufferBuilder.cpp, source/util/Profiler.cpp: - More profiling labels. git-svn-id: http://svn.osgeo.org/geos/trunk@661 + More profiling labels. git-svn-id: + http://svn.osgeo.org/geos/trunk@661 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-31 Sandro Santilli * source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/STRtree.cpp, source/noding/MCQuadtreeNoder.cpp: - Small optimizations. git-svn-id: http://svn.osgeo.org/geos/trunk@660 + Small optimizations. git-svn-id: + http://svn.osgeo.org/geos/trunk@660 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-28 Sandro Santilli * source/io/ParseException.cpp: substituted sprintf calls with use - of ostringstream git-svn-id: http://svn.osgeo.org/geos/trunk@659 + of ostringstream git-svn-id: http://svn.osgeo.org/geos/trunk@659 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-28 Sandro Santilli @@ -26527,112 +32831,128 @@ source/index/quadtree/QuadTreeNodeBase.cpp, source/noding/SegmentNode.cpp, source/planargraph/planarDirectedEdge.cpp: Replaced sprintf uses - with ostringstream. git-svn-id: http://svn.osgeo.org/geos/trunk@658 + with ostringstream. git-svn-id: + http://svn.osgeo.org/geos/trunk@658 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-28 Sandro Santilli * source/geom/Coordinate.cpp: Removed sprintf usage, replaced with - sstream git-svn-id: http://svn.osgeo.org/geos/trunk@657 + sstream git-svn-id: http://svn.osgeo.org/geos/trunk@657 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-28 Sandro Santilli * source/geom/DefaultCoordinateSequence.cpp: removed sprintf usage, - ad ::toString call Coordinate::toString git-svn-id: http://svn.osgeo.org/geos/trunk@656 + ad ::toString call Coordinate::toString git-svn-id: + http://svn.osgeo.org/geos/trunk@656 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-18 Sandro Santilli * source/algorithm/LineIntersector.cpp: reverted previous change, - sign was actually stored in zgap git-svn-id: http://svn.osgeo.org/geos/trunk@655 + sign was actually stored in zgap git-svn-id: + http://svn.osgeo.org/geos/trunk@655 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-18 Sandro Santilli * source/algorithm/RobustLineIntersector.cpp: Fixed interpolateZ - call using final intersection point instead of HCoordinate. git-svn-id: http://svn.osgeo.org/geos/trunk@654 + call using final intersection point instead of HCoordinate. + git-svn-id: http://svn.osgeo.org/geos/trunk@654 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-14 Sandro Santilli * source/algorithm/LineIntersector.cpp: Fixed Z interpolation to use - the correct sign git-svn-id: http://svn.osgeo.org/geos/trunk@653 + the correct sign git-svn-id: http://svn.osgeo.org/geos/trunk@653 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-03 Sandro Santilli * source/test/XMLTester.cpp: Changed polygonize op to return a - GeometryCollection git-svn-id: http://svn.osgeo.org/geos/trunk@652 + GeometryCollection git-svn-id: http://svn.osgeo.org/geos/trunk@652 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-03 Sandro Santilli * source/test/XMLTester.cpp: Fixed memory leaks just introduced for - Polygonizer test case. git-svn-id: http://svn.osgeo.org/geos/trunk@651 + Polygonizer test case. git-svn-id: + http://svn.osgeo.org/geos/trunk@651 5242fede-7e19-0410-aef8-94bd7d2200fb 2005-01-03 Sandro Santilli - * source/test/XMLTester.cpp: Added Polygonize test handling git-svn-id: http://svn.osgeo.org/geos/trunk@650 + * source/test/XMLTester.cpp: Added Polygonize test handling + git-svn-id: http://svn.osgeo.org/geos/trunk@650 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-30 Sandro Santilli - * source/test/XMLTester.cpp: Handled NULL result from getCentroid() git-svn-id: http://svn.osgeo.org/geos/trunk@649 + * source/test/XMLTester.cpp: Handled NULL result from getCentroid() + git-svn-id: http://svn.osgeo.org/geos/trunk@649 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-30 Sandro Santilli * source/geom/Geometry.cpp: Fixed a segfault on - EMPTYGEOM->getCeontroid() git-svn-id: http://svn.osgeo.org/geos/trunk@648 + EMPTYGEOM->getCeontroid() git-svn-id: + http://svn.osgeo.org/geos/trunk@648 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-30 Sandro Santilli * source/geom/Polygon.cpp: never return LinearRing or - MultiLinearRing from getBoundary git-svn-id: http://svn.osgeo.org/geos/trunk@647 + MultiLinearRing from getBoundary git-svn-id: + http://svn.osgeo.org/geos/trunk@647 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-30 Sandro Santilli * source/geom/GeometryFactory.cpp: input checking and class - promoting in createMultiLineString() git-svn-id: http://svn.osgeo.org/geos/trunk@646 + promoting in createMultiLineString() git-svn-id: + http://svn.osgeo.org/geos/trunk@646 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-22 Sandro Santilli * source/geom/util/GeometryEditor.cpp: Fixed a premature Geometry - destruction, Avoided CoordinateSequence copies when possible. git-svn-id: http://svn.osgeo.org/geos/trunk@645 + destruction, Avoided CoordinateSequence copies when possible. + git-svn-id: http://svn.osgeo.org/geos/trunk@645 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-16 Paul Ramsey - * configure.in: Bumped minor version number for 2.1.1 release. git-svn-id: http://svn.osgeo.org/geos/trunk@644 + * configure.in: Bumped minor version number for 2.1.1 release. + git-svn-id: http://svn.osgeo.org/geos/trunk@644 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-16 Sandro Santilli * source/geom/LinearRing.cpp, source/headers/geos/geom.h: Fixed - LinearRing::clone() to return LinearRing instead of LineString git-svn-id: http://svn.osgeo.org/geos/trunk@643 + LinearRing::clone() to return LinearRing instead of LineString + git-svn-id: http://svn.osgeo.org/geos/trunk@643 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-16 Sandro Santilli * swig/geos.i, swig/python/example.py: New patches from Niki Spahiev - (still unstable) git-svn-id: http://svn.osgeo.org/geos/trunk@642 + (still unstable) git-svn-id: + http://svn.osgeo.org/geos/trunk@642 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-16 Sandro Santilli * swig/python/example.py: Added python example by Niki Spahiev - git-svn-id: http://svn.osgeo.org/geos/trunk@641 + git-svn-id: + http://svn.osgeo.org/geos/trunk@641 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-16 Sandro Santilli * swig/geos.i: Applyed patches by Niki Spahiev - git-svn-id: http://svn.osgeo.org/geos/trunk@640 + git-svn-id: + http://svn.osgeo.org/geos/trunk@640 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-14 Sandro Santilli @@ -26643,52 +32963,60 @@ source/planargraph/planarDirectedEdge.cpp, source/planargraph/planarDirectedEdgeStar.cpp: Comments cleanup. PolygonizeGraph keeps track of generated CoordinateSequence for - delayed destruction. git-svn-id: http://svn.osgeo.org/geos/trunk@638 + delayed destruction. git-svn-id: + http://svn.osgeo.org/geos/trunk@638 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-13 Sandro Santilli * source/headers/geos/opPolygonize.h: Added a not about gcc 2.95.4 - required friendship git-svn-id: http://svn.osgeo.org/geos/trunk@637 + required friendship git-svn-id: + http://svn.osgeo.org/geos/trunk@637 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-13 Sandro Santilli - * source/geom/TopologyException.cpp: Fixed uninitialized Coordinate. git-svn-id: http://svn.osgeo.org/geos/trunk@636 + * source/geom/TopologyException.cpp: Fixed uninitialized Coordinate. + git-svn-id: http://svn.osgeo.org/geos/trunk@636 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-12 Sandro Santilli * source/headers/geos/Makefile.am: version.h and platform.h - installed again (missed when removed from dist) git-svn-id: http://svn.osgeo.org/geos/trunk@635 + installed again (missed when removed from dist) git-svn-id: + http://svn.osgeo.org/geos/trunk@635 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-08 Sandro Santilli * source/geom/MultiPolygon.cpp: Checked inner polys getBoundary - return for the single LineString case. git-svn-id: http://svn.osgeo.org/geos/trunk@634 + return for the single LineString case. git-svn-id: + http://svn.osgeo.org/geos/trunk@634 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-08 Sandro Santilli - * source/geom/GeometryCollection.cpp: cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@633 + * source/geom/GeometryCollection.cpp: cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@633 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-08 Sandro Santilli * source/test/testLeaksBig.xml: adjusted getBoundary expected - returns to match OGC specs git-svn-id: http://svn.osgeo.org/geos/trunk@632 + returns to match OGC specs git-svn-id: + http://svn.osgeo.org/geos/trunk@632 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-08 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: elevationMatrix deleted by - destructor git-svn-id: http://svn.osgeo.org/geos/trunk@631 + destructor git-svn-id: http://svn.osgeo.org/geos/trunk@631 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-08 Sandro Santilli - * source/io/Unload.cpp: Added default profiler instance cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@630 + * source/io/Unload.cpp: Added default profiler instance cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@630 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-08 Sandro Santilli @@ -26727,54 +33055,61 @@ source/operation/polygonize/Polygonizer.cpp, source/operation/valid/IsValidOp.cpp, source/test/XMLTester.cpp, source/util/GeometricShapeFactory.cpp: gcc warnings checked and - fixed, general cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@629 + fixed, general cleanups. git-svn-id: + http://svn.osgeo.org/geos/trunk@629 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-06 Sandro Santilli - * source/headers/geos/Makefile.am: Added timeval.h in distribution. git-svn-id: http://svn.osgeo.org/geos/trunk@628 + * source/headers/geos/Makefile.am: Added timeval.h in distribution. + git-svn-id: http://svn.osgeo.org/geos/trunk@628 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-05 Sandro Santilli - * VisualStudio/.cvsignore: initial revision git-svn-id: http://svn.osgeo.org/geos/trunk@627 + * VisualStudio/.cvsignore: initial revision git-svn-id: + http://svn.osgeo.org/geos/trunk@627 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-05 Sandro Santilli - * VisualStudio/Makefile.am: forgot to add git-svn-id: http://svn.osgeo.org/geos/trunk@626 + * VisualStudio/Makefile.am: forgot to add git-svn-id: + http://svn.osgeo.org/geos/trunk@626 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-05 Sandro Santilli * debian/control, debian/libgeos-doc.doc-base, debian/rules: - Modifications by Alex Bodnaru git-svn-id: http://svn.osgeo.org/geos/trunk@625 + Modifications by Alex Bodnaru git-svn-id: + http://svn.osgeo.org/geos/trunk@625 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-05 Sandro Santilli * configure.in, doc/Makefile.am, source/bigtest/Makefile.am, source/examples/Makefile.am, source/test/Makefile.am: Applied Norman - Vine patches for cleaner win32 build. git-svn-id: http://svn.osgeo.org/geos/trunk@624 + Vine patches for cleaner win32 build. git-svn-id: + http://svn.osgeo.org/geos/trunk@624 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-04 Sandro Santilli * source/Makefile.am, source/headers/geos/Makefile.am: Added source/Makefile.vc and source/headers/geos/platform.h.in in - distribution git-svn-id: http://svn.osgeo.org/geos/trunk@623 + distribution git-svn-id: http://svn.osgeo.org/geos/trunk@623 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-04 Sandro Santilli * Makefile.am, configure.in, source/headers/geos/Makefile.am: Added VisualStudio dir in distribution, removed platform.h and version.h - from it. git-svn-id: http://svn.osgeo.org/geos/trunk@622 + from it. git-svn-id: http://svn.osgeo.org/geos/trunk@622 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-04 Frank Warmerdam - * source/Makefile.vc: removed dll delete git-svn-id: http://svn.osgeo.org/geos/trunk@621 + * source/Makefile.vc: removed dll delete git-svn-id: + http://svn.osgeo.org/geos/trunk@621 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-03 Sandro Santilli @@ -26784,51 +33119,60 @@ source/geom/LineString.cpp, source/geom/LinearRing.cpp, source/geom/PointCoordinateSequence.cpp, source/headers/geos/geom.h, source/util/Profiler.cpp: enforced const - return of CoordinateSequence::toVector() method to derivate classes. git-svn-id: http://svn.osgeo.org/geos/trunk@620 + return of CoordinateSequence::toVector() method to derivate classes. + git-svn-id: http://svn.osgeo.org/geos/trunk@620 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-03 Frank Warmerdam - * source/headers/geos/platform.h.vc: added headers git-svn-id: http://svn.osgeo.org/geos/trunk@619 + * source/headers/geos/platform.h.vc: added headers git-svn-id: + http://svn.osgeo.org/geos/trunk@619 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-03 Frank Warmerdam - * source/Makefile.vc: New git-svn-id: http://svn.osgeo.org/geos/trunk@618 + * source/Makefile.vc: New git-svn-id: + http://svn.osgeo.org/geos/trunk@618 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-03 Frank Warmerdam * source/headers/geos/geom.h: update to use I64 on MSVC for 64 bit - integer constants, also toVector chg. git-svn-id: http://svn.osgeo.org/geos/trunk@617 + integer constants, also toVector chg. git-svn-id: + http://svn.osgeo.org/geos/trunk@617 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-03 Frank Warmerdam - * source/headers/geos/profiler.h: dont try for sys/time.h with MSVC git-svn-id: http://svn.osgeo.org/geos/trunk@616 + * source/headers/geos/profiler.h: dont try for sys/time.h with MSVC + git-svn-id: http://svn.osgeo.org/geos/trunk@616 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-12-03 Frank Warmerdam - * source/headers/geos/platform.h.vc: New git-svn-id: http://svn.osgeo.org/geos/trunk@615 + * source/headers/geos/platform.h.vc: New git-svn-id: + http://svn.osgeo.org/geos/trunk@615 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-30 Sandro Santilli * source/headers/geos/profiler.h, source/headers/geos/timeval.h: - Added gettimeofday implementation for win32, curtesy of Wu Yongwei. git-svn-id: http://svn.osgeo.org/geos/trunk@614 + Added gettimeofday implementation for win32, curtesy of Wu Yongwei. + git-svn-id: http://svn.osgeo.org/geos/trunk@614 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-30 Sandro Santilli * source/headers/geos/platform.h.in: Removed inclusion of stdio.h, - which should now be useless. git-svn-id: http://svn.osgeo.org/geos/trunk@613 + which should now be useless. git-svn-id: + http://svn.osgeo.org/geos/trunk@613 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-30 Sandro Santilli * configure.in, source/headers/geos/platform.h.in: Added optional - inclusion of ieeefp.h on platform providing it. git-svn-id: http://svn.osgeo.org/geos/trunk@612 + inclusion of ieeefp.h on platform providing it. git-svn-id: + http://svn.osgeo.org/geos/trunk@612 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-29 Sandro Santilli @@ -26844,9 +33188,9 @@ source/operation/overlay/LineBuilder.cpp, source/operation/overlay/OverlayOp.cpp: Fixed a bug in LineIntersector::interpolateZ causing NaN values to come out. - Handled dimensional collapses in ElevationMatrix. Added ISNAN macro + Handled dimensional collapses in ElevationMatrix. Added ISNAN macro and changed ISNAN/FINITE macros to avoid dispendious isnan() and - finite() calls. git-svn-id: http://svn.osgeo.org/geos/trunk@611 + finite() calls. git-svn-id: http://svn.osgeo.org/geos/trunk@611 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-27 Sandro Santilli @@ -26854,7 +33198,8 @@ * debian/Makefile, debian/README.Debian, debian/changelog, debian/control, debian/libgeos-dev.install, debian/libgeos-dev.manpages, debian/rules, debian/shlibs.local: - Updated scripts by Alex Bodnaru, added Makefile git-svn-id: http://svn.osgeo.org/geos/trunk@610 + Updated scripts by Alex Bodnaru, added Makefile git-svn-id: + http://svn.osgeo.org/geos/trunk@610 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-26 Sandro Santilli @@ -26862,7 +33207,8 @@ * source/algorithm/LineIntersector.cpp, source/algorithm/RobustLineIntersector.cpp, source/geomgraph/Node.cpp, source/headers/geos/platform.h.in: Added - more FINITE calls, and added inf and -inf to FINITE checks git-svn-id: http://svn.osgeo.org/geos/trunk@609 + more FINITE calls, and added inf and -inf to FINITE checks + git-svn-id: http://svn.osgeo.org/geos/trunk@609 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-26 Sandro Santilli @@ -26872,31 +33218,33 @@ source/operation/overlay/ElevationMatrixCell.cpp, source/operation/overlay/ElevationMatrixFilter.cpp, source/operation/overlay/OverlayOp.cpp: Added FINITE(x) macro and - its use. Made input geoms average Z computation optional in - OverlayOp. git-svn-id: http://svn.osgeo.org/geos/trunk@608 + its use. Made input geoms average Z computation optional in + OverlayOp. git-svn-id: http://svn.osgeo.org/geos/trunk@608 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-24 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Stricter handling of - USE_ELEVATION_MATRIX define git-svn-id: http://svn.osgeo.org/geos/trunk@607 + USE_ELEVATION_MATRIX define git-svn-id: + http://svn.osgeo.org/geos/trunk@607 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-24 Sandro Santilli - * source/algorithm/LineIntersector.cpp: Cleanup of interpolateZ git-svn-id: http://svn.osgeo.org/geos/trunk@606 + * source/algorithm/LineIntersector.cpp: Cleanup of interpolateZ + git-svn-id: http://svn.osgeo.org/geos/trunk@606 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-24 Sandro Santilli * source/operation/overlay/ElevationMatrix.cpp: Handled boundary - cases in ::getCell git-svn-id: http://svn.osgeo.org/geos/trunk@605 + cases in ::getCell git-svn-id: http://svn.osgeo.org/geos/trunk@605 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-24 Sandro Santilli * source/operation/overlay/LineBuilder.cpp: Re-enabled Z propagation - in output lines. git-svn-id: http://svn.osgeo.org/geos/trunk@604 + in output lines. git-svn-id: http://svn.osgeo.org/geos/trunk@604 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-23 Sandro Santilli @@ -26910,7 +33258,8 @@ source/headers/geos/geosAlgorithm.h, source/operation/overlay/LineBuilder.cpp, source/operation/overlay/OverlayOp.cpp: Had LineIntersector compute - Z by interpolation. git-svn-id: http://svn.osgeo.org/geos/trunk@603 + Z by interpolation. git-svn-id: + http://svn.osgeo.org/geos/trunk@603 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-23 Sandro Santilli @@ -26924,31 +33273,35 @@ source/operation/overlay/ElevationMatrixFilter.cpp, source/operation/overlay/OverlayOp.cpp: Added ElevationMatrix class and components to do post-processing draping of overlayed - geometries. git-svn-id: http://svn.osgeo.org/geos/trunk@602 + geometries. git-svn-id: http://svn.osgeo.org/geos/trunk@602 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-22 Sandro Santilli * source/headers/geos/opOverlay.h, source/operation/overlay/OverlayOp.cpp: Added interpolation of - containing geometry's average Z for point_in_poly case. git-svn-id: http://svn.osgeo.org/geos/trunk@601 + containing geometry's average Z for point_in_poly case. + git-svn-id: http://svn.osgeo.org/geos/trunk@601 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-22 Sandro Santilli * source/algorithm/RobustLineIntersector.cpp: Fixed a bug in - Collinear intersection Z computation git-svn-id: http://svn.osgeo.org/geos/trunk@600 + Collinear intersection Z computation git-svn-id: + http://svn.osgeo.org/geos/trunk@600 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-22 Sandro Santilli * source/geomgraph/EdgeIntersectionList.cpp: Forced use if computed - intersection point in ::createSplitEdge (for Z computation) git-svn-id: http://svn.osgeo.org/geos/trunk@599 + intersection point in ::createSplitEdge (for Z computation) + git-svn-id: http://svn.osgeo.org/geos/trunk@599 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-22 Sandro Santilli - * source/geomgraph/Edge.cpp: Added debugging lines git-svn-id: http://svn.osgeo.org/geos/trunk@598 + * source/geomgraph/Edge.cpp: Added debugging lines git-svn-id: + http://svn.osgeo.org/geos/trunk@598 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-22 Sandro Santilli @@ -26957,72 +33310,83 @@ source/geomgraph/GeometryGraph.cpp, source/geomgraph/index/SimpleMCSweepLineIntersector.cpp, source/operation/overlay/OverlayOp.cpp: More debugging lines and - comments/indentation cleanups git-svn-id: http://svn.osgeo.org/geos/trunk@597 + comments/indentation cleanups git-svn-id: + http://svn.osgeo.org/geos/trunk@597 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-22 Sandro Santilli * source/algorithm/RobustLineIntersector.cpp: Added Z computation - for CollinearIntersections git-svn-id: http://svn.osgeo.org/geos/trunk@596 + for CollinearIntersections git-svn-id: + http://svn.osgeo.org/geos/trunk@596 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * debian/README.Debian, debian/control, debian/libgeos-dev.install, - debian/rules: Scripts updates from Alex Bodnaru git-svn-id: http://svn.osgeo.org/geos/trunk@595 + debian/rules: Scripts updates from Alex Bodnaru git-svn-id: + http://svn.osgeo.org/geos/trunk@595 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * source/headers/geos/opOverlay.h, source/operation/overlay/LineBuilder.cpp: Added Z propagation for - overlay lines output. git-svn-id: http://svn.osgeo.org/geos/trunk@594 + overlay lines output. git-svn-id: + http://svn.osgeo.org/geos/trunk@594 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * source/headers/geos/opOverlay.h, source/operation/overlay/OverlayOp.cpp: Handled Z merging for point - on polygon boundary case. git-svn-id: http://svn.osgeo.org/geos/trunk@593 + on polygon boundary case. git-svn-id: + http://svn.osgeo.org/geos/trunk@593 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Added Z computation for - point on line case. git-svn-id: http://svn.osgeo.org/geos/trunk@592 + point on line case. git-svn-id: + http://svn.osgeo.org/geos/trunk@592 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * source/headers/geos/geomgraph.h: Added composing Z management - functions and elements for class Node git-svn-id: http://svn.osgeo.org/geos/trunk@591 + functions and elements for class Node git-svn-id: + http://svn.osgeo.org/geos/trunk@591 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli - * source/geomgraph/NodeMap.cpp: Fixed Z merging in addNode(Node *) git-svn-id: http://svn.osgeo.org/geos/trunk@590 + * source/geomgraph/NodeMap.cpp: Fixed Z merging in addNode(Node *) + git-svn-id: http://svn.osgeo.org/geos/trunk@590 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli - * source/geomgraph/NodeMap.cpp: Added Z merging in ::addNode git-svn-id: http://svn.osgeo.org/geos/trunk@589 + * source/geomgraph/NodeMap.cpp: Added Z merging in ::addNode + git-svn-id: http://svn.osgeo.org/geos/trunk@589 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * source/geomgraph/Node.cpp: Added management of vector of composing - Z values. git-svn-id: http://svn.osgeo.org/geos/trunk@588 + Z values. git-svn-id: http://svn.osgeo.org/geos/trunk@588 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli * source/algorithm/RobustLineIntersector.cpp: Added Z computation in - point-segment intersection. git-svn-id: http://svn.osgeo.org/geos/trunk@587 + point-segment intersection. git-svn-id: + http://svn.osgeo.org/geos/trunk@587 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-20 Sandro Santilli - * source/algorithm/CGAlgorithms.cpp: Reduced HEAP allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@586 + * source/algorithm/CGAlgorithms.cpp: Reduced HEAP allocations. + git-svn-id: http://svn.osgeo.org/geos/trunk@586 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-19 Sandro Santilli @@ -27033,30 +33397,35 @@ debian/libgeos-doc.doc-base, debian/libgeos-doc.docs, debian/libgeos.dirs, debian/libgeos.docs, debian/libgeos.install, debian/makedoc, debian/rules, debian/shlibs.local, debian/watch: - Added debian package builder scripts. git-svn-id: http://svn.osgeo.org/geos/trunk@585 + Added debian package builder scripts. git-svn-id: + http://svn.osgeo.org/geos/trunk@585 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-19 Sandro Santilli * source/index/quadtree/QuadTreeNode.cpp: Completely removed sprintf - usage, substituted by stringstream. git-svn-id: http://svn.osgeo.org/geos/trunk@584 + usage, substituted by stringstream. git-svn-id: + http://svn.osgeo.org/geos/trunk@584 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-19 Sandro Santilli * source/index/quadtree/QuadTreeNode.cpp: Added include - for sprintf recognition. git-svn-id: http://svn.osgeo.org/geos/trunk@583 + for sprintf recognition. git-svn-id: + http://svn.osgeo.org/geos/trunk@583 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-19 Sandro Santilli - * source/geomgraph/Node.cpp: COMPUTE_Z re-enabled by default git-svn-id: http://svn.osgeo.org/geos/trunk@582 + * source/geomgraph/Node.cpp: COMPUTE_Z re-enabled by default + git-svn-id: http://svn.osgeo.org/geos/trunk@582 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-19 Sandro Santilli * source/geomgraph/GeometryGraph.cpp: removed useless - CoordinateSequence copy in ::addLineString git-svn-id: http://svn.osgeo.org/geos/trunk@581 + CoordinateSequence copy in ::addLineString git-svn-id: + http://svn.osgeo.org/geos/trunk@581 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-17 Sandro Santilli @@ -27064,14 +33433,16 @@ * source/algorithm/RobustLineIntersector.cpp, source/geomgraph/Node.cpp, source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PointBuilder.cpp: Changed COMPUTE_Z - defaults to be more conservative git-svn-id: http://svn.osgeo.org/geos/trunk@580 + defaults to be more conservative git-svn-id: + http://svn.osgeo.org/geos/trunk@580 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-17 Sandro Santilli * source/algorithm/RobustLineIntersector.cpp, source/geomgraph/index/SegmentIntersector.cpp: Fixed a bug in Z - computation and removed debugging output by default. git-svn-id: http://svn.osgeo.org/geos/trunk@579 + computation and removed debugging output by default. git-svn-id: + http://svn.osgeo.org/geos/trunk@579 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-17 Sandro Santilli @@ -27088,26 +33459,29 @@ source/headers/geos/operation.h, source/operation/GeometryGraphOperation.cpp, source/operation/overlay/OverlayOp.cpp, - source/operation/overlay/PointBuilder.cpp: Indentation changes. - Some Z_COMPUTATION activated by default. git-svn-id: http://svn.osgeo.org/geos/trunk@578 + source/operation/overlay/PointBuilder.cpp: Indentation changes. Some + Z_COMPUTATION activated by default. git-svn-id: + http://svn.osgeo.org/geos/trunk@578 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-12 Sandro Santilli * source/geom/Polygon.cpp: Changed ::getBoundary() to return - LineString if polygon has no holes. (has required to pass OGC - conformance test T20) git-svn-id: http://svn.osgeo.org/geos/trunk@576 + LineString if polygon has no holes. (has required to pass OGC + conformance test T20) git-svn-id: + http://svn.osgeo.org/geos/trunk@576 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-09 Sandro Santilli * tools/geos-config.in: Removed -g -O2 from geos-config --cflags - output git-svn-id: http://svn.osgeo.org/geos/trunk@575 + output git-svn-id: http://svn.osgeo.org/geos/trunk@575 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli - * source/index/strtree/STRtree.cpp: Just another small improvement. git-svn-id: http://svn.osgeo.org/geos/trunk@574 + * source/index/strtree/STRtree.cpp: Just another small improvement. + git-svn-id: http://svn.osgeo.org/geos/trunk@574 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli @@ -27116,36 +33490,40 @@ source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/STRtree.cpp, source/noding/MCQuadtreeNoder.cpp, - source/operation/buffer/BufferOp.cpp: More performance tuning. git-svn-id: http://svn.osgeo.org/geos/trunk@573 + source/operation/buffer/BufferOp.cpp: More performance tuning. + git-svn-id: http://svn.osgeo.org/geos/trunk@573 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli - * source/headers/geos/Makefile.am: Added profiler.h git-svn-id: http://svn.osgeo.org/geos/trunk@572 + * source/headers/geos/Makefile.am: Added profiler.h git-svn-id: + http://svn.osgeo.org/geos/trunk@572 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli * source/util/Profiler.cpp: Added number of gathered timings in - output. git-svn-id: http://svn.osgeo.org/geos/trunk@571 + output. git-svn-id: http://svn.osgeo.org/geos/trunk@571 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli * source/util/Profiler.cpp: Profiler::get() always return a Profile - (new if not existant). git-svn-id: http://svn.osgeo.org/geos/trunk@570 + (new if not existant). git-svn-id: + http://svn.osgeo.org/geos/trunk@570 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli * source/geom/Envelope.cpp: Optimized the ::intersect function to - avoid nested function calls. git-svn-id: http://svn.osgeo.org/geos/trunk@569 + avoid nested function calls. git-svn-id: + http://svn.osgeo.org/geos/trunk@569 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-08 Sandro Santilli * source/headers/geos/geom.h: Moved Log lines at the bottom, and cut - oldest git-svn-id: http://svn.osgeo.org/geos/trunk@568 + oldest git-svn-id: http://svn.osgeo.org/geos/trunk@568 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-06 Sandro Santilli @@ -27153,12 +33531,13 @@ * source/algorithm/CGAlgorithms.cpp, source/headers/geos/geosAlgorithm.h, source/operation/valid/IsValidOp.cpp: Fixed CGAlgorithms::isCCW from - JTS port. Code cleanup in IsValidOp. git-svn-id: http://svn.osgeo.org/geos/trunk@567 + JTS port. Code cleanup in IsValidOp. git-svn-id: + http://svn.osgeo.org/geos/trunk@567 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-05 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@566 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@566 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-05 Sandro Santilli @@ -27168,8 +33547,9 @@ source/operation/valid/IsValidOp.cpp, source/operation/valid/TopologyValidationError.cpp: Made IsValidOp handle IllegalArgumentException throw from GeometryGraph as a sign - of invalidity (just for Polygon geometries). Removed leaks - generated by this specific exception. git-svn-id: http://svn.osgeo.org/geos/trunk@565 + of invalidity (just for Polygon geometries). Removed leaks generated + by this specific exception. git-svn-id: + http://svn.osgeo.org/geos/trunk@565 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-04 Sandro Santilli @@ -27188,62 +33568,69 @@ source/operation/buffer/BufferOp.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp, - source/test/XMLTester.cpp: Cleanups, initializers list, profiling. git-svn-id: http://svn.osgeo.org/geos/trunk@564 + source/test/XMLTester.cpp: Cleanups, initializers list, profiling. + git-svn-id: http://svn.osgeo.org/geos/trunk@564 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-04 Sandro Santilli * source/headers/geos/indexQuadtree.h, source/headers/geos/profiler.h, - source/index/quadtree/DoubleBits.cpp: Unlinked new documentation. git-svn-id: http://svn.osgeo.org/geos/trunk@563 + source/index/quadtree/DoubleBits.cpp: Unlinked new documentation. + git-svn-id: http://svn.osgeo.org/geos/trunk@563 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-03 Sandro Santilli * source/index/quadtree/DoubleBits.cpp: Slightly modified log/log2 - based algo to better handle numbers in the range 0-1. git-svn-id: http://svn.osgeo.org/geos/trunk@562 + based algo to better handle numbers in the range 0-1. git-svn-id: + http://svn.osgeo.org/geos/trunk@562 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli * source/headers/geos/indexQuadtree.h: Fixed ieee-754 detection - switch git-svn-id: http://svn.osgeo.org/geos/trunk@561 + switch git-svn-id: http://svn.osgeo.org/geos/trunk@561 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@560 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@560 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli * source/headers/geos/indexQuadtree.h: Autodetect availability of - IEEE-754 FP git-svn-id: http://svn.osgeo.org/geos/trunk@559 + IEEE-754 FP git-svn-id: http://svn.osgeo.org/geos/trunk@559 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli * source/headers/geos/indexQuadtree.h, source/index/quadtree/DoubleBits.cpp: Moved ASSUME_IEEE_DOUBLE - define from DoubleBits.cpp to indexQuadtree.h. Fixed a bug in + define from DoubleBits.cpp to indexQuadtree.h. Fixed a bug in powerOf2(). Made the !IEEE version less prone to round-offs (still - has approximation errors). git-svn-id: http://svn.osgeo.org/geos/trunk@558 + has approximation errors). git-svn-id: + http://svn.osgeo.org/geos/trunk@558 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli * source/index/quadtree/DoubleBits.cpp: Fixed bug in IEEE-based - exponent and PowerOf2 computation, but disabled at compile time. git-svn-id: http://svn.osgeo.org/geos/trunk@557 + exponent and PowerOf2 computation, but disabled at compile time. + git-svn-id: http://svn.osgeo.org/geos/trunk@557 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli - * source/noding/MCQuadtreeNoder.cpp: Added more profiling. git-svn-id: http://svn.osgeo.org/geos/trunk@556 + * source/noding/MCQuadtreeNoder.cpp: Added more profiling. + git-svn-id: http://svn.osgeo.org/geos/trunk@556 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-02 Sandro Santilli - * source/test/XMLTester.cpp: Added timer for buffer test. git-svn-id: http://svn.osgeo.org/geos/trunk@555 + * source/test/XMLTester.cpp: Added timer for buffer test. + git-svn-id: http://svn.osgeo.org/geos/trunk@555 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-11-01 Sandro Santilli @@ -27271,20 +33658,22 @@ source/noding/nodingSegmentIntersector.cpp, source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferOp.cpp, source/util/Profiler.cpp: - Added Profiler code. Temporarly patched a bug in DoubleBits (must - check drawbacks). Various cleanups and speedups. git-svn-id: http://svn.osgeo.org/geos/trunk@554 + Added Profiler code. Temporarly patched a bug in DoubleBits (must + check drawbacks). Various cleanups and speedups. git-svn-id: + http://svn.osgeo.org/geos/trunk@554 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-27 Sandro Santilli * source/operation/polygonize/Polygonizer.cpp, source/operation/polygonize/polygonizeEdgeRing.cpp: Added some - debugging lines (disabled by default) git-svn-id: http://svn.osgeo.org/geos/trunk@553 + debugging lines (disabled by default) git-svn-id: + http://svn.osgeo.org/geos/trunk@553 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-27 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@552 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@552 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-26 Sandro Santilli @@ -27293,18 +33682,20 @@ source/headers/geos/indexChain.h, source/headers/geos/indexStrtree.h, source/headers/geos/spatialIndex.h: Removed slash-stars in comments - to remove annoying compiler warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@551 + to remove annoying compiler warnings. git-svn-id: + http://svn.osgeo.org/geos/trunk@551 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-26 Sandro Santilli * NEWS, configure.in: current:revision:age set to 3.0.1 (will be - release 2.1.0). added news. git-svn-id: http://svn.osgeo.org/geos/trunk@550 + release 2.1.0). added news. git-svn-id: + http://svn.osgeo.org/geos/trunk@550 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-26 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@549 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@549 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-26 Sandro Santilli @@ -27312,7 +33703,8 @@ * source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp, source/operation/polygonize/polygonizeEdgeRing.cpp: Some more - intentation and envelope equality check fix. git-svn-id: http://svn.osgeo.org/geos/trunk@548 + intentation and envelope equality check fix. git-svn-id: + http://svn.osgeo.org/geos/trunk@548 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-21 Sandro Santilli @@ -27330,18 +33722,21 @@ source/operation/GeometryGraphOperation.cpp, source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PointBuilder.cpp: Indentation changes and - some more COMPUTE_Z rules git-svn-id: http://svn.osgeo.org/geos/trunk@547 + some more COMPUTE_Z rules git-svn-id: + http://svn.osgeo.org/geos/trunk@547 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-21 Sandro Santilli - * source/io/WKTReader.cpp: Fixed bug introduced by previous patch. git-svn-id: http://svn.osgeo.org/geos/trunk@546 + * source/io/WKTReader.cpp: Fixed bug introduced by previous patch. + git-svn-id: http://svn.osgeo.org/geos/trunk@546 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-21 Sandro Santilli * source/io/WKTReader.cpp: Removed leak in ::readPolygonText - reported by Carlos A. Rueda git-svn-id: http://svn.osgeo.org/geos/trunk@545 + reported by Carlos A. Rueda git-svn-id: + http://svn.osgeo.org/geos/trunk@545 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-20 Sandro Santilli @@ -27360,12 +33755,12 @@ source/io/WKTWriter.cpp, source/operation/overlay/LineBuilder.cpp, source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PointBuilder.cpp: Initial approach to 2.5d - intersection() git-svn-id: http://svn.osgeo.org/geos/trunk@544 + intersection() git-svn-id: http://svn.osgeo.org/geos/trunk@544 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-19 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@543 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@543 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-19 Sandro Santilli @@ -27382,7 +33777,8 @@ source/planargraph/planarDirectedEdge.cpp, source/planargraph/planarNode.cpp, source/planargraph/planarNodeMap.cpp: Fixed many leaks and bugs in - Polygonizer. Output still bogus. git-svn-id: http://svn.osgeo.org/geos/trunk@542 + Polygonizer. Output still bogus. git-svn-id: + http://svn.osgeo.org/geos/trunk@542 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-18 Sandro Santilli @@ -27392,7 +33788,7 @@ swig/python/tests/.cvsignore, swig/python/tests/Makefile.am, swig/python/tests/cases/.cvsignore, swig/python/tests/cases/Makefile.am: swig interface added to - distribution. git-svn-id: http://svn.osgeo.org/geos/trunk@541 + distribution. git-svn-id: http://svn.osgeo.org/geos/trunk@541 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-10-13 Sandro Santilli @@ -27417,85 +33813,95 @@ source/planargraph/planarNode.cpp, source/planargraph/planarNodeMap.cpp, source/planargraph/planarPlanarGraph.cpp: Added missing linemerge - and polygonize operation. Bug fixes and leaks removal from the - newly added modules and planargraph (used by them). Some comments - and indentation changes. git-svn-id: http://svn.osgeo.org/geos/trunk@540 + and polygonize operation. Bug fixes and leaks removal from the newly + added modules and planargraph (used by them). Some comments and + indentation changes. git-svn-id: + http://svn.osgeo.org/geos/trunk@540 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-23 Sandro Santilli * source/geom/CoordinateSequence.cpp: Fixed a bug in ::reverse - (thanks to Elliott Edwards) git-svn-id: http://svn.osgeo.org/geos/trunk@539 + (thanks to Elliott Edwards) git-svn-id: + http://svn.osgeo.org/geos/trunk@539 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-23 Paul Ramsey - * configure.in: Back minor version back to 2.0.1 git-svn-id: http://svn.osgeo.org/geos/trunk@538 + * configure.in: Back minor version back to 2.0.1 git-svn-id: + http://svn.osgeo.org/geos/trunk@538 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-23 Paul Ramsey - * configure.in: Bumped minor version to 2.0.2 after 2.0.1 release. git-svn-id: http://svn.osgeo.org/geos/trunk@537 + * configure.in: Bumped minor version to 2.0.2 after 2.0.1 release. + git-svn-id: http://svn.osgeo.org/geos/trunk@537 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-21 Sandro Santilli * source/precision/SimpleGeometryPrecisionReducer.cpp: fixed a - mis-initialization bug in ::reduce git-svn-id: http://svn.osgeo.org/geos/trunk@536 + mis-initialization bug in ::reduce git-svn-id: + http://svn.osgeo.org/geos/trunk@536 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-21 Sandro Santilli * source/index/quadtree/DoubleBits.cpp: Removed useless auto_ptr - usage in ::exponent git-svn-id: http://svn.osgeo.org/geos/trunk@535 + usage in ::exponent git-svn-id: + http://svn.osgeo.org/geos/trunk@535 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-16 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@534 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@534 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-16 Sandro Santilli * source/geom/Geometry.cpp: Finer short-circuit tests for equals, - within, contains. git-svn-id: http://svn.osgeo.org/geos/trunk@533 + within, contains. git-svn-id: http://svn.osgeo.org/geos/trunk@533 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-16 Sandro Santilli * source/geom/Envelope.cpp, source/headers/geos/geom.h: Added - Envelope::equals git-svn-id: http://svn.osgeo.org/geos/trunk@532 + Envelope::equals git-svn-id: http://svn.osgeo.org/geos/trunk@532 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-16 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@531 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@531 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-16 Sandro Santilli * source/geom/Geometry.cpp: Added short-circuit tests. Can be - disabled at compile-time git-svn-id: http://svn.osgeo.org/geos/trunk@530 + disabled at compile-time git-svn-id: + http://svn.osgeo.org/geos/trunk@530 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli - * source/operation/valid/IsValidOp.cpp: comments cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@529 + * source/operation/valid/IsValidOp.cpp: comments cleanup + git-svn-id: http://svn.osgeo.org/geos/trunk@529 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@528 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@528 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli - * configure.in: Updated version number git-svn-id: http://svn.osgeo.org/geos/trunk@527 + * configure.in: Updated version number git-svn-id: + http://svn.osgeo.org/geos/trunk@527 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli - * source/test/XMLTester.cpp: Added missing newline at end of output git-svn-id: http://svn.osgeo.org/geos/trunk@526 + * source/test/XMLTester.cpp: Added missing newline at end of output + git-svn-id: http://svn.osgeo.org/geos/trunk@526 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli @@ -27503,63 +33909,70 @@ * source/geom/MultiPoint.cpp, source/geom/Point.cpp, source/headers/geos/geom.h, source/headers/geos/opValid.h, source/operation/valid/IsValidOp.cpp: Made Point and MultiPoint - subject to Validity tests. git-svn-id: http://svn.osgeo.org/geos/trunk@525 + subject to Validity tests. git-svn-id: + http://svn.osgeo.org/geos/trunk@525 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli * source/operation/valid/TopologyValidationError.cpp: Added - INVALID_COORDINATE code num and error message. git-svn-id: http://svn.osgeo.org/geos/trunk@524 + INVALID_COORDINATE code num and error message. git-svn-id: + http://svn.osgeo.org/geos/trunk@524 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli * TODO, source/headers/geos/geosAlgorithm.h, source/headers/geos/opValid.h, source/operation/valid/IsValidOp.cpp: - Added invalid coordinates checks in IsValidOp. Cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@523 + Added invalid coordinates checks in IsValidOp. Cleanups. + git-svn-id: http://svn.osgeo.org/geos/trunk@523 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli * source/headers/geos/opValid.h, source/operation/valid/IsValidOp.cpp: Added - IsValidOp::isValid(Coordinate &) git-svn-id: http://svn.osgeo.org/geos/trunk@522 + IsValidOp::isValid(Coordinate &) git-svn-id: + http://svn.osgeo.org/geos/trunk@522 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-13 Sandro Santilli - * source/geom/LineString.cpp: Ported fix in LineString::isCoordinate git-svn-id: http://svn.osgeo.org/geos/trunk@521 + * source/geom/LineString.cpp: Ported fix in LineString::isCoordinate + git-svn-id: http://svn.osgeo.org/geos/trunk@521 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-12 Paul Ramsey * source/geom/LineString.cpp, source/geom/MultiLineString.cpp, source/geom/MultiPoint.cpp: Casting changes to allow OS/X - compilation. git-svn-id: http://svn.osgeo.org/geos/trunk@520 + compilation. git-svn-id: http://svn.osgeo.org/geos/trunk@520 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-09-07 Sandro Santilli * source/headers/geos/geom.h: Fixed doxygen malformed comment for - Coordinate class git-svn-id: http://svn.osgeo.org/geos/trunk@519 + Coordinate class git-svn-id: http://svn.osgeo.org/geos/trunk@519 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-08-20 Paul Ramsey * source/bigtest/Makefile.am: Added reference to bigtest.h so 'make - dist' includes it properly. git-svn-id: http://svn.osgeo.org/geos/trunk@517 + dist' includes it properly. git-svn-id: + http://svn.osgeo.org/geos/trunk@517 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-08-20 Paul Ramsey * configure.in: Removed examples from build directories for release - (they don't build now). git-svn-id: http://svn.osgeo.org/geos/trunk@516 + (they don't build now). git-svn-id: + http://svn.osgeo.org/geos/trunk@516 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-08-04 Sandro Santilli * source/operation/relate/RelateComputer.cpp: comments lift, stack - allocation reduced git-svn-id: http://svn.osgeo.org/geos/trunk@515 + allocation reduced git-svn-id: http://svn.osgeo.org/geos/trunk@515 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-27 Sandro Santilli @@ -27588,26 +34001,30 @@ source/operation/valid/QuadtreeNestedRingTester.cpp, source/operation/valid/SweeplineNestedRingTester.cpp: Geometry::getEnvelopeInternal() changed to return a const Envelope - *. This should reduce object copies as once computed the envelope - of a geometry remains the same. git-svn-id: http://svn.osgeo.org/geos/trunk@514 + *. This should reduce object copies as once computed the envelope of + a geometry remains the same. git-svn-id: + http://svn.osgeo.org/geos/trunk@514 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-26 Sean Gillies - * AUTHORS: added to AUTHORS git-svn-id: http://svn.osgeo.org/geos/trunk@513 + * AUTHORS: added to AUTHORS git-svn-id: + http://svn.osgeo.org/geos/trunk@513 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-26 Sean Gillies * swig/geos.i, swig/python/tests/cases/pointtest.py, swig/python/tests/cases/wkttest.py: added simple exception handling - on all method calls git-svn-id: http://svn.osgeo.org/geos/trunk@512 + on all method calls git-svn-id: + http://svn.osgeo.org/geos/trunk@512 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-26 Sandro Santilli * source/headers/geos/geom.h: Removed dangling - MultiPoint::isClosed() method definition. git-svn-id: http://svn.osgeo.org/geos/trunk@511 + MultiPoint::isClosed() method definition. git-svn-id: + http://svn.osgeo.org/geos/trunk@511 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-26 Sean Gillies @@ -27616,7 +34033,8 @@ swig/python/tests/cases/wkttest.py, swig/python/tests/runtests.py: wrapped up WKT reader and writer and added two test cases to check that it works. found a bug where the WKT reader crashes the program - in the case of poorly formatted WKT string. git-svn-id: http://svn.osgeo.org/geos/trunk@510 + in the case of poorly formatted WKT string. git-svn-id: + http://svn.osgeo.org/geos/trunk@510 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-25 Sean Gillies @@ -27629,7 +34047,8 @@ SWIG interface for high level language modules, Python setup script, and beginning of a unit testing framework under swig/python/tests. The build works for today's CVS GEOS, and the test passes -- means - that a module can be built, installed, and imported. git-svn-id: http://svn.osgeo.org/geos/trunk@509 + that a module can be built, installed, and imported. git-svn-id: + http://svn.osgeo.org/geos/trunk@509 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-22 Sandro Santilli @@ -27637,7 +34056,7 @@ * TODO, doc/example.cpp, source/geom/Geometry.cpp, source/headers/geos/geom.h: runtime version extractor functions split. geos::version() is now geos::geosversion() and - geos::jtsport() git-svn-id: http://svn.osgeo.org/geos/trunk@508 + geos::jtsport() git-svn-id: http://svn.osgeo.org/geos/trunk@508 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-22 Sandro Santilli @@ -27645,19 +34064,22 @@ * TODO, source/geom/GeometryCollection.cpp, source/geom/LineString.cpp, source/geom/MultiLineString.cpp, source/geom/MultiPoint.cpp, source/headers/geos/geom.h: - Documentation updates, memory leaks fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@507 + Documentation updates, memory leaks fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@507 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-22 Sandro Santilli - * source/headers/geos/geom.h: Changed getCoordinatesRO description. git-svn-id: http://svn.osgeo.org/geos/trunk@506 + * source/headers/geos/geom.h: Changed getCoordinatesRO description. + git-svn-id: http://svn.osgeo.org/geos/trunk@506 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-22 Sandro Santilli * source/geom/Coordinate.cpp, source/geom/GeometryCollection.cpp, source/geom/Polygon.cpp, source/headers/geos/geom.h: Documented - missing geometry functions. git-svn-id: http://svn.osgeo.org/geos/trunk@505 + missing geometry functions. git-svn-id: + http://svn.osgeo.org/geos/trunk@505 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-21 Sandro Santilli @@ -27668,17 +34090,20 @@ source/geom/PrecisionModel.cpp, source/geomgraph/Edge.cpp, source/headers/geos.h, source/headers/geos/geom.h: CoordinateSequence::atLeastNCoordinatesOrNothing definition fix. - Documentation fixes. git-svn-id: http://svn.osgeo.org/geos/trunk@504 + Documentation fixes. git-svn-id: + http://svn.osgeo.org/geos/trunk@504 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-21 Sandro Santilli - * NEWS, README, TODO: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@503 + * NEWS, README, TODO: Updated git-svn-id: + http://svn.osgeo.org/geos/trunk@503 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-20 Sandro Santilli - * doc/README: Updated doxygen rule git-svn-id: http://svn.osgeo.org/geos/trunk@502 + * doc/README: Updated doxygen rule git-svn-id: + http://svn.osgeo.org/geos/trunk@502 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-20 Sandro Santilli @@ -27686,14 +34111,16 @@ * doc/Doxyfile.in, source/geom/CoordinateList.cpp, source/geom/Geometry.cpp, source/headers/geos/geom.h, source/headers/geos/opDistance.h: Fixed a bug in opDistance.h. - Removed doxygen tags from obsoleted CoordinateList.cpp. Got doxygen - to run with no warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@501 + Removed doxygen tags from obsoleted CoordinateList.cpp. Got doxygen + to run with no warnings. git-svn-id: + http://svn.osgeo.org/geos/trunk@501 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Paul Ramsey * doc/Makefile.am: Changed doxygen target to be more "make dist" - friendly. (and allow autogeneration of CVS snapshot to work again.) git-svn-id: http://svn.osgeo.org/geos/trunk@500 + friendly. (and allow autogeneration of CVS snapshot to work again.) + git-svn-id: http://svn.osgeo.org/geos/trunk@500 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli @@ -27716,213 +34143,240 @@ source/headers/geos/opValid.h, source/headers/geos/operation.h, source/headers/geos/planargraph.h, source/headers/geos/precision.h, source/headers/geos/spatialIndex.h, source/io/WKTWriter.cpp: - Documentation fixes git-svn-id: http://svn.osgeo.org/geos/trunk@499 + Documentation fixes git-svn-id: + http://svn.osgeo.org/geos/trunk@499 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli - * doc/.cvsignore: Added Doxyfile git-svn-id: http://svn.osgeo.org/geos/trunk@498 + * doc/.cvsignore: Added Doxyfile git-svn-id: + http://svn.osgeo.org/geos/trunk@498 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@497 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@497 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli - * doc/Makefile.am: Doxygen doc added to default build rules git-svn-id: http://svn.osgeo.org/geos/trunk@496 + * doc/Makefile.am: Doxygen doc added to default build rules + git-svn-id: http://svn.osgeo.org/geos/trunk@496 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli * source/geom/DefaultCoordinateSequenceFactory.cpp: defaultCoordinateSequenceFactory made module-static (use - DefaultCoordinateSequenceFactory::instance() instead) git-svn-id: http://svn.osgeo.org/geos/trunk@495 + DefaultCoordinateSequenceFactory::instance() instead) git-svn-id: + http://svn.osgeo.org/geos/trunk@495 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli * source/bigtest/GeometryTestFactory.cpp, source/bigtest/TestSweepLineSpeed.cpp, source/{headers/geos => - bigtest}/bigtest.h: bigtest.h moved to local dir git-svn-id: http://svn.osgeo.org/geos/trunk@494 + bigtest}/bigtest.h: bigtest.h moved to local dir git-svn-id: + http://svn.osgeo.org/geos/trunk@494 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli * source/headers/geos/geom.h: removed doxygen documentation of - removed feature git-svn-id: http://svn.osgeo.org/geos/trunk@493 + removed feature git-svn-id: http://svn.osgeo.org/geos/trunk@493 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli * source/headers/geos/io.h: Class documentation changed to report - geos.h as WKT writer/parser header file git-svn-id: http://svn.osgeo.org/geos/trunk@492 + geos.h as WKT writer/parser header file git-svn-id: + http://svn.osgeo.org/geos/trunk@492 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli * source/headers/{geos => }/acconfig.h, - source/headers/geos/Makefile.am: acconfig.h moved one directory up git-svn-id: http://svn.osgeo.org/geos/trunk@491 + source/headers/geos/Makefile.am: acconfig.h moved one directory up + git-svn-id: http://svn.osgeo.org/geos/trunk@491 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-19 Sandro Santilli - * doc/Doxyfile.in: Excluded example and test dirs from input set git-svn-id: http://svn.osgeo.org/geos/trunk@490 + * doc/Doxyfile.in: Excluded example and test dirs from input set + git-svn-id: http://svn.osgeo.org/geos/trunk@490 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@489 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@489 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli - * doc/.cvsignore: added Doxyfile (generated) git-svn-id: http://svn.osgeo.org/geos/trunk@488 + * doc/.cvsignore: added Doxyfile (generated) git-svn-id: + http://svn.osgeo.org/geos/trunk@488 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli - * source/geom/Geometry.cpp: fixed typo in documentation git-svn-id: http://svn.osgeo.org/geos/trunk@487 + * source/geom/Geometry.cpp: fixed typo in documentation + git-svn-id: http://svn.osgeo.org/geos/trunk@487 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli * configure.in, doc/{Doxyfile => Doxyfile.in}: Doxygen configuration - created at ./configure time, for versioning. git-svn-id: http://svn.osgeo.org/geos/trunk@486 + created at ./configure time, for versioning. git-svn-id: + http://svn.osgeo.org/geos/trunk@486 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli - * doc/example.cpp: added GEOS version report git-svn-id: http://svn.osgeo.org/geos/trunk@485 + * doc/example.cpp: added GEOS version report git-svn-id: + http://svn.osgeo.org/geos/trunk@485 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geos/geom.h: Added - geos::version() git-svn-id: http://svn.osgeo.org/geos/trunk@484 + geos::version() git-svn-id: http://svn.osgeo.org/geos/trunk@484 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli - * tools/geos-config.in: Added --jtsport git-svn-id: http://svn.osgeo.org/geos/trunk@483 + * tools/geos-config.in: Added --jtsport git-svn-id: + http://svn.osgeo.org/geos/trunk@483 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli * source/headers/geos/version.h.in: Added GEOS_FIRST_INTERFACE, - GEOS_LAST_INTERFACE and GEOS_JTS_PORT git-svn-id: http://svn.osgeo.org/geos/trunk@482 + GEOS_LAST_INTERFACE and GEOS_JTS_PORT git-svn-id: + http://svn.osgeo.org/geos/trunk@482 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-17 Sandro Santilli - * configure.in: Added JTS_PORT variable. Simplified versioning + * configure.in: Added JTS_PORT variable. Simplified versioning settings: comments added, major/minor/patchlevel extracted by - CURRENT,AGE,REVISION. git-svn-id: http://svn.osgeo.org/geos/trunk@481 + CURRENT,AGE,REVISION. git-svn-id: + http://svn.osgeo.org/geos/trunk@481 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@480 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@480 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli * configure.in, source/geom/Makefile.am: Libtool versioning scheme - adopted. git-svn-id: http://svn.osgeo.org/geos/trunk@479 + adopted. git-svn-id: http://svn.osgeo.org/geos/trunk@479 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * doc/Makefile.am: removed useless Includedir git-svn-id: http://svn.osgeo.org/geos/trunk@478 + * doc/Makefile.am: removed useless Includedir git-svn-id: + http://svn.osgeo.org/geos/trunk@478 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * source/headers/geos.h: made includes use <> git-svn-id: http://svn.osgeo.org/geos/trunk@477 + * source/headers/geos.h: made includes use <> git-svn-id: + http://svn.osgeo.org/geos/trunk@477 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@476 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@476 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli * source/headers/geos/util.h, source/util/GeometricShapeFactory.cpp: - Dimesions object allocated on the heap git-svn-id: http://svn.osgeo.org/geos/trunk@475 + Dimesions object allocated on the heap git-svn-id: + http://svn.osgeo.org/geos/trunk@475 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli * doc/example.cpp: Bug fixed in GeometricShapeFactory examples. - Added example of GeometricShapeFactory::createArc. git-svn-id: http://svn.osgeo.org/geos/trunk@474 + Added example of GeometricShapeFactory::createArc. git-svn-id: + http://svn.osgeo.org/geos/trunk@474 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@473 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@473 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * doc/example.tosql: Added LINEARRING to LINESTRING conversion git-svn-id: http://svn.osgeo.org/geos/trunk@472 + * doc/example.tosql: Added LINEARRING to LINESTRING conversion + git-svn-id: http://svn.osgeo.org/geos/trunk@472 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-16 Sandro Santilli - * source/geom/Makefile.am: Modified library version to 1.4.0 git-svn-id: http://svn.osgeo.org/geos/trunk@471 + * source/geom/Makefile.am: Modified library version to 1.4.0 + git-svn-id: http://svn.osgeo.org/geos/trunk@471 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-15 Sandro Santilli - * doc/example.cpp: Added createRectangle example. git-svn-id: http://svn.osgeo.org/geos/trunk@470 + * doc/example.cpp: Added createRectangle example. git-svn-id: + http://svn.osgeo.org/geos/trunk@470 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-15 Sandro Santilli * source/util/GeometricShapeFactory.cpp: Memory leaks fixed, - CoordinateSequence use made JTS - compatible. git-svn-id: http://svn.osgeo.org/geos/trunk@469 + CoordinateSequence use made JTS - compatible. git-svn-id: + http://svn.osgeo.org/geos/trunk@469 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@468 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@468 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli * source/geom/Geometry.cpp: Added GeometricShapeFactory note on - doxygen mainpage git-svn-id: http://svn.osgeo.org/geos/trunk@467 + doxygen mainpage git-svn-id: http://svn.osgeo.org/geos/trunk@467 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli - * source/headers/geos.h: added geos/io.h and geos/unload.h git-svn-id: http://svn.osgeo.org/geos/trunk@466 + * source/headers/geos.h: added geos/io.h and geos/unload.h + git-svn-id: http://svn.osgeo.org/geos/trunk@466 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli * source/headers/geos/util.h, source/util/GeometricShapeFactory.cpp: - GeometricShapeFactory first pass of bug fixes git-svn-id: http://svn.osgeo.org/geos/trunk@465 + GeometricShapeFactory first pass of bug fixes git-svn-id: + http://svn.osgeo.org/geos/trunk@465 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli - * source/geom/Makefile.am: added missing GeometricShapeFactory.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@464 + * source/geom/Makefile.am: added missing GeometricShapeFactory.cpp + git-svn-id: http://svn.osgeo.org/geos/trunk@464 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli * source/geom/Coordinate.cpp, source/headers/geos/geom.h: added - inequality operator for Coordinate git-svn-id: http://svn.osgeo.org/geos/trunk@463 + inequality operator for Coordinate git-svn-id: + http://svn.osgeo.org/geos/trunk@463 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-14 Sandro Santilli * doc/example.cpp, doc/example.tosql: Added GeometricShapeFactory - example: createCircle. Added simple filter to send example output - to a postgis table. git-svn-id: http://svn.osgeo.org/geos/trunk@462 + example: createCircle. Added simple filter to send example output to + a postgis table. git-svn-id: http://svn.osgeo.org/geos/trunk@462 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-13 Sandro Santilli @@ -27943,24 +34397,25 @@ source/operation/buffer/OffsetCurveSetBuilder.cpp, source/operation/distance/DistanceOp.cpp, source/planargraph/planarGraphComponent.cpp: Added missing virtual - destructor to virtual classes. Fixed implicit unsigned int -> int - casts git-svn-id: http://svn.osgeo.org/geos/trunk@461 + destructor to virtual classes. Fixed implicit unsigned int -> int + casts git-svn-id: http://svn.osgeo.org/geos/trunk@461 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-12 Sandro Santilli * source/headers/geos/geom.h: Commented out CoordinateList class - definition. git-svn-id: http://svn.osgeo.org/geos/trunk@460 + definition. git-svn-id: http://svn.osgeo.org/geos/trunk@460 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-12 Sandro Santilli - * source/geom/PrecisionModel.cpp: Fixed maximumPreciseValue scope git-svn-id: http://svn.osgeo.org/geos/trunk@459 + * source/geom/PrecisionModel.cpp: Fixed maximumPreciseValue scope + git-svn-id: http://svn.osgeo.org/geos/trunk@459 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-09 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@458 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@458 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-08 Sandro Santilli @@ -27972,7 +34427,8 @@ source/examples/{CustomCoordinateListExample.h => CustomCoordinateSequenceExample.h}, source/examples/{CustomPointCoordinateList.cpp => - CustomPointCoordinateSequence.cpp}: renamed to reflect JTS API. git-svn-id: http://svn.osgeo.org/geos/trunk@457 + CustomPointCoordinateSequence.cpp}: renamed to reflect JTS API. + git-svn-id: http://svn.osgeo.org/geos/trunk@457 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-08 Sandro Santilli @@ -27983,25 +34439,28 @@ source/geom/DefaultCoordinateSequenceFactory.cpp, source/geom/PointCoordinateSequence.cpp, source/geom/PointCoordinateSequenceFactory.cpp: renamed from *List* - equivalents git-svn-id: http://svn.osgeo.org/geos/trunk@456 + equivalents git-svn-id: http://svn.osgeo.org/geos/trunk@456 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-08 Sandro Santilli * source/geom/PointCoordinateList.cpp: Renamed to - PointCoordinateSequence.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@455 + PointCoordinateSequence.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@455 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-08 Sandro Santilli * source/geom/CoordinateListFactory.cpp: Renamed to - CoordinateSequenceFactory.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@454 + CoordinateSequenceFactory.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@454 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-08 Sandro Santilli * source/geom/BasicCoordinateList.cpp: Renamed to - DefaultCoordinateSequence.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@453 + DefaultCoordinateSequence.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@453 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-08 Sandro Santilli @@ -28077,20 +34536,22 @@ source/util/CoordinateArrayFiter.cpp, source/util/GeometricShapeFactory.cpp, source/util/UniqueCoordinateArrayFilter.cpp: Mirrored JTS interface - of CoordinateSequence, factory and default implementations. Added - DefaultCoordinateSequenceFactory::instance() function. git-svn-id: http://svn.osgeo.org/geos/trunk@452 + of CoordinateSequence, factory and default implementations. Added + DefaultCoordinateSequenceFactory::instance() function. git-svn-id: + http://svn.osgeo.org/geos/trunk@452 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-07 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@451 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@451 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-07 Sandro Santilli * source/algorithm/NotRepresentableException.cpp, source/headers/geos/geosAlgorithm.h, source/headers/geos/io.h, - source/headers/geos/util.h: Adjusted exceptions documentation. git-svn-id: http://svn.osgeo.org/geos/trunk@450 + source/headers/geos/util.h: Adjusted exceptions documentation. + git-svn-id: http://svn.osgeo.org/geos/trunk@450 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-07 Sandro Santilli @@ -28099,16 +34560,18 @@ source/headers/geos/geosAlgorithm.h, source/headers/geos/io.h, source/io/WKTReader.cpp, source/io/WKTWriter.cpp, source/test/XMLTester.cpp: Dropped WKTWriter::stringOfChars - (implemented by std::string). Dropped WKTWriter default constructor - (internally created GeometryFactory). Updated XMLTester to respect - the changes. Main documentation page made nicer. git-svn-id: http://svn.osgeo.org/geos/trunk@449 + (implemented by std::string). Dropped WKTWriter default constructor + (internally created GeometryFactory). Updated XMLTester to respect + the changes. Main documentation page made nicer. git-svn-id: + http://svn.osgeo.org/geos/trunk@449 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-07 Sandro Santilli * TODO, source/operation/buffer/BufferSubgraph.cpp: Removed note - about required speedup in BufferSubgraph. I've made tests with - 'sets' and there is actually a big slow down.. git-svn-id: http://svn.osgeo.org/geos/trunk@448 + about required speedup in BufferSubgraph. I've made tests with + 'sets' and there is actually a big slow down.. git-svn-id: + http://svn.osgeo.org/geos/trunk@448 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-06 Sandro Santilli @@ -28124,20 +34587,23 @@ deprecated Geometry constructors based on PrecisionModel and SRID specification. Removed SimpleGeometryPrecisionReducer capability of changing Geometry's factory. Reverted Geometry::factory member to be - a reference to external factory. git-svn-id: http://svn.osgeo.org/geos/trunk@447 + a reference to external factory. git-svn-id: + http://svn.osgeo.org/geos/trunk@447 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-05 Sandro Santilli * source/geom/Geometry.cpp, source/geom/GeometryFactory.cpp, source/headers/geos/geom.h: Added - GeometryFactory::destroyGeometry(Geometry *) git-svn-id: http://svn.osgeo.org/geos/trunk@446 + GeometryFactory::destroyGeometry(Geometry *) git-svn-id: + http://svn.osgeo.org/geos/trunk@446 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-05 Sandro Santilli * TODO, source/geom/Geometry.cpp, source/headers/geos/geom.h: - Documentation again. git-svn-id: http://svn.osgeo.org/geos/trunk@445 + Documentation again. git-svn-id: + http://svn.osgeo.org/geos/trunk@445 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-05 Sandro Santilli @@ -28145,12 +34611,14 @@ * NEWS, source/geom/CoordinateList.cpp, source/geom/GeometryFactory.cpp, source/geom/LineString.cpp, source/geom/PrecisionModel.cpp, source/headers/geos/geom.h, - source/headers/geos/util.h: More documentation cleanups. git-svn-id: http://svn.osgeo.org/geos/trunk@444 + source/headers/geos/util.h: More documentation cleanups. + git-svn-id: http://svn.osgeo.org/geos/trunk@444 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-05 Sandro Santilli - * doc/README: initial import git-svn-id: http://svn.osgeo.org/geos/trunk@443 + * doc/README: initial import git-svn-id: + http://svn.osgeo.org/geos/trunk@443 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-05 Sandro Santilli @@ -28164,16 +34632,18 @@ source/geom/Polygon.cpp, source/headers/geos.h, source/headers/geos/geom.h, source/headers/geos/util.h, source/io/WKTReader.cpp: deep-dopy construction taken out of - Geometry and implemented only in GeometryFactory. Deep-copy - geometry construction takes care of cleaning up copies on exception. + Geometry and implemented only in GeometryFactory. Deep-copy geometry + construction takes care of cleaning up copies on exception. Implemented clone() method for CoordinateList Changed createMultiPoint(CoordinateList) signature to reflect copy semantic - (by-ref instead of by-pointer). Cleaned up documentation. git-svn-id: http://svn.osgeo.org/geos/trunk@442 + (by-ref instead of by-pointer). Cleaned up documentation. + git-svn-id: http://svn.osgeo.org/geos/trunk@442 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-03 Sandro Santilli - * source/headers/geos/.cvsignore: more entries git-svn-id: http://svn.osgeo.org/geos/trunk@441 + * source/headers/geos/.cvsignore: more entries git-svn-id: + http://svn.osgeo.org/geos/trunk@441 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-03 Sandro Santilli @@ -28182,20 +34652,22 @@ source/geom/Geometry.cpp, source/geom/GeometryFactory.cpp, source/geom/LineString.cpp, source/geom/PrecisionModel.cpp, source/headers/geos.h, source/headers/geos/geom.h: Documentation - cleanups for DoxyGen. git-svn-id: http://svn.osgeo.org/geos/trunk@440 + cleanups for DoxyGen. git-svn-id: + http://svn.osgeo.org/geos/trunk@440 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-02 Sandro Santilli * doc/{geosDoxygen.conf => Doxyfile}, doc/Makefile.am: Doxygen - configuration file renamed. git-svn-id: http://svn.osgeo.org/geos/trunk@439 + configuration file renamed. git-svn-id: + http://svn.osgeo.org/geos/trunk@439 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-02 Sandro Santilli * source/geom/GeometryFactory.cpp, source/geom/Point.cpp, source/headers/geos/geom.h: Added deep-copy / take-ownerhship for - Point type. git-svn-id: http://svn.osgeo.org/geos/trunk@438 + Point type. git-svn-id: http://svn.osgeo.org/geos/trunk@438 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-02 Sandro Santilli @@ -28372,13 +34844,15 @@ source/util/IllegalArgumentException.cpp, source/util/UniqueCoordinateArrayFilter.cpp, source/util/UnsupportedOperationException.cpp: Fixed all #include - lines to reflect headers layout change. Added client application - build tips in README. git-svn-id: http://svn.osgeo.org/geos/trunk@437 + lines to reflect headers layout change. Added client application + build tips in README. git-svn-id: + http://svn.osgeo.org/geos/trunk@437 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-02 Sandro Santilli - * source/headers/geos_version.h.in: renamed to geos/version.h.in git-svn-id: http://svn.osgeo.org/geos/trunk@436 + * source/headers/geos_version.h.in: renamed to geos/version.h.in + git-svn-id: http://svn.osgeo.org/geos/trunk@436 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-02 Sandro Santilli @@ -28406,30 +34880,32 @@ source/headers/{ => geos}/spatialIndex.h, source/headers/{ => geos}/unload.h, source/headers/{ => geos}/util.h, source/headers/geos/version.h.in: Header files moved under geos/ - dir. git-svn-id: http://svn.osgeo.org/geos/trunk@435 + dir. git-svn-id: http://svn.osgeo.org/geos/trunk@435 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-01 Sandro Santilli * source/geom/Geometry.cpp: GeometryFactory argument in Geometry - constructor reverted to its copy-and-destroy semantic. git-svn-id: http://svn.osgeo.org/geos/trunk@434 + constructor reverted to its copy-and-destroy semantic. git-svn-id: + http://svn.osgeo.org/geos/trunk@434 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-01 Sandro Santilli * doc/.cvsignore, doc/Makefile.am: Added doxygen_docs generation - rule git-svn-id: http://svn.osgeo.org/geos/trunk@433 + rule git-svn-id: http://svn.osgeo.org/geos/trunk@433 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-01 Sandro Santilli - * doc/geosDoxygen.conf: re-generated with doxygen 1.2.15 git-svn-id: http://svn.osgeo.org/geos/trunk@432 + * doc/geosDoxygen.conf: re-generated with doxygen 1.2.15 + git-svn-id: http://svn.osgeo.org/geos/trunk@432 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-01 No Body * doc/geosDoxygen.conf: Added doxygen file for better doco - generation. git-svn-id: http://svn.osgeo.org/geos/trunk@431 + generation. git-svn-id: http://svn.osgeo.org/geos/trunk@431 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-07-01 Sandro Santilli @@ -28454,9 +34930,10 @@ source/operation/overlay/OverlayOp.cpp, source/operation/polygonize/polygonizeEdgeRing.cpp, source/util/GeometricShapeFactory.cpp: Geometry constructors come - now in two flavors: - deep-copy args (pass-by-reference) - take-ownership of args (pass-by-pointer) Same - functionality is available through GeometryFactory, including - buildGeometry(). git-svn-id: http://svn.osgeo.org/geos/trunk@430 + now in two flavors: - deep-copy args (pass-by-reference) + - take-ownership of args (pass-by-pointer) Same functionality is + available through GeometryFactory, including buildGeometry(). + git-svn-id: http://svn.osgeo.org/geos/trunk@430 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-30 Sandro Santilli @@ -28470,13 +34947,15 @@ source/operation/overlay/MinimalEdgeRing.cpp, source/operation/overlay/PointBuilder.cpp, source/operation/overlay/PolygonBuilder.cpp: Removed GeoemtryFactory - copy from geometry constructors. Enforced const-correctness on - GeometryFactory arguments. git-svn-id: http://svn.osgeo.org/geos/trunk@429 + copy from geometry constructors. Enforced const-correctness on + GeometryFactory arguments. git-svn-id: + http://svn.osgeo.org/geos/trunk@429 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-28 Sandro Santilli - * source/geom/Polygon.cpp: Constructors speedup. git-svn-id: http://svn.osgeo.org/geos/trunk@428 + * source/geom/Polygon.cpp: Constructors speedup. git-svn-id: + http://svn.osgeo.org/geos/trunk@428 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-28 Sandro Santilli @@ -28486,40 +34965,44 @@ source/geom/MultiPoint.cpp, source/geom/MultiPolygon.cpp, source/geom/Point.cpp, source/geom/Polygon.cpp, source/headers/geom.h: Moved getGeometryTypeId() definitions from - geom.h to each geometry module. Added holes argument check in - Polygon.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@427 + geom.h to each geometry module. Added holes argument check in + Polygon.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@427 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-25 Sandro Santilli - * tools/geos-config.in: fixed --includes git-svn-id: http://svn.osgeo.org/geos/trunk@426 + * tools/geos-config.in: fixed --includes git-svn-id: + http://svn.osgeo.org/geos/trunk@426 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-22 Sandro Santilli - * NEWS: Written down some news git-svn-id: http://svn.osgeo.org/geos/trunk@425 + * NEWS: Written down some news git-svn-id: + http://svn.osgeo.org/geos/trunk@425 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-22 Sandro Santilli * source/headers/Makefile.am, source/headers/geos.h: Added geos.h - file. git-svn-id: http://svn.osgeo.org/geos/trunk@424 + file. git-svn-id: http://svn.osgeo.org/geos/trunk@424 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-21 Sandro Santilli - * source/headers/.cvsignore: added geos_version.h git-svn-id: http://svn.osgeo.org/geos/trunk@423 + * source/headers/.cvsignore: added geos_version.h git-svn-id: + http://svn.osgeo.org/geos/trunk@423 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-21 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@422 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@422 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-21 Sandro Santilli * configure.in, source/headers/Makefile.am, - source/headers/geos_version.h.in: Added VERSION defines git-svn-id: http://svn.osgeo.org/geos/trunk@421 + source/headers/geos_version.h.in: Added VERSION defines + git-svn-id: http://svn.osgeo.org/geos/trunk@421 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-16 Sandro Santilli @@ -28530,27 +35013,30 @@ source/noding/MCQuadtreeNoder.cpp, source/noding/SegmentNodeList.cpp, source/noding/SegmentString.cpp, source/noding/nodingSegmentIntersector.cpp: Changed interface of - SegmentString, now copying CoordinateList argument. Fixed memory - leaks associated with this and MultiGeometry constructors. Other - associated fixes. git-svn-id: http://svn.osgeo.org/geos/trunk@420 + SegmentString, now copying CoordinateList argument. Fixed memory + leaks associated with this and MultiGeometry constructors. Other + associated fixes. git-svn-id: http://svn.osgeo.org/geos/trunk@420 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli * source/geom/GeometryFactory.cpp: fixed buildGeometry to always - return a newly allocated geometry git-svn-id: http://svn.osgeo.org/geos/trunk@419 + return a newly allocated geometry git-svn-id: + http://svn.osgeo.org/geos/trunk@419 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli * doc/example.cpp, source/geom/LineString.cpp, source/geom/MultiPolygon.cpp, source/geom/Polygon.cpp: updated to - respect deep-copy GeometryCollection interface git-svn-id: http://svn.osgeo.org/geos/trunk@418 + respect deep-copy GeometryCollection interface git-svn-id: + http://svn.osgeo.org/geos/trunk@418 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli - * source/io/WKTReader.cpp: fixed a typo git-svn-id: http://svn.osgeo.org/geos/trunk@417 + * source/io/WKTReader.cpp: fixed a typo git-svn-id: + http://svn.osgeo.org/geos/trunk@417 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli @@ -28558,7 +35044,8 @@ * source/geom/util/GeometryEditor.cpp, source/io/WKTReader.cpp, source/operation/buffer/BufferBuilder.cpp, source/operation/overlay/OverlayOp.cpp: updated to respect deep-copy - GeometryCollection interface git-svn-id: http://svn.osgeo.org/geos/trunk@416 + GeometryCollection interface git-svn-id: + http://svn.osgeo.org/geos/trunk@416 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli @@ -28566,268 +35053,296 @@ * source/geom/GeometryCollection.cpp, source/geom/GeometryFactory.cpp, source/headers/geom.h: GeometryCollections constructors make a deep copy of Geometry vector - argument. git-svn-id: http://svn.osgeo.org/geos/trunk@415 + argument. git-svn-id: http://svn.osgeo.org/geos/trunk@415 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Empty geometry creation call made using NULL instead of newly created empty vector (will be - faster) git-svn-id: http://svn.osgeo.org/geos/trunk@414 + faster) git-svn-id: http://svn.osgeo.org/geos/trunk@414 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli * tools/geos-config.in: Fixed a bug preventing geos-config from - giving correct version info git-svn-id: http://svn.osgeo.org/geos/trunk@413 + giving correct version info git-svn-id: + http://svn.osgeo.org/geos/trunk@413 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli * source/noding/SegmentNode.cpp, source/planargraph/planarDirectedEdge.cpp: Added missing - include git-svn-id: http://svn.osgeo.org/geos/trunk@412 + include git-svn-id: http://svn.osgeo.org/geos/trunk@412 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-06-15 Sandro Santilli - * TODO: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@411 + * TODO: Updated git-svn-id: http://svn.osgeo.org/geos/trunk@411 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-28 Yury Bychkov * source/geom/PrecisionModel.cpp: Changed rounding method to make - compilable with VC++ git-svn-id: http://svn.osgeo.org/geos/trunk@410 + compilable with VC++ git-svn-id: + http://svn.osgeo.org/geos/trunk@410 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-27 Sandro Santilli - * source/test/testLeaksBig.xml: added one buffer test git-svn-id: http://svn.osgeo.org/geos/trunk@409 + * source/test/testLeaksBig.xml: added one buffer test git-svn-id: + http://svn.osgeo.org/geos/trunk@409 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-27 Sandro Santilli * source/noding/SegmentNodeList.cpp, - source/noding/SegmentString.cpp: Memory leaks fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@408 + source/noding/SegmentString.cpp: Memory leaks fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@408 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-27 Sandro Santilli * source/noding/nodingSegmentIntersector.cpp: set (useless?) - recordIsolated member in constructor git-svn-id: http://svn.osgeo.org/geos/trunk@407 + recordIsolated member in constructor git-svn-id: + http://svn.osgeo.org/geos/trunk@407 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-27 Sandro Santilli * source/headers/indexChain.h: MonotoneChainOverlapAction::overlap(*) funx made virtual as they are - supposed to be. git-svn-id: http://svn.osgeo.org/geos/trunk@406 + supposed to be. git-svn-id: http://svn.osgeo.org/geos/trunk@406 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-27 Sandro Santilli - * source/test/XMLTester.cpp: Fixed a memleak in buffer test. git-svn-id: http://svn.osgeo.org/geos/trunk@405 + * source/test/XMLTester.cpp: Fixed a memleak in buffer test. + git-svn-id: http://svn.osgeo.org/geos/trunk@405 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-27 Sandro Santilli * source/headers/opBuffer.h, source/operation/buffer/OffsetCurveBuilder.cpp: Fixed a bug - preventing OffsetCurveBuilder point list from being reset. git-svn-id: http://svn.osgeo.org/geos/trunk@404 + preventing OffsetCurveBuilder point list from being reset. + git-svn-id: http://svn.osgeo.org/geos/trunk@404 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-26 Sandro Santilli * source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Changed abs() to - fabs() when working with doubles. Used dynamic_cast<> instead of - typeid() when JTS uses instanceof. git-svn-id: http://svn.osgeo.org/geos/trunk@403 + fabs() when working with doubles. Used dynamic_cast<> instead of + typeid() when JTS uses instanceof. git-svn-id: + http://svn.osgeo.org/geos/trunk@403 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-26 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Removed try/catch block - from ::buildSubgraphs git-svn-id: http://svn.osgeo.org/geos/trunk@402 + from ::buildSubgraphs git-svn-id: + http://svn.osgeo.org/geos/trunk@402 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-26 Sandro Santilli * source/headers/geomgraph.h: Added comments about OverlayNodeFactory() ownership in NodeMap and PlanarGraph - constuctors git-svn-id: http://svn.osgeo.org/geos/trunk@401 + constuctors git-svn-id: http://svn.osgeo.org/geos/trunk@401 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-26 Sandro Santilli * source/headers/opBuffer.h, source/operation/buffer/BufferBuilder.cpp: PlanarGraph made local to - ::buffer instead of Class private. git-svn-id: http://svn.osgeo.org/geos/trunk@400 + ::buffer instead of Class private. git-svn-id: + http://svn.osgeo.org/geos/trunk@400 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-21 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@399 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@399 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-21 Sandro Santilli * source/geom/Geometry.cpp: ::intersection missed to invalidate - geometryCollection inputs git-svn-id: http://svn.osgeo.org/geos/trunk@398 + geometryCollection inputs git-svn-id: + http://svn.osgeo.org/geos/trunk@398 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-21 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@397 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@397 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-21 Sandro Santilli * source/geom/PrecisionModel.cpp: ::makePrecise make use of - nearbyint() now, to be compatible with JTS git-svn-id: http://svn.osgeo.org/geos/trunk@396 + nearbyint() now, to be compatible with JTS git-svn-id: + http://svn.osgeo.org/geos/trunk@396 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-21 Sandro Santilli - * source/test/testLeaksBig.xml: first import git-svn-id: http://svn.osgeo.org/geos/trunk@395 + * source/test/testLeaksBig.xml: first import git-svn-id: + http://svn.osgeo.org/geos/trunk@395 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-20 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@394 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@394 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-19 Yury Bychkov * source/geom/PrecisionModel.cpp: Changed rounding method to make - compilable with VC++ git-svn-id: http://svn.osgeo.org/geos/trunk@393 + compilable with VC++ git-svn-id: + http://svn.osgeo.org/geos/trunk@393 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-19 Sandro Santilli * source/operation/buffer/OffsetCurveBuilder.cpp: Fixed bug in - ::addCircle git-svn-id: http://svn.osgeo.org/geos/trunk@392 + ::addCircle git-svn-id: http://svn.osgeo.org/geos/trunk@392 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-19 Sandro Santilli * source/geom/BasicCoordinateList.cpp, source/geom/PointCoordinateList.cpp, source/headers/geom.h: made - CoordinateList::toString() a const member function git-svn-id: http://svn.osgeo.org/geos/trunk@391 + CoordinateList::toString() a const member function git-svn-id: + http://svn.osgeo.org/geos/trunk@391 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-19 Sandro Santilli * source/operation/buffer/BufferOp.cpp: avoided assignment operator - calls for BufferBuilder git-svn-id: http://svn.osgeo.org/geos/trunk@390 + calls for BufferBuilder git-svn-id: + http://svn.osgeo.org/geos/trunk@390 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-19 Sandro Santilli * source/operation/buffer/BufferSubgraph.cpp: Removed all try/catch - blocks transforming stack allocated-vectors to auto-heap-allocations git-svn-id: http://svn.osgeo.org/geos/trunk@389 + blocks transforming stack allocated-vectors to auto-heap-allocations + git-svn-id: http://svn.osgeo.org/geos/trunk@389 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-19 Yury Bychkov * source/operation/buffer/OffsetCurveSetBuilder.cpp: Bugfix in - OffsetCurveSetBuilder::addPolygon (JTS 1.4.1) git-svn-id: http://svn.osgeo.org/geos/trunk@388 + OffsetCurveSetBuilder::addPolygon (JTS 1.4.1) git-svn-id: + http://svn.osgeo.org/geos/trunk@388 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-18 Sandro Santilli * source/test/XMLTester.cpp: Output made more neat (geometry B is - not printed if not existent). Added support for buffer tests. git-svn-id: http://svn.osgeo.org/geos/trunk@387 + not printed if not existent). Added support for buffer tests. + git-svn-id: http://svn.osgeo.org/geos/trunk@387 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-18 Sandro Santilli * source/geom/CoordinateList.cpp: made ::scroll handle already - scrolled vect and more readable git-svn-id: http://svn.osgeo.org/geos/trunk@386 + scrolled vect and more readable git-svn-id: + http://svn.osgeo.org/geos/trunk@386 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-18 Yury Bychkov * source/headers/opValid.h, source/operation/valid/IsValidOp.cpp: IsValidOp::checkShellNotNested() bugfix from JTS 1.4.1 (not released - yet) has been added. git-svn-id: http://svn.osgeo.org/geos/trunk@385 + yet) has been added. git-svn-id: + http://svn.osgeo.org/geos/trunk@385 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Yury Bychkov * source/geom/GeometryCollection.cpp, source/headers/geom.h: JavaDoc - updated git-svn-id: http://svn.osgeo.org/geos/trunk@384 + updated git-svn-id: http://svn.osgeo.org/geos/trunk@384 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Yury Bychkov * source/geom/BasicCoordinateList.cpp, source/geom/PointCoordinateList.cpp: toString() performance - enhancement git-svn-id: http://svn.osgeo.org/geos/trunk@383 + enhancement git-svn-id: http://svn.osgeo.org/geos/trunk@383 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Yury Bychkov * source/geom/CoordinateList.cpp, source/headers/geom.h: JavaDoc - updated git-svn-id: http://svn.osgeo.org/geos/trunk@382 + updated git-svn-id: http://svn.osgeo.org/geos/trunk@382 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli - * source/io/markup/MarkupSTL.cpp: Added tab in list of blank chars git-svn-id: http://svn.osgeo.org/geos/trunk@381 + * source/io/markup/MarkupSTL.cpp: Added tab in list of blank chars + git-svn-id: http://svn.osgeo.org/geos/trunk@381 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/test/XMLTester.cpp: Expected result string trimmed for - blanks git-svn-id: http://svn.osgeo.org/geos/trunk@380 + blanks git-svn-id: http://svn.osgeo.org/geos/trunk@380 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/io/StringTokenizer.cpp: Added carriage returns and tabs in - set of blanks chars git-svn-id: http://svn.osgeo.org/geos/trunk@379 + set of blanks chars git-svn-id: + http://svn.osgeo.org/geos/trunk@379 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/io/ParseException.cpp: ParseException message made more - readable git-svn-id: http://svn.osgeo.org/geos/trunk@378 + readable git-svn-id: http://svn.osgeo.org/geos/trunk@378 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/geom/PrecisionModel.cpp: Fixed bogus FIXED coordinate - rounding git-svn-id: http://svn.osgeo.org/geos/trunk@377 + rounding git-svn-id: http://svn.osgeo.org/geos/trunk@377 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: reduced stack allocations, - try/catch blocks in ::overlayOp git-svn-id: http://svn.osgeo.org/geos/trunk@376 + try/catch blocks in ::overlayOp git-svn-id: + http://svn.osgeo.org/geos/trunk@376 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/algorithm/CentroidArea.cpp: CentroidArea::add(const - Geometry *geom) uses dynamic_cast git-svn-id: http://svn.osgeo.org/geos/trunk@375 + Geometry *geom) uses dynamic_cast git-svn-id: + http://svn.osgeo.org/geos/trunk@375 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-17 Sandro Santilli * source/geom/Geometry.cpp: ::getCeontroid(): reduced dynamic - allocations, added missing check for isEmpty git-svn-id: http://svn.osgeo.org/geos/trunk@374 + allocations, added missing check for isEmpty git-svn-id: + http://svn.osgeo.org/geos/trunk@374 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli * source/operation/distance/ConnectedElementLocationFilter.cpp: - Added LinearRing support git-svn-id: http://svn.osgeo.org/geos/trunk@373 + Added LinearRing support git-svn-id: + http://svn.osgeo.org/geos/trunk@373 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli * source/headers/geomUtil.h: Fixed bogus inheritance of - LinearComponentExtracter git-svn-id: http://svn.osgeo.org/geos/trunk@372 + LinearComponentExtracter git-svn-id: + http://svn.osgeo.org/geos/trunk@372 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli @@ -28839,60 +35354,68 @@ source/headers/opDistance.h, source/operation/distance/ConnectedElementLocationFilter.cpp, source/operation/distance/DistanceOp.cpp: DistanceOp bug removed, - cascading errors fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@371 + cascading errors fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@371 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli - * source/geom/Geometry.cpp, source/headers/geom.h: const correctness git-svn-id: http://svn.osgeo.org/geos/trunk@370 + * source/geom/Geometry.cpp, source/headers/geom.h: const correctness + git-svn-id: http://svn.osgeo.org/geos/trunk@370 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli - * source/io/WKTReader.cpp: avoided leaks on malformed LinearRing git-svn-id: http://svn.osgeo.org/geos/trunk@369 + * source/io/WKTReader.cpp: avoided leaks on malformed LinearRing + git-svn-id: http://svn.osgeo.org/geos/trunk@369 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli * source/geom/util/LinearComponentExtracter.cpp, source/geom/util/PointExtracter.cpp, - source/geom/util/PolygonExtracter.cpp: Mem leaks fixed git-svn-id: http://svn.osgeo.org/geos/trunk@368 + source/geom/util/PolygonExtracter.cpp: Mem leaks fixed git-svn-id: + http://svn.osgeo.org/geos/trunk@368 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-14 Sandro Santilli * source/test/XMLTester.cpp: Changed the algorythm for finding precisionModel type (current way did not work): now if you specify a - scale precisionModel will be FIXED, otherwise it will be FLOATING. git-svn-id: http://svn.osgeo.org/geos/trunk@367 + scale precisionModel will be FIXED, otherwise it will be FLOATING. + git-svn-id: http://svn.osgeo.org/geos/trunk@367 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli * source/io/StringTokenizer.cpp: fixed peekNextToken to avoid - incrementing string pointer git-svn-id: http://svn.osgeo.org/geos/trunk@366 + incrementing string pointer git-svn-id: + http://svn.osgeo.org/geos/trunk@366 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli - * source/index/bintree/Bintree.cpp: Fixed segfault in ::insert git-svn-id: http://svn.osgeo.org/geos/trunk@365 + * source/index/bintree/Bintree.cpp: Fixed segfault in ::insert + git-svn-id: http://svn.osgeo.org/geos/trunk@365 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli * source/algorithm/InteriorPointArea.cpp: Fixed segfault in - destructor git-svn-id: http://svn.osgeo.org/geos/trunk@364 + destructor git-svn-id: http://svn.osgeo.org/geos/trunk@364 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli * source/io/WKTReader.cpp, source/test/XMLTester.cpp: Memory leaks - fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@363 + fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@363 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli * source/geom/MultiLineString.cpp: leak removed in - MultiLineString::getBoundary() git-svn-id: http://svn.osgeo.org/geos/trunk@362 + MultiLineString::getBoundary() git-svn-id: + http://svn.osgeo.org/geos/trunk@362 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli @@ -28902,7 +35425,8 @@ source/geom/MultiLineString.cpp, source/geom/MultiPoint.cpp, source/geom/MultiPolygon.cpp, source/headers/geom.h: Some const correctness added. Fixed bug in GeometryFactory::createMultiPoint to - handle NULL CoordinateList. git-svn-id: http://svn.osgeo.org/geos/trunk@361 + handle NULL CoordinateList. git-svn-id: + http://svn.osgeo.org/geos/trunk@361 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-07 Sandro Santilli @@ -28910,10 +35434,11 @@ * source/geom/Makefile.am, source/headers/noding.h, source/headers/opBuffer.h, source/noding/SegmentString.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Added missing - EdgeNodingValidator to build scripts. Changed SegmentString + EdgeNodingValidator to build scripts. Changed SegmentString constructor back to its original form (takes const void *), implemented local tracking of "contexts" in caller objects for - proper destruction. git-svn-id: http://svn.osgeo.org/geos/trunk@360 + proper destruction. git-svn-id: + http://svn.osgeo.org/geos/trunk@360 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-06 Sandro Santilli @@ -28922,7 +35447,8 @@ source/index/bintree/Bintree.cpp, source/index/quadtree/Quadtree.cpp: Kept track of newly allocated objects by ensureExtent for Bintree and Quadtree, deleted at - destruction time. doc/example.cpp runs with no leaks. git-svn-id: http://svn.osgeo.org/geos/trunk@359 + destruction time. doc/example.cpp runs with no leaks. git-svn-id: + http://svn.osgeo.org/geos/trunk@359 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-06 Sandro Santilli @@ -28931,8 +35457,9 @@ source/noding/SegmentString.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: SegmentNodeList keeps track of created splitEdges for later destruction. - SegmentString constructor copies given Label. Buffer operation does - no more leaks for doc/example.cpp git-svn-id: http://svn.osgeo.org/geos/trunk@358 + SegmentString constructor copies given Label. Buffer operation does + no more leaks for doc/example.cpp git-svn-id: + http://svn.osgeo.org/geos/trunk@358 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-06 Sandro Santilli @@ -28941,20 +35468,23 @@ source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/ItemBoundable.cpp, source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: - Boundable destructor made virtual. Added vector + Boundable destructor made virtual. Added vector *nodes member in AbstractSTRTree, used to keep track of created node - to cleanly delete them at destruction time. git-svn-id: http://svn.osgeo.org/geos/trunk@357 + to cleanly delete them at destruction time. git-svn-id: + http://svn.osgeo.org/geos/trunk@357 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-06 Sandro Santilli * source/index/strtree/STRtree.cpp: leak removed from - createParentBoundablesFromVerticalSlices git-svn-id: http://svn.osgeo.org/geos/trunk@356 + createParentBoundablesFromVerticalSlices git-svn-id: + http://svn.osgeo.org/geos/trunk@356 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-06 Sandro Santilli - * source/index/strtree/AbstractSTRtree.cpp: memory leak fixed git-svn-id: http://svn.osgeo.org/geos/trunk@355 + * source/index/strtree/AbstractSTRtree.cpp: memory leak fixed + git-svn-id: http://svn.osgeo.org/geos/trunk@355 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli @@ -28963,40 +35493,44 @@ source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: AbstractNode destructor made virtual. AbstractNode::bounds made - protected. SIRAbstractNode and STRAbstractNode destructors added to + protected. SIRAbstractNode and STRAbstractNode destructors added to get rid of AbstractNode::bounds in the right way (is a void * casted - to appropriate Class in the subClasses). git-svn-id: http://svn.osgeo.org/geos/trunk@354 + to appropriate Class in the subClasses). git-svn-id: + http://svn.osgeo.org/geos/trunk@354 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/headers/opBuffer.h, source/operation/buffer/BufferBuilder.cpp: Rewritten static cga - allocation to avoid copy constructor calls. git-svn-id: http://svn.osgeo.org/geos/trunk@353 + allocation to avoid copy constructor calls. git-svn-id: + http://svn.osgeo.org/geos/trunk@353 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/geom/Geometry.cpp: avoided copy constructor in - Geometry::geometryChangedFilter initializzazion git-svn-id: http://svn.osgeo.org/geos/trunk@352 + Geometry::geometryChangedFilter initializzazion git-svn-id: + http://svn.osgeo.org/geos/trunk@352 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/noding/MCQuadtreeNoder.cpp: reduced explicit local objects - allocation git-svn-id: http://svn.osgeo.org/geos/trunk@351 + allocation git-svn-id: http://svn.osgeo.org/geos/trunk@351 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: Avoid use of copy - c'tors on local objects initializzation git-svn-id: http://svn.osgeo.org/geos/trunk@350 + c'tors on local objects initializzation git-svn-id: + http://svn.osgeo.org/geos/trunk@350 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/noding/MCQuadtreeNoder.cpp: Fixed big leak in - intersectChains() git-svn-id: http://svn.osgeo.org/geos/trunk@349 + intersectChains() git-svn-id: http://svn.osgeo.org/geos/trunk@349 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli @@ -29005,19 +35539,21 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Leaks fixed, - explicit allocations/deallocations reduced. git-svn-id: http://svn.osgeo.org/geos/trunk@348 + explicit allocations/deallocations reduced. git-svn-id: + http://svn.osgeo.org/geos/trunk@348 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/operation/buffer/SubgraphDepthLocater.cpp: memleak fixed in - ::getDepth git-svn-id: http://svn.osgeo.org/geos/trunk@347 + ::getDepth git-svn-id: http://svn.osgeo.org/geos/trunk@347 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/geom/util/GeometryEditor.cpp: Memory leak plugged in - editGeometryCollection git-svn-id: http://svn.osgeo.org/geos/trunk@346 + editGeometryCollection git-svn-id: + http://svn.osgeo.org/geos/trunk@346 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli @@ -29025,23 +35561,26 @@ * source/geom/Geometry.cpp, source/headers/geom.h, source/headers/opBuffer.h, source/io/Unload.cpp, source/operation/buffer/BufferBuilder.cpp: Removed some private - static heap explicit allocation, less cleanup done by the unloader. git-svn-id: http://svn.osgeo.org/geos/trunk@345 + static heap explicit allocation, less cleanup done by the unloader. + git-svn-id: http://svn.osgeo.org/geos/trunk@345 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@344 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@344 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli - * source/operation/buffer/BufferOp.cpp: Removed dynamic allocations. git-svn-id: http://svn.osgeo.org/geos/trunk@343 + * source/operation/buffer/BufferOp.cpp: Removed dynamic allocations. + git-svn-id: http://svn.osgeo.org/geos/trunk@343 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-05 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Reduced dynamic allocations - in bufferOriginalPrecision and bufferFixedPrecision. git-svn-id: http://svn.osgeo.org/geos/trunk@342 + in bufferOriginalPrecision and bufferFixedPrecision. git-svn-id: + http://svn.osgeo.org/geos/trunk@342 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli @@ -29053,14 +35592,16 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferSubgraph.cpp, source/operation/buffer/SubgraphDepthLocater.cpp: leaks fixed, - exception specification omitted. git-svn-id: http://svn.osgeo.org/geos/trunk@341 + exception specification omitted. git-svn-id: + http://svn.osgeo.org/geos/trunk@341 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli * source/geom/util/LinearComponentExtracter.cpp, source/geom/util/PointExtracter.cpp, - source/noding/SegmentNodeList.cpp: Some more leaks fixed git-svn-id: http://svn.osgeo.org/geos/trunk@340 + source/noding/SegmentNodeList.cpp: Some more leaks fixed + git-svn-id: http://svn.osgeo.org/geos/trunk@340 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli @@ -29072,7 +35613,7 @@ source/operation/buffer/BufferSubgraph.cpp, source/precision/CommonBitsOp.cpp, source/precision/SimpleGeometryPrecisionReducer.cpp: leaks on - exception fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@339 + exception fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@339 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli @@ -29082,21 +35623,24 @@ source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: Added sortBoundables(const vector) pure virtual in AbstractSTRtree, implemented in SIRtree and STRtree. Comparator funx - made static in STRtree.cpp and SIRtree.cpp. git-svn-id: http://svn.osgeo.org/geos/trunk@338 + made static in STRtree.cpp and SIRtree.cpp. git-svn-id: + http://svn.osgeo.org/geos/trunk@338 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli * source/headers/indexStrtree.h, source/index/strtree/AbstractSTRtree.cpp: Fixed comparator function - to express StrictWeakOrdering. git-svn-id: http://svn.osgeo.org/geos/trunk@337 + to express StrictWeakOrdering. git-svn-id: + http://svn.osgeo.org/geos/trunk@337 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli * source/noding/Noder.cpp, source/noding/SegmentNode.cpp, source/noding/nodingSegmentIntersector.cpp, - source/planargraph/planarNodeMap.cpp: newline added at end of file git-svn-id: http://svn.osgeo.org/geos/trunk@336 + source/planargraph/planarNodeMap.cpp: newline added at end of file + git-svn-id: http://svn.osgeo.org/geos/trunk@336 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-05-03 Sandro Santilli @@ -29110,7 +35654,8 @@ source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PolygonBuilder.cpp, source/planargraph/planarDirectedEdge.cpp: Exception specification - considered harmful - left as comment. git-svn-id: http://svn.osgeo.org/geos/trunk@335 + considered harmful - left as comment. git-svn-id: + http://svn.osgeo.org/geos/trunk@335 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-30 Sandro Santilli @@ -29118,8 +35663,8 @@ * source/geom/Geometry.cpp, source/headers/noding.h, source/headers/opBuffer.h, source/noding/IteratedNoder.cpp, source/operation/buffer/BufferBuilder.cpp: Enlarged exception - specifications to allow for AssertionFailedException. Added missing - initializers. git-svn-id: http://svn.osgeo.org/geos/trunk@334 + specifications to allow for AssertionFailedException. Added missing + initializers. git-svn-id: http://svn.osgeo.org/geos/trunk@334 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-28 Sandro Santilli @@ -29129,18 +35674,21 @@ instanceof. Previous typeid(*) use missed to catch an STRAbstractNode as a class derived from AbstractNode. Still have to check if this is the correct semantic with Martin, but at least lots - of SIGABORT are no more raised. git-svn-id: http://svn.osgeo.org/geos/trunk@333 + of SIGABORT are no more raised. git-svn-id: + http://svn.osgeo.org/geos/trunk@333 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-26 Paul Ramsey - * configure.in: Bump version number to 1.4 to indicate new changes. git-svn-id: http://svn.osgeo.org/geos/trunk@332 + * configure.in: Bump version number to 1.4 to indicate new changes. + git-svn-id: http://svn.osgeo.org/geos/trunk@332 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-26 Sandro Santilli * source/index/strtree/AbstractSTRtree.cpp, - source/index/strtree/STRtree.cpp: Some leaks fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@331 + source/index/strtree/STRtree.cpp: Some leaks fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@331 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-23 Sandro Santilli @@ -29148,12 +35696,14 @@ * source/headers/noding.h, source/headers/opBuffer.h, source/noding/IteratedNoder.cpp, source/operation/buffer/BufferBuilder.cpp, - source/operation/buffer/BufferOp.cpp: const-correctness changes git-svn-id: http://svn.osgeo.org/geos/trunk@330 + source/operation/buffer/BufferOp.cpp: const-correctness changes + git-svn-id: http://svn.osgeo.org/geos/trunk@330 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-21 Sandro Santilli - * source/geomgraph/DirectedEdgeStar.cpp: Fixed bug in computeDepths git-svn-id: http://svn.osgeo.org/geos/trunk@329 + * source/geomgraph/DirectedEdgeStar.cpp: Fixed bug in computeDepths + git-svn-id: http://svn.osgeo.org/geos/trunk@329 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-20 Sandro Santilli @@ -29162,13 +35712,15 @@ source/algorithm/MinimumDiameter.cpp, source/geom/LineString.cpp, source/geom/LinearRing.cpp, source/geom/Polygon.cpp, source/operation/buffer/BufferOp.cpp, - source/operation/overlay/OverlayOp.cpp: More leaks removed. git-svn-id: http://svn.osgeo.org/geos/trunk@328 + source/operation/overlay/OverlayOp.cpp: More leaks removed. + git-svn-id: http://svn.osgeo.org/geos/trunk@328 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-20 Sandro Santilli * source/algorithm/MinimumDiameter.cpp, - source/headers/geosAlgorithm.h: MinimumDiameter leaks plugged. git-svn-id: http://svn.osgeo.org/geos/trunk@327 + source/headers/geosAlgorithm.h: MinimumDiameter leaks plugged. + git-svn-id: http://svn.osgeo.org/geos/trunk@327 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-20 Sandro Santilli @@ -29177,7 +35729,7 @@ source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: More memory leaks - removed. git-svn-id: http://svn.osgeo.org/geos/trunk@326 + removed. git-svn-id: http://svn.osgeo.org/geos/trunk@326 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-20 Sandro Santilli @@ -29187,7 +35739,7 @@ source/operation/buffer/BufferOp.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp, source/precision/SimpleGeometryPrecisionReducer.cpp: Memory leaks - removed. git-svn-id: http://svn.osgeo.org/geos/trunk@325 + removed. git-svn-id: http://svn.osgeo.org/geos/trunk@325 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-20 Sandro Santilli @@ -29200,8 +35752,9 @@ source/geom/util/GeometryEditor.cpp, source/headers/geom.h, source/headers/geomUtil.h, source/headers/precision.h, source/precision/SimpleGeometryPrecisionReducer.cpp: GeometryFactory - and Geometry const correctness. Memory leaks removed from - SimpleGeometryPrecisionReducer and GeometryFactory. git-svn-id: http://svn.osgeo.org/geos/trunk@324 + and Geometry const correctness. Memory leaks removed from + SimpleGeometryPrecisionReducer and GeometryFactory. git-svn-id: + http://svn.osgeo.org/geos/trunk@324 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-19 Sandro Santilli @@ -29210,7 +35763,8 @@ source/noding/MCQuadtreeNoder.cpp, source/noding/SegmentString.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Some memory leaks - plugged in noding algorithms. git-svn-id: http://svn.osgeo.org/geos/trunk@323 + plugged in noding algorithms. git-svn-id: + http://svn.osgeo.org/geos/trunk@323 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-19 Sandro Santilli @@ -29222,8 +35776,9 @@ source/operation/buffer/BufferOp.cpp, source/operation/buffer/OffsetCurveBuilder.cpp, source/operation/buffer/OffsetCurveSetBuilder.cpp: Added missing - virtual destructor in SpatialIndex class. Memory leaks fixes. Const - and throw specifications added. git-svn-id: http://svn.osgeo.org/geos/trunk@322 + virtual destructor in SpatialIndex class. Memory leaks fixes. Const + and throw specifications added. git-svn-id: + http://svn.osgeo.org/geos/trunk@322 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-19 Sandro Santilli @@ -29232,22 +35787,26 @@ source/noding/IteratedNoder.cpp, source/operation/buffer/BufferBuilder.cpp, source/operation/buffer/BufferOp.cpp: Memory leaks fixes. Throw - specifications added. git-svn-id: http://svn.osgeo.org/geos/trunk@321 + specifications added. git-svn-id: + http://svn.osgeo.org/geos/trunk@321 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli - * source/geom/Point.cpp: Memory leak fix in copy constructor git-svn-id: http://svn.osgeo.org/geos/trunk@320 + * source/geom/Point.cpp: Memory leak fix in copy constructor + git-svn-id: http://svn.osgeo.org/geos/trunk@320 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli - * source/operation/buffer/BufferOp.cpp: Leaks fixes git-svn-id: http://svn.osgeo.org/geos/trunk@319 + * source/operation/buffer/BufferOp.cpp: Leaks fixes git-svn-id: + http://svn.osgeo.org/geos/trunk@319 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli - * source/operation/buffer/OffsetCurveBuilder.cpp: More leaks fixed git-svn-id: http://svn.osgeo.org/geos/trunk@318 + * source/operation/buffer/OffsetCurveBuilder.cpp: More leaks fixed + git-svn-id: http://svn.osgeo.org/geos/trunk@318 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli @@ -29255,71 +35814,77 @@ * source/noding/IteratedNoder.cpp, source/noding/MCQuadtreeNoder.cpp, source/operation/buffer/BufferSubgraph.cpp, - source/operation/buffer/OffsetCurveBuilder.cpp: Leak fixes. git-svn-id: http://svn.osgeo.org/geos/trunk@317 + source/operation/buffer/OffsetCurveBuilder.cpp: Leak fixes. + git-svn-id: http://svn.osgeo.org/geos/trunk@317 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Memory leaks plugged on - exception thrown git-svn-id: http://svn.osgeo.org/geos/trunk@316 + exception thrown git-svn-id: http://svn.osgeo.org/geos/trunk@316 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli - * source/operation/buffer/BufferOp.cpp: Memory leak fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@315 + * source/operation/buffer/BufferOp.cpp: Memory leak fixed. + git-svn-id: http://svn.osgeo.org/geos/trunk@315 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli * source/algorithm/CGAlgorithms.cpp: Removed memory leak in - CGAlgorithms::isOnline git-svn-id: http://svn.osgeo.org/geos/trunk@314 + CGAlgorithms::isOnline git-svn-id: + http://svn.osgeo.org/geos/trunk@314 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli * source/headers/planargraph.h, source/io/Unload.cpp: Unload::Release final delete (static heap allocations should be gone - now) git-svn-id: http://svn.osgeo.org/geos/trunk@313 + now) git-svn-id: http://svn.osgeo.org/geos/trunk@313 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli * source/geom/GeometryFactory.cpp, source/geom/Point.cpp, source/headers/geom.h: Memory leaks fixed and const correctness - applied for Point class. git-svn-id: http://svn.osgeo.org/geos/trunk@312 + applied for Point class. git-svn-id: + http://svn.osgeo.org/geos/trunk@312 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-16 Sandro Santilli * source/geom/PrecisionModel.cpp, source/headers/geom.h, source/io/Unload.cpp: PrecisionModel::Type made an enum instead of a - Type. git-svn-id: http://svn.osgeo.org/geos/trunk@311 + Type. git-svn-id: http://svn.osgeo.org/geos/trunk@311 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-15 Sandro Santilli * source/io/Unload.cpp: Commented out deletion that seems to cause - segfaults git-svn-id: http://svn.osgeo.org/geos/trunk@310 + segfaults git-svn-id: http://svn.osgeo.org/geos/trunk@310 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-15 Sandro Santilli * source/headers/geom.h, source/headers/opBuffer.h, - source/io/Unload.cpp: Added new cleanup to Unload::Release git-svn-id: http://svn.osgeo.org/geos/trunk@309 + source/io/Unload.cpp: Added new cleanup to Unload::Release + git-svn-id: http://svn.osgeo.org/geos/trunk@309 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geom.h: All geometries returned by {from,to}InternalGeometry calls are now deleted after - use (unless NOT new). Some 'commented' throw specifications in - geom.h git-svn-id: http://svn.osgeo.org/geos/trunk@308 + use (unless NOT new). Some 'commented' throw specifications in + geom.h git-svn-id: http://svn.osgeo.org/geos/trunk@308 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/operation/overlay/OverlayOp.cpp: Removed deletion of - externally pointed GeometryFactory from OverlayOp destructor git-svn-id: http://svn.osgeo.org/geos/trunk@307 + externally pointed GeometryFactory from OverlayOp destructor + git-svn-id: http://svn.osgeo.org/geos/trunk@307 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli @@ -29327,50 +35892,55 @@ * source/geom/GeometryCollection.cpp, source/geom/GeometryFactory.cpp, source/index/strtree/AbstractSTRtree.cpp: shouldNeverReachHere - exceptions made more verbose git-svn-id: http://svn.osgeo.org/geos/trunk@306 + exceptions made more verbose git-svn-id: + http://svn.osgeo.org/geos/trunk@306 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/geom/util/GeometryEditor.cpp: Added support for LinearRing - in GeometryEditor git-svn-id: http://svn.osgeo.org/geos/trunk@305 + in GeometryEditor git-svn-id: http://svn.osgeo.org/geos/trunk@305 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/operation/distance/DistanceOp.cpp: Uncommented - initializzazion and destruction of DistanceOp::minDistanceLocation git-svn-id: http://svn.osgeo.org/geos/trunk@304 + initializzazion and destruction of DistanceOp::minDistanceLocation + git-svn-id: http://svn.osgeo.org/geos/trunk@304 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/geom/PrecisionModel.cpp: PrecisionModel(double newScale) - missed to set the scale git-svn-id: http://svn.osgeo.org/geos/trunk@303 + missed to set the scale git-svn-id: + http://svn.osgeo.org/geos/trunk@303 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/headers/noding.h, source/noding/IteratedNoder.cpp: Private iterated noding funx now use int* instead of vector to know when - it's time to stop. git-svn-id: http://svn.osgeo.org/geos/trunk@302 + it's time to stop. git-svn-id: http://svn.osgeo.org/geos/trunk@302 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/operation/buffer/BufferOp.cpp: endCapStyle was never set in - BufferOp contructor git-svn-id: http://svn.osgeo.org/geos/trunk@301 + BufferOp contructor git-svn-id: + http://svn.osgeo.org/geos/trunk@301 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/operation/buffer/BufferBuilder.cpp: BufferBuilder - constructor missed to initialize workingPrecisionModel git-svn-id: http://svn.osgeo.org/geos/trunk@300 + constructor missed to initialize workingPrecisionModel git-svn-id: + http://svn.osgeo.org/geos/trunk@300 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli * source/operation/buffer/BufferOp.cpp: BufferOp constructor missed - to set argGeom git-svn-id: http://svn.osgeo.org/geos/trunk@299 + to set argGeom git-svn-id: http://svn.osgeo.org/geos/trunk@299 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Sandro Santilli @@ -29378,7 +35948,8 @@ * source/geom/Geometry.cpp, source/geom/GeometryFactory.cpp, source/headers/geom.h: Fixed GeometryFactory constructors to copy given PrecisionModel. Added GeometryFactory copy constructor. Fixed - Geometry constructors to copy GeometryFactory. git-svn-id: http://svn.osgeo.org/geos/trunk@298 + Geometry constructors to copy GeometryFactory. git-svn-id: + http://svn.osgeo.org/geos/trunk@298 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-14 Yury Bychkov @@ -29392,49 +35963,57 @@ source/geomgraph/index/SimpleSweepLineIntersector.cpp, source/geomgraph/index/SweepLineEvent.cpp, source/geomgraph/index/SweepLineSegment.cpp: "geomgraph/index" - committ problem fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@297 + committ problem fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@297 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/geom/Point.cpp: Removed faulty assert in constructor git-svn-id: http://svn.osgeo.org/geos/trunk@296 + * source/geom/Point.cpp: Removed faulty assert in constructor + git-svn-id: http://svn.osgeo.org/geos/trunk@296 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/geom/Makefile.am: Added more source files git-svn-id: http://svn.osgeo.org/geos/trunk@295 + * source/geom/Makefile.am: Added more source files git-svn-id: + http://svn.osgeo.org/geos/trunk@295 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * doc/example.cpp: Removed spurious line git-svn-id: http://svn.osgeo.org/geos/trunk@294 + * doc/example.cpp: Removed spurious line git-svn-id: + http://svn.osgeo.org/geos/trunk@294 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/headers/precision.h: prototype mismatch fixed git-svn-id: http://svn.osgeo.org/geos/trunk@293 + * source/headers/precision.h: prototype mismatch fixed git-svn-id: + http://svn.osgeo.org/geos/trunk@293 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli * source/headers/opDistance.h, source/operation/distance/GeometryLocation.cpp: GeometryLocation - const-correctness. git-svn-id: http://svn.osgeo.org/geos/trunk@292 + const-correctness. git-svn-id: http://svn.osgeo.org/geos/trunk@292 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/headers/Makefile.am: Added lost opDistance.h git-svn-id: http://svn.osgeo.org/geos/trunk@291 + * source/headers/Makefile.am: Added lost opDistance.h git-svn-id: + http://svn.osgeo.org/geos/trunk@291 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/headers/Makefile.am: Added new header files git-svn-id: http://svn.osgeo.org/geos/trunk@290 + * source/headers/Makefile.am: Added new header files git-svn-id: + http://svn.osgeo.org/geos/trunk@290 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/geom/Makefile.am: Added new source files git-svn-id: http://svn.osgeo.org/geos/trunk@289 + * source/geom/Makefile.am: Added new source files git-svn-id: + http://svn.osgeo.org/geos/trunk@289 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli @@ -29442,14 +36021,16 @@ * source/headers/opDistance.h, source/operation/distance/DistanceOp.cpp, source/operation/distance/GeometryLocation.cpp: GeometryLocation - constructor made const-correct. Fixed erroneus down-casting in - DistanceOp::computeMinDistancePoints. git-svn-id: http://svn.osgeo.org/geos/trunk@288 + constructor made const-correct. Fixed erroneus down-casting in + DistanceOp::computeMinDistancePoints. git-svn-id: + http://svn.osgeo.org/geos/trunk@288 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-13 Sandro Santilli - * source/headers/geom.h: Changed all 'long long' with int64. - Changed all 'long long' constants to end with two Ls. git-svn-id: http://svn.osgeo.org/geos/trunk@287 + * source/headers/geom.h: Changed all 'long long' with int64. Changed + all 'long long' constants to end with two Ls. git-svn-id: + http://svn.osgeo.org/geos/trunk@287 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-10 Yury Bychkov @@ -29463,7 +36044,7 @@ source/precision/EnhancedPrecisionOp.cpp, source/precision/SimpleGeometryPrecisionReducer.cpp, source/util/UniqueCoordinateArrayFilter.cpp: "precision" upgraded to - JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@286 + JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@286 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-10 Yury Bychkov @@ -29483,7 +36064,8 @@ source/operation/buffer/SubgraphDepthLocater.cpp, source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PolygonBuilder.cpp: "operation/buffer" - upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@285 + upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@285 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-08 Yury Bychkov @@ -29494,7 +36076,8 @@ source/operation/polygonize/PolygonizeGraph.cpp, source/operation/polygonize/Polygonizer.cpp, source/operation/polygonize/polygonizeEdgeRing.cpp: - "operation/polygonize" ported from JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@284 + "operation/polygonize" ported from JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@284 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-07 Yury Bychkov @@ -29509,7 +36092,8 @@ source/operation/linemerge/LineMerger.cpp, source/planargraph/planarNodeMap.cpp, source/planargraph/{PlanarGraph.cpp => planarPlanarGraph.cpp}: - "operation/linemerge" ported from JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@283 + "operation/linemerge" ported from JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@283 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-05 Yury Bychkov @@ -29524,7 +36108,8 @@ source/operation/distance/LineExtracterFilter.cpp, source/operation/distance/PointExtracterFilter.cpp, source/operation/distance/PolygonExtracterFilter.cpp: - "operation/distance" upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@282 + "operation/distance" upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@282 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-04 Yury Bychkov @@ -29543,7 +36128,8 @@ source/planargraph/planarGraphComponent.cpp, source/planargraph/planarNode.cpp, source/planargraph/planarNodeMap.cpp: "planargraph" and "geom/utill" - upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@281 + upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@281 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-04-01 Yury Bychkov @@ -29553,7 +36139,8 @@ source/geom/LinearRing.cpp, source/geom/MultiLineString.cpp, source/geom/MultiPoint.cpp, source/geom/Polygon.cpp, source/headers/geom.h, source/io/Unload.cpp: All "geom" classes from - JTS 1.3 upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@280 + JTS 1.3 upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@280 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-31 Yury Bychkov @@ -29562,7 +36149,8 @@ source/geom/MultiPolygon.cpp, source/geom/Point.cpp, source/geom/Polygon.cpp, source/geom/PrecisionModel.cpp, source/geomgraph/EdgeNodingValidator.cpp, source/headers/geom.h: - "geom" partially upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@279 + "geom" partially upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@279 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-29 Yury Bychkov @@ -29585,7 +36173,8 @@ source/operation/valid/SweeplineNestedRingTester.cpp: "noding/snapround" package ported (JTS 1.4); "operation", "operation/valid", "operation/relate" and "operation/overlay" - upgraded to JTS 1.4; "geom" partially upgraded. git-svn-id: http://svn.osgeo.org/geos/trunk@278 + upgraded to JTS 1.4; "geom" partially upgraded. git-svn-id: + http://svn.osgeo.org/geos/trunk@278 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-26 Yury Bychkov @@ -29596,7 +36185,7 @@ source/noding/SegmentNode.cpp, source/noding/SegmentNodeList.cpp, source/noding/SegmentString.cpp, source/noding/SimpleNoder.cpp, source/noding/nodingSegmentIntersector.cpp: "noding" package ported - (JTS 1.4) git-svn-id: http://svn.osgeo.org/geos/trunk@277 + (JTS 1.4) git-svn-id: http://svn.osgeo.org/geos/trunk@277 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-25 Yury Bychkov @@ -29633,7 +36222,8 @@ source/index/strtree/AbstractNode.cpp, source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/SIRtree.cpp, source/index/strtree/STRtree.cpp: - All "index/*" packages upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@276 + All "index/*" packages upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@276 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-19 Yury Bychkov @@ -29667,7 +36257,8 @@ source/index/chain/MonotoneChainBuilder.cpp, source/io/Unload.cpp, source/operation/buffer/BufferOp.cpp, source/operation/overlay/OverlayOp.cpp, source/test/XMLTester.cpp: - "geomgraph" and "geomgraph/indexl" upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@275 + "geomgraph" and "geomgraph/indexl" upgraded to JTS 1.4 git-svn-id: + http://svn.osgeo.org/geos/trunk@275 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-18 Yury Bychkov @@ -29678,7 +36269,8 @@ source/headers/io.h, source/headers/util.h, source/io/StringTokenizer.cpp, source/io/WKTReader.cpp, source/io/WKTWriter.cpp, source/util/GeometricShapeFactory.cpp: "IO" - and "Util" upgraded to JTS 1.4 "Geometry" partially upgraded. git-svn-id: http://svn.osgeo.org/geos/trunk@274 + and "Util" upgraded to JTS 1.4 "Geometry" partially upgraded. + git-svn-id: http://svn.osgeo.org/geos/trunk@274 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-17 Yury Bychkov @@ -29697,7 +36289,8 @@ source/algorithm/SimplePointInAreaLocator.cpp, source/algorithm/SimplePointInRing.cpp, source/geom/Geometry.cpp, source/headers/geom.h, source/headers/geosAlgorithm.h, - source/test/Stackwalker.h: "Algorithm" upgraded to JTS 1.4 git-svn-id: http://svn.osgeo.org/geos/trunk@273 + source/test/Stackwalker.h: "Algorithm" upgraded to JTS 1.4 + git-svn-id: http://svn.osgeo.org/geos/trunk@273 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-03-01 Sandro Santilli @@ -29707,65 +36300,75 @@ source/operation/buffer/BufferOp.cpp, source/operation/relate/RelateOp.cpp: applied const correctness changes by Manuel Prieto Villegas - git-svn-id: http://svn.osgeo.org/geos/trunk@272 + git-svn-id: + http://svn.osgeo.org/geos/trunk@272 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-02-27 Sandro Santilli * source/geom/Polygon.cpp: memory leak fix in Polygon::getArea() - - reported by 'Manuel Prieto Villegas' git-svn-id: http://svn.osgeo.org/geos/trunk@271 + reported by 'Manuel Prieto Villegas' git-svn-id: + http://svn.osgeo.org/geos/trunk@271 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-02-27 Sandro Santilli * source/algorithm/CGAlgorithms.cpp, source/headers/geosAlgorithm.h: made CGAlgorithms::signedArea() and CGAlgorithms::length() arguments - const-correct git-svn-id: http://svn.osgeo.org/geos/trunk@270 + const-correct git-svn-id: http://svn.osgeo.org/geos/trunk@270 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-02-20 Paul Ramsey * ltmain.sh: Changed to new version of ltmain, that matches the - version of libtool on build box git-svn-id: http://svn.osgeo.org/geos/trunk@269 + version of libtool on build box git-svn-id: + http://svn.osgeo.org/geos/trunk@269 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-01-20 Paul Ramsey - * configure.in: Change platform.h back to AM_CONFIG_HEADER. git-svn-id: http://svn.osgeo.org/geos/trunk@268 + * configure.in: Change platform.h back to AM_CONFIG_HEADER. + git-svn-id: http://svn.osgeo.org/geos/trunk@268 5242fede-7e19-0410-aef8-94bd7d2200fb 2004-01-20 Paul Ramsey * configure.in: Change AM_CONFIG_HEADER to AC_CONFIG_HEADERS to - allow autoheader to work its magic. git-svn-id: http://svn.osgeo.org/geos/trunk@267 + allow autoheader to work its magic. git-svn-id: + http://svn.osgeo.org/geos/trunk@267 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-12-11 Sandro Santilli * source/operation/buffer/BufferOp.cpp: made buffer(0) back to its - *correct* semantic (empy collection) git-svn-id: http://svn.osgeo.org/geos/trunk@266 + *correct* semantic (empy collection) git-svn-id: + http://svn.osgeo.org/geos/trunk@266 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-12-11 Sandro Santilli * source/operation/buffer/BufferOp.cpp: made buffer operation return - a cloned input geom when called with 0 as distance git-svn-id: http://svn.osgeo.org/geos/trunk@265 + a cloned input geom when called with 0 as distance git-svn-id: + http://svn.osgeo.org/geos/trunk@265 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-12-11 Sandro Santilli * source/geom/GeometryCollection.cpp: Fixed bogus copy constructor - (making clone bogus) git-svn-id: http://svn.osgeo.org/geos/trunk@264 + (making clone bogus) git-svn-id: + http://svn.osgeo.org/geos/trunk@264 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-13 Sandro Santilli - * doc/example.cpp: bug fixed in relate call git-svn-id: http://svn.osgeo.org/geos/trunk@263 + * doc/example.cpp: bug fixed in relate call git-svn-id: + http://svn.osgeo.org/geos/trunk@263 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli - * doc/example.cpp: added relational operators git-svn-id: http://svn.osgeo.org/geos/trunk@262 + * doc/example.cpp: added relational operators git-svn-id: + http://svn.osgeo.org/geos/trunk@262 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli @@ -29773,86 +36376,98 @@ * source/graph/PlanarGraph.cpp, source/headers/graph.h, source/headers/opOverlay.h, source/operation/overlay/OverlayOp.cpp, source/operation/overlay/PolygonBuilder.cpp: Added throw - specification. Fixed leaks on exceptions. git-svn-id: http://svn.osgeo.org/geos/trunk@261 + specification. Fixed leaks on exceptions. git-svn-id: + http://svn.osgeo.org/geos/trunk@261 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli * source/geom/PrecisionModel.cpp: made sure PrecisionModel scale is - never 0 git-svn-id: http://svn.osgeo.org/geos/trunk@260 + never 0 git-svn-id: http://svn.osgeo.org/geos/trunk@260 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli - * source/test/XMLTester.cpp: added missing initialization git-svn-id: http://svn.osgeo.org/geos/trunk@259 + * source/test/XMLTester.cpp: added missing initialization + git-svn-id: http://svn.osgeo.org/geos/trunk@259 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli * source/headers/opOverlay.h, source/operation/overlay/OverlayOp.cpp: Added some more throw - specifications and cleanup on exception (leaks removed). git-svn-id: http://svn.osgeo.org/geos/trunk@258 + specifications and cleanup on exception (leaks removed). + git-svn-id: http://svn.osgeo.org/geos/trunk@258 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli * source/graph/DirectedEdgeStar.cpp, source/graph/EdgeEndStar.cpp, source/graph/GeometryGraph.cpp, source/headers/graph.h: Added some - more throw specifications git-svn-id: http://svn.osgeo.org/geos/trunk@257 + more throw specifications git-svn-id: + http://svn.osgeo.org/geos/trunk@257 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli - * source/test/XMLTester.cpp: more cleanup on exception git-svn-id: http://svn.osgeo.org/geos/trunk@256 + * source/test/XMLTester.cpp: more cleanup on exception git-svn-id: + http://svn.osgeo.org/geos/trunk@256 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli * doc/example.cpp: removed old changelog, moved comments in the nice - standard frame git-svn-id: http://svn.osgeo.org/geos/trunk@255 + standard frame git-svn-id: http://svn.osgeo.org/geos/trunk@255 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-12 Sandro Santilli - * autogen.sh: added autoheader call git-svn-id: http://svn.osgeo.org/geos/trunk@254 + * autogen.sh: added autoheader call git-svn-id: + http://svn.osgeo.org/geos/trunk@254 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Memory leak fix in - insertEdge() git-svn-id: http://svn.osgeo.org/geos/trunk@253 + insertEdge() git-svn-id: http://svn.osgeo.org/geos/trunk@253 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Paul Ramsey - * ChangeLog: Added current ChangeLog git-svn-id: http://svn.osgeo.org/geos/trunk@252 + * ChangeLog: Added current ChangeLog git-svn-id: + http://svn.osgeo.org/geos/trunk@252 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Sandro Santilli - * source/headers/config.h.in: will be generated with ./autogen.sh git-svn-id: http://svn.osgeo.org/geos/trunk@251 + * source/headers/config.h.in: will be generated with ./autogen.sh + git-svn-id: http://svn.osgeo.org/geos/trunk@251 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Sandro Santilli * Makefile.am, configure.in, doc/.cvsignore, doc/Makefile, doc/Makefile.am: Made doc/ directory part of distribution. Uniformed - doc build script to autotools. git-svn-id: http://svn.osgeo.org/geos/trunk@250 + doc build script to autotools. git-svn-id: + http://svn.osgeo.org/geos/trunk@250 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Sandro Santilli - * source/headers/.cvsignore: added config.h.in (missed before) git-svn-id: http://svn.osgeo.org/geos/trunk@249 + * source/headers/.cvsignore: added config.h.in (missed before) + git-svn-id: http://svn.osgeo.org/geos/trunk@249 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Sandro Santilli - * source/headers/.cvsignore: added config.h.in git-svn-id: http://svn.osgeo.org/geos/trunk@248 + * source/headers/.cvsignore: added config.h.in git-svn-id: + http://svn.osgeo.org/geos/trunk@248 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Paul Ramsey - * AUTHORS: Added people! git-svn-id: http://svn.osgeo.org/geos/trunk@247 + * AUTHORS: Added people! git-svn-id: + http://svn.osgeo.org/geos/trunk@247 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-07 Paul Ramsey @@ -30000,95 +36615,109 @@ source/util/IllegalArgumentException.cpp, source/util/UniqueCoordinateArrayFilter.cpp, source/util/UnsupportedOperationException.cpp: Add standard CVS - headers licence notices and copyrights to all cpp and h files. git-svn-id: http://svn.osgeo.org/geos/trunk@245 + headers licence notices and copyrights to all cpp and h files. + git-svn-id: http://svn.osgeo.org/geos/trunk@245 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/graph/EdgeIntersectionList.cpp: removed useless Coordinate - copy in ::createSplitEdge() git-svn-id: http://svn.osgeo.org/geos/trunk@244 + copy in ::createSplitEdge() git-svn-id: + http://svn.osgeo.org/geos/trunk@244 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli - * doc/.cvsignore: first import git-svn-id: http://svn.osgeo.org/geos/trunk@243 + * doc/.cvsignore: first import git-svn-id: + http://svn.osgeo.org/geos/trunk@243 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli - * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@242 + * TODO: updated git-svn-id: http://svn.osgeo.org/geos/trunk@242 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/operation/overlay/PolygonBuilder.cpp: added throw - information comment in PolygonBuilder git-svn-id: http://svn.osgeo.org/geos/trunk@241 + information comment in PolygonBuilder git-svn-id: + http://svn.osgeo.org/geos/trunk@241 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Added throw specification for BufferOp's ::buildSubgraphs() and ::computeBuffer(). Cleanup on - exception in computeBuffer(). git-svn-id: http://svn.osgeo.org/geos/trunk@240 + exception in computeBuffer(). git-svn-id: + http://svn.osgeo.org/geos/trunk@240 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/headers/opBuffer.h: Added throw specification for - BufferOp's ::buildSubgraphs() and ::computeBuffer() git-svn-id: http://svn.osgeo.org/geos/trunk@239 + BufferOp's ::buildSubgraphs() and ::computeBuffer() git-svn-id: + http://svn.osgeo.org/geos/trunk@239 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/graph/DirectedEdgeStar.cpp, source/headers/graph.h: Added - throw specification for DirectEdgeStar::linkResultDirectedEdges() git-svn-id: http://svn.osgeo.org/geos/trunk@238 + throw specification for DirectEdgeStar::linkResultDirectedEdges() + git-svn-id: http://svn.osgeo.org/geos/trunk@238 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/operation/buffer/BufferOp.cpp: Cleanup on exception in - ::bufferOp() git-svn-id: http://svn.osgeo.org/geos/trunk@237 + ::bufferOp() git-svn-id: http://svn.osgeo.org/geos/trunk@237 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli - * source/graph/EdgeRing.cpp: Memory leaks fixed in ::containsPoint() git-svn-id: http://svn.osgeo.org/geos/trunk@236 + * source/graph/EdgeRing.cpp: Memory leaks fixed in ::containsPoint() + git-svn-id: http://svn.osgeo.org/geos/trunk@236 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/operation/buffer/BufferLineBuilder.cpp: Fixed memory leaks - in ::closePt() and ::addLineEndCap() git-svn-id: http://svn.osgeo.org/geos/trunk@235 + in ::closePt() and ::addLineEndCap() git-svn-id: + http://svn.osgeo.org/geos/trunk@235 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * source/operation/buffer/BufferEdgeBuilder.cpp: Added support for - LinearRing, removed memory leaks in ::addLineString git-svn-id: http://svn.osgeo.org/geos/trunk@234 + LinearRing, removed memory leaks in ::addLineString git-svn-id: + http://svn.osgeo.org/geos/trunk@234 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Sandro Santilli * doc/example.cpp: Added Buffer,Intersection,Difference and - Symdifference. Exception cleanup git-svn-id: http://svn.osgeo.org/geos/trunk@233 + Symdifference. Exception cleanup git-svn-id: + http://svn.osgeo.org/geos/trunk@233 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-06 Paul Ramsey - * INSTALL: Small addition of into about LD_LIBRARY_PATH git-svn-id: http://svn.osgeo.org/geos/trunk@232 + * INSTALL: Small addition of into about LD_LIBRARY_PATH + git-svn-id: http://svn.osgeo.org/geos/trunk@232 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-05 Sandro Santilli * doc/Makefile, doc/example.cpp: Modified example.cpp to make use of vectors instead of Geometry * / int couples. Added LineString - creation example. Added Makefile to compile it. git-svn-id: http://svn.osgeo.org/geos/trunk@231 + creation example. Added Makefile to compile it. git-svn-id: + http://svn.osgeo.org/geos/trunk@231 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-11-03 Sandro Santilli * doc/example.cpp: Removed comments about segfaults, made the simple - collection creation call cleaner by use of the clone() method. git-svn-id: http://svn.osgeo.org/geos/trunk@230 + collection creation call cleaner by use of the clone() method. + git-svn-id: http://svn.osgeo.org/geos/trunk@230 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-31 Sandro Santilli @@ -30096,42 +36725,48 @@ * source/geom/GeometryCollection.cpp, source/geom/LineString.cpp, source/geom/Point.cpp, source/geom/Polygon.cpp, source/headers/geom.h: Re-introduced clone() method. Copy - constructor could not really replace it. git-svn-id: http://svn.osgeo.org/geos/trunk@229 + constructor could not really replace it. git-svn-id: + http://svn.osgeo.org/geos/trunk@229 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-29 Sandro Santilli - * doc/example.cpp: Added centroid computation example git-svn-id: http://svn.osgeo.org/geos/trunk@228 + * doc/example.cpp: Added centroid computation example git-svn-id: + http://svn.osgeo.org/geos/trunk@228 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-29 Sandro Santilli * source/algorithm/CentroidLine.cpp: Added support for LinearRing - types (treated as LineString) git-svn-id: http://svn.osgeo.org/geos/trunk@227 + types (treated as LineString) git-svn-id: + http://svn.osgeo.org/geos/trunk@227 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-24 Sandro Santilli * source/headers/geom.h: Added GeometryTypeId enum and - getGeometryTypeId abstract Geometry method. git-svn-id: http://svn.osgeo.org/geos/trunk@226 + getGeometryTypeId abstract Geometry method. git-svn-id: + http://svn.osgeo.org/geos/trunk@226 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-23 Sandro Santilli - * source/headers/.cvsignore: Added stamp-h2 and platform.h git-svn-id: http://svn.osgeo.org/geos/trunk@225 + * source/headers/.cvsignore: Added stamp-h2 and platform.h + git-svn-id: http://svn.osgeo.org/geos/trunk@225 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-23 Sandro Santilli * source/headers/util.h: Made CoordinateArrayFilter destructor - virtual. git-svn-id: http://svn.osgeo.org/geos/trunk@224 + virtual. git-svn-id: http://svn.osgeo.org/geos/trunk@224 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-22 Sandro Santilli * configure.in, source/headers/{platform.h => platform.h.in}: Made platform.h be created by configure. In this way we will not have - problems of installed headers trying to include phantom config.h. git-svn-id: http://svn.osgeo.org/geos/trunk@223 + problems of installed headers trying to include phantom config.h. + git-svn-id: http://svn.osgeo.org/geos/trunk@223 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-22 Sandro Santilli @@ -30140,68 +36775,76 @@ source/index/quadtree/DoubleBits.cpp: Quadtree bitfield operations made using type int64. Type int64 typedef'ed based on autoconf detected int type (long or long long). If long is not 64bits int64 - will be really 32 bits and INT64_IS_REALLY32 will be defined. git-svn-id: http://svn.osgeo.org/geos/trunk@222 + will be really 32 bits and INT64_IS_REALLY32 will be defined. + git-svn-id: http://svn.osgeo.org/geos/trunk@222 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-21 Sandro Santilli * acsite.m4, configure.in, source/headers/acconfig.h, - source/headers/config.h.in: Added macros to find 64bit integer. git-svn-id: http://svn.osgeo.org/geos/trunk@221 + source/headers/config.h.in: Added macros to find 64bit integer. + git-svn-id: http://svn.osgeo.org/geos/trunk@221 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-21 Sandro Santilli * doc/example.cpp: Uncommented point creation lines. Updated - comments about segfaults. git-svn-id: http://svn.osgeo.org/geos/trunk@220 + comments about segfaults. git-svn-id: + http://svn.osgeo.org/geos/trunk@220 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-21 Paul Ramsey * source/test/Makefile.am: Added test.xml so it gets picked up by - 'make dist' git-svn-id: http://svn.osgeo.org/geos/trunk@219 + 'make dist' git-svn-id: http://svn.osgeo.org/geos/trunk@219 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-21 Paul Ramsey - * INSTALL: Added simple installation directions. git-svn-id: http://svn.osgeo.org/geos/trunk@218 + * INSTALL: Added simple installation directions. git-svn-id: + http://svn.osgeo.org/geos/trunk@218 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-21 Paul Ramsey * source/examples/Makefile.am, source/geom/Makefile.am, source/test/Makefile.am: Fix up references to header files to 'make - dist' works. git-svn-id: http://svn.osgeo.org/geos/trunk@217 + dist' works. git-svn-id: http://svn.osgeo.org/geos/trunk@217 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-20 Sandro Santilli - * doc/example.cpp: added Union example git-svn-id: http://svn.osgeo.org/geos/trunk@216 + * doc/example.cpp: added Union example git-svn-id: + http://svn.osgeo.org/geos/trunk@216 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-20 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geom.h: Geometry::checkNotGeometryCollection made static and - non-distructive. git-svn-id: http://svn.osgeo.org/geos/trunk@215 + non-distructive. git-svn-id: http://svn.osgeo.org/geos/trunk@215 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-20 Sandro Santilli * source/graph/EdgeRing.cpp, source/operation/valid/ConnectedInteriorTester.cpp: more explicit - exception thrown on null Directed Edge detection git-svn-id: http://svn.osgeo.org/geos/trunk@214 + exception thrown on null Directed Edge detection git-svn-id: + http://svn.osgeo.org/geos/trunk@214 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-20 Sandro Santilli - * source/util/AssertionFailedException.cpp: fixed typo git-svn-id: http://svn.osgeo.org/geos/trunk@213 + * source/util/AssertionFailedException.cpp: fixed typo git-svn-id: + http://svn.osgeo.org/geos/trunk@213 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-20 Sandro Santilli * source/graph/GeometryGraph.cpp: LinearRing handled as a LineString in GeometryGraph::add(const Geometry *) - more explicit exception - thrown for unknown geometries git-svn-id: http://svn.osgeo.org/geos/trunk@212 + thrown for unknown geometries git-svn-id: + http://svn.osgeo.org/geos/trunk@212 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-17 Yury Bychkov @@ -30209,20 +36852,22 @@ * VisualStudio/GEOS.vcproj, source/geom/Polygon.cpp, source/headers/indexQuadtree.h, source/index/quadtree/DoubleBits.cpp, source/test/XMLTester.cpp: - Fixed a small memory leak. git-svn-id: http://svn.osgeo.org/geos/trunk@211 + Fixed a small memory leak. git-svn-id: + http://svn.osgeo.org/geos/trunk@211 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli * source/util/GEOSException.cpp, source/util/UnsupportedOperationException.cpp: Fixed a bug in - GEOSException that prevented print of the type of exception thrown. git-svn-id: http://svn.osgeo.org/geos/trunk@210 + GEOSException that prevented print of the type of exception thrown. + git-svn-id: http://svn.osgeo.org/geos/trunk@210 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli * source/operation/valid/RepeatedPointTester.cpp: dropped useless - string() cast git-svn-id: http://svn.osgeo.org/geos/trunk@209 + string() cast git-svn-id: http://svn.osgeo.org/geos/trunk@209 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli @@ -30230,17 +36875,20 @@ * source/geom/TopologyException.cpp, source/headers/geom.h, source/headers/util.h, source/util/IllegalArgumentException.cpp: Made TopologyException inherit from GEOSException. Adjusted - IllegalArgumentException subclassing. git-svn-id: http://svn.osgeo.org/geos/trunk@208 + IllegalArgumentException subclassing. git-svn-id: + http://svn.osgeo.org/geos/trunk@208 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli - * source/test/XMLTester.cpp: Added call to Unload::Release() git-svn-id: http://svn.osgeo.org/geos/trunk@207 + * source/test/XMLTester.cpp: Added call to Unload::Release() + git-svn-id: http://svn.osgeo.org/geos/trunk@207 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli - * source/test/XMLTester.cpp: bug fixed in exception handling git-svn-id: http://svn.osgeo.org/geos/trunk@206 + * source/test/XMLTester.cpp: bug fixed in exception handling + git-svn-id: http://svn.osgeo.org/geos/trunk@206 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli @@ -30260,12 +36908,14 @@ source/operation/overlay/LineBuilder.cpp, source/operation/valid/QuadtreeNestedRingTester.cpp: Memory leak fixes. Improved performance by mean of more calls to new - getCoordinatesRO() when applicable. git-svn-id: http://svn.osgeo.org/geos/trunk@205 + getCoordinatesRO() when applicable. git-svn-id: + http://svn.osgeo.org/geos/trunk@205 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-16 Sandro Santilli - * source/test/XMLTester.cpp: Exceptions handled git-svn-id: http://svn.osgeo.org/geos/trunk@204 + * source/test/XMLTester.cpp: Exceptions handled git-svn-id: + http://svn.osgeo.org/geos/trunk@204 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli @@ -30282,14 +36932,15 @@ source/headers/graphindex.h, source/operation/buffer/BufferOp.cpp, source/operation/buffer/RightmostEdgeFinder.cpp, source/operation/overlay/LineBuilder.cpp: Made - Edge::getCoordinates() return a 'const' value. Adapted code set. git-svn-id: http://svn.osgeo.org/geos/trunk@203 + Edge::getCoordinates() return a 'const' value. Adapted code set. + git-svn-id: http://svn.osgeo.org/geos/trunk@203 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli * source/algorithm/MCPointInRing.cpp, source/algorithm/PointLocator.cpp: Adapted to new getCoordinatesRO() - interface git-svn-id: http://svn.osgeo.org/geos/trunk@202 + interface git-svn-id: http://svn.osgeo.org/geos/trunk@202 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli @@ -30299,8 +36950,8 @@ source/graph/index/SweepLineSegment.cpp, source/headers/graphindex.h: Declared a SweepLineEventOBJ from which MonotoneChain and SweepLineSegment derive to abstract SweepLineEvent - object previously done on void * pointers. No more compiler - warnings... git-svn-id: http://svn.osgeo.org/geos/trunk@201 + object previously done on void * pointers. No more compiler + warnings... git-svn-id: http://svn.osgeo.org/geos/trunk@201 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli @@ -30308,7 +36959,7 @@ * source/graph/GeometryGraph.cpp, source/operation/valid/ConnectedInteriorTester.cpp, source/operation/valid/IsValidOp.cpp: Use getCoordinatesRO() - introduced. git-svn-id: http://svn.osgeo.org/geos/trunk@200 + introduced. git-svn-id: http://svn.osgeo.org/geos/trunk@200 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli @@ -30317,43 +36968,49 @@ source/geom/CoordinateList.cpp, source/geom/PointCoordinateList.cpp, source/headers/geom.h: Formalized const nature of toVector() method and of first argument - to static removeRepeatedPoints(). git-svn-id: http://svn.osgeo.org/geos/trunk@199 + to static removeRepeatedPoints(). git-svn-id: + http://svn.osgeo.org/geos/trunk@199 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli * source/geom/BasicCoordinateList.cpp, source/geom/PointCoordinateList.cpp, source/headers/geom.h: Made - setPoints() get a const vector. git-svn-id: http://svn.osgeo.org/geos/trunk@198 + setPoints() get a const vector. git-svn-id: + http://svn.osgeo.org/geos/trunk@198 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli * source/geom/LineString.cpp, source/headers/geom.h: Added - getCoordinatesRO() public method. git-svn-id: http://svn.osgeo.org/geos/trunk@197 + getCoordinatesRO() public method. git-svn-id: + http://svn.osgeo.org/geos/trunk@197 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli - * source/io/WKTReader.cpp: Memory leaks fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@196 + * source/io/WKTReader.cpp: Memory leaks fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@196 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli - * TODO: Initial import git-svn-id: http://svn.osgeo.org/geos/trunk@195 + * TODO: Initial import git-svn-id: + http://svn.osgeo.org/geos/trunk@195 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-15 Sandro Santilli * source/geom/Polygon.cpp: Memory leaks fixed. Partially due to getCoordinates() and GeometryCollection() changes, partially old - dated. git-svn-id: http://svn.osgeo.org/geos/trunk@194 + dated. git-svn-id: http://svn.osgeo.org/geos/trunk@194 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-14 Sandro Santilli * source/geom/GeometryFactory.cpp: Useless vector - leaking allocations removed git-svn-id: http://svn.osgeo.org/geos/trunk@193 + leaking allocations removed git-svn-id: + http://svn.osgeo.org/geos/trunk@193 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli @@ -30361,21 +37018,22 @@ * .cvsignore, macros/.cvsignore, source/bigtest/.cvsignore, source/examples/.cvsignore, source/geom/.cvsignore, source/headers/.cvsignore, source/test/.cvsignore: Added build time - created files to cvsignore lists git-svn-id: http://svn.osgeo.org/geos/trunk@192 + created files to cvsignore lists git-svn-id: + http://svn.osgeo.org/geos/trunk@192 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli * source/headers/opValid.h, source/operation/valid/IsValidOp.cpp: IsValidOp constructor used same name for the arg and a private - element. Fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@191 + element. Fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@191 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli * source/operation/overlay/MaximalEdgeRing.cpp, source/operation/overlay/PolygonBuilder.cpp: delete statement - removed git-svn-id: http://svn.osgeo.org/geos/trunk@190 + removed git-svn-id: http://svn.osgeo.org/geos/trunk@190 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli @@ -30383,32 +37041,35 @@ * source/algorithm/CentroidArea.cpp, source/algorithm/InteriorPointPoint.cpp, source/headers/geosAlgorithm.h: Fixed some leak or fault flips - (forced copy of a single coordinate) git-svn-id: http://svn.osgeo.org/geos/trunk@189 + (forced copy of a single coordinate) git-svn-id: + http://svn.osgeo.org/geos/trunk@189 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli * source/test/XMLTester.cpp: accept input file as first argument on - cmdline git-svn-id: http://svn.osgeo.org/geos/trunk@188 + cmdline git-svn-id: http://svn.osgeo.org/geos/trunk@188 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli * source/geom/Geometry.cpp, source/headers/geom.h: removed - sortedClasses strings array from all geometries. git-svn-id: http://svn.osgeo.org/geos/trunk@187 + sortedClasses strings array from all geometries. git-svn-id: + http://svn.osgeo.org/geos/trunk@187 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-13 Sandro Santilli * source/headers/indexQuadtree.h, source/index/quadtree/DoubleBits.cpp: long -> long long enlargement - of types to allow for left/rigth shift of 53 bits git-svn-id: http://svn.osgeo.org/geos/trunk@186 + of types to allow for left/rigth shift of 53 bits git-svn-id: + http://svn.osgeo.org/geos/trunk@186 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-11 Sandro Santilli * source/geom/LineString.cpp, source/geom/LinearRing.cpp: fixed - spurious typos git-svn-id: http://svn.osgeo.org/geos/trunk@185 + spurious typos git-svn-id: http://svn.osgeo.org/geos/trunk@185 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-11 Sandro Santilli @@ -30481,53 +37142,60 @@ source/operation/valid/SweeplineNestedRingTester.cpp, source/util/Assert.cpp, source/util/CoordinateArrayFiter.cpp, source/util/UniqueCoordinateArrayFilter.cpp: Code base padded with - 'const' keywords ;) git-svn-id: http://svn.osgeo.org/geos/trunk@184 + 'const' keywords ;) git-svn-id: + http://svn.osgeo.org/geos/trunk@184 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli * source/geom/GeometryFactory.cpp, source/headers/geom.h: added - 'const' keyword to GeometryFactory constructor, Log on top of geom.h git-svn-id: http://svn.osgeo.org/geos/trunk@183 + 'const' keyword to GeometryFactory constructor, Log on top of geom.h + git-svn-id: http://svn.osgeo.org/geos/trunk@183 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli - * doc/example.cpp: moved Log to a better place git-svn-id: http://svn.osgeo.org/geos/trunk@182 + * doc/example.cpp: moved Log to a better place git-svn-id: + http://svn.osgeo.org/geos/trunk@182 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli - * doc/example.cpp: added convexHull and PrecisionModel git-svn-id: http://svn.osgeo.org/geos/trunk@181 + * doc/example.cpp: added convexHull and PrecisionModel git-svn-id: + http://svn.osgeo.org/geos/trunk@181 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli * source/geom/GeometryFactory.cpp: just a style change in top Log - comment. git-svn-id: http://svn.osgeo.org/geos/trunk@180 + comment. git-svn-id: http://svn.osgeo.org/geos/trunk@180 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli * source/geom/PrecisionModel.cpp: Throw an exception if scale is 0. - Added Log entry. git-svn-id: http://svn.osgeo.org/geos/trunk@179 + Added Log entry. git-svn-id: http://svn.osgeo.org/geos/trunk@179 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli * source/geom/GeometryFactory.cpp: Tried to "formalize" constant nature of the first argument given to constructor by PrecisionModel - and SRID specification. Added CVS Log on top. git-svn-id: http://svn.osgeo.org/geos/trunk@178 + and SRID specification. Added CVS Log on top. git-svn-id: + http://svn.osgeo.org/geos/trunk@178 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli * doc/example.cpp, source/algorithm/ConvexHull.cpp: Added - convexHull() call to example, fixed leaks in ConvexHull git-svn-id: http://svn.osgeo.org/geos/trunk@177 + convexHull() call to example, fixed leaks in ConvexHull + git-svn-id: http://svn.osgeo.org/geos/trunk@177 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-09 Sandro Santilli - * doc/example.cpp: First reference-by-example file. git-svn-id: http://svn.osgeo.org/geos/trunk@176 + * doc/example.cpp: First reference-by-example file. git-svn-id: + http://svn.osgeo.org/geos/trunk@176 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-08 Sandro Santilli @@ -30537,20 +37205,23 @@ source/headers/indexQuadtree.h, source/headers/opRelate.h, source/headers/opValid.h, source/headers/operation.h, source/headers/unload.h, source/io/Unload.cpp: Added xie's Unload - class with some fixes. git-svn-id: http://svn.osgeo.org/geos/trunk@175 + class with some fixes. git-svn-id: + http://svn.osgeo.org/geos/trunk@175 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-08 Sandro Santilli * source/headers/io.h, source/io/WKTWriter.cpp: added missing - LinearRing writing capabilities. git-svn-id: http://svn.osgeo.org/geos/trunk@174 + LinearRing writing capabilities. git-svn-id: + http://svn.osgeo.org/geos/trunk@174 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-08 Sandro Santilli * source/geom/GeometryCollection.cpp: Constructor by vector * now makes a copy of the vector so that call ers - can safely delete it when done. git-svn-id: http://svn.osgeo.org/geos/trunk@173 + can safely delete it when done. git-svn-id: + http://svn.osgeo.org/geos/trunk@173 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-07 Sandro Santilli @@ -30559,7 +37230,8 @@ source/geom/Polygon.cpp, source/graph/EdgeRing.cpp, source/graph/GeometryGraph.cpp, source/operation/overlay/PolygonBuilder.cpp: had all - getCoordinates() callers free returned value. git-svn-id: http://svn.osgeo.org/geos/trunk@172 + getCoordinates() callers free returned value. git-svn-id: + http://svn.osgeo.org/geos/trunk@172 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-07 Sandro Santilli @@ -30569,13 +37241,15 @@ source/geom/LineString.cpp, source/graph/GeometryGraph.cpp, source/headers/config.h.in: LineString constructor now creates its own copy of given CoordinateList object, and returns a new copy with - getCoordinates(). will be easier to remove by anyone else. git-svn-id: http://svn.osgeo.org/geos/trunk@171 + getCoordinates(). will be easier to remove by anyone else. + git-svn-id: http://svn.osgeo.org/geos/trunk@171 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-10-03 Yury Bychkov * source/geom/MultiPolygon.cpp, source/test/XMLTester.cpp: Memory - leak in Overlay fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@170 + leak in Overlay fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@170 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-29 Sandro Santilli @@ -30583,25 +37257,26 @@ * macros/.cvsignore, source/bigtest/.cvsignore, source/examples/.cvsignore, source/headers/.cvsignore: Some more cvsignore files. Some entries should probably not be in the local - copy git-svn-id: http://svn.osgeo.org/geos/trunk@169 + copy git-svn-id: http://svn.osgeo.org/geos/trunk@169 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-29 Sandro Santilli - * .cvsignore: Added config.sub, config.guess and autom4te.cache git-svn-id: http://svn.osgeo.org/geos/trunk@168 + * .cvsignore: Added config.sub, config.guess and autom4te.cache + git-svn-id: http://svn.osgeo.org/geos/trunk@168 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-29 Sandro Santilli * tools/.cvsignore: Don't wonder about Makefile.in, Makefile, - gdal-config git-svn-id: http://svn.osgeo.org/geos/trunk@167 + gdal-config git-svn-id: http://svn.osgeo.org/geos/trunk@167 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-26 Sandro Santilli * source/algorithm/ConvexHull.cpp: getConvexHull() made check value returned by reduce() before deleting it (might be the untouched - input). git-svn-id: http://svn.osgeo.org/geos/trunk@166 + input). git-svn-id: http://svn.osgeo.org/geos/trunk@166 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-26 Yury Bychkov @@ -30609,7 +37284,8 @@ * source/index/bintree/NodeBase.cpp, source/index/quadtree/QuadTreeNodeBase.cpp, source/index/quadtree/QuadTreeRoot.cpp, source/test/XMLTester.cpp: - isValid segfault fixed. Overlay still leaks a bit. git-svn-id: http://svn.osgeo.org/geos/trunk@165 + isValid segfault fixed. Overlay still leaks a bit. git-svn-id: + http://svn.osgeo.org/geos/trunk@165 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-24 Yury Bychkov @@ -30621,7 +37297,7 @@ source/operation/buffer/BufferOp.cpp, source/operation/overlay/PolygonBuilder.cpp, source/test/XMLTester.cpp: All reported bugs fiexd. Small leak in - Overlay remains. git-svn-id: http://svn.osgeo.org/geos/trunk@164 + Overlay remains. git-svn-id: http://svn.osgeo.org/geos/trunk@164 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-06 Yury Bychkov @@ -30632,7 +37308,8 @@ source/operation/distance/LineExtracterFilter.cpp, source/operation/distance/PointExtracterFilter.cpp, source/operation/distance/PolygonExtracterFilter.cpp, - source/test/XMLTester.cpp: isWithinDistance fixed and tested. git-svn-id: http://svn.osgeo.org/geos/trunk@163 + source/test/XMLTester.cpp: isWithinDistance fixed and tested. + git-svn-id: http://svn.osgeo.org/geos/trunk@163 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-06 Yury Bychkov @@ -30644,14 +37321,15 @@ source/graph/GeometryGraph.cpp, source/graph/index/SimpleMCSweepLineIntersector.cpp, source/operation/overlay/OverlayOp.cpp, source/test/XMLTester.cpp: - getInteriorPoint bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@162 + getInteriorPoint bugs fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@162 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-09-01 Yury Bychkov * source/algorithm/ConvexHull.cpp, source/geom/Geometry.cpp, source/geom/Polygon.cpp, source/test/XMLTester.cpp: Some ConvexHull - bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@161 + bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@161 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-30 Yury Bychkov @@ -30660,49 +37338,57 @@ source/geom/GeometryCollection.cpp, source/geom/Polygon.cpp, source/graph/GeometryGraph.cpp, source/operation/IsSimpleOp.cpp, source/test/XMLTester.cpp: Some bugfixes. XMLTester expanded to - accomodate getBoundary, getCentroid, isSimple. git-svn-id: http://svn.osgeo.org/geos/trunk@160 + accomodate getBoundary, getCentroid, isSimple. git-svn-id: + http://svn.osgeo.org/geos/trunk@160 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey * source/algorithm/ConvexHull.java: Removed java source file from - archive. git-svn-id: http://svn.osgeo.org/geos/trunk@159 + archive. git-svn-id: http://svn.osgeo.org/geos/trunk@159 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey - * configure.in: Change it back :/ git-svn-id: http://svn.osgeo.org/geos/trunk@158 + * configure.in: Change it back :/ git-svn-id: + http://svn.osgeo.org/geos/trunk@158 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey - * configure.in: Change version number. git-svn-id: http://svn.osgeo.org/geos/trunk@157 + * configure.in: Change version number. git-svn-id: + http://svn.osgeo.org/geos/trunk@157 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey - * ltmain.sh: Return ltmain to distro (oops) git-svn-id: http://svn.osgeo.org/geos/trunk@156 + * ltmain.sh: Return ltmain to distro (oops) git-svn-id: + http://svn.osgeo.org/geos/trunk@156 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey - * mkinstalldirs: Remove more autoconf files git-svn-id: http://svn.osgeo.org/geos/trunk@155 + * mkinstalldirs: Remove more autoconf files git-svn-id: + http://svn.osgeo.org/geos/trunk@155 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey * acinclude.m4, config.guess, config.sub, install-sh, ltmain.sh: - Removed more autoconf files... git-svn-id: http://svn.osgeo.org/geos/trunk@154 + Removed more autoconf files... git-svn-id: + http://svn.osgeo.org/geos/trunk@154 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey - * missing: Removed 'missing' script. git-svn-id: http://svn.osgeo.org/geos/trunk@153 + * missing: Removed 'missing' script. git-svn-id: + http://svn.osgeo.org/geos/trunk@153 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-18 Paul Ramsey - * source/headers/Makefile.am: Fixed up to treat headers as headers. git-svn-id: http://svn.osgeo.org/geos/trunk@152 + * source/headers/Makefile.am: Fixed up to treat headers as headers. + git-svn-id: http://svn.osgeo.org/geos/trunk@152 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-17 Paul Ramsey @@ -30836,18 +37522,20 @@ source/util/UniqueCoordinateArrayFilter.cpp, source/util/UnsupportedOperationException.cpp: Norman's patch + global removal of "no newline" + small changes to make Norman's - patch work in the linux build environment. git-svn-id: http://svn.osgeo.org/geos/trunk@151 + patch work in the linux build environment. git-svn-id: + http://svn.osgeo.org/geos/trunk@151 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-17 Paul Ramsey - * libtool: Removed more configuration files per Norman's request. git-svn-id: http://svn.osgeo.org/geos/trunk@150 + * libtool: Removed more configuration files per Norman's request. + git-svn-id: http://svn.osgeo.org/geos/trunk@150 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-17 Paul Ramsey * aclocal.m4, configure: Removed more configure files per Norman's - request. git-svn-id: http://svn.osgeo.org/geos/trunk@149 + request. git-svn-id: http://svn.osgeo.org/geos/trunk@149 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-17 Paul Ramsey @@ -30856,7 +37544,8 @@ source/bigtest/Makefile.in, source/geom/Coordinate.cpp, source/geom/Makefile.in, source/headers/Makefile.in, source/test/Makefile.in, tools/Makefile.in: Removed Makefile.in - files, per Norman's request. git-svn-id: http://svn.osgeo.org/geos/trunk@148 + files, per Norman's request. git-svn-id: + http://svn.osgeo.org/geos/trunk@148 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-08-16 Yury Bychkov @@ -30935,12 +37624,14 @@ source/operation/valid/QuadtreeNestedRingTester.cpp, source/test/Stackwalker.cpp, source/test/Stackwalker.h, source/test/XMLTester.cpp, source/util/CoordinateArrayFiter.cpp, - source/util/UniqueCoordinateArrayFilter.cpp: Memory leak fixes. git-svn-id: http://svn.osgeo.org/geos/trunk@147 + source/util/UniqueCoordinateArrayFilter.cpp: Memory leak fixes. + git-svn-id: http://svn.osgeo.org/geos/trunk@147 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-06-21 Paul Ramsey - * source/geom/Makefile.am: GNU compile fixes from nvine. git-svn-id: http://svn.osgeo.org/geos/trunk@146 + * source/geom/Makefile.am: GNU compile fixes from nvine. + git-svn-id: http://svn.osgeo.org/geos/trunk@146 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-06-19 Yury Bychkov @@ -31083,7 +37774,7 @@ source/util/GEOSException.cpp, source/util/IllegalArgumentException.cpp, source/util/UnsupportedOperationException.cpp: 'geos' namespace - added. git-svn-id: http://svn.osgeo.org/geos/trunk@145 + added. git-svn-id: http://svn.osgeo.org/geos/trunk@145 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-06-18 Yury Bychkov @@ -31095,97 +37786,108 @@ source/operation/buffer/BufferSubgraph.cpp, source/operation/buffer/LoopFilter.cpp, source/operation/buffer/RightmostEdgeFinder.cpp: Buffer is almost - fully debugged. git-svn-id: http://svn.osgeo.org/geos/trunk@144 + fully debugged. git-svn-id: http://svn.osgeo.org/geos/trunk@144 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-29 Paul Ramsey * source/bigtest/Makefile.am, source/geom/Makefile.am: Final GNU - build adjustments. git-svn-id: http://svn.osgeo.org/geos/trunk@143 + build adjustments. git-svn-id: http://svn.osgeo.org/geos/trunk@143 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Paul Ramsey - * source/examples/Makefile.am: Added new exception class. git-svn-id: http://svn.osgeo.org/geos/trunk@142 + * source/examples/Makefile.am: Added new exception class. + git-svn-id: http://svn.osgeo.org/geos/trunk@142 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Paul Ramsey - * source/headers/Makefile.am: Change reference to spatialIndex.h git-svn-id: http://svn.osgeo.org/geos/trunk@141 + * source/headers/Makefile.am: Change reference to spatialIndex.h + git-svn-id: http://svn.osgeo.org/geos/trunk@141 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Paul Ramsey * source/geom/Makefile.am: Removed obsolete build entries for - removed classes. git-svn-id: http://svn.osgeo.org/geos/trunk@140 + removed classes. git-svn-id: http://svn.osgeo.org/geos/trunk@140 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Yury Bychkov * source/headers/indexStrtree.h, source/index/strtree/Interval.cpp: - Some bugfixes. git-svn-id: http://svn.osgeo.org/geos/trunk@139 + Some bugfixes. git-svn-id: http://svn.osgeo.org/geos/trunk@139 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Yury Bychkov * source/index/bintree/Interval.cpp, source/index/bintree/Node.cpp, - source/test/XMLTester.cpp: no message git-svn-id: http://svn.osgeo.org/geos/trunk@138 + source/test/XMLTester.cpp: no message git-svn-id: + http://svn.osgeo.org/geos/trunk@138 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Paul Ramsey * source/index/strtree/Interval.cpp, - source/index/strtree/SIRtree.cpp: Changed __max/__min to max/min git-svn-id: http://svn.osgeo.org/geos/trunk@137 + source/index/strtree/SIRtree.cpp: Changed __max/__min to max/min + git-svn-id: http://svn.osgeo.org/geos/trunk@137 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-28 Paul Ramsey - * source/index/quadtree/IntervalSize.cpp: Change __max to max git-svn-id: http://svn.osgeo.org/geos/trunk@136 + * source/index/quadtree/IntervalSize.cpp: Change __max to max + git-svn-id: http://svn.osgeo.org/geos/trunk@136 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey - * source/geom/Makefile.am: Changed from mistaken cpp file names. git-svn-id: http://svn.osgeo.org/geos/trunk@135 + * source/geom/Makefile.am: Changed from mistaken cpp file names. + git-svn-id: http://svn.osgeo.org/geos/trunk@135 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey - * source/algorithm/CentroidArea.cpp: Added include for git-svn-id: http://svn.osgeo.org/geos/trunk@134 + * source/algorithm/CentroidArea.cpp: Added include for + git-svn-id: http://svn.osgeo.org/geos/trunk@134 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey - * source/headers/indexStrtree.h: GNU build support git-svn-id: http://svn.osgeo.org/geos/trunk@133 + * source/headers/indexStrtree.h: GNU build support git-svn-id: + http://svn.osgeo.org/geos/trunk@133 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey * source/headers/indexQuadtree.h: Fix reference to spatialIndex - header git-svn-id: http://svn.osgeo.org/geos/trunk@132 + header git-svn-id: http://svn.osgeo.org/geos/trunk@132 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey * source/headers/Makefile.in, source/headers/geom.h, source/headers/indexStrtree.h, source/headers/{SpatialIndex.h => - spatialIndex.h}: Build updates. git-svn-id: http://svn.osgeo.org/geos/trunk@131 + spatialIndex.h}: Build updates. git-svn-id: + http://svn.osgeo.org/geos/trunk@131 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey - * source/geom/Makefile.am: Add new files into build support git-svn-id: http://svn.osgeo.org/geos/trunk@130 + * source/geom/Makefile.am: Add new files into build support + git-svn-id: http://svn.osgeo.org/geos/trunk@130 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey * source/headers/Makefile.am: Add all new headers into the build - process. git-svn-id: http://svn.osgeo.org/geos/trunk@129 + process. git-svn-id: http://svn.osgeo.org/geos/trunk@129 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-27 Paul Ramsey * source/geom/Makefile.am, source/headers/Makefile.am: Some updates - to synch build with devel. git-svn-id: http://svn.osgeo.org/geos/trunk@128 + to synch build with devel. git-svn-id: + http://svn.osgeo.org/geos/trunk@128 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-21 Yury Bychkov @@ -31193,7 +37895,8 @@ * source/algorithm/MCPointInRing.cpp, source/geom/PrecisionModel.cpp, source/graph/GeometryGraph.cpp, source/index/bintree/Key.cpp, source/operation/relate/RelateOp.cpp: - Several bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@127 + Several bugs fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@127 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-19 Yury Bychkov @@ -31226,7 +37929,7 @@ source/util/GEOSException.cpp, source/util/IllegalArgumentException.cpp, source/util/UnsupportedOperationException.cpp: All exceptions are - now classes. git-svn-id: http://svn.osgeo.org/geos/trunk@126 + now classes. git-svn-id: http://svn.osgeo.org/geos/trunk@126 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-17 Yury Bychkov @@ -31238,7 +37941,8 @@ source/algorithm/InteriorPointLine.cpp, source/algorithm/InteriorPointPoint.cpp, source/algorithm/SIRtreePointInRing.cpp, - source/index/quadtree/QuadTreeNodeBase.cpp: Last fix for CVS. git-svn-id: http://svn.osgeo.org/geos/trunk@125 + source/index/quadtree/QuadTreeNodeBase.cpp: Last fix for CVS. + git-svn-id: http://svn.osgeo.org/geos/trunk@125 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-17 Yury Bychkov @@ -31251,13 +37955,15 @@ source/headers/indexQuadtree.h, source/headers/indexStrtree.h, source/index/quadtree/Quadtree.cpp, source/index/strtree/AbstractSTRtree.cpp, - source/operation/valid/IsValidOp.cpp: Fixing CVS error. git-svn-id: http://svn.osgeo.org/geos/trunk@124 + source/operation/valid/IsValidOp.cpp: Fixing CVS error. + git-svn-id: http://svn.osgeo.org/geos/trunk@124 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-17 Yury Bychkov * source/geom/GeometryCollection.cpp, - source/headers/geosAlgorithm.h: Fixing a commit problem. git-svn-id: http://svn.osgeo.org/geos/trunk@123 + source/headers/geosAlgorithm.h: Fixing a commit problem. + git-svn-id: http://svn.osgeo.org/geos/trunk@123 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-17 Yury Bychkov @@ -31275,7 +37981,8 @@ source/operation/distance/LineExtracterFilter.cpp, source/operation/distance/PointExtracterFilter.cpp, source/operation/distance/PolygonExtracterFilter.cpp: SIRtree is - done. Distance is done. git-svn-id: http://svn.osgeo.org/geos/trunk@122 + done. Distance is done. git-svn-id: + http://svn.osgeo.org/geos/trunk@122 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-07 Yury Bychkov @@ -31315,7 +38022,8 @@ source/index/strtree/AbstractSTRtree.cpp, source/index/strtree/Interval.cpp, source/index/strtree/ItemBoundable.cpp, - source/operation/valid/QuadtreeNestedRingTester.cpp: Closer to 1.3 git-svn-id: http://svn.osgeo.org/geos/trunk@121 + source/operation/valid/QuadtreeNestedRingTester.cpp: Closer to 1.3 + git-svn-id: http://svn.osgeo.org/geos/trunk@121 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-05-04 Yury Bychkov @@ -31337,7 +38045,8 @@ source/operation/GeometryGraphOperation.cpp, source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateOp.cpp, - source/operation/valid/IsValidOp.cpp: Closer to JTS 1.3 git-svn-id: http://svn.osgeo.org/geos/trunk@120 + source/operation/valid/IsValidOp.cpp: Closer to JTS 1.3 + git-svn-id: http://svn.osgeo.org/geos/trunk@120 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-28 Yury Bychkov @@ -31431,13 +38140,14 @@ source/operation/valid/SweeplineNestedRingTester.cpp, source/operation/valid/TopologyValidationError.cpp, source/util/Assert.cpp, source/util/AssertionFailedException.cpp: - Partially upgraded to JTS 1.3 git-svn-id: http://svn.osgeo.org/geos/trunk@119 + Partially upgraded to JTS 1.3 git-svn-id: + http://svn.osgeo.org/geos/trunk@119 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-21 Yury Bychkov * VisualStudio/GEOS.sln, VisualStudio/GEOS.vcproj: VisualStudio - project added. git-svn-id: http://svn.osgeo.org/geos/trunk@118 + project added. git-svn-id: http://svn.osgeo.org/geos/trunk@118 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-17 Yury Bychkov @@ -31447,13 +38157,15 @@ source/geom/PointCoordinateList.cpp, source/graph/GeometryGraph.cpp, source/io/WKTReader.cpp: Changed PrecisionModel to Value type. Removed bounds checking from *At - methods in CoordinateLists. git-svn-id: http://svn.osgeo.org/geos/trunk@117 + methods in CoordinateLists. git-svn-id: + http://svn.osgeo.org/geos/trunk@117 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-12 Yury Bychkov * source/graph/EdgeRing.cpp, source/operation/overlay/OverlayOp.cpp: - Overlay passes all tests (both precise and normal) git-svn-id: http://svn.osgeo.org/geos/trunk@116 + Overlay passes all tests (both precise and normal) git-svn-id: + http://svn.osgeo.org/geos/trunk@116 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-11 Yury Bychkov @@ -31463,7 +38175,8 @@ source/geom/Point.cpp, source/geom/Polygon.cpp, source/geom/PrecisionModel.cpp, source/graph/GeometryGraph.cpp, source/headers/geom.h, source/io/WKTReader.cpp, - source/test/XMLTester.cpp: Overlay almost works. Fails 2 tests. git-svn-id: http://svn.osgeo.org/geos/trunk@115 + source/test/XMLTester.cpp: Overlay almost works. Fails 2 tests. + git-svn-id: http://svn.osgeo.org/geos/trunk@115 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-10 Yury Bychkov @@ -31472,18 +38185,20 @@ source/graph/Depth.cpp, source/graph/DirectedEdgeStar.cpp, source/graph/EdgeIntersectionList.cpp, source/operation/overlay/OverlayOp.cpp, source/test/XMLTester.cpp: - Overlay passes all normal tests. Still fails on Precision tests. git-svn-id: http://svn.osgeo.org/geos/trunk@114 + Overlay passes all normal tests. Still fails on Precision tests. + git-svn-id: http://svn.osgeo.org/geos/trunk@114 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-09 Paul Ramsey * source/headers/geom.h: Changed destructors to virtual to quiet GNU - warnings git-svn-id: http://svn.osgeo.org/geos/trunk@113 + warnings git-svn-id: http://svn.osgeo.org/geos/trunk@113 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 Paul Ramsey - * source/headers/Makefile.am: Install all headers at install time. git-svn-id: http://svn.osgeo.org/geos/trunk@112 + * source/headers/Makefile.am: Install all headers at install time. + git-svn-id: http://svn.osgeo.org/geos/trunk@112 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 Paul Ramsey @@ -31491,33 +38206,37 @@ * source/examples/CustomCoordinateListExample.cpp, source/examples/CustomCoordinateListExample.h, source/examples/CustomPointCoordinateList.cpp: Newlines added to - quiet gcc. git-svn-id: http://svn.osgeo.org/geos/trunk@111 + quiet gcc. git-svn-id: http://svn.osgeo.org/geos/trunk@111 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 Paul Ramsey - * source/geom/Makefile.am: Build support git-svn-id: http://svn.osgeo.org/geos/trunk@110 + * source/geom/Makefile.am: Build support git-svn-id: + http://svn.osgeo.org/geos/trunk@110 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 Paul Ramsey - * source/examples/Makefile.am: Build support. git-svn-id: http://svn.osgeo.org/geos/trunk@109 + * source/examples/Makefile.am: Build support. git-svn-id: + http://svn.osgeo.org/geos/trunk@109 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 Paul Ramsey - * source/geom/Makefile.am: Build support updates. git-svn-id: http://svn.osgeo.org/geos/trunk@108 + * source/geom/Makefile.am: Build support updates. git-svn-id: + http://svn.osgeo.org/geos/trunk@108 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 Paul Ramsey * source/examples/Makefile.am: Build support for new example - programs. git-svn-id: http://svn.osgeo.org/geos/trunk@107 + programs. git-svn-id: http://svn.osgeo.org/geos/trunk@107 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-04 David Blasby - * INSTALL: added comment about running ./autogen.sh git-svn-id: http://svn.osgeo.org/geos/trunk@106 + * INSTALL: added comment about running ./autogen.sh git-svn-id: + http://svn.osgeo.org/geos/trunk@106 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-02 Yury Bychkov @@ -31525,7 +38244,8 @@ * source/examples/CustomCoordinateListExample.cpp, source/examples/CustomCoordinateListExample.h, source/examples/CustomPointCoordinateList.cpp: Added example on how - to wrap internal storage format with CoordinateLists. git-svn-id: http://svn.osgeo.org/geos/trunk@105 + to wrap internal storage format with CoordinateLists. git-svn-id: + http://svn.osgeo.org/geos/trunk@105 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-04-02 Yury Bychkov @@ -31542,13 +38262,14 @@ source/operation/overlay/OverlayNodeFactory.cpp, source/operation/valid/ConnectedInteriorTester.cpp, source/operation/valid/IsValidOp.cpp: isValid is debugged (passes - all 805 tests). git-svn-id: http://svn.osgeo.org/geos/trunk@104 + all 805 tests). git-svn-id: http://svn.osgeo.org/geos/trunk@104 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-24 Paul Ramsey * source/headers/indexQuadtree.h, source/headers/indexSweepline.h: - Added newlines to end to quiet gcc git-svn-id: http://svn.osgeo.org/geos/trunk@103 + Added newlines to end to quiet gcc git-svn-id: + http://svn.osgeo.org/geos/trunk@103 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-24 Paul Ramsey @@ -31569,12 +38290,14 @@ source/operation/valid/Makefile.am, source/test/Makefile.in, source/util/Makefile.am, source/util/Makefile.in, tools/Makefile.in: Yet more GNU build fiddling. Removed extraneous build support from - all non-geom library directories. git-svn-id: http://svn.osgeo.org/geos/trunk@102 + all non-geom library directories. git-svn-id: + http://svn.osgeo.org/geos/trunk@102 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-24 Paul Ramsey - * source/geom/Makefile.am: More GNU build support git-svn-id: http://svn.osgeo.org/geos/trunk@101 + * source/geom/Makefile.am: More GNU build support git-svn-id: + http://svn.osgeo.org/geos/trunk@101 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-24 Paul Ramsey @@ -31590,7 +38313,8 @@ source/operation/Makefile.am, source/operation/Makefile.in, source/operation/relate/Makefile.in, source/test/Makefile.in, source/test/XMLTester.cpp, source/util/Makefile.in, - tools/Makefile.in: GNU build support on latest changes. git-svn-id: http://svn.osgeo.org/geos/trunk@100 + tools/Makefile.in: GNU build support on latest changes. + git-svn-id: http://svn.osgeo.org/geos/trunk@100 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-19 Yury Bychkov @@ -31601,7 +38325,8 @@ source/operation/overlay/LineBuilder.cpp, source/operation/overlay/OverlayOp.cpp, source/operation/overlay/OverlayOp.java: All Overlay classes are - ported. Overlay and isValid have not been tested yet. git-svn-id: http://svn.osgeo.org/geos/trunk@99 + ported. Overlay and isValid have not been tested yet. git-svn-id: + http://svn.osgeo.org/geos/trunk@99 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-18 Yury Bychkov @@ -31619,7 +38344,8 @@ source/operation/overlay/PolygonBuilder.cpp, source/operation/valid/IsValidOp.cpp, source/operation/valid/RepeatedPointTester.cpp, - source/test/XMLTester.cpp: 90% of Overlay classes ported. git-svn-id: http://svn.osgeo.org/geos/trunk@98 + source/test/XMLTester.cpp: 90% of Overlay classes ported. + git-svn-id: http://svn.osgeo.org/geos/trunk@98 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-17 Yury Bychkov @@ -31633,7 +38359,8 @@ source/index/chain/indexMonotoneChain.cpp, source/index/intervaltree/IntervalNode.cpp, source/index/intervaltree/IntervalTree.cpp: All 'index' packages and - part of 'overlay' are done. git-svn-id: http://svn.osgeo.org/geos/trunk@97 + part of 'overlay' are done. git-svn-id: + http://svn.osgeo.org/geos/trunk@97 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-17 Yury Bychkov @@ -31644,13 +38371,15 @@ source/operation/overlay/MaximalEdgeRing.cpp, source/operation/overlay/MinimalEdgeRing.cpp, source/operation/valid/IsValidOp.cpp: IsValid and supporting - packages are ported (but NOT tested). git-svn-id: http://svn.osgeo.org/geos/trunk@96 + packages are ported (but NOT tested). git-svn-id: + http://svn.osgeo.org/geos/trunk@96 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-12 Paul Ramsey * source/geom/Makefile.am, source/operation/Makefile.am, - source/operation/valid/Makefile.am: Build support for valid. git-svn-id: http://svn.osgeo.org/geos/trunk@95 + source/operation/valid/Makefile.am: Build support for valid. + git-svn-id: http://svn.osgeo.org/geos/trunk@95 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-10 Yury Bychkov @@ -31660,7 +38389,7 @@ source/operation/valid/ConnectedInteriorTester.cpp, source/operation/valid/QuadtreeNestedRingTester.cpp: IsValid() and supporting index classes are ported, but don't work yet (external - dependencies) git-svn-id: http://svn.osgeo.org/geos/trunk@94 + dependencies) git-svn-id: http://svn.osgeo.org/geos/trunk@94 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-10 Yury Bychkov @@ -31678,30 +38407,34 @@ source/operation/valid/SweeplineNestedRingTester.cpp, source/operation/valid/TopologyValidationError.cpp, source/test/XMLTester.cpp: IsValid and supporting index classes are - almost done. git-svn-id: http://svn.osgeo.org/geos/trunk@93 + almost done. git-svn-id: http://svn.osgeo.org/geos/trunk@93 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-05 Paul Ramsey * configure.in, source/Makefile.am, source/examples/Makefile.am: - Build support for new coordinateline examples. git-svn-id: http://svn.osgeo.org/geos/trunk@92 + Build support for new coordinateline examples. git-svn-id: + http://svn.osgeo.org/geos/trunk@92 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-05 Yury Bychkov * source/examples/CoordinateListsExample.cpp, source/geom/PointCoordinateList.cpp, source/headers/geom.h: - CoordinateList interface example. git-svn-id: http://svn.osgeo.org/geos/trunk@91 + CoordinateList interface example. git-svn-id: + http://svn.osgeo.org/geos/trunk@91 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-03 Paul Ramsey - * source/geom/Makefile.am: Remove PointInRing git-svn-id: http://svn.osgeo.org/geos/trunk@90 + * source/geom/Makefile.am: Remove PointInRing git-svn-id: + http://svn.osgeo.org/geos/trunk@90 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-03 Paul Ramsey - * source/algorithm/PointInRing.cpp: Removed unused file. git-svn-id: http://svn.osgeo.org/geos/trunk@89 + * source/algorithm/PointInRing.cpp: Removed unused file. + git-svn-id: http://svn.osgeo.org/geos/trunk@89 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-03 Yury Bychkov @@ -31711,12 +38444,14 @@ source/geom/GeometryFactory.cpp, source/geom/PointCoordinateList.cpp, source/graph/EdgeIntersectionList.cpp, source/io/WKTReader.cpp: Some - Coordinate& related bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@88 + Coordinate& related bugs fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@88 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-03 Yury Bychkov - * source/geom/GeometryFactory.cpp: GeometryFactory bug fix. git-svn-id: http://svn.osgeo.org/geos/trunk@87 + * source/geom/GeometryFactory.cpp: GeometryFactory bug fix. + git-svn-id: http://svn.osgeo.org/geos/trunk@87 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-03 Yury Bychkov @@ -31749,7 +38484,8 @@ source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateNode.cpp, source/test/CTS.cpp, source/util/Assert.cpp: Second pass of code cleanup. Coordinate - references and inlining. git-svn-id: http://svn.osgeo.org/geos/trunk@86 + references and inlining. git-svn-id: + http://svn.osgeo.org/geos/trunk@86 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-02 Yury Bychkov @@ -31770,18 +38506,20 @@ source/operation/relate/EdgeEndBuilder.cpp, source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateNodeGraph.cpp: First pass of code - cleanup completed over all packages. git-svn-id: http://svn.osgeo.org/geos/trunk@85 + cleanup completed over all packages. git-svn-id: + http://svn.osgeo.org/geos/trunk@85 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-01 Paul Ramsey * source/headers/geosAlgorithm.h: Uncommented default constructor - for PointInRing git-svn-id: http://svn.osgeo.org/geos/trunk@84 + for PointInRing git-svn-id: http://svn.osgeo.org/geos/trunk@84 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-03-01 Paul Ramsey - * source/test/SimpleWKTTester.cpp: Fixed call to geometry factory. git-svn-id: http://svn.osgeo.org/geos/trunk@83 + * source/test/SimpleWKTTester.cpp: Fixed call to geometry factory. + git-svn-id: http://svn.osgeo.org/geos/trunk@83 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-26 Yury Bychkov @@ -31797,13 +38535,15 @@ source/headers/util.h, source/io/StringTokenizer.cpp, source/io/WKTReader.cpp, source/io/WKTWriter.cpp, source/io/Writer.cpp, source/test/XMLTester.cpp: All packages except - 'graph' has been refactored. git-svn-id: http://svn.osgeo.org/geos/trunk@82 + 'graph' has been refactored. git-svn-id: + http://svn.osgeo.org/geos/trunk@82 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-20 Paul Ramsey * source/test/SimpleWKTTester.cpp: Fixed small bug in call to - GeometryFactory (instantiate PrecisionModel with new) git-svn-id: http://svn.osgeo.org/geos/trunk@81 + GeometryFactory (instantiate PrecisionModel with new) git-svn-id: + http://svn.osgeo.org/geos/trunk@81 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-20 Paul Ramsey @@ -31811,7 +38551,7 @@ * source/geom/CoordinateListFactory.cpp, source/geom/GeometryFactory.cpp: GFactory: Move i outside of for loop. Needed to compile GNU CListFactory: Add newline to end of - file. git-svn-id: http://svn.osgeo.org/geos/trunk@80 + file. git-svn-id: http://svn.osgeo.org/geos/trunk@80 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-20 Yury Bychkov @@ -31822,7 +38562,8 @@ source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateNodeGraph.cpp, source/operation/relate/RelateOp.cpp: Geom and Operation (including - Relate) packages are updated. git-svn-id: http://svn.osgeo.org/geos/trunk@79 + Relate) packages are updated. git-svn-id: + http://svn.osgeo.org/geos/trunk@79 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-17 Yury Bychkov @@ -31837,7 +38578,8 @@ source/operation/GeometryGraphOperation.cpp, source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateOp.cpp, source/test/XMLTester.cpp: - GEOM package fully updated & bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@78 + GEOM package fully updated & bugs fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@78 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-17 Yury Bychkov @@ -31847,7 +38589,8 @@ source/geom/Point.cpp, source/geom/Polygon.cpp, source/graph/EdgeRing.cpp, source/graph/GeometryGraph.cpp, source/headers/geom.h, source/headers/io.h, source/io/WKTReader.cpp: - GEOM package fully updated. git-svn-id: http://svn.osgeo.org/geos/trunk@77 + GEOM package fully updated. git-svn-id: + http://svn.osgeo.org/geos/trunk@77 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-16 Yury Bychkov @@ -31861,26 +38604,28 @@ source/geom/MultiPoint.cpp, source/geom/MultiPolygon.cpp, source/geom/Point.cpp, source/geom/Polygon.cpp, source/graph/EdgeRing.cpp, source/headers/geom.h, - source/io/WKTReader.cpp: GEOM package partially updated. git-svn-id: http://svn.osgeo.org/geos/trunk@76 + source/io/WKTReader.cpp: GEOM package partially updated. + git-svn-id: http://svn.osgeo.org/geos/trunk@76 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey * INSTALL, missing: Added two files required by autoconf build - process. git-svn-id: http://svn.osgeo.org/geos/trunk@75 + process. git-svn-id: http://svn.osgeo.org/geos/trunk@75 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey * configure, libtool, source/geom/Makefile.in, source/headers/Makefile.in, source/test/Makefile.in: Commit build - support files. git-svn-id: http://svn.osgeo.org/geos/trunk@74 + support files. git-svn-id: http://svn.osgeo.org/geos/trunk@74 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey * source/headers/Makefile.am: Change header installation path to - $(prefix)/include/geos. git-svn-id: http://svn.osgeo.org/geos/trunk@73 + $(prefix)/include/geos. git-svn-id: + http://svn.osgeo.org/geos/trunk@73 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey @@ -31889,7 +38634,7 @@ source/algorithm/SimplePointInRing.cpp, source/operation/GeometryGraphOperation.cpp, source/operation/relate/EdgeEndBundle.cpp: Added newlines to quiet - g++ warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@72 + g++ warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@72 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey @@ -31901,94 +38646,109 @@ source/graph/index/MonotoneChain.cpp, source/graph/index/SimpleMCSweepLineIntersector.cpp, source/graph/index/SweepLineEvent.cpp: Added newlines to ends of - files to quiet g++ warnings. git-svn-id: http://svn.osgeo.org/geos/trunk@71 + files to quiet g++ warnings. git-svn-id: + http://svn.osgeo.org/geos/trunk@71 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/test/XMLTester.cpp: Fix headers. git-svn-id: http://svn.osgeo.org/geos/trunk@70 + * source/test/XMLTester.cpp: Fix headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@70 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/test/SimpleWKTTester.cpp: Changed headers. git-svn-id: http://svn.osgeo.org/geos/trunk@69 + * source/test/SimpleWKTTester.cpp: Changed headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@69 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/bigtest/TestSweepLineSpeed.cpp: Added return value. git-svn-id: http://svn.osgeo.org/geos/trunk@68 + * source/bigtest/TestSweepLineSpeed.cpp: Added return value. + git-svn-id: http://svn.osgeo.org/geos/trunk@68 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey * source/bigtest/TestSweepLineSpeed.cpp, source/test/CTS.cpp, - source/test/XMLTester.cpp: Changed headers. git-svn-id: http://svn.osgeo.org/geos/trunk@67 + source/test/XMLTester.cpp: Changed headers. git-svn-id: + http://svn.osgeo.org/geos/trunk@67 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/test/XMLTester.cpp: Make path to test file relative. git-svn-id: http://svn.osgeo.org/geos/trunk@66 + * source/test/XMLTester.cpp: Make path to test file relative. + git-svn-id: http://svn.osgeo.org/geos/trunk@66 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey * source/bigtest/GeometryTestFactory.cpp: Change include reference - syntax. git-svn-id: http://svn.osgeo.org/geos/trunk@65 + syntax. git-svn-id: http://svn.osgeo.org/geos/trunk@65 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/graph/EdgeEndStar.cpp: Remove NULL test. git-svn-id: http://svn.osgeo.org/geos/trunk@64 + * source/graph/EdgeEndStar.cpp: Remove NULL test. git-svn-id: + http://svn.osgeo.org/geos/trunk@64 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/io/WKTWriter.cpp: Pass double to log(). git-svn-id: http://svn.osgeo.org/geos/trunk@63 + * source/io/WKTWriter.cpp: Pass double to log(). git-svn-id: + http://svn.osgeo.org/geos/trunk@63 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/bigtest/TestSweepLineSpeed.cpp: Fixed main() return type. git-svn-id: http://svn.osgeo.org/geos/trunk@62 + * source/bigtest/TestSweepLineSpeed.cpp: Fixed main() return type. + git-svn-id: http://svn.osgeo.org/geos/trunk@62 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/test/Makefile.am: Remove old library references. git-svn-id: http://svn.osgeo.org/geos/trunk@61 + * source/test/Makefile.am: Remove old library references. + git-svn-id: http://svn.osgeo.org/geos/trunk@61 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey * source/bigtest/TestSweepLineSpeed.cpp: Added stdio reference and - newline at end. git-svn-id: http://svn.osgeo.org/geos/trunk@60 + newline at end. git-svn-id: http://svn.osgeo.org/geos/trunk@60 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-12 Paul Ramsey - * source/test/test.xml: Added all JTS test cases to the file. git-svn-id: http://svn.osgeo.org/geos/trunk@59 + * source/test/test.xml: Added all JTS test cases to the file. + git-svn-id: http://svn.osgeo.org/geos/trunk@59 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-11 Paul Ramsey - * source/geom/Makefile.am: Added support for new cpp files. git-svn-id: http://svn.osgeo.org/geos/trunk@58 + * source/geom/Makefile.am: Added support for new cpp files. + git-svn-id: http://svn.osgeo.org/geos/trunk@58 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-11 Yury Bychkov * source/geom/CoordinateList.cpp, source/geom/Geometry.cpp, source/geom/PointCoordinateList.cpp, source/geom/Polygon.cpp, - source/headers/geom.h: Some bugs fixed. git-svn-id: http://svn.osgeo.org/geos/trunk@57 + source/headers/geom.h: Some bugs fixed. git-svn-id: + http://svn.osgeo.org/geos/trunk@57 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-11 Yury Bychkov * source/geom/PointCoordinateList.cpp, source/graph/EdgeEndStar.cpp, source/headers/graph.h: Small changes - in PointCoordinateList and EdgeEndStar. git-svn-id: http://svn.osgeo.org/geos/trunk@56 + in PointCoordinateList and EdgeEndStar. git-svn-id: + http://svn.osgeo.org/geos/trunk@56 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-11 Martin Davis - * source/geom/Geometry.cpp: fixed duplicate for loop index git-svn-id: http://svn.osgeo.org/geos/trunk@55 + * source/geom/Geometry.cpp: fixed duplicate for loop index + git-svn-id: http://svn.osgeo.org/geos/trunk@55 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-02-05 Yury Bychkov @@ -32007,7 +38767,8 @@ source/graph/index/MonotoneChainEdge.cpp, source/headers/geom.h, source/io/WKTReader.cpp, source/io/WKTWriter.cpp, source/operation/IsSimpleOp.cpp, source/test/XMLTester.cpp: Second - pass of CoordinateList interface migration. git-svn-id: http://svn.osgeo.org/geos/trunk@54 + pass of CoordinateList interface migration. git-svn-id: + http://svn.osgeo.org/geos/trunk@54 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-01-27 Yury Bychkov @@ -32032,19 +38793,21 @@ source/headers/geosAlgorithm.h, source/headers/graph.h, source/headers/graphindex.h, source/headers/io.h, source/io/WKTReader.cpp: First pass of CoordinateList interface - replacement. git-svn-id: http://svn.osgeo.org/geos/trunk@53 + replacement. git-svn-id: http://svn.osgeo.org/geos/trunk@53 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-01-27 Yury Bychkov * source/algorithm/CGAlgorithms.cpp: First pass of CoordinateList - interface replacement. git-svn-id: http://svn.osgeo.org/geos/trunk@52 + interface replacement. git-svn-id: + http://svn.osgeo.org/geos/trunk@52 5242fede-7e19-0410-aef8-94bd7d2200fb 2003-01-27 Yury Bychkov * source/algorithm/CGAlgorithms.cpp: First pass of CoordinateList - interface replacement. git-svn-id: http://svn.osgeo.org/geos/trunk@51 + interface replacement. git-svn-id: + http://svn.osgeo.org/geos/trunk@51 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-12-02 Yury Bychkov @@ -32065,7 +38828,8 @@ source/graph/index/SegmentIntersector.cpp, source/graph/index/SweepLineSegment.cpp, source/headers/geom.h, source/headers/geosAlgorithm.h, source/headers/graph.h: More - performance updates. git-svn-id: http://svn.osgeo.org/geos/trunk@50 + performance updates. git-svn-id: + http://svn.osgeo.org/geos/trunk@50 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-11-24 Yury Bychkov @@ -32074,7 +38838,8 @@ source/bigtest/TestSweepLineSpeed.cpp, source/geom/CoordinateList.cpp, source/graph/index/MonotoneChainIndexer.cpp, source/headers/geom.h, - source/headers/graphindex.h: Some performance improvements. git-svn-id: http://svn.osgeo.org/geos/trunk@49 + source/headers/graphindex.h: Some performance improvements. + git-svn-id: http://svn.osgeo.org/geos/trunk@49 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-11-14 Paul Ramsey @@ -32082,7 +38847,8 @@ * configure.in, source/Makefile.am, source/Makefile.in, source/bigtest/Makefile.am, source/bigtest/Makefile.in, source/geom/Makefile.am, source/geom/Makefile.in: Build support for - the bigtest programs. git-svn-id: http://svn.osgeo.org/geos/trunk@48 + the bigtest programs. git-svn-id: + http://svn.osgeo.org/geos/trunk@48 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-11-08 Yury Bychkov @@ -32095,7 +38861,8 @@ source/graph/index/SegmentIntersector.cpp, source/graph/index/SweepLineSegment.cpp, source/headers/geom.h, source/headers/graph.h, source/headers/graphindex.h: Preformance is - drastically improved git-svn-id: http://svn.osgeo.org/geos/trunk@47 + drastically improved git-svn-id: + http://svn.osgeo.org/geos/trunk@47 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-11-05 Yury Bychkov @@ -32105,30 +38872,34 @@ source/graph/index/SimpleMCSweepLineIntersector.cpp, source/headers/bigtest.h, source/operation/relate/RelateComputer.cpp: Code for generating - large tests added. git-svn-id: http://svn.osgeo.org/geos/trunk@46 + large tests added. git-svn-id: http://svn.osgeo.org/geos/trunk@46 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-31 Yury Bychkov * source/graph/index/SimpleMCSweepLineIntersector.cpp, source/io/StringTokenizer.cpp, source/test/XMLTester.cpp: XML tester - is less fragile now. git-svn-id: http://svn.osgeo.org/geos/trunk@45 + is less fragile now. git-svn-id: + http://svn.osgeo.org/geos/trunk@45 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-30 Paul Ramsey * config.guess, config.sub: Added configure support files for - building w/o automake/autoconf git-svn-id: http://svn.osgeo.org/geos/trunk@44 + building w/o automake/autoconf git-svn-id: + http://svn.osgeo.org/geos/trunk@44 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-30 Paul Ramsey - * configure.in: Small changes to make autoconf happy. git-svn-id: http://svn.osgeo.org/geos/trunk@43 + * configure.in: Small changes to make autoconf happy. git-svn-id: + http://svn.osgeo.org/geos/trunk@43 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-30 Paul Ramsey - * source/test/test.xml: Edited test file to not crash XMLTester git-svn-id: http://svn.osgeo.org/geos/trunk@42 + * source/test/test.xml: Edited test file to not crash XMLTester + git-svn-id: http://svn.osgeo.org/geos/trunk@42 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-30 Paul Ramsey @@ -32143,7 +38914,8 @@ source/operation/Makefile.in, source/operation/relate/Makefile.in, source/test/Makefile.am, source/test/Makefile.in, source/util/Makefile.in, tools/Makefile.in: New build changes - necessary to build under Linux GNU. git-svn-id: http://svn.osgeo.org/geos/trunk@41 + necessary to build under Linux GNU. git-svn-id: + http://svn.osgeo.org/geos/trunk@41 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-23 Norman Vine @@ -32162,7 +38934,7 @@ source/operation/GeometryGraphOperation.cpp, source/operation/relate/RelateComputer.cpp, source/test/CTS.cpp, source/test/SimpleWKTTester.cpp, source/test/XMLTester.cpp: GNU - portability changes git-svn-id: http://svn.osgeo.org/geos/trunk@40 + portability changes git-svn-id: http://svn.osgeo.org/geos/trunk@40 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-17 Yury Bychkov @@ -32173,7 +38945,8 @@ source/graph/GeometryGraph.cpp, source/graph/index/SegmentIntersector.cpp, source/headers/graphindex.h, source/test/XMLTester.cpp: All test - cases now work. Some are still too slow. git-svn-id: http://svn.osgeo.org/geos/trunk@39 + cases now work. Some are still too slow. git-svn-id: + http://svn.osgeo.org/geos/trunk@39 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-10-06 Yury Bychkov @@ -32192,7 +38965,8 @@ source/operation/relate/EdgeEndBundleStar.cpp, source/operation/relate/RelateComputer.cpp, source/operation/relate/RelateNodeGraph.cpp, - source/test/XMLTester.cpp: Relate() is almost debugged. git-svn-id: http://svn.osgeo.org/geos/trunk@38 + source/test/XMLTester.cpp: Relate() is almost debugged. + git-svn-id: http://svn.osgeo.org/geos/trunk@38 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-12 Fernando Villa @@ -32203,7 +38977,7 @@ source/operation/Makefile.am, source/operation/Makefile.in, source/operation/relate/Makefile.am, source/operation/relate/Makefile.in: Add makefile support for new - files and dir git-svn-id: http://svn.osgeo.org/geos/trunk@37 + files and dir git-svn-id: http://svn.osgeo.org/geos/trunk@37 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-12 Yury Bychkov @@ -32230,7 +39004,8 @@ source/operation/relate/RelateNodeFactory.cpp, source/operation/relate/RelateNodeGraph.cpp, source/operation/relate/RelateOp.cpp, source/test/XMLTester.cpp: - Relate is finished,but doesn't work yet. git-svn-id: http://svn.osgeo.org/geos/trunk@36 + Relate is finished,but doesn't work yet. git-svn-id: + http://svn.osgeo.org/geos/trunk@36 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-10 Fernando Villa @@ -32238,7 +39013,8 @@ * configure, configure.in, libtool, source/Makefile.am, source/Makefile.in, source/geom/Makefile.am, source/geom/Makefile.in, source/operation/Makefile.am, - source/operation/Makefile.in: Added operation/Makefiles git-svn-id: http://svn.osgeo.org/geos/trunk@35 + source/operation/Makefile.in: Added operation/Makefiles + git-svn-id: http://svn.osgeo.org/geos/trunk@35 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-06 Yury Bychkov @@ -32266,7 +39042,8 @@ source/headers/graph.h, source/headers/operation.h, source/operation/GeometryGraphOperation.cpp, source/operation/IsSimpleOp.cpp: A lot of changes: Code is brought - to version 1.2 of JTS. Compilable part of Operation added. git-svn-id: http://svn.osgeo.org/geos/trunk@34 + to version 1.2 of JTS. Compilable part of Operation added. + git-svn-id: http://svn.osgeo.org/geos/trunk@34 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-05 Fernando Villa @@ -32279,15 +39056,16 @@ source/io/markup/Makefile.in, source/test/Makefile.in, source/util/Makefile.in, tools/Makefile.in: Fixed version numbering. Whenever version numbers are bumped up the change should be - reflected in the AC_INIT_AUTOMAKE macro in configure.in. I've put - it at 0.0.1 - should be changed as appropriate. The version is - #define'd for code being compiled as GEOS_VERSION. git-svn-id: http://svn.osgeo.org/geos/trunk@33 + reflected in the AC_INIT_AUTOMAKE macro in configure.in. I've put it + at 0.0.1 - should be changed as appropriate. The version is + #define'd for code being compiled as GEOS_VERSION. git-svn-id: + http://svn.osgeo.org/geos/trunk@33 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-03 Paul Ramsey * source/test/Makefile.am: Changed reference to 'libgeom' to - 'libgeos' git-svn-id: http://svn.osgeo.org/geos/trunk@32 + 'libgeos' git-svn-id: http://svn.osgeo.org/geos/trunk@32 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-03 Fernando Villa @@ -32306,13 +39084,21 @@ source/io/markup/Makefile.in, source/test/Makefile.am, source/test/Makefile.in, source/util/Makefile.am, source/util/Makefile.in, tools/Makefile.am, tools/Makefile.in, - tools/geos-config.in: * Add automake/autoconf support for one-lib compilation * add libtool support for shared libraries. --enable-shared={yes|no} - and --enable-static={yes|no} control static and shared lib - generation. * Makefile.in and configure files added to cvs (for users without - automake) * add dir macros/ with a GEOS_INIT macro to be used in configure.in of other packages using geos (not used by geos itself) * add dir tools/ with geos-config script * the makefile in source/geom is the only one that generates a library - all others have the source files in EXTRA_DIST only * small glitch: 'make dist' will give errors trying to add the source files non local to source/geom to the archive using - relative paths. Does not have consequences other than the error - messages - will see if I can fix this. In general the one-lib, - complex-tree solution is not easy to work with in automake. git-svn-id: http://svn.osgeo.org/geos/trunk@31 + tools/geos-config.in: * Add automake/autoconf support for one-lib compilation * add + libtool support for shared libraries. --enable-shared={yes|no} and + --enable-static={yes|no} control static and shared lib generation. + * Makefile.in and configure files added to cvs (for users without + automake) * add dir macros/ with a GEOS_INIT macro to be used in + configure.in of other packages using geos (not used by geos + itself) * add dir tools/ with geos-config script * the makefile in + source/geom is the only one that generates a library - all others + have the source files in EXTRA_DIST only * small glitch: 'make + dist' will give errors trying to add the source files non local to + source/geom to the archive using relative paths. Does not have + consequences other than the error messages - will see if I can fix + this. In general the one-lib, complex-tree solution is not easy to + work with in automake. git-svn-id: + http://svn.osgeo.org/geos/trunk@31 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-01 Paul Ramsey @@ -32323,13 +39109,15 @@ source/algorithm/RobustLineIntersector.cpp, source/io/ParseException.cpp, source/io/WKTWriter.cpp, source/io/Writer.cpp, source/io/markup/MarkupSTL.cpp: Minor - portability changes. git-svn-id: http://svn.osgeo.org/geos/trunk@30 + portability changes. git-svn-id: + http://svn.osgeo.org/geos/trunk@30 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-01 Paul Ramsey * configure.in, source/Makefile.am, source/algorithm/Makefile.am: - Changes to support algorithm directory in build structure. git-svn-id: http://svn.osgeo.org/geos/trunk@29 + Changes to support algorithm directory in build structure. + git-svn-id: http://svn.osgeo.org/geos/trunk@29 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-09-01 Paul Ramsey @@ -32342,24 +39130,26 @@ source/geom/LineString.cpp, source/geom/Location.cpp, source/geom/MultiPoint.cpp, source/geom/PrecisionModel.cpp: GNU compatibility fixes, changing __min/__max to min/max, adding stdio.h - where needed, small syntax adjustments, newlines at end of files. git-svn-id: http://svn.osgeo.org/geos/trunk@28 + where needed, small syntax adjustments, newlines at end of files. + git-svn-id: http://svn.osgeo.org/geos/trunk@28 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Paul Ramsey - * COPYING: Added LGPL licence text. git-svn-id: http://svn.osgeo.org/geos/trunk@27 + * COPYING: Added LGPL licence text. git-svn-id: + http://svn.osgeo.org/geos/trunk@27 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Paul Ramsey * Authors => AUTHORS: Changed name of authors file as requested by - autoconf. git-svn-id: http://svn.osgeo.org/geos/trunk@26 + autoconf. git-svn-id: http://svn.osgeo.org/geos/trunk@26 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Paul Ramsey * autogen.sh: Removed --force-missing which did not work for my - version of autoconf git-svn-id: http://svn.osgeo.org/geos/trunk@25 + version of autoconf git-svn-id: http://svn.osgeo.org/geos/trunk@25 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Paul Ramsey @@ -32368,7 +39158,7 @@ source/graph/.cvsignore, source/graph/index/.cvsignore, source/io/.cvsignore, source/io/markup/.cvsignore, source/test/.cvsignore, source/util/.cvsignore: Added cvs ignore - files. git-svn-id: http://svn.osgeo.org/geos/trunk@24 + files. git-svn-id: http://svn.osgeo.org/geos/trunk@24 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Paul Ramsey @@ -32376,7 +39166,7 @@ * source/test/CTS.cpp, source/test/SimpleWKTTester.cpp, source/test/WKTIn, source/test/WKTOut, source/test/XMLTester.cpp, source/test/test.xml: Added the testing files back into their new - subdirectory. git-svn-id: http://svn.osgeo.org/geos/trunk@23 + subdirectory. git-svn-id: http://svn.osgeo.org/geos/trunk@23 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Paul Ramsey @@ -32389,7 +39179,8 @@ source/io/Makefile.am, source/io/markup/Makefile.am, source/test.xml, source/test/Makefile.am, source/util/Makefile.am: Added GNU autoconf support files submitted by Norman Vine. Moved - test files to a new subdirectory. git-svn-id: http://svn.osgeo.org/geos/trunk@22 + test files to a new subdirectory. git-svn-id: + http://svn.osgeo.org/geos/trunk@22 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-30 Yury Bychkov @@ -32413,7 +39204,7 @@ source/headers/graph.h, source/headers/graphindex.h, source/headers/operation.h, source/headers/platform.h, source/headers/util.h, source/io/WKTWriter.cpp: 'algorithm' is - almost complete git-svn-id: http://svn.osgeo.org/geos/trunk@21 + almost complete git-svn-id: http://svn.osgeo.org/geos/trunk@21 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-22 Yury Bychkov @@ -32428,13 +39219,15 @@ source/headers/geosAlgorithm.h, source/headers/graph.h, source/headers/graphindex.h, source/headers/io.h, source/headers/operation.h, source/headers/platform.h, - source/headers/util.h: 'graph/index' finished. Some .h changes. git-svn-id: http://svn.osgeo.org/geos/trunk@20 + source/headers/util.h: 'graph/index' finished. Some .h changes. + git-svn-id: http://svn.osgeo.org/geos/trunk@20 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-21 Yury Bychkov * source/graph/GeometryGraph.cpp, source/headers/graph.h, - source/headers/graphindex.h: Some changes in 'graph' git-svn-id: http://svn.osgeo.org/geos/trunk@19 + source/headers/graphindex.h: Some changes in 'graph' git-svn-id: + http://svn.osgeo.org/geos/trunk@19 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-20 Yury Bychkov @@ -32442,7 +39235,8 @@ * source/XMLTester.cpp, source/graph/Node.cpp, source/graph/NodeMap.cpp, source/graph/PlanarGraph.cpp, source/headers/geom.h, source/headers/geosAlgorithm.h, - source/headers/graph.h, source/headers/io.h: Changed consts to enums git-svn-id: http://svn.osgeo.org/geos/trunk@18 + source/headers/graph.h, source/headers/io.h: Changed consts to enums + git-svn-id: http://svn.osgeo.org/geos/trunk@18 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-08-14 Yury Bychkov @@ -32491,7 +39285,7 @@ source/io/markup/MarkupSTL.h, test.xml => source/test.xml, Assert.cpp => source/util/Assert.cpp, AssertionFailedException.cpp => source/util/AssertionFailedException.cpp: New structure of - source. git-svn-id: http://svn.osgeo.org/geos/trunk@17 + source. git-svn-id: http://svn.osgeo.org/geos/trunk@17 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-07-11 Yury Bychkov @@ -32500,12 +39294,14 @@ Geometry.cpp, GeometryCollection.cpp, GeometryFactory.cpp, Label.cpp, Position.cpp, TopologyLocation.cpp, WKTReader.cpp, WKTWriter.cpp, XMLTester.cpp, graph.h, operation.h, test.xml, - util.h: Assert and some graph classes git-svn-id: http://svn.osgeo.org/geos/trunk@16 + util.h: Assert and some graph classes git-svn-id: + http://svn.osgeo.org/geos/trunk@16 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-07-03 Yury Bychkov - * MarkupSTL.cpp, MarkupSTL.h, XMLTester.cpp: started XML tester git-svn-id: http://svn.osgeo.org/geos/trunk@15 + * MarkupSTL.cpp, MarkupSTL.h, XMLTester.cpp: started XML tester + git-svn-id: http://svn.osgeo.org/geos/trunk@15 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-07-02 Yury Bychkov @@ -32513,19 +39309,21 @@ * CTS.cpp, GeometryCollection.cpp, GeometryCollectionIterator.cpp, GeometryFactory.cpp, MultiPolygon.cpp, Polygon.cpp, SimpleWKTTester.cpp, WKTIn, WKTOut, WKTReader.cpp, WKTWriter.cpp, - geom.h, io.h: 'io' and SimpleTester done git-svn-id: http://svn.osgeo.org/geos/trunk@14 + geom.h, io.h: 'io' and SimpleTester done git-svn-id: + http://svn.osgeo.org/geos/trunk@14 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-27 Yury Bychkov * CTS.cpp, StringTokenizer.cpp, WKTWriter.cpp, Writer.cpp, io.h: - 'io' is almost done git-svn-id: http://svn.osgeo.org/geos/trunk@13 + 'io' is almost done git-svn-id: http://svn.osgeo.org/geos/trunk@13 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-26 Yury Bychkov * CTS.cpp, GeometryCollection.cpp, ParseException.cpp, Polygon.cpp, - StringTokenizer.cpp, WKTReader.cpp, io.h: Some 'io' classes done. git-svn-id: http://svn.osgeo.org/geos/trunk@12 + StringTokenizer.cpp, WKTReader.cpp, io.h: Some 'io' classes done. + git-svn-id: http://svn.osgeo.org/geos/trunk@12 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-21 Yury Bychkov @@ -32533,14 +39331,14 @@ * CTS.cpp, CoordinateList.cpp, Geometry.cpp, GeometryCollection.cpp, LineString.cpp, Point.cpp, Polygon.cpp, geom.h: 'geos': first pass done. Some external dependencies and - polishing left. git-svn-id: http://svn.osgeo.org/geos/trunk@11 + polishing left. git-svn-id: http://svn.osgeo.org/geos/trunk@11 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-20 Yury Bychkov * CTS.cpp, Geometry.cpp, GeometryCollection.cpp, GeometryCollectionIterator.cpp, GeometryFactory.cpp, geom.h: Only - Geometry.java left git-svn-id: http://svn.osgeo.org/geos/trunk@10 + Geometry.java left git-svn-id: http://svn.osgeo.org/geos/trunk@10 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-19 Yury Bychkov @@ -32548,20 +39346,22 @@ * CTS.cpp, CoordinateList.cpp, Geometry.cpp, GeometryCollection.cpp, LineString.cpp, LinearRing.cpp, MultiLineString.cpp, MultiPoint.cpp, MultiPolygon.cpp, Point.cpp, - Polygon.cpp, geom.h: 'geom' mostly done. git-svn-id: http://svn.osgeo.org/geos/trunk@9 + Polygon.cpp, geom.h: 'geom' mostly done. git-svn-id: + http://svn.osgeo.org/geos/trunk@9 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-14 Yury Bychkov * CTS.cpp, GeometryCollection.cpp, GeometryFactory.cpp, MultiLineString.cpp, MultiPoint.cpp, MultiPolygon.cpp, Polygon.cpp, - geom.h: 'geom' almost done git-svn-id: http://svn.osgeo.org/geos/trunk@8 + geom.h: 'geom' almost done git-svn-id: + http://svn.osgeo.org/geos/trunk@8 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-12 Yury Bychkov * CoordinateList.cpp, LineString.cpp, geom.h: LineString is 99% - finished git-svn-id: http://svn.osgeo.org/geos/trunk@7 + finished git-svn-id: http://svn.osgeo.org/geos/trunk@7 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-11 Yury Bychkov @@ -32569,18 +39369,14 @@ * CTS.cpp, Coordinate.cpp, CoordinateList.cpp, Dimension.cpp, Geometry.cpp, GeometryCollection.cpp, IntersectionMatrix.cpp, LineString.cpp, LinearRing.cpp, Location.cpp, Point.cpp, - PrecisionModel.cpp, geom.h, operation.h: 'geom' package 70% done git-svn-id: http://svn.osgeo.org/geos/trunk@6 + PrecisionModel.cpp, geom.h, operation.h: 'geom' package 70% done + git-svn-id: http://svn.osgeo.org/geos/trunk@6 5242fede-7e19-0410-aef8-94bd7d2200fb 2002-06-07 Paul Ramsey * CTS.cpp, Coordinate.cpp, CoordinateList.cpp, Dimension.cpp, Envelope.cpp, LineSegment.cpp, Location.cpp, geom.h, platform.h: - Initial revision git-svn-id: http://svn.osgeo.org/geos/trunk@2 - 5242fede-7e19-0410-aef8-94bd7d2200fb - -2002-06-07 No Body - - * New repository initialized by cvs2svn. git-svn-id: http://svn.osgeo.org/geos/trunk@1 + Initial revision git-svn-id: http://svn.osgeo.org/geos/trunk@2 5242fede-7e19-0410-aef8-94bd7d2200fb diff -Nru geos-3.6.2/cmake/modules/GenerateSourceGroups.cmake geos-3.7.1/cmake/modules/GenerateSourceGroups.cmake --- geos-3.6.2/cmake/modules/GenerateSourceGroups.cmake 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/cmake/modules/GenerateSourceGroups.cmake 2017-09-05 18:35:12.000000000 +0000 @@ -0,0 +1,17 @@ +# +# Macro generates tree of IDE source groups based on folders structure +# Source: http://www.cmake.org/pipermail/cmake/2013-November/056332.html +# +macro(GenerateSourceGroups curdir) + file(GLOB children RELATIVE ${PROJECT_SOURCE_DIR}/${curdir} ${PROJECT_SOURCE_DIR}/${curdir}/*) + foreach(child ${children}) + if(IS_DIRECTORY ${PROJECT_SOURCE_DIR}/${curdir}/${child}) + GenerateSourceGroups(${curdir}/${child}) + else() + string(REPLACE "/" "\\" groupname ${curdir}) + # I would like to call the src root folder in a different name, only in visual studio (not mandatory requirement) + string(REPLACE "src" "Source Files" groupname ${groupname}) + source_group(${groupname} FILES ${PROJECT_SOURCE_DIR}/${curdir}/${child}) + endif() + endforeach() +endmacro() \ No newline at end of file diff -Nru geos-3.6.2/CMakeLists.txt geos-3.7.1/CMakeLists.txt --- geos-3.6.2/CMakeLists.txt 2017-07-25 09:16:30.000000000 +0000 +++ geos-3.7.1/CMakeLists.txt 2018-11-29 22:42:00.000000000 +0000 @@ -10,16 +10,32 @@ # See the COPYING file for more information. # ################################################################################# -project(GEOS) -cmake_minimum_required(VERSION 3.0.0) +cmake_minimum_required(VERSION 3.1.3) if(NOT CMAKE_VERSION) set(CMAKE_VERSION "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}") endif() -# Location of custom CMake modules with macros used by GEOS -set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/modules") +if(POLICY CMP0048) + cmake_policy(SET CMP0048 NEW) +endif() +################################################################################# +# Set GEOS project +################################################################################# +project(GEOS VERSION 3.7.0 LANGUAGES C CXX) + +# Add custom GEOS modules for CMake +list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/modules") + +################################################################################# +# Set C++ standard +################################################################################# +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + +message(STATUS "Setting C++ requirement to C++${CMAKE_CXX_STANDARD}") ################################################################################# # Setup GEOS version @@ -27,19 +43,23 @@ # GEOS release version # GEOS C++ library SONAME will use these encoding ABI break at every release -set(VERSION_MAJOR 3) -set(VERSION_MINOR 6) -set(VERSION_PATCH 2) -set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") +set(GEOS_VERSION "${GEOS_VERSION_MAJOR}.${GEOS_VERSION_MINOR}.${GEOS_VERSION_PATCH}") +set(VERSION "${GEOS_VERSION}") + +# Copy version components into different variable names to match those used +# by autotools for *.h.in files +set(VERSION_MAJOR ${GEOS_VERSION_MAJOR}) +set(VERSION_MINOR ${GEOS_VERSION_MINOR}) +set(VERSION_PATCH ${GEOS_VERSION_PATCH}) # JTS_PORT is the version of JTS this release is bound to set(JTS_PORT 1.13.0) message(STATUS "Setting GEOS version ${VERSION} as port of JTS ${JTS_PORT}") # GEOS C API version -set(CAPI_INTERFACE_CURRENT 11) -set(CAPI_INTERFACE_REVISION 2) -set(CAPI_INTERFACE_AGE 10) +set(CAPI_INTERFACE_CURRENT 12) +set(CAPI_INTERFACE_REVISION 0) +set(CAPI_INTERFACE_AGE 11) math(EXPR CAPI_VERSION_MAJOR "${CAPI_INTERFACE_CURRENT} - ${CAPI_INTERFACE_AGE}") set(CAPI_VERSION_MINOR ${CAPI_INTERFACE_AGE}) @@ -55,9 +75,6 @@ # Check custom global options ################################################################################# -option(GEOS_ENABLE_TESTS - "Set to OFF|ON (default) to control build of GEOS tests package" ON) - option(GEOS_ENABLE_INLINE "Set to OFF|ON (default) to control GEOS compilation with small functions inlining" ON) @@ -66,6 +83,12 @@ "Set to ON|OFF (default) to build GEOS with assert() macro enabled" OFF) endif() +option(GEOS_ENABLE_TESTS + "Set to OFF|ON (default) to control build of GEOS tests package" ON) + +option(GEOS_ENABLE_TESTS_UNIT2_ONLY + "Set to ON|OFF (default) to enable only new tests based on Catch (WIP: experimental)." OFF) + option(GEOS_BUILD_STATIC "Set to OFF|ON (default) to build GEOS static libraries" ON) @@ -87,9 +110,6 @@ ################################################################################# # Setup C/C++ compiler options ################################################################################# -set(CMAKE_CXX_STANDARD 98) -set(CMAKE_CXX_STANDARD_REQUIRED ON) - if(NOT MSVC_IDE) if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Debug CACHE STRING @@ -102,10 +122,12 @@ add_definitions(-D_DEBUG) endif() +add_definitions(-DUSE_UNSTABLE_GEOS_CPP_API) + if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX) # General options - set(CMAKE_CXX_FLAGS "-pedantic -ansi ${CMAKE_CXX_FLAGS}") + set(CMAKE_C_FLAGS "-pedantic -ansi ${CMAKE_C_FLAGS}") # Numerical stability if(GEOS_ENABLE_FLOATSTORE) @@ -116,10 +138,10 @@ "Forcing IEEE 754 using flag -ffloat-store - ${GEOS_ENABLE_FLOATSTORE}") # Warnings specification - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-long-long") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-long-long -fno-implicit-inline-templates -Wconversion -pedantic -W -Wunused -Wuninitialized -Wextra -Wdouble-promotion") # Turn on Position Independent Code generation for GEOS C shared library - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall -Wconversion -pedantic -Wmissing-prototypes -W -Wunused -Wuninitialized -Wextra -Wdouble-promotion") # Enable glibc ISO C99 features (macros isfinite, isnan) set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_ISOC99_SOURCE=1") @@ -130,16 +152,8 @@ #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4") string(REGEX REPLACE "/W[0-9]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - if(NOT (MSVC_VERSION LESS 1400)) # Visual Studio 2005 or later - - # Option is to enable the /MP switch for Visual Studio 2005 or later - option(GEOS_MSVC_ENABLE_MP - "Set to ON to build GEOS with the /MP option (Visual Studio 2005 and above)." ON) - mark_as_advanced(GEOS_MSVC_ENABLE_MP) - if(GEOS_MSVC_ENABLE_MP) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") - endif() - message(STATUS "Setting Visual Studio 2005+ option /MP to ${GEOS_MSVC_ENABLE_MP}") + if(MSVC) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") add_definitions(-D_SCL_SECURE_NO_WARNINGS) add_definitions(-D_CRT_SECURE_NO_WARNINGS) @@ -249,62 +263,27 @@ ################################################################################# # Setup checks and generate config headers ################################################################################# +find_package(Git) -################################################################################# -# MACRO: GET_SVN_REVISION -# -# DESCRIPTION: -# MACRO FOR GETTING THE SVN revision for this build -################################################################################# -MACRO (GET_SVN_REVISION) - FIND_PACKAGE(Subversion) - IF(SUBVERSION_FOUND) - Subversion_WC_INFO(${PROJECT_SOURCE_DIR} Project) - # MESSAGE("Current revision is ${Project_WC_REVISION}") - # Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project) - # MESSAGE("Last changed log is ${Project_LAST_CHANGED_LOG}") - ENDIF() -ENDMACRO(GET_SVN_REVISION) - -# Determine SVN/Git revision -# Determine SVN/Git revision -if(EXISTS "${PROJECT_SOURCE_DIR}/.svn") - GET_SVN_REVISION() -endif() - -# geos_revision.h does not exists in source or binary directory, we generate it -if( NOT EXISTS "${PROJECT_SOURCE_DIR}/geos_revision.h" AND - NOT EXISTS "${PROJECT_BINARY_DIR}/geos_revision.h") - - message(STATUS "Generating GEOS revision header in ${PROJECT_BINARY_DIR}/geos_revision.h") - - # CI builds (Travis CI, AppVeyor, etc.) perform git clone, not svn checkout. - # So, CI environment needs a dummy revision to generate the required header. - if (DEFINED ENV{CI}) - set(Project_WC_REVISION 999999) - endif() +message(STATUS "Generating GEOS ${PROJECT_BINARY_DIR}/geos_revision.h") +file(WRITE ${CMAKE_BINARY_DIR}/geos_revision.h.in "\#define GEOS_REVISION \"@GEOS_REVISION@\"\n") - if ( NOT ${Project_WC_REVISION} EQUAL 0 ) - set( GEOS_REVISION ${Project_WC_REVISION} ) - configure_file ( - "${PROJECT_SOURCE_DIR}/tools/geos_revision_cmake.h.in" - "${PROJECT_BINARY_DIR}/geos_revision.h" ) - else() - find_program(SH sh) - if(SH) - execute_process(COMMAND ${SH} -c - "cd ${PROJECT_SOURCE_DIR} && ${PROJECT_SOURCE_DIR}/tools/repo_revision.sh") - - file(RENAME "${PROJECT_SOURCE_DIR}/geos_revision.h" - "${PROJECT_BINARY_DIR}/geos_revision.h") - else() - message("*** sh-compatible command not found, cannot create geos_revision.h") - message("*** Check SVN revision and create revision header manually:") - message("*** echo '#define GEOS_REVISION XYZ' > ${PROJECT_SOURCE_DIR}/geos_revision.h") - endif() - endif() -endif() -# End: Determine SVN/Git revision +file(WRITE ${CMAKE_BINARY_DIR}/geos_revision.cmake +" +execute_process(COMMAND \${GIT} describe --tags --always + WORKING_DIRECTORY \${CWD} + OUTPUT_VARIABLE GEOS_REVISION + OUTPUT_STRIP_TRAILING_WHITESPACE) +configure_file(\${SRC} \${DST} @ONLY) +") + +add_custom_target(geos_revision + COMMAND ${CMAKE_COMMAND} + -D CWD=${CMAKE_CURRENT_SOURCE_DIR} + -D GIT=${GIT_EXECUTABLE} + -D SRC=${PROJECT_BINARY_DIR}/geos_revision.h.in + -D DST=${PROJECT_BINARY_DIR}/geos_revision.h + -P ${PROJECT_BINARY_DIR}/geos_revision.cmake) if(EXISTS ${PROJECT_SOURCE_DIR}/include/geos/platform.h) message(STATUS "Disabling existing ${PROJECT_SOURCE_DIR}/include/geos/platform.h") @@ -338,17 +317,31 @@ # Configure tests ################################################################################# -if(GEOS_ENABLE_TESTS) +if(GEOS_ENABLE_TESTS OR GEOS_ENABLE_TESTS_UNIT2_ONLY) enable_testing() # Define "make check" as alias for "make test" add_custom_target(check COMMAND ctest) endif() ################################################################################# -# Configure subdirectories +# IDE specifics ################################################################################# +if (MSVC_IDE) + # Visual Studio 2017 supports .editorconfig, copy it next to generated .sln + message(STATUS "Copying .editorconfig file to ${PROJECT_BINARY_DIR}") + file(COPY "${PROJECT_SOURCE_DIR}/.editorconfig" + DESTINATION "${PROJECT_BINARY_DIR}") +endif() + include(GenerateSourceGroups) +# Enable target debugging for CMake Tools in Visual Studio Code +# https://github.com/vector-of-bool/vscode-cmake-tools +include(CMakeToolsHelpers OPTIONAL) + +################################################################################# +# Configure subdirectories +################################################################################# add_subdirectory(include) add_subdirectory(src) add_subdirectory(capi) diff -Nru geos-3.6.2/compile geos-3.7.1/compile --- geos-3.6.2/compile 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/compile 2018-11-29 23:05:16.000000000 +0000 @@ -1,9 +1,9 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-10-14.11; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -255,7 +255,8 @@ echo "compile $scriptversion" exit $? ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ + icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac @@ -339,9 +340,9 @@ # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru geos-3.6.2/config.guess geos-3.7.1/config.guess --- geos-3.6.2/config.guess 2016-09-03 18:32:14.000000000 +0000 +++ geos-3.7.1/config.guess 2017-09-05 18:37:08.000000000 +0000 @@ -1,8 +1,8 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2013 Free Software Foundation, Inc. +# Copyright 1992-2014 Free Software Foundation, Inc. -timestamp='2013-06-10' +timestamp='2014-11-04' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -24,12 +24,12 @@ # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # -# Originally written by Per Bothner. +# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD # -# Please send patches with a ChangeLog entry to config-patches@gnu.org. +# Please send patches to . me=`echo "$0" | sed -e 's,.*/,,'` @@ -50,7 +50,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2013 Free Software Foundation, Inc. +Copyright 1992-2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -149,7 +149,7 @@ LIBC=gnu #endif EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` ;; esac @@ -579,8 +579,9 @@ else IBM_ARCH=powerpc fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` + if [ -x /usr/bin/lslpp ] ; then + IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | + awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi @@ -826,7 +827,7 @@ *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; - i*:MSYS*:*) + *:MSYS*:*) echo ${UNAME_MACHINE}-pc-msys exit ;; i*:windows32*:*) @@ -969,10 +970,10 @@ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } ;; - or1k:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + openrisc*:Linux:*:*) + echo or1k-unknown-linux-${LIBC} exit ;; - or32:Linux:*:*) + or32:Linux:*:* | or1k*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; padre:Linux:*:*) @@ -1260,16 +1261,26 @@ if test "$UNAME_PROCESSOR" = unknown ; then UNAME_PROCESSOR=powerpc fi - if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac + if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi fi + elif test "$UNAME_PROCESSOR" = i386 ; then + # Avoid executing cc on OS X 10.9, as it ships with a stub + # that puts up a graphical alert prompting to install + # developer tools. Any system running Mac OS X 10.7 or + # later (Darwin 11 and later) is required to have a 64-bit + # processor. This is not true of the ARM version of Darwin + # that Apple uses in portable devices. + UNAME_PROCESSOR=x86_64 fi echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit ;; @@ -1361,154 +1372,6 @@ exit ;; esac -eval $set_cc_for_build -cat >$dummy.c < -# include -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix\n"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - c34*) - echo c34-convex-bsd - exit ;; - c38*) - echo c38-convex-bsd - exit ;; - c4*) - echo c4-convex-bsd - exit ;; - esac -fi - cat >&2 <. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. @@ -68,7 +68,7 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2013 Free Software Foundation, Inc. +Copyright 1992-2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -265,6 +265,7 @@ | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ + | k1om \ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ @@ -282,8 +283,10 @@ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ + | mipsisa32r6 | mipsisa32r6el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64r6 | mipsisa64r6el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipsr5900 | mipsr5900el \ @@ -295,11 +298,11 @@ | nds32 | nds32le | nds32be \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ - | open8 \ - | or1k | or32 \ + | open8 | or1k | or1knd | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ + | riscv32 | riscv64 \ | rl78 | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ @@ -310,6 +313,7 @@ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | visium \ | we32k \ | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) @@ -324,7 +328,10 @@ c6x) basic_machine=tic6x-unknown ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) + leon|leon[3-9]) + basic_machine=sparc-$basic_machine + ;; + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=-none ;; @@ -381,6 +388,7 @@ | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ + | k1om-* \ | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ @@ -400,8 +408,10 @@ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa32r6-* | mipsisa32r6el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64r6-* | mipsisa64r6el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipsr5900-* | mipsr5900el-* \ @@ -413,6 +423,7 @@ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ + | or1k*-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ @@ -430,6 +441,7 @@ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | vax-* \ + | visium-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ @@ -767,6 +779,9 @@ basic_machine=m68k-isi os=-sysv ;; + leon-*|leon[3-9]-*) + basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` + ;; m68knommu) basic_machine=m68k-unknown os=-linux @@ -822,6 +837,10 @@ basic_machine=powerpc-unknown os=-morphos ;; + moxiebox) + basic_machine=moxie-unknown + os=-moxiebox + ;; msdos) basic_machine=i386-pc os=-msdos @@ -1367,14 +1386,14 @@ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* \ + | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) + | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) @@ -1592,9 +1611,6 @@ mips*-*) os=-elf ;; - or1k-*) - os=-elf - ;; or32-*) os=-coff ;; diff -Nru geos-3.6.2/configure geos-3.7.1/configure --- geos-3.6.2/configure 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/configure 2018-11-29 23:05:20.000000000 +0000 @@ -643,6 +643,7 @@ INTERFACE_AGE INTERFACE_REVISION INTERFACE_CURRENT +VERSION_RELEASE VERSION_PATCH VERSION_MINOR VERSION_MAJOR @@ -651,7 +652,9 @@ RUBY_SHARED_LIB RUBY_SO_NAME RUBY_EXTENSION_DIR +RUBY_ARCH_LIB_DIR RUBY_LIB_DIR +RUBY_ARCH_INCLUDE_DIR RUBY_INCLUDE_DIR RUBY_SITE_ARCH RUBY_BIN_DIR @@ -680,6 +683,7 @@ SWIG AM_CFLAGS AM_CXXFLAGS +HAVE_CXX11 INLINE_FLAGS ALLOCA LIBOBJS @@ -721,7 +725,6 @@ AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE -am__quote am__include DEPDIR OBJEXT @@ -792,7 +795,6 @@ docdir oldincludedir includedir -runstatedir localstatedir sharedstatedir sysconfdir @@ -811,7 +813,8 @@ PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR -SHELL' +SHELL +am__quote' ac_subst_files='' ac_user_opts=' enable_option_checking @@ -885,7 +888,6 @@ sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE}' @@ -1138,15 +1140,6 @@ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; - -runstatedir | --runstatedir | --runstatedi | --runstated \ - | --runstate | --runstat | --runsta | --runst | --runs \ - | --run | --ru | --r) - ac_prev=runstatedir ;; - -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ - | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ - | --run=* | --ru=* | --r=*) - runstatedir=$ac_optarg ;; - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1284,7 +1277,7 @@ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir runstatedir + libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1437,7 +1430,6 @@ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -2622,21 +2614,22 @@ JTS_PORT=1.13.0 -CAPI_INTERFACE_CURRENT=11 -CAPI_INTERFACE_REVISION=2 -CAPI_INTERFACE_AGE=10 +CAPI_INTERFACE_CURRENT=12 +CAPI_INTERFACE_REVISION=1 +CAPI_INTERFACE_AGE=11 VERSION_MAJOR=3 -VERSION_MINOR=6 -VERSION_PATCH=2 +VERSION_MINOR=7 +VERSION_PATCH=1 VERSION="$VERSION_MAJOR.$VERSION_MINOR.$VERSION_PATCH" +VERSION_RELEASE=`echo "$VERSION" | sed -E 's/^([0-9]+\.[0-9]+\.[0-9]+).*$/\1/'` CAPI_VERSION_MAJOR=`expr $CAPI_INTERFACE_CURRENT - $CAPI_INTERFACE_AGE` CAPI_VERSION_MINOR=$CAPI_INTERFACE_AGE CAPI_VERSION_PATCH=$CAPI_INTERFACE_REVISION CAPI_VERSION="$CAPI_VERSION_MAJOR.$CAPI_VERSION_MINOR.$CAPI_VERSION_PATCH" -am__api_version='1.15' +am__api_version='1.16' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -3144,8 +3137,8 @@ # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: -# -# +# +# mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The @@ -3196,7 +3189,7 @@ Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . +that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM @@ -4083,45 +4076,45 @@ ac_config_commands="$ac_config_commands depfiles" - -am_make=${MAKE-make} -cat > confinc << 'END' +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 +$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; } +cat > confinc.mk << 'END' am__doit: - @echo this is the am__doit target + @echo this is the am__doit target >confinc.out .PHONY: am__doit END -# If we don't find an include directive, just comment out the code. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 -$as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD +# BSD make does it like this. +echo '.include "confinc.mk" # ignored' > confmf.BSD +# Other make implementations (GNU, Solaris 10, AIX) do it like this. +echo 'include confinc.mk # ignored' > confmf.GNU +_am_result=no +for s in GNU BSD; do + { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5 + (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + case $?:`cat confinc.out 2>/dev/null` in #( + '0:this is the am__doit target') : + case $s in #( + BSD) : + am__include='.include' am__quote='"' ;; #( + *) : + am__include='include' am__quote='' ;; +esac ;; #( + *) : ;; - esac -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 -$as_echo "$_am_result" >&6; } -rm -f confinc confmf +esac + if test "$am__include" != "#"; then + _am_result="yes ($s style)" + break + fi +done +rm -f confinc.* confmf.* +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 +$as_echo "${_am_result}" >&6; } # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : @@ -4272,6 +4265,11 @@ + + +$as_echo "#define USE_UNSTABLE_GEOS_CPP_API 1" >>confdefs.h + + enable_dlopen=yes @@ -5814,7 +5812,7 @@ lt_cv_deplibs_check_method=pass_all ;; -netbsd* | netbsdelf*-gnu) +netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else @@ -9500,9 +9498,6 @@ openbsd* | bitrig*) with_gnu_ld=no ;; - linux* | k*bsd*-gnu | gnu*) - link_all_deplibs=no - ;; esac ld_shlibs=yes @@ -9757,7 +9752,7 @@ fi ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -10427,7 +10422,6 @@ if test yes = "$lt_cv_irix_exported_symbol"; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi - link_all_deplibs=no else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@ -10449,7 +10443,7 @@ esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -11564,18 +11558,6 @@ dynamic_linker='GNU/Linux ld.so' ;; -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - netbsd*) version_type=sunos need_lib_prefix=no @@ -14888,7 +14870,7 @@ ;; esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise @@ -15263,9 +15245,6 @@ ;; esac ;; - linux* | k*bsd*-gnu | gnu*) - link_all_deplibs_CXX=no - ;; *) export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@ -15959,18 +15938,6 @@ dynamic_linker='GNU/Linux ld.so' ;; -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - netbsd*) version_type=sunos need_lib_prefix=no @@ -17512,12 +17479,755 @@ fi + ax_cxx_compile_cxx11_required=true + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + ac_success=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features by default" >&5 +$as_echo_n "checking whether $CXX supports C++11 features by default... " >&6; } +if ${ax_cv_cxx_compile_cxx11+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +// If the compiler admits that it is not ready for C++11, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201103L + +#error "This is not a C++11 compiler" + +#else + +namespace cxx11 +{ + + namespace test_static_assert + { + + template + struct check + { + static_assert(sizeof(int) <= sizeof(T), "not big enough"); + }; + + } + + namespace test_final_override + { + + struct Base + { + virtual void f() {} + }; + + struct Derived : public Base + { + virtual void f() override {} + }; + + } + + namespace test_double_right_angle_brackets + { + + template < typename T > + struct check {}; + + typedef check single_type; + typedef check> double_type; + typedef check>> triple_type; + typedef check>>> quadruple_type; + + } + + namespace test_decltype + { + + int + f() + { + int a = 1; + decltype(a) b = 2; + return a + b; + } + + } + + namespace test_type_deduction + { + + template < typename T1, typename T2 > + struct is_same + { + static const bool value = false; + }; + + template < typename T > + struct is_same + { + static const bool value = true; + }; + + template < typename T1, typename T2 > + auto + add(T1 a1, T2 a2) -> decltype(a1 + a2) + { + return a1 + a2; + } + + int + test(const int c, volatile int v) + { + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == false, ""); + auto ac = c; + auto av = v; + auto sumi = ac + av + 'x'; + auto sumf = ac + av + 1.0; + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == true, ""); + return (sumf > 0.0) ? sumi : add(c, v); + } + + } + + namespace test_noexcept + { + + int f() { return 0; } + int g() noexcept { return 0; } + + static_assert(noexcept(f()) == false, ""); + static_assert(noexcept(g()) == true, ""); + + } + + namespace test_constexpr + { + + template < typename CharT > + unsigned long constexpr + strlen_c_r(const CharT *const s, const unsigned long acc) noexcept + { + return *s ? strlen_c_r(s + 1, acc + 1) : acc; + } + + template < typename CharT > + unsigned long constexpr + strlen_c(const CharT *const s) noexcept + { + return strlen_c_r(s, 0UL); + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("1") == 1UL, ""); + static_assert(strlen_c("example") == 7UL, ""); + static_assert(strlen_c("another\0example") == 7UL, ""); + + } + + namespace test_rvalue_references + { + + template < int N > + struct answer + { + static constexpr int value = N; + }; + + answer<1> f(int&) { return answer<1>(); } + answer<2> f(const int&) { return answer<2>(); } + answer<3> f(int&&) { return answer<3>(); } + + void + test() + { + int i = 0; + const int c = 0; + static_assert(decltype(f(i))::value == 1, ""); + static_assert(decltype(f(c))::value == 2, ""); + static_assert(decltype(f(0))::value == 3, ""); + } + + } + + namespace test_uniform_initialization + { + + struct test + { + static const int zero {}; + static const int one {1}; + }; + + static_assert(test::zero == 0, ""); + static_assert(test::one == 1, ""); + + } + + namespace test_lambdas + { + + void + test1() + { + auto lambda1 = [](){}; + auto lambda2 = lambda1; + lambda1(); + lambda2(); + } + + int + test2() + { + auto a = [](int i, int j){ return i + j; }(1, 2); + auto b = []() -> int { return '0'; }(); + auto c = [=](){ return a + b; }(); + auto d = [&](){ return c; }(); + auto e = [a, &b](int x) mutable { + const auto identity = [](int y){ return y; }; + for (auto i = 0; i < a; ++i) + a += b--; + return x + identity(a + b); + }(0); + return a + b + c + d + e; + } + + int + test3() + { + const auto nullary = [](){ return 0; }; + const auto unary = [](int x){ return x; }; + using nullary_t = decltype(nullary); + using unary_t = decltype(unary); + const auto higher1st = [](nullary_t f){ return f(); }; + const auto higher2nd = [unary](nullary_t f1){ + return [unary, f1](unary_t f2){ return f2(unary(f1())); }; + }; + return higher1st(nullary) + higher2nd(nullary)(unary); + } + + } + + namespace test_variadic_templates + { + + template + struct sum; + + template + struct sum + { + static constexpr auto value = N0 + sum::value; + }; + + template <> + struct sum<> + { + static constexpr auto value = 0; + }; + + static_assert(sum<>::value == 0, ""); + static_assert(sum<1>::value == 1, ""); + static_assert(sum<23>::value == 23, ""); + static_assert(sum<1, 2>::value == 3, ""); + static_assert(sum<5, 5, 11>::value == 21, ""); + static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); + + } + + // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae + // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function + // because of this. + namespace test_template_alias_sfinae + { + + struct foo {}; + + template + using member = typename T::member_type; + + template + void func(...) {} + + template + void func(member*) {} + + void test(); + + void test() { func(0); } + + } + +} // namespace cxx11 + +#endif // __cplusplus >= 201103L + + + +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ax_cv_cxx_compile_cxx11=yes +else + ax_cv_cxx_compile_cxx11=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_cxx_compile_cxx11" >&5 +$as_echo "$ax_cv_cxx_compile_cxx11" >&6; } + if test x$ax_cv_cxx_compile_cxx11 = xyes; then + ac_success=yes + fi + + + + if test x$ac_success = xno; then + for switch in -std=c++11 -std=c++0x +std=c++11 "-h std=c++11"; do + cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5 +$as_echo_n "checking whether $CXX supports C++11 features with $switch... " >&6; } +if eval \${$cachevar+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_CXX="$CXX" + CXX="$CXX $switch" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +// If the compiler admits that it is not ready for C++11, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201103L + +#error "This is not a C++11 compiler" + +#else + +namespace cxx11 +{ + + namespace test_static_assert + { + + template + struct check + { + static_assert(sizeof(int) <= sizeof(T), "not big enough"); + }; + + } + + namespace test_final_override + { + + struct Base + { + virtual void f() {} + }; + + struct Derived : public Base + { + virtual void f() override {} + }; + + } + + namespace test_double_right_angle_brackets + { + + template < typename T > + struct check {}; + + typedef check single_type; + typedef check> double_type; + typedef check>> triple_type; + typedef check>>> quadruple_type; + + } + + namespace test_decltype + { + + int + f() + { + int a = 1; + decltype(a) b = 2; + return a + b; + } + + } + + namespace test_type_deduction + { + + template < typename T1, typename T2 > + struct is_same + { + static const bool value = false; + }; + + template < typename T > + struct is_same + { + static const bool value = true; + }; + + template < typename T1, typename T2 > + auto + add(T1 a1, T2 a2) -> decltype(a1 + a2) + { + return a1 + a2; + } + + int + test(const int c, volatile int v) + { + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == false, ""); + auto ac = c; + auto av = v; + auto sumi = ac + av + 'x'; + auto sumf = ac + av + 1.0; + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == true, ""); + return (sumf > 0.0) ? sumi : add(c, v); + } + + } + + namespace test_noexcept + { + + int f() { return 0; } + int g() noexcept { return 0; } + + static_assert(noexcept(f()) == false, ""); + static_assert(noexcept(g()) == true, ""); + + } + + namespace test_constexpr + { + + template < typename CharT > + unsigned long constexpr + strlen_c_r(const CharT *const s, const unsigned long acc) noexcept + { + return *s ? strlen_c_r(s + 1, acc + 1) : acc; + } + + template < typename CharT > + unsigned long constexpr + strlen_c(const CharT *const s) noexcept + { + return strlen_c_r(s, 0UL); + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("1") == 1UL, ""); + static_assert(strlen_c("example") == 7UL, ""); + static_assert(strlen_c("another\0example") == 7UL, ""); + + } + + namespace test_rvalue_references + { + + template < int N > + struct answer + { + static constexpr int value = N; + }; + + answer<1> f(int&) { return answer<1>(); } + answer<2> f(const int&) { return answer<2>(); } + answer<3> f(int&&) { return answer<3>(); } + + void + test() + { + int i = 0; + const int c = 0; + static_assert(decltype(f(i))::value == 1, ""); + static_assert(decltype(f(c))::value == 2, ""); + static_assert(decltype(f(0))::value == 3, ""); + } + + } + + namespace test_uniform_initialization + { + + struct test + { + static const int zero {}; + static const int one {1}; + }; + + static_assert(test::zero == 0, ""); + static_assert(test::one == 1, ""); + + } + + namespace test_lambdas + { + + void + test1() + { + auto lambda1 = [](){}; + auto lambda2 = lambda1; + lambda1(); + lambda2(); + } + + int + test2() + { + auto a = [](int i, int j){ return i + j; }(1, 2); + auto b = []() -> int { return '0'; }(); + auto c = [=](){ return a + b; }(); + auto d = [&](){ return c; }(); + auto e = [a, &b](int x) mutable { + const auto identity = [](int y){ return y; }; + for (auto i = 0; i < a; ++i) + a += b--; + return x + identity(a + b); + }(0); + return a + b + c + d + e; + } + + int + test3() + { + const auto nullary = [](){ return 0; }; + const auto unary = [](int x){ return x; }; + using nullary_t = decltype(nullary); + using unary_t = decltype(unary); + const auto higher1st = [](nullary_t f){ return f(); }; + const auto higher2nd = [unary](nullary_t f1){ + return [unary, f1](unary_t f2){ return f2(unary(f1())); }; + }; + return higher1st(nullary) + higher2nd(nullary)(unary); + } + + } + + namespace test_variadic_templates + { + + template + struct sum; + + template + struct sum + { + static constexpr auto value = N0 + sum::value; + }; + + template <> + struct sum<> + { + static constexpr auto value = 0; + }; + + static_assert(sum<>::value == 0, ""); + static_assert(sum<1>::value == 1, ""); + static_assert(sum<23>::value == 23, ""); + static_assert(sum<1, 2>::value == 3, ""); + static_assert(sum<5, 5, 11>::value == 21, ""); + static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); + + } + + // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae + // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function + // because of this. + namespace test_template_alias_sfinae + { + + struct foo {}; + + template + using member = typename T::member_type; + + template + void func(...) {} + + template + void func(member*) {} + + void test(); + + void test() { func(0); } + + } + +} // namespace cxx11 + +#endif // __cplusplus >= 201103L + + + +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + eval $cachevar=yes +else + eval $cachevar=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CXX="$ac_save_CXX" +fi +eval ac_res=\$$cachevar + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + fi + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + if test x$ax_cxx_compile_cxx11_required = xtrue; then + if test x$ac_success = xno; then + as_fn_error $? "*** A compiler with support for C++11 language features is required." "$LINENO" 5 + fi + fi + if test x$ac_success = xno; then + HAVE_CXX11=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++11 support was found" >&5 +$as_echo "$as_me: No compiler with C++11 support was found" >&6;} + else + HAVE_CXX11=1 + +$as_echo "#define HAVE_CXX11 1" >>confdefs.h + + fi + + + +WARNFLAGS="" +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C++ compiler accepts -Wsuggest-override -Werror" >&5 +$as_echo_n "checking whether C++ compiler accepts -Wsuggest-override -Werror... " >&6; } +if ${ax_cv_check_cxxflags___Wsuggest_override__Werror+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CXXFLAGS + CXXFLAGS="$CXXFLAGS -Wsuggest-override -Werror" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ax_cv_check_cxxflags___Wsuggest_override__Werror=yes +else + ax_cv_check_cxxflags___Wsuggest_override__Werror=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CXXFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cxxflags___Wsuggest_override__Werror" >&5 +$as_echo "$ax_cv_check_cxxflags___Wsuggest_override__Werror" >&6; } +if test "x$ax_cv_check_cxxflags___Wsuggest_override__Werror" = xyes; then : + WARNFLAGS="$WARNFLAGS -Wsuggest-override" +else + : +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C++ compiler accepts -Wmissing-override -Werror" >&5 +$as_echo_n "checking whether C++ compiler accepts -Wmissing-override -Werror... " >&6; } +if ${ax_cv_check_cxxflags___Wmissing_override__Werror+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CXXFLAGS + CXXFLAGS="$CXXFLAGS -Wmissing-override -Werror" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ax_cv_check_cxxflags___Wmissing_override__Werror=yes +else + ax_cv_check_cxxflags___Wmissing_override__Werror=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CXXFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cxxflags___Wmissing_override__Werror" >&5 +$as_echo "$ax_cv_check_cxxflags___Wmissing_override__Werror" >&6; } +if test "x$ax_cv_check_cxxflags___Wmissing_override__Werror" = xyes; then : + WARNFLAGS="$WARNFLAGS -Wmissing-override" +else + : +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + # Set default AM_CXXFLAGS and AM_CFLAGS # -pedantic: ISO does not support long long # we add -Wno-long-long to avoid those messages -WARNFLAGS="" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -pedantic" >&5 $as_echo_n "checking if $compiler supports -pedantic... " >&6; } if ${dummy_cv_pedantic+:} false; then : @@ -17606,56 +18316,12 @@ : fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -ansi" >&5 -$as_echo_n "checking if $compiler supports -ansi... " >&6; } -if ${dummy_cv_ansi+:} false; then : - $as_echo_n "(cached) " >&6 -else - dummy_cv_ansi=no - ac_outfile=conftest.$ac_objext - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="-ansi" ## exclude from sc_useless_quotes_in_assignment - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - dummy_cv_ansi=yes - fi - fi - $RM conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dummy_cv_ansi" >&5 -$as_echo "$dummy_cv_ansi" >&6; } - -if test yes = "$dummy_cv_ansi"; then - WARNFLAGS="$WARNFLAGS -ansi" -else - : -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -Wno-long-long" >&5 $as_echo_n "checking if $compiler supports -Wno-long-long... " >&6; } -if ${dummy_cv_no_long_long+:} false; then : +if ${dummy_cv_wno_long_long+:} false; then : $as_echo_n "(cached) " >&6 else - dummy_cv_no_long_long=no + dummy_cv_wno_long_long=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-Wno-long-long" ## exclude from sc_useless_quotes_in_assignment @@ -17679,16 +18345,16 @@ $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - dummy_cv_no_long_long=yes + dummy_cv_wno_long_long=yes fi fi $RM conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dummy_cv_no_long_long" >&5 -$as_echo "$dummy_cv_no_long_long" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dummy_cv_wno_long_long" >&5 +$as_echo "$dummy_cv_wno_long_long" >&6; } -if test yes = "$dummy_cv_no_long_long"; then +if test yes = "$dummy_cv_wno_long_long"; then WARNFLAGS="$WARNFLAGS -Wno-long-long" else : @@ -17742,7 +18408,8 @@ fi -DEFAULTFLAGS="${WARNFLAGS} ${NUMERICFLAGS}" +HUSHWARNING="-DUSE_UNSTABLE_GEOS_CPP_API" +DEFAULTFLAGS="${WARNFLAGS} ${NUMERICFLAGS} ${HUSHWARNING}" AM_CXXFLAGS="${AM_CXXFLAGS} ${DEFAULTFLAGS}" AM_CFLAGS="${AM_CFLAGS} ${DEFAULTFLAGS}" @@ -18652,12 +19319,16 @@ RUBY_BIN_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["bindir"] || Config::CONFIG["bindir"]'` - RUBY_SITE_ARCH=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["sitearch"] || Config::CONFIG["sitearch"]'` + RUBY_SITE_ARCH=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["sitearch"] || Config::CONFIG["sitearch"]'` RUBY_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["rubyhdrdir"] || Config::CONFIG["archdir"]'` + RUBY_ARCH_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["rubyarchhdrdir"] || Config::CONFIG["archdir"]'` + RUBY_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["libdir"] || Config::CONFIG["libdir"]'` + RUBY_ARCH_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["archlibdir"] || Config::CONFIG["archlibdir"]'` + RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["sitearchdir"] || Config::CONFIG["sitearchdir"]'` RUBY_SO_NAME=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["RUBY_SO_NAME"] || Config::CONFIG["RUBY_SO_NAME"]'` @@ -18674,8 +19345,12 @@ $as_echo "$as_me: Ruby site arch is '$RUBY_SITE_ARCH'" >&6;} { $as_echo "$as_me:${as_lineno-$LINENO}: Ruby include directory is '$RUBY_INCLUDE_DIR'" >&5 $as_echo "$as_me: Ruby include directory is '$RUBY_INCLUDE_DIR'" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: Ruby config.h include directory is '$RUBY_ARCH_INCLUDE_DIR'" >&5 +$as_echo "$as_me: Ruby config.h include directory is '$RUBY_ARCH_INCLUDE_DIR'" >&6;} { $as_echo "$as_me:${as_lineno-$LINENO}: Ruby library directory is '$RUBY_LIB_DIR'" >&5 $as_echo "$as_me: Ruby library directory is '$RUBY_LIB_DIR'" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: Ruby architecture library directory is '$RUBY_ARCH_LIB_DIR'" >&5 +$as_echo "$as_me: Ruby architecture library directory is '$RUBY_ARCH_LIB_DIR'" >&6;} { $as_echo "$as_me:${as_lineno-$LINENO}: Ruby extension directory is '$RUBY_EXTENSION_DIR'" >&5 $as_echo "$as_me: Ruby extension directory is '$RUBY_EXTENSION_DIR'" >&6;} { $as_echo "$as_me:${as_lineno-$LINENO}: Ruby library is '$RUBY_SO_NAME'" >&5 @@ -18691,6 +19366,8 @@ + + fi @@ -18763,6 +19440,7 @@ + ac_config_files="$ac_config_files Makefile capi/Makefile capi/geos_c.h doc/Doxyfile doc/Makefile macros/Makefile src/Makefile src/algorithm/Makefile src/algorithm/locate/Makefile src/algorithm/distance/Makefile src/geom/Makefile src/geom/prep/Makefile src/geom/util/Makefile src/geomgraph/Makefile src/geomgraph/index/Makefile include/Makefile include/geos/Makefile include/geos/algorithm/Makefile include/geos/algorithm/locate/Makefile include/geos/algorithm/distance/Makefile include/geos/geom/Makefile include/geos/geom/prep/Makefile include/geos/geom/util/Makefile include/geos/geomgraph/Makefile include/geos/geomgraph/index/Makefile include/geos/index/Makefile include/geos/index/bintree/Makefile include/geos/index/chain/Makefile include/geos/index/intervalrtree/Makefile include/geos/index/quadtree/Makefile include/geos/index/strtree/Makefile include/geos/index/sweepline/Makefile include/geos/io/Makefile include/geos/linearref/Makefile include/geos/noding/Makefile include/geos/noding/snapround/Makefile include/geos/operation/Makefile include/geos/operation/buffer/Makefile include/geos/operation/distance/Makefile include/geos/operation/intersection/Makefile include/geos/operation/linemerge/Makefile include/geos/operation/overlay/Makefile include/geos/operation/overlay/snap/Makefile include/geos/operation/polygonize/Makefile include/geos/operation/predicate/Makefile include/geos/operation/relate/Makefile include/geos/operation/sharedpaths/Makefile include/geos/operation/union/Makefile include/geos/operation/valid/Makefile include/geos/planargraph/Makefile include/geos/planargraph/algorithm/Makefile include/geos/precision/Makefile include/geos/simplify/Makefile include/geos/triangulate/Makefile include/geos/triangulate/quadedge/Makefile include/geos/util/Makefile include/geos/version.h src/index/Makefile src/index/bintree/Makefile src/index/chain/Makefile src/index/intervalrtree/Makefile src/index/quadtree/Makefile src/index/strtree/Makefile src/index/sweepline/Makefile src/io/Makefile src/linearref/Makefile src/noding/Makefile src/noding/snapround/Makefile src/operation/Makefile src/operation/buffer/Makefile src/operation/distance/Makefile src/operation/intersection/Makefile src/operation/linemerge/Makefile src/operation/overlay/Makefile src/operation/polygonize/Makefile src/operation/predicate/Makefile src/operation/relate/Makefile src/operation/sharedpaths/Makefile src/operation/union/Makefile src/operation/valid/Makefile src/planargraph/Makefile src/precision/Makefile src/simplify/Makefile src/triangulate/Makefile src/triangulate/quadedge/Makefile src/util/Makefile swig/geos.i swig/Makefile swig/python/Makefile swig/python/tests/Makefile swig/ruby/Makefile swig/ruby/test/Makefile tests/Makefile tests/bigtest/Makefile tests/unit/Makefile tests/perf/Makefile tests/perf/operation/Makefile tests/perf/operation/buffer/Makefile tests/perf/operation/predicate/Makefile tests/perf/capi/Makefile tests/xmltester/Makefile tests/geostest/Makefile tests/thread/Makefile tools/Makefile tools/geos-config" cat >confcache <<\_ACEOF @@ -19500,7 +20178,7 @@ # # INIT-COMMANDS # -AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" +AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}" # The HP-UX ksh and POSIX shell print the target directory to stdout @@ -20601,29 +21279,35 @@ # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac + # TODO: see whether this extra hack can be removed once we start + # requiring Autoconf 2.70 or later. + case $CONFIG_FILES in #( + *\'*) : + eval set x "$CONFIG_FILES" ;; #( + *) : + set x $CONFIG_FILES ;; #( + *) : + ;; +esac shift - for mf + # Used to flag and report bootstrapping failures. + am_rc=0 + for am_mf do # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line + am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile which includes + # dependency-tracking related rules and includes. + # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | + sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ + || continue + am_dirpart=`$as_dirname -- "$am_mf" || +$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$am_mf" : 'X\(//\)[^/]' \| \ + X"$am_mf" : 'X\(//\)$' \| \ + X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$am_mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -20641,53 +21325,48 @@ q } s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "$am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ + am_filepart=`$as_basename -- "$am_mf" || +$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ + X"$am_mf" : 'X\(//\)$' \| \ + X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$am_mf" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } - /^X\(\/\/\)$/{ + /^X\/\(\/\/\)$/{ s//\1/ q } - /^X\(\/\).*/{ + /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done + { echo "$as_me:$LINENO: cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles" >&5 + (cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } || am_rc=$? done + if test $am_rc -ne 0; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "Something went wrong bootstrapping makefile fragments + for automatic dependency tracking. Try re-running configure with the + '--disable-dependency-tracking' option to at least be able to build + the package (albeit without support for automatic dependency tracking). +See \`config.log' for more details" "$LINENO" 5; } + fi + { am_dirpart=; unset am_dirpart;} + { am_filepart=; unset am_filepart;} + { am_mf=; unset am_mf;} + { am_rc=; unset am_rc;} + rm -f conftest-deps.mk } ;; "libtool":C) @@ -20705,6 +21384,7 @@ cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. diff -Nru geos-3.6.2/configure.ac geos-3.7.1/configure.ac --- geos-3.6.2/configure.ac 2017-07-25 09:17:00.000000000 +0000 +++ geos-3.7.1/configure.ac 2018-11-29 23:04:39.000000000 +0000 @@ -2,7 +2,7 @@ dnl configure.in - autoconf input template to produce ./configure script dnl dnl version 2.52 is required for Cygwin libtool support -AC_PREREQ([2.52]) +AC_PREREQ([2.63]) dnl local vars to hold user's preferences -------------------------------- AC_INIT([include/geos.h]) @@ -14,18 +14,19 @@ JTS_PORT=1.13.0 dnl -- Version info for the CAPI -CAPI_INTERFACE_CURRENT=11 -CAPI_INTERFACE_REVISION=2 -CAPI_INTERFACE_AGE=10 +CAPI_INTERFACE_CURRENT=12 +CAPI_INTERFACE_REVISION=1 +CAPI_INTERFACE_AGE=11 dnl dnl -- Release versions / C++ library SONAME will use these dnl -- encoding ABI break at every release dnl VERSION_MAJOR=3 -VERSION_MINOR=6 -VERSION_PATCH=2 +VERSION_MINOR=7 +VERSION_PATCH=1 VERSION="$VERSION_MAJOR.$VERSION_MINOR.$VERSION_PATCH" +VERSION_RELEASE=`echo "$VERSION" | sed -E 's/^([[0-9]+\.[0-9]+\.[0-9]+]).*$/\1/'` dnl CAPI_VERSION_MAJOR=$(($CAPI_INTERFACE_CURRENT-$CAPI_INTERFACE_AGE)) dnl the following should be more portable @@ -39,6 +40,10 @@ AC_CONFIG_HEADERS([include/config.h] [include/geos/platform.h]) AC_PROG_CC + +dnl Hush warnings +AC_DEFINE(USE_UNSTABLE_GEOS_CPP_API, [1], [We know]) + dnl use libtool ---------------------------------------------------------- AC_LIBTOOL_DLOPEN AC_LIBTOOL_WIN32_DLL @@ -133,6 +138,16 @@ dnl - Append default C++ and C flags dnl -------------------------------------------------------------------- +AX_CXX_COMPILE_STDCXX_11([noext],[mandatory]) + +WARNFLAGS="" +AC_LANG_PUSH([C++]) +dnl Available in GCC 5.1 +AX_CHECK_COMPILE_FLAG([-Wsuggest-override -Werror], [WARNFLAGS="$WARNFLAGS -Wsuggest-override"]) +dnl Available in clang 3.5 +AX_CHECK_COMPILE_FLAG([-Wmissing-override -Werror], [WARNFLAGS="$WARNFLAGS -Wmissing-override"]) +AC_LANG_POP([C++]) + dnl In order for AC_LIBTOOL_COMPILER_OPTION to use dnl the C compiler we need the hack below. dnl It is likely a bug in the libtool macro file to @@ -144,17 +159,16 @@ # Set default AM_CXXFLAGS and AM_CFLAGS # -pedantic: ISO does not support long long # we add -Wno-long-long to avoid those messages -WARNFLAGS="" AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -pedantic], [dummy_cv_pedantic], [-pedantic], [], [WARNFLAGS="$WARNFLAGS -pedantic"], []) AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -Wall], [dummy_cv_wall], [-Wall], [], [WARNFLAGS="$WARNFLAGS -Wall"], []) -AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -ansi], [dummy_cv_ansi], [-ansi], [], [WARNFLAGS="$WARNFLAGS -ansi"], []) -AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -Wno-long-long], [dummy_cv_no_long_long], [-Wno-long-long], [], [WARNFLAGS="$WARNFLAGS -Wno-long-long"], []) +AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -Wno-long-long], [dummy_cv_wno_long_long], [-Wno-long-long], [], [WARNFLAGS="$WARNFLAGS -Wno-long-long"], []) # To make numerical computation more stable, we use --ffloat-store NUMERICFLAGS="" AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -ffloat-store], [dummy_cv_ffloat_store], [-ffloat-store], [], [NUMERICFLAGS="$NUMERICFLAGS -ffloat-store"], []) -DEFAULTFLAGS="${WARNFLAGS} ${NUMERICFLAGS}" +HUSHWARNING="-DUSE_UNSTABLE_GEOS_CPP_API" +DEFAULTFLAGS="${WARNFLAGS} ${NUMERICFLAGS} ${HUSHWARNING}" AM_CXXFLAGS="${AM_CXXFLAGS} ${DEFAULTFLAGS}" AM_CFLAGS="${AM_CFLAGS} ${DEFAULTFLAGS}" @@ -359,6 +373,7 @@ AC_SUBST(VERSION_MAJOR) AC_SUBST(VERSION_MINOR) AC_SUBST(VERSION_PATCH) +AC_SUBST(VERSION_RELEASE) AC_SUBST(INTERFACE_CURRENT) AC_SUBST(INTERFACE_REVISION) AC_SUBST(INTERFACE_AGE) diff -Nru geos-3.6.2/debian/changelog geos-3.7.1/debian/changelog --- geos-3.6.2/debian/changelog 2018-03-01 09:35:11.000000000 +0000 +++ geos-3.7.1/debian/changelog 2019-07-14 13:06:54.000000000 +0000 @@ -1,14 +1,99 @@ -geos (3.6.2-1build2) bionic; urgency=high +geos (3.7.1-1~bionic0) bionic; urgency=medium + + * No change rebuild for Bionic. - * No change rebuild against ruby-defaults without ruby2.3 support. + -- Angelos Tzotsos Sun, 14 Jul 2019 16:00:00 +0200 - -- Dimitri John Ledkov Thu, 01 Mar 2018 09:35:11 +0000 +geos (3.7.1-1) unstable; urgency=medium -geos (3.6.2-1build1) bionic; urgency=medium + * Update symbols for other architectures. + * Move from experimental to unstable. + + -- Bas Couwenberg Wed, 05 Dec 2018 20:00:02 +0100 + +geos (3.7.1-1~exp1) experimental; urgency=medium + + * New upstream release. + * Add Build-Depends-Package field to symbols files. + * Refresh patches. + * Update symbols for amd64. + + -- Bas Couwenberg Fri, 30 Nov 2018 06:52:18 +0100 + +geos (3.7.0-1) unstable; urgency=medium + + * New upstream release. + * Strip pre-release from symbols version. + * Move from experimental to unstable. + + -- Bas Couwenberg Tue, 11 Sep 2018 07:38:23 +0200 + +geos (3.7.0~rc2-1~exp1) experimental; urgency=medium + + * New upstream release candidate. + * Bump Standards-Version to 4.2.1, no changes. + + -- Bas Couwenberg Tue, 04 Sep 2018 07:13:27 +0200 - * No-change rebuild for ruby2.5 update. +geos (3.7.0~rc1-1~exp1) experimental; urgency=medium - -- Matthias Klose Thu, 01 Feb 2018 19:13:45 +0000 + * New upstream release candidate. + + -- Bas Couwenberg Sun, 19 Aug 2018 14:30:47 +0200 + +geos (3.7.0~beta2-1~exp1) experimental; urgency=medium + + * New upstream beta release. + * Bump Standards-Version to 4.2.0, no changes. + * Add Mateusz Loskot to copyright holders. + * Update symbols for amd64. + + -- Bas Couwenberg Mon, 06 Aug 2018 09:09:40 +0200 + +geos (3.7.0~beta1-1~exp2) experimental; urgency=medium + + * Bump Standards-Version to 4.1.5, no changes. + * Use filter instead of findstring to prevent partial matches. + * Drop autopkgtest to test installability. + * Add lintian override for testsuite-autopkgtest-missing. + * Update symbols for amd64. + + -- Bas Couwenberg Tue, 31 Jul 2018 16:18:56 +0200 + +geos (3.7.0~beta1-1~exp1) experimental; urgency=medium + + * New upstream beta release. + * Ignore test failures on riscv64 too. + * Drop patches applied upstream, refresh remaining patch. + * Update README filename in docs file. + * Update symbols for 3.7.0~beta1. + + -- Bas Couwenberg Mon, 25 Jun 2018 22:00:03 +0200 + +geos (3.7.0~alpha-1~exp1) experimental; urgency=medium + + * New upstream alpha release. + * Update copyright-format URL to use HTTPS. + * Don't use libjs-jquery for Doxygen docs. + * Bump Standards-Version to 4.1.4, no changes. + * Fix deprecated source override location. + * Update watch file to use HTTPS. + * Ignore test failures on ia64 too. + * Update Vcs-* URLs for Salsa. + * Strip trailing whitespace from changelog, control & rules files. + * Rename library package for version bump. + * Drop control.in template, update library version manually. + * Refresh patches. + * Update upstream metadata for move to git. + * Update copyright file, changes: + - Add additional copyright holders + - Update email address for Sandro Santilli + * Add patch to fix check-local failure when quilt patches are applied. + * Use DEB_CXXFLAGS_MAINT_PREPEND instead of a custom CXX. + * Update symbols for 3.7.0~alpha. + * Add patch to strip pre-release from library filename. + + -- Bas Couwenberg Thu, 14 Jun 2018 09:17:25 +0200 geos (3.6.2-1) unstable; urgency=medium @@ -560,4 +645,3 @@ * Initial Release. (Closes: #277514). -- Steve Halasz Fri, 22 Oct 2004 23:24:25 -0400 - diff -Nru geos-3.6.2/debian/control geos-3.7.1/debian/control --- geos-3.6.2/debian/control 2018-03-01 09:35:11.000000000 +0000 +++ geos-3.7.1/debian/control 2018-12-05 18:55:57.000000000 +0000 @@ -1,6 +1,5 @@ Source: geos -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: Debian GIS Project +Maintainer: Debian GIS Project Uploaders: Francesco Paolo Lovergine , Bas Couwenberg Section: science @@ -11,9 +10,9 @@ pkg-kde-tools, ruby-all-dev, swig -Standards-Version: 4.1.2 -Vcs-Browser: https://anonscm.debian.org/cgit/pkg-grass/geos.git -Vcs-Git: https://anonscm.debian.org/git/pkg-grass/geos.git +Standards-Version: 4.2.1 +Vcs-Browser: https://salsa.debian.org/debian-gis-team/geos +Vcs-Git: https://salsa.debian.org/debian-gis-team/geos.git Homepage: https://trac.osgeo.org/geos/ Package: libgeos-dev @@ -33,7 +32,7 @@ Package: libgeos++-dev Architecture: any Section: libdevel -Depends: libgeos-3.6.2 (= ${binary:Version}), +Depends: libgeos-3.7.1 (= ${binary:Version}), libgeos-dev, ${misc:Depends} Suggests: libgdal-doc @@ -73,7 +72,7 @@ This package contains the C library. A C++ library is provided by the libgeos-* package. -Package: libgeos-3.6.2 +Package: libgeos-3.7.1 Architecture: any Multi-Arch: same Section: libs @@ -101,8 +100,7 @@ Architecture: all Multi-Arch: foreign Section: doc -Depends: libjs-jquery, - ${misc:Depends} +Depends: ${misc:Depends} Suggests: libgeos-dev (= ${binary:Version}) Description: Documentation for the GEOS GIS geometry engine library GEOS provides a spatial object model and fundamental geometric @@ -127,4 +125,3 @@ OpenGIS Consortium Simple Features Specification for SQL. . This package contains the Ruby bindings for GEOS. - diff -Nru geos-3.6.2/debian/control.in geos-3.7.1/debian/control.in --- geos-3.6.2/debian/control.in 2018-03-01 09:35:11.000000000 +0000 +++ geos-3.7.1/debian/control.in 1970-01-01 00:00:00.000000000 +0000 @@ -1,130 +0,0 @@ -Source: geos -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: Debian GIS Project -Uploaders: Francesco Paolo Lovergine , - Bas Couwenberg -Section: science -Priority: optional -Build-Depends: debhelper (>= 9.20160114), - dh-autoreconf, - doxygen, - pkg-kde-tools, - ruby-all-dev, - swig -Standards-Version: 4.1.2 -Vcs-Browser: https://anonscm.debian.org/cgit/pkg-grass/geos.git -Vcs-Git: https://anonscm.debian.org/git/pkg-grass/geos.git -Homepage: https://trac.osgeo.org/geos/ - -Package: libgeos-dev -Architecture: any -Section: libdevel -Depends: libgeos-c1v5 (= ${binary:Version}), - ${misc:Depends} -Suggests: libgdal-doc -Description: Geometry engine for GIS - Development files - GEOS provides a spatial object model and fundamental geometric - functions. It implements the geometry model defined in the - OpenGIS Consortium Simple Features Specification for SQL. - . - This package contains the headers and libraries needed to - develop programs using GEOS. - -Package: libgeos++-dev -Architecture: any -Section: libdevel -Depends: libgeos-@VERSION@ (= ${binary:Version}), - libgeos-dev, - ${misc:Depends} -Suggests: libgdal-doc -Breaks: libgeos-dev (<< 3.3.1-1~) -Description: Geometry engine for GIS - C++ development files - GEOS provides a spatial object model and fundamental geometric - functions. It implements the geometry model defined in the - OpenGIS Consortium Simple Features Specification for SQL. - . - This package contains the headers and libraries needed to - develop programs using GEOS in C++. Note that third-parties - programs should use the stable C API instead of the - unstable C++ one. - -Package: libgeos-c1v5 -Architecture: any -Multi-Arch: same -Section: libs -Depends: ${shlibs:Depends}, - ${misc:Depends} -Breaks: libgeos-c1 (<< 3.4.2-8~) -Replaces: libgeos-c1 (<< 3.4.2-8~) -Description: Geometry engine for Geographic Information Systems - C Library - GEOS provides a spatial object model and fundamental geometric - functions. It implements the geometry model defined in the - OpenGIS Consortium Simple Features Specification for SQL. - Functions provided include: - . - * spatial predicates (based on the DE-9IM model), - * overlay functions (intersection, difference, union, - symmetric difference), - * buffer, - * convex hull, - * area and distance functions, and - * topological validity checking - . - This package contains the C library. A C++ library is provided - by the libgeos-* package. - -Package: libgeos-@VERSION@ -Architecture: any -Multi-Arch: same -Section: libs -Depends: ${shlibs:Depends}, - ${misc:Depends} -Description: Geometry engine for Geographic Information Systems - C++ Library - GEOS provides a spatial object model and fundamental geometric - functions. It implements the geometry model defined in the - OpenGIS Consortium Simple Features Specification for SQL. - Functions provided include: - . - * spatial predicates (based on the DE-9IM model), - * overlay functions (intersection, difference, union, - symmetric difference), - * buffer, - * convex hull, - * area and distance functions, and - * topological validity checking - . - This package contains the C++ library. A stable C library is provided - by the libgeos-c* package and should be preferred by third-parties - programs. - -Package: libgeos-doc -Architecture: all -Multi-Arch: foreign -Section: doc -Depends: libjs-jquery, - ${misc:Depends} -Suggests: libgeos-dev (= ${binary:Version}) -Description: Documentation for the GEOS GIS geometry engine library - GEOS provides a spatial object model and fundamental geometric - functions. It implements the geometry model defined in the - OpenGIS Consortium Simple Features Specification for SQL. - . - This package contains the documentation for the GEOS API. - -Package: ruby-geos -Architecture: any -Multi-Arch: same -Section: ruby -Pre-Depends: ${misc:Pre-Depends} -Depends: ${shlibs:Depends}, - ${misc:Depends} -Breaks: libgeos-ruby1.8 (<< 3.4.2-2~) -Provides: libgeos-ruby1.8 -Replaces: libgeos-ruby1.8 (<< 3.4.2-2~) -Description: GEOS bindings for Ruby - GEOS provides a spatial object model and fundamental geometric - functions. It implements the geometry model defined in the - OpenGIS Consortium Simple Features Specification for SQL. - . - This package contains the Ruby bindings for GEOS. - diff -Nru geos-3.6.2/debian/copyright geos-3.7.1/debian/copyright --- geos-3.6.2/debian/copyright 2017-12-28 08:32:35.000000000 +0000 +++ geos-3.7.1/debian/copyright 2018-09-11 05:30:31.000000000 +0000 @@ -1,13 +1,16 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: GEOS Upstream-Contact: GEOS Developers -Source: http://download.osgeo.org/geos/ +Source: https://download.osgeo.org/geos/ Files: * -Copyright: 2016, Daniel Baston +Copyright: 2018, Vicky Vergara + 2017, Mateusz Loskot + 2016, Daniel Baston + 2016, Shinichi SUGIYAMA 2015, Nyall Dawson 2014, Mika Heiskanen - 2009-2013, Sandro Santilli + 2009-2013, Sandro Santilli 2012, Excensus LLC 2005-2011, Refractions Research Inc 2008-2010, Safe Software Inc diff -Nru geos-3.6.2/debian/docs geos-3.7.1/debian/docs --- geos-3.6.2/debian/docs 2017-11-28 17:48:01.000000000 +0000 +++ geos-3.7.1/debian/docs 2018-09-11 05:30:31.000000000 +0000 @@ -1,4 +1,4 @@ +AUTHORS NEWS -README +README.md TODO -AUTHORS diff -Nru geos-3.6.2/debian/libgeos-3.6.2.dirs geos-3.7.1/debian/libgeos-3.6.2.dirs --- geos-3.6.2/debian/libgeos-3.6.2.dirs 2017-12-28 08:32:36.000000000 +0000 +++ geos-3.7.1/debian/libgeos-3.6.2.dirs 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -usr/lib diff -Nru geos-3.6.2/debian/libgeos-3.6.2.install geos-3.7.1/debian/libgeos-3.6.2.install --- geos-3.6.2/debian/libgeos-3.6.2.install 2017-12-28 08:32:36.000000000 +0000 +++ geos-3.7.1/debian/libgeos-3.6.2.install 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -usr/lib/*/libgeos-* diff -Nru geos-3.6.2/debian/libgeos-3.6.2.symbols geos-3.7.1/debian/libgeos-3.6.2.symbols --- geos-3.6.2/debian/libgeos-3.6.2.symbols 2017-12-28 08:32:36.000000000 +0000 +++ geos-3.7.1/debian/libgeos-3.6.2.symbols 1970-01-01 00:00:00.000000000 +0000 @@ -1,4510 +0,0 @@ -# SymbolsHelper-Confirmed: 3.6.2 alpha amd64 arm64 armel armhf hppa i386 m68k mips mips64el mipsel powerpc ppc64 ppc64el s390x sh4 sparc64 x32 -libgeos-3.6.2.so #PACKAGE# #MINVER# - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEj@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEjRSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEm@Base 3.5.0 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEmRSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.5.0 - _ZN4geos11planargraph11PlanarGraph3addEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos11planargraph11PlanarGraph6removeEPNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos11planargraph11PlanarGraph6removeEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos11planargraph11PlanarGraph6removeEPNS0_4NodeE@Base 3.4.2 - _ZN4geos11planargraph11PlanarGraphD0Ev@Base 3.4.2 - _ZN4geos11planargraph11PlanarGraphD1Ev@Base 3.4.2 - _ZN4geos11planargraph11PlanarGraphD2Ev@Base 3.4.2 - _ZN4geos11planargraph11pdeLessThanEPNS0_12DirectedEdgeES2_@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdge6setSymEPS1_@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdge7setEdgeEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdge7toEdgesERSt6vectorIPS1_SaIS3_EE@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdge7toEdgesERSt6vectorIPS1_SaIS3_EERS2_IPNS0_4EdgeESaIS8_EE@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdgeC1EPNS0_4NodeES3_RKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdgeC2EPNS0_4NodeES3_RKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdgeD0Ev@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdgeD1Ev@Base 3.4.2 - _ZN4geos11planargraph12DirectedEdgeD2Ev@Base 3.4.2 - _ZN4geos11planargraph14GraphComponent10setVisitedEb@Base 3.4.2 - _ZN4geos11planargraph14GraphComponent9setMarkedEb@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar11getNextEdgeEPNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar3addEPNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar3endEv@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar5beginEv@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar6removeEPNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar8getEdgesEv@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar8getIndexEPKNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStar8getIndexEPKNS0_4EdgeE@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStarD0Ev@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStarD1Ev@Base 3.4.2 - _ZN4geos11planargraph16DirectedEdgeStarD2Ev@Base 3.4.2 - _ZN4geos11planargraph4Edge10getDirEdgeEPNS0_4NodeE@Base 3.4.2 - _ZN4geos11planargraph4Edge10getDirEdgeEi@Base 3.4.2 - _ZN4geos11planargraph4Edge15getOppositeNodeEPNS0_4NodeE@Base 3.4.2 - _ZN4geos11planargraph4Edge16setDirectedEdgesEPNS0_12DirectedEdgeES3_@Base 3.4.2 - _ZN4geos11planargraph4EdgeD0Ev@Base 3.4.2 - _ZN4geos11planargraph4EdgeD1Ev@Base 3.4.2 - _ZN4geos11planargraph4EdgeD2Ev@Base 3.4.2 - _ZN4geos11planargraph4Node15getEdgesBetweenEPS1_S2_@Base 3.4.2 - _ZN4geos11planargraph4NodeD0Ev@Base 3.4.2 - _ZN4geos11planargraph4NodeD1Ev@Base 3.4.2 - _ZN4geos11planargraph4NodeD2Ev@Base 3.4.2 - _ZN4geos11planargraph7NodeMap10getNodeMapEv@Base 3.4.2 - _ZN4geos11planargraph7NodeMap3addEPNS0_4NodeE@Base 3.4.2 - _ZN4geos11planargraph7NodeMap4findERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos11planargraph7NodeMap6removeERNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos11planargraph7NodeMap8getNodesERSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 - _ZN4geos11planargraph7NodeMapC1Ev@Base 3.4.2 - _ZN4geos11planargraph7NodeMapC2Ev@Base 3.4.2 - _ZN4geos11planargraph7NodeMapD0Ev@Base 3.4.2 - _ZN4geos11planargraph7NodeMapD1Ev@Base 3.4.2 - _ZN4geos11planargraph7NodeMapD2Ev@Base 3.4.2 - _ZN4geos11planargraph8Subgraph3addEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder12addReachableEPNS0_4NodeEPNS0_8SubgraphE@Base 3.4.2 - _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder12findSubgraphEPNS0_4NodeE@Base 3.4.2 - _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder21getConnectedSubgraphsERSt6vectorIPNS0_8SubgraphESaIS5_EE@Base 3.4.2 - _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder8addEdgesEPNS0_4NodeERSt5stackIS4_St5dequeIS4_SaIS4_EEEPNS0_8SubgraphE@Base 3.4.2 - _ZN4geos11planargraphlsERSoRKNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos11planargraphlsERSoRKNS0_4EdgeE@Base 3.4.2 - _ZN4geos11planargraphlsERSoRKNS0_4NodeE@Base 3.4.2 - _ZN4geos11triangulate21VoronoiDiagramBuilder10getDiagramERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder12setToleranceEd@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder14getSubdivisionEv@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder15getDiagramEdgesERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder15setClipEnvelopeEPKNS_4geom8EnvelopeE@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder22clipGeometryCollectionERKNS_4geom18GeometryCollectionERKNS2_8EnvelopeE@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder6createEv@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder8setSitesERKNS_4geom18CoordinateSequenceE@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilder8setSitesERKNS_4geom8GeometryE@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilderC1Ev@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilderC2Ev@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilderD1Ev@Base 3.5.0 - _ZN4geos11triangulate21VoronoiDiagramBuilderD2Ev@Base 3.5.0 - _ZN4geos11triangulate28DelaunayTriangulationBuilder10toVerticesB5cxx11ERKNS_4geom18CoordinateSequenceE@Base 3.5.1 - _ZN4geos11triangulate28DelaunayTriangulationBuilder12getTrianglesERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder14getSubdivisionEv@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder24extractUniqueCoordinatesERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder6createEv@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder6uniqueERNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder8envelopeERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder8getEdgesERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder8setSitesERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilder8setSitesERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilderC1Ev@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilderC2Ev@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilderD1Ev@Base 3.4.2 - _ZN4geos11triangulate28DelaunayTriangulationBuilderD2Ev@Base 3.4.2 - _ZN4geos11triangulate31IncrementalDelaunayTriangulator10insertSiteERKNS0_8quadedge6VertexE@Base 3.4.2 - _ZN4geos11triangulate31IncrementalDelaunayTriangulator11insertSitesERKNSt7__cxx114listINS0_8quadedge6VertexESaIS5_EEE@Base 3.5.1 - _ZN4geos11triangulate31IncrementalDelaunayTriangulatorC1EPNS0_8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 - _ZN4geos11triangulate31IncrementalDelaunayTriangulatorC2EPNS0_8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 - _ZN4geos11triangulate8quadedge15QuadEdgeLocatorD0Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge15QuadEdgeLocatorD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge15QuadEdgeLocatorD2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge15TriangleVisitorD0Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge15TriangleVisitorD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge15TriangleVisitorD2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision10initSubdivEPPNS1_8QuadEdgeE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision10insertSiteERKNS1_6VertexE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision11createFrameERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision12getTrianglesERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision14visitTrianglesEPNS1_15TriangleVisitorEb@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision15getPrimaryEdgesEb@Base 3.5.1 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision16getTriangleEdgesERKNS1_8QuadEdgeEPPS4_@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision17getVoronoiDiagramERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision18getVoronoiCellEdgeEPNS1_8QuadEdgeERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision19getVoronoiCellEdgesERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision20fetchTriangleToVisitEPNS1_8QuadEdgeERSt5stackIS4_St5dequeIS4_SaIS4_EEEbRSt3setIS4_St4lessIS4_ES7_E@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision20getVertexUniqueEdgesEb@Base 3.5.1 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision21getVoronoiCellPolygonEPNS1_8QuadEdgeERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision22getTriangleCoordinatesEPNSt7__cxx114listIPNS_4geom18CoordinateSequenceESaIS7_EEEb@Base 3.5.1 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision22getVoronoiCellPolygonsERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision22getVoronoiDiagramEdgesERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitor5visitEPPNS1_8QuadEdgeE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorD0Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorD2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitor5visitEPPNS1_8QuadEdgeE@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorD0Ev@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorD1Ev@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorD2Ev@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision6locateERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision6removeERNS1_8QuadEdgeE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision7connectERNS1_8QuadEdgeES4_@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision8getEdgesERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision8makeEdgeERKNS1_6VertexES5_@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionC1ERKNS_4geom8EnvelopeEd@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionC2ERKNS_4geom8EnvelopeEd@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionD0Ev@Base 3.5.0 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionD2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge22LocateFailureExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos11triangulate8quadedge22LocateFailureExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos11triangulate8quadedge22LocateFailureExceptionD0Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge22LocateFailureExceptionD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge22LocateFailureExceptionD2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocator4initEv@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocator6locateERKNS1_6VertexE@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocator8findEdgeEv@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorC1EPNS1_19QuadEdgeSubdivisionE@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorC2EPNS1_19QuadEdgeSubdivisionE@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorD0Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorD2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge6Vertex12interpolateZERKNS_4geom10CoordinateES6_S6_@Base 3.4.2 - _ZN4geos11triangulate8quadedge6Vertex12interpolateZERKNS_4geom10CoordinateES6_S6_S6_@Base 3.4.2 - _ZN4geos11triangulate8quadedge6Vertex17circumRadiusRatioERKS2_S4_@Base 3.4.2 - _ZN4geos11triangulate8quadedge6Vertex8bisectorERKS2_S4_@Base 3.4.2 - _ZN4geos11triangulate8quadedge6Vertex8classifyERKS2_S4_@Base 3.4.2 - _ZN4geos11triangulate8quadedge6Vertex8midPointERKS2_@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC1ERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC1Edd@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC1Eddd@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC2ERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC2Edd@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC2Eddd@Base 3.4.2 - _ZN4geos11triangulate8quadedge6VertexC2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge4freeEv@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge4swapERS2_@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge6removeEv@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge6spliceERS2_S3_@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge7connectERS2_S3_@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge7getDataEv@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge7setDataEPv@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdge8makeEdgeERKNS1_6VertexES5_@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdgeC1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdgeC2Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdgeD0Ev@Base 3.5.0 - _ZN4geos11triangulate8quadedge8QuadEdgeD1Ev@Base 3.4.2 - _ZN4geos11triangulate8quadedge8QuadEdgeD2Ev@Base 3.4.2 - _ZN4geos2io10CLocalizerC1Ev@Base 3.4.2 - _ZN4geos2io10CLocalizerC2Ev@Base 3.4.2 - _ZN4geos2io10CLocalizerD1Ev@Base 3.4.2 - _ZN4geos2io10CLocalizerD2Ev@Base 3.4.2 - _ZN4geos2io14ParseException9stringifyB5cxx11Ed@Base 3.5.1 - _ZN4geos2io14ParseExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos2io14ParseExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 - _ZN4geos2io14ParseExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEd@Base 3.5.1 - _ZN4geos2io14ParseExceptionC1Ev@Base 3.4.2 - _ZN4geos2io14ParseExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos2io14ParseExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 - _ZN4geos2io14ParseExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEd@Base 3.5.1 - _ZN4geos2io14ParseExceptionC2Ev@Base 3.4.2 - _ZN4geos2io14ParseExceptionD0Ev@Base 3.4.2 - _ZN4geos2io14ParseExceptionD1Ev@Base 3.4.2 - _ZN4geos2io14ParseExceptionD2Ev@Base 3.4.2 - _ZN4geos2io15ByteOrderValues6getIntEPKhi@Base 3.4.2 - _ZN4geos2io15ByteOrderValues6putIntEiPhi@Base 3.4.2 - _ZN4geos2io15ByteOrderValues7getLongEPKhi@Base 3.4.2 - _ZN4geos2io15ByteOrderValues7putLongExPhi@Base 3.5.0 - _ZN4geos2io15ByteOrderValues9getDoubleEPKhi@Base 3.4.2 - _ZN4geos2io15ByteOrderValues9putDoubleEdPhi@Base 3.4.2 - _ZN4geos2io15StringTokenizer13peekNextTokenEv@Base 3.4.2 - _ZN4geos2io15StringTokenizer7getNValEv@Base 3.4.2 - _ZN4geos2io15StringTokenizer7getSValB5cxx11Ev@Base 3.5.1 - _ZN4geos2io15StringTokenizer9nextTokenEv@Base 3.4.2 - _ZN4geos2io15StringTokenizerC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos2io15StringTokenizerC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos2io18strtod_with_vc_fixEPKcPPc@Base 3.5.0 - _ZN4geos2io21ByteOrderDataInStream10readDoubleEv@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStream11setInStreamEPSi@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStream7readIntEv@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStream8readByteEv@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStream8readLongEv@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStream8setOrderEi@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStreamC1EPSi@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStreamC2EPSi@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStreamD1Ev@Base 3.4.2 - _ZN4geos2io21ByteOrderDataInStreamD2Ev@Base 3.4.2 - _ZN4geos2io6Unload7ReleaseEv@Base 3.4.2 - _ZN4geos2io6Writer5writeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos2io6Writer7reserveEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos2io6Writer7reserveEm@Base 3.5.1 - _ZN4geos2io6Writer8toStringB5cxx11Ev@Base 3.5.1 - _ZN4geos2io6WriterC1Ev@Base 3.4.2 - _ZN4geos2io6WriterC2Ev@Base 3.4.2 - _ZN4geos2io6WriterD1Ev@Base 3.4.2 - _ZN4geos2io6WriterD2Ev@Base 3.4.2 - _ZN4geos2io9WKBReader11readPolygonEv@Base 3.4.2 - _ZN4geos2io9WKBReader12readGeometryEv@Base 3.4.2 - _ZN4geos2io9WKBReader14readCoordinateEv@Base 3.4.2 - _ZN4geos2io9WKBReader14readLineStringEv@Base 3.4.2 - _ZN4geos2io9WKBReader14readLinearRingEv@Base 3.4.2 - _ZN4geos2io9WKBReader14readMultiPointEv@Base 3.4.2 - _ZN4geos2io9WKBReader16readMultiPolygonEv@Base 3.4.2 - _ZN4geos2io9WKBReader19readMultiLineStringEv@Base 3.4.2 - _ZN4geos2io9WKBReader22readCoordinateSequenceEi@Base 3.4.2 - _ZN4geos2io9WKBReader22readGeometryCollectionEv@Base 3.4.2 - _ZN4geos2io9WKBReader4readERSi@Base 3.4.2 - _ZN4geos2io9WKBReader7readHEXERSi@Base 3.4.2 - _ZN4geos2io9WKBReader8printHEXERSiRSo@Base 3.4.2 - _ZN4geos2io9WKBReader9readPointEv@Base 3.4.2 - _ZN4geos2io9WKBReaderC1Ev@Base 3.4.2 - _ZN4geos2io9WKBReaderC2Ev@Base 3.4.2 - _ZN4geos2io9WKBWriter10writePointERKNS_4geom5PointE@Base 3.4.2 - _ZN4geos2io9WKBWriter12setByteOrderEi@Base 3.4.2 - _ZN4geos2io9WKBWriter12writePolygonERKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos2io9WKBWriter14setIncludeSRIDEi@Base 3.4.2 - _ZN4geos2io9WKBWriter14writeByteOrderEv@Base 3.4.2 - _ZN4geos2io9WKBWriter15writeCoordinateERKNS_4geom18CoordinateSequenceEib@Base 3.4.2 - _ZN4geos2io9WKBWriter15writeLineStringERKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos2io9WKBWriter17writeGeometryTypeEii@Base 3.4.2 - _ZN4geos2io9WKBWriter18setOutputDimensionEi@Base 3.4.2 - _ZN4geos2io9WKBWriter23writeCoordinateSequenceERKNS_4geom18CoordinateSequenceEb@Base 3.4.2 - _ZN4geos2io9WKBWriter23writeGeometryCollectionERKNS_4geom18GeometryCollectionEi@Base 3.4.2 - _ZN4geos2io9WKBWriter5writeERKNS_4geom8GeometryERSo@Base 3.4.2 - _ZN4geos2io9WKBWriter8writeHEXERKNS_4geom8GeometryERSo@Base 3.4.2 - _ZN4geos2io9WKBWriter8writeIntEi@Base 3.4.2 - _ZN4geos2io9WKBWriter9writeSRIDEi@Base 3.4.2 - _ZN4geos2io9WKBWriterC1Eiib@Base 3.4.2 - _ZN4geos2io9WKBWriterC2Eiib@Base 3.4.2 - _ZN4geos2io9WKBWriterD0Ev@Base 3.4.2 - _ZN4geos2io9WKBWriterD1Ev@Base 3.4.2 - _ZN4geos2io9WKBWriterD2Ev@Base 3.4.2 - _ZN4geos2io9WKTReader11getNextWordB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 - _ZN4geos2io9WKTReader12isNumberNextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader13getNextCloserB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 - _ZN4geos2io9WKTReader13getNextNumberEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader13readPointTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader14getCoordinatesEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader15readPolygonTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader18readLineStringTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader18readLinearRingTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader18readMultiPointTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader20getNextCloserOrCommaB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 - _ZN4geos2io9WKTReader20getNextEmptyOrOpenerB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos2io9WKTReader20getPreciseCoordinateEPNS0_15StringTokenizerERNS_4geom10CoordinateERj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos2io9WKTReader20getPreciseCoordinateEPNS0_15StringTokenizerERNS_4geom10CoordinateERm@Base 3.5.1 - _ZN4geos2io9WKTReader20readMultiPolygonTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader22readGeometryTaggedTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader23readMultiLineStringTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader26readGeometryCollectionTextEPNS0_15StringTokenizerE@Base 3.4.2 - _ZN4geos2io9WKTReader4readERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos2io9WKTReaderC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos2io9WKTReaderC1ERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos2io9WKTReaderC1Ev@Base 3.4.2 - _ZN4geos2io9WKTReaderC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos2io9WKTReaderC2ERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos2io9WKTReaderC2Ev@Base 3.4.2 - _ZN4geos2io9WKTReaderD1Ev@Base 3.4.2 - _ZN4geos2io9WKTReaderD2Ev@Base 3.4.2 - _ZN4geos2io9WKTWriter11writeNumberB5cxx11Ed@Base 3.5.1 - _ZN4geos2io9WKTWriter12toLineStringB5cxx11ERKNS_4geom10CoordinateES5_@Base 3.5.1 - _ZN4geos2io9WKTWriter12toLineStringB5cxx11ERKNS_4geom18CoordinateSequenceE@Base 3.5.1 - _ZN4geos2io9WKTWriter14writeFormattedB5cxx11EPKNS_4geom8GeometryE@Base 3.5.1 - _ZN4geos2io9WKTWriter14writeFormattedEPKNS_4geom8GeometryEPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter14writeFormattedEPKNS_4geom8GeometryEbPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter15appendPointTextEPKNS_4geom10CoordinateEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter16appendCoordinateEPKNS_4geom10CoordinateEPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter17appendPolygonTextEPKNS_4geom7PolygonEibPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter18setOutputDimensionEi@Base 3.4.2 - _ZN4geos2io9WKTWriter20appendLineStringTextEPKNS_4geom10LineStringEibPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter20appendMultiPointTextEPKNS_4geom10MultiPointEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter20setRoundingPrecisionEi@Base 3.4.2 - _ZN4geos2io9WKTWriter21appendPointTaggedTextEPKNS_4geom10CoordinateEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter22appendMultiPolygonTextEPKNS_4geom12MultiPolygonEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter23appendPolygonTaggedTextEPKNS_4geom7PolygonEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter24appendGeometryTaggedTextEPKNS_4geom8GeometryEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter25appendMultiLineStringTextEPKNS_4geom15MultiLineStringEibPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter26appendLineStringTaggedTextEPKNS_4geom10LineStringEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter26appendLinearRingTaggedTextEPKNS_4geom10LinearRingEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter26appendMultiPointTaggedTextEPKNS_4geom10MultiPointEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter28appendGeometryCollectionTextEPKNS_4geom18GeometryCollectionEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter28appendMultiPolygonTaggedTextEPKNS_4geom12MultiPolygonEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter31appendMultiLineStringTaggedTextEPKNS_4geom15MultiLineStringEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter34appendGeometryCollectionTaggedTextEPKNS_4geom18GeometryCollectionEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter5writeB5cxx11EPKNS_4geom8GeometryE@Base 3.5.1 - _ZN4geos2io9WKTWriter5writeEPKNS_4geom8GeometryEPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter6indentEiPNS0_6WriterE@Base 3.4.2 - _ZN4geos2io9WKTWriter7setTrimEb@Base 3.4.2 - _ZN4geos2io9WKTWriter7toPointB5cxx11ERKNS_4geom10CoordinateE@Base 3.5.1 - _ZN4geos2io9WKTWriterC1Ev@Base 3.4.2 - _ZN4geos2io9WKTWriterC2Ev@Base 3.4.2 - _ZN4geos2io9WKTWriterD1Ev@Base 3.4.2 - _ZN4geos2io9WKTWriterD2Ev@Base 3.4.2 - _ZN4geos4geom10Coordinate10_nullCoordE@Base 3.6.0 - _ZN4geos4geom10Coordinate7getNullEv@Base 3.4.2 - _ZN4geos4geom10Coordinate7setNullEv@Base 3.4.2 - _ZN4geos4geom10Coordinate8hashCodeEd@Base 3.4.2 - _ZN4geos4geom10CoordinateC1Eddd@Base 3.4.2 - _ZN4geos4geom10CoordinateC2Eddd@Base 3.4.2 - _ZN4geos4geom10LineString20validateConstructionEv@Base 3.4.2 - _ZN4geos4geom10LineString8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 - _ZN4geos4geom10LineString8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 - _ZN4geos4geom10LineString8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZN4geos4geom10LineString8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZN4geos4geom10LineString9normalizeEv@Base 3.4.2 - _ZN4geos4geom10LineStringC1EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LineStringC1ERKS1_@Base 3.4.2 - _ZN4geos4geom10LineStringC1ESt8auto_ptrINS0_18CoordinateSequenceEEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LineStringC2EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LineStringC2ERKS1_@Base 3.4.2 - _ZN4geos4geom10LineStringC2ESt8auto_ptrINS0_18CoordinateSequenceEEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LineStringD0Ev@Base 3.4.2 - _ZN4geos4geom10LineStringD1Ev@Base 3.4.2 - _ZN4geos4geom10LineStringD2Ev@Base 3.4.2 - _ZN4geos4geom10LinearRing20validateConstructionEv@Base 3.4.2 - _ZN4geos4geom10LinearRing9setPointsEPNS0_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos4geom10LinearRingC1EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LinearRingC1ERKS1_@Base 3.4.2 - _ZN4geos4geom10LinearRingC1ESt8auto_ptrINS0_18CoordinateSequenceEEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LinearRingC2EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LinearRingC2ERKS1_@Base 3.4.2 - _ZN4geos4geom10LinearRingC2ESt8auto_ptrINS0_18CoordinateSequenceEEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10LinearRingD0Ev@Base 3.4.2 - _ZN4geos4geom10LinearRingD1Ev@Base 3.4.2 - _ZN4geos4geom10LinearRingD2Ev@Base 3.4.2 - _ZN4geos4geom10MultiPointC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10MultiPointC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom10MultiPointD0Ev@Base 3.4.2 - _ZN4geos4geom10MultiPointD1Ev@Base 3.4.2 - _ZN4geos4geom10MultiPointD2Ev@Base 3.4.2 - _ZN4geos4geom11GeomPtrPairD1Ev@Base 3.4.2 - _ZN4geos4geom11GeomPtrPairD2Ev@Base 3.4.2 - _ZN4geos4geom11LineSegment13closestPointsEPKS1_@Base 3.4.2 - _ZN4geos4geom11LineSegment13closestPointsERKS1_@Base 3.4.2 - _ZN4geos4geom11LineSegment14setCoordinatesERKNS0_10CoordinateES4_@Base 3.4.2 - _ZN4geos4geom11LineSegment14setCoordinatesERKS1_@Base 3.4.2 - _ZN4geos4geom11LineSegment7reverseEv@Base 3.4.2 - _ZN4geos4geom11LineSegment9normalizeEv@Base 3.4.2 - _ZN4geos4geom11LineSegmentC1ERKNS0_10CoordinateES4_@Base 3.4.2 - _ZN4geos4geom11LineSegmentC1ERKS1_@Base 3.4.2 - _ZN4geos4geom11LineSegmentC1Edddd@Base 3.4.2 - _ZN4geos4geom11LineSegmentC1Ev@Base 3.4.2 - _ZN4geos4geom11LineSegmentC2ERKNS0_10CoordinateES4_@Base 3.4.2 - _ZN4geos4geom11LineSegmentC2ERKS1_@Base 3.4.2 - _ZN4geos4geom11LineSegmentC2Edddd@Base 3.4.2 - _ZN4geos4geom11LineSegmentC2Ev@Base 3.4.2 - _ZN4geos4geom11LineSegmentD0Ev@Base 3.4.2 - _ZN4geos4geom11LineSegmentD1Ev@Base 3.4.2 - _ZN4geos4geom11LineSegmentD2Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom11LineSegmentixEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom11LineSegmentixEm@Base 3.5.1 - _ZN4geos4geom11check_validERKNS0_8GeometryERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb@Base 3.5.1 - _ZN4geos4geom11geosversionB5cxx11Ev@Base 3.5.1 - _ZN4geos4geom12GeometryList3addESt8auto_ptrINS0_8GeometryEE@Base 3.4.2 - _ZN4geos4geom12GeometryList6createEv@Base 3.4.2 - _ZN4geos4geom12GeometryListC1Ev@Base 3.4.2 - _ZN4geos4geom12GeometryListC2Ev@Base 3.4.2 - _ZN4geos4geom12GeometryListD1Ev@Base 3.4.2 - _ZN4geos4geom12GeometryListD2Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom12GeometryListixEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom12GeometryListixEm@Base 3.5.1 - _ZN4geos4geom12MultiPolygonC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom12MultiPolygonC1ERKS1_@Base 3.4.2 - _ZN4geos4geom12MultiPolygonC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom12MultiPolygonC2ERKS1_@Base 3.4.2 - _ZN4geos4geom12MultiPolygonD0Ev@Base 3.4.2 - _ZN4geos4geom12MultiPolygonD1Ev@Base 3.4.2 - _ZN4geos4geom12MultiPolygonD2Ev@Base 3.4.2 - _ZN4geos4geom14GeometryFilter9filter_rwEPNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom14PrecisionModel19maximumPreciseValueE@Base 3.4.2 - _ZN4geos4geom14PrecisionModel8setScaleEd@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC1ENS1_4TypeE@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC1ERKS1_@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC1Ed@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC1Eddd@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC1Ev@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC2ENS1_4TypeE@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC2ERKS1_@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC2Ed@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC2Eddd@Base 3.4.2 - _ZN4geos4geom14PrecisionModelC2Ev@Base 3.4.2 - _ZN4geos4geom14PrecisionModelD1Ev@Base 3.4.2 - _ZN4geos4geom14PrecisionModelD2Ev@Base 3.4.2 - _ZN4geos4geom15GeometryFactory18getDefaultInstanceEv@Base 3.4.2 - _ZN4geos4geom15GeometryFactory6createEPKNS0_14PrecisionModelE@Base 3.6.0 - _ZN4geos4geom15GeometryFactory6createEPKNS0_14PrecisionModelEi@Base 3.6.0 - _ZN4geos4geom15GeometryFactory6createEPKNS0_14PrecisionModelEiPNS0_25CoordinateSequenceFactoryE@Base 3.6.0 - _ZN4geos4geom15GeometryFactory6createEPNS0_25CoordinateSequenceFactoryE@Base 3.6.0 - _ZN4geos4geom15GeometryFactory6createERKS1_@Base 3.6.0 - _ZN4geos4geom15GeometryFactory6createEv@Base 3.6.0 - _ZN4geos4geom15GeometryFactory7destroyEv@Base 3.6.0 - _ZN4geos4geom15GeometryFactoryC1EPKNS0_14PrecisionModelE@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC1EPKNS0_14PrecisionModelEi@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC1EPKNS0_14PrecisionModelEiPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC1EPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC1ERKS1_@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC1Ev@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC2EPKNS0_14PrecisionModelE@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC2EPKNS0_14PrecisionModelEi@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC2EPKNS0_14PrecisionModelEiPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC2EPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC2ERKS1_@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryC2Ev@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryD0Ev@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryD1Ev@Base 3.4.2 - _ZN4geos4geom15GeometryFactoryD2Ev@Base 3.4.2 - _ZN4geos4geom15MultiLineStringC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom15MultiLineStringC1ERKS1_@Base 3.4.2 - _ZN4geos4geom15MultiLineStringC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom15MultiLineStringC2ERKS1_@Base 3.4.2 - _ZN4geos4geom15MultiLineStringD0Ev@Base 3.4.2 - _ZN4geos4geom15MultiLineStringD1Ev@Base 3.4.2 - _ZN4geos4geom15MultiLineStringD2Ev@Base 3.4.2 - _ZN4geos4geom16CoordinateFilter9filter_roEPKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom17TrianglePredicate16isInCircleRobustERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 - _ZN4geos4geom17TrianglePredicate19isInCircleNonRobustERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 - _ZN4geos4geom17TrianglePredicate20isInCircleNormalizedERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 - _ZN4geos4geom17TrianglePredicate7triAreaERKNS0_10CoordinateES4_S4_@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence13minCoordinateEPS1_@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence17hasRepeatedPointsEPKS1_@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence19increasingDirectionERKS1_@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence20removeRepeatedPointsEPKS1_@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom18CoordinateSequence28atLeastNCoordinatesOrNothingEjPS1_@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom18CoordinateSequence28atLeastNCoordinatesOrNothingEmPS1_@Base 3.5.1 - _ZN4geos4geom18CoordinateSequence3addEPKS1_bb@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence3addEPKSt6vectorINS0_10CoordinateESaIS3_EEb@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence3addERKNS0_10CoordinateEb@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence6equalsEPKS1_S3_@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence6scrollEPS1_PKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence7indexOfEPKNS0_10CoordinateEPKS1_@Base 3.4.2 - _ZN4geos4geom18CoordinateSequence7reverseEPS1_@Base 3.4.2 - _ZN4geos4geom18GeometryCollection8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 - _ZN4geos4geom18GeometryCollection8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 - _ZN4geos4geom18GeometryCollection8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZN4geos4geom18GeometryCollection8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZN4geos4geom18GeometryCollection9normalizeEv@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionC1ERKS1_@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionC2ERKS1_@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionD0Ev@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionD1Ev@Base 3.4.2 - _ZN4geos4geom18GeometryCollectionD2Ev@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix10setAtLeastENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4geom18IntersectionMatrix10setAtLeastEiii@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix17setAtLeastIfValidEiii@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix3addEPS1_@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix3setERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4geom18IntersectionMatrix3setEiii@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix6setAllEi@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix7matchesERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 - _ZN4geos4geom18IntersectionMatrix7matchesEic@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix8firstDimE@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix9secondDimE@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrix9transposeEv@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrixC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4geom18IntersectionMatrixC1ERKS1_@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrixC1Ev@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrixC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4geom18IntersectionMatrixC2ERKS1_@Base 3.4.2 - _ZN4geos4geom18IntersectionMatrixC2Ev@Base 3.4.2 - _ZN4geos4geom19GeometryGreaterThenclEPKNS0_8GeometryES4_@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence11setOrdinateEjjd@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequence11setOrdinateEmmd@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequence20removeRepeatedPointsEv@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequence3addERKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequence3addERKNS0_10CoordinateEb@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence3addEjRKNS0_10CoordinateEb@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequence3addEmRKNS0_10CoordinateEb@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence5setAtERKNS0_10CoordinateEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequence5setAtERKNS0_10CoordinateEm@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequence8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence8deleteAtEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequence8deleteAtEm@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequence9setPointsERKSt6vectorINS0_10CoordinateESaIS3_EE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC1EPSt6vectorINS0_10CoordinateESaIS3_EEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC1EPSt6vectorINS0_10CoordinateESaIS3_EEm@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequenceC1ERKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequenceC1ERKS1_@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC1Ejj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC1Emm@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequenceC1Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC2EPSt6vectorINS0_10CoordinateESaIS3_EEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC2EPSt6vectorINS0_10CoordinateESaIS3_EEm@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequenceC2ERKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequenceC2ERKS1_@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC2Ejj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC2Emm@Base 3.5.1 - _ZN4geos4geom23CoordinateArraySequenceC2Ev@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequenceD0Ev@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequenceD1Ev@Base 3.4.2 - _ZN4geos4geom23CoordinateArraySequenceD2Ev@Base 3.4.2 - _ZN4geos4geom23GeometryComponentFilter9filter_roEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom23GeometryComponentFilter9filter_rwEPNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom23GeometryComponentFilterD0Ev@Base 3.4.2 - _ZN4geos4geom23GeometryComponentFilterD1Ev@Base 3.4.2 - _ZN4geos4geom23GeometryComponentFilterD2Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos4geom24CoordinateSequenceFilter9filter_rwERNS0_18CoordinateSequenceEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos4geom24CoordinateSequenceFilter9filter_rwERNS0_18CoordinateSequenceEm@Base 3.5.1 - _ZN4geos4geom25CoordinateSequenceFactoryD0Ev@Base 3.4.2 - _ZN4geos4geom25CoordinateSequenceFactoryD1Ev@Base 3.4.2 - _ZN4geos4geom25CoordinateSequenceFactoryD2Ev@Base 3.4.2 - _ZN4geos4geom30CoordinateArraySequenceFactory8instanceEv@Base 3.4.2 - _ZN4geos4geom30CoordinateArraySequenceFactoryD0Ev@Base 3.4.2 - _ZN4geos4geom30CoordinateArraySequenceFactoryD1Ev@Base 3.4.2 - _ZN4geos4geom30CoordinateArraySequenceFactoryD2Ev@Base 3.4.2 - _ZN4geos4geom4prep13PreparedPointD0Ev@Base 3.4.2 - _ZN4geos4geom4prep13PreparedPointD1Ev@Base 3.4.2 - _ZN4geos4geom4prep13PreparedPointD2Ev@Base 3.4.2 - _ZN4geos4geom4prep15PreparedPolygonC1EPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep15PreparedPolygonC2EPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep15PreparedPolygonD0Ev@Base 3.4.2 - _ZN4geos4geom4prep15PreparedPolygonD1Ev@Base 3.4.2 - _ZN4geos4geom4prep15PreparedPolygonD2Ev@Base 3.4.2 - _ZN4geos4geom4prep18PreparedLineString21getIntersectionFinderEv@Base 3.4.2 - _ZN4geos4geom4prep18PreparedLineStringD0Ev@Base 3.4.2 - _ZN4geos4geom4prep18PreparedLineStringD1Ev@Base 3.4.2 - _ZN4geos4geom4prep18PreparedLineStringD2Ev@Base 3.4.2 - _ZN4geos4geom4prep21BasicPreparedGeometry11setGeometryEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep21BasicPreparedGeometry8toStringB5cxx11Ev@Base 3.5.1 - _ZN4geos4geom4prep21BasicPreparedGeometryC1EPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep21BasicPreparedGeometryC2EPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep21BasicPreparedGeometryD0Ev@Base 3.4.2 - _ZN4geos4geom4prep21BasicPreparedGeometryD1Ev@Base 3.4.2 - _ZN4geos4geom4prep21BasicPreparedGeometryD2Ev@Base 3.4.2 - _ZN4geos4geom4prep21PreparedPolygonCovers24fullTopologicalPredicateEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep21PreparedPolygonCoversD0Ev@Base 3.4.2 - _ZN4geos4geom4prep21PreparedPolygonCoversD1Ev@Base 3.4.2 - _ZN4geos4geom4prep21PreparedPolygonCoversD2Ev@Base 3.4.2 - _ZN4geos4geom4prep23PreparedPolygonContains24fullTopologicalPredicateEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep23PreparedPolygonContainsC1EPKNS1_15PreparedPolygonE@Base 3.4.2 - _ZN4geos4geom4prep23PreparedPolygonContainsC2EPKNS1_15PreparedPolygonE@Base 3.4.2 - _ZN4geos4geom4prep23PreparedPolygonContainsD0Ev@Base 3.4.2 - _ZN4geos4geom4prep23PreparedPolygonContainsD1Ev@Base 3.4.2 - _ZN4geos4geom4prep23PreparedPolygonContainsD2Ev@Base 3.4.2 - _ZN4geos4geom4prep25PreparedPolygonIntersects10intersectsEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep25PreparedPolygonIntersectsD0Ev@Base 3.4.2 - _ZN4geos4geom4prep25PreparedPolygonIntersectsD1Ev@Base 3.4.2 - _ZN4geos4geom4prep25PreparedPolygonIntersectsD2Ev@Base 3.4.2 - _ZN4geos4geom4prep31AbstractPreparedPolygonContains13isSingleShellERKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep31AbstractPreparedPolygonContains28findAndClassifyIntersectionsEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep31AbstractPreparedPolygonContains48isProperIntersectionImpliesNotContainedSituationEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep31AbstractPreparedPolygonContains4evalEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep31PreparedPolygonContainsProperly16containsProperlyEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4prep31PreparedPolygonContainsProperlyD0Ev@Base 3.4.2 - _ZN4geos4geom4prep31PreparedPolygonContainsProperlyD1Ev@Base 3.4.2 - _ZN4geos4geom4prep31PreparedPolygonContainsProperlyD2Ev@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditor11editPolygonEPKNS0_7PolygonEPNS1_23GeometryEditorOperationE@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditor22editGeometryCollectionEPKNS0_18GeometryCollectionEPNS1_23GeometryEditorOperationE@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditor4editEPKNS0_8GeometryEPNS1_23GeometryEditorOperationE@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditorC1EPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditorC1Ev@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditorC2EPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom4util14GeometryEditorC2Ev@Base 3.4.2 - _ZN4geos4geom4util14PointExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util14PointExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util14PointExtracter9getPointsERKNS0_8GeometryERSt6vectorIPKNS0_5PointESaIS9_EE@Base 3.5.0 - _ZN4geos4geom4util14PointExtracterC1ERSt6vectorIPKNS0_5PointESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util14PointExtracterC2ERSt6vectorIPKNS0_5PointESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util14PointExtracterD0Ev@Base 3.4.2 - _ZN4geos4geom4util14PointExtracterD1Ev@Base 3.4.2 - _ZN4geos4geom4util14PointExtracterD2Ev@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombiner14extractFactoryERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombiner15extractElementsEPNS0_8GeometryERSt6vectorIS4_SaIS4_EE@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombiner7combineEPKNS0_8GeometryES5_@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombiner7combineEPKNS0_8GeometryES5_S5_@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombiner7combineERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombiner7combineEv@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombinerC1ERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 - _ZN4geos4geom4util16GeometryCombinerC2ERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 - _ZN4geos4geom4util16PolygonExtracter11getPolygonsERKNS0_8GeometryERSt6vectorIPKNS0_7PolygonESaIS9_EE@Base 3.5.0 - _ZN4geos4geom4util16PolygonExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util16PolygonExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util16PolygonExtracterC1ERSt6vectorIPKNS0_7PolygonESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util16PolygonExtracterC2ERSt6vectorIPKNS0_7PolygonESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util16PolygonExtracterD0Ev@Base 3.4.2 - _ZN4geos4geom4util16PolygonExtracterD1Ev@Base 3.4.2 - _ZN4geos4geom4util16PolygonExtracterD2Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEE9filter_roEPKNS0_8GeometryE@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEED0Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEE9filter_roEPKNS0_8GeometryE@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEED0Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEE9filter_roEPKNS0_8GeometryE@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEED0Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEED2Ev@Base 3.4.2 - _ZN4geos4geom4util19CoordinateOperation4editEPKNS0_8GeometryEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer14transformPointEPKNS0_5PointEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer16transformPolygonEPKNS0_7PolygonEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer19transformLineStringEPKNS0_10LineStringEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer19transformLinearRingEPKNS0_10LinearRingEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer19transformMultiPointEPKNS0_10MultiPointEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer20transformCoordinatesEPKNS0_18CoordinateSequenceEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer21transformMultiPolygonEPKNS0_12MultiPolygonEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer24createCoordinateSequenceESt8auto_ptrISt6vectorINS0_10CoordinateESaIS5_EEE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer24transformMultiLineStringEPKNS0_15MultiLineStringEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer27transformGeometryCollectionEPKNS0_18GeometryCollectionEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformer38setSkipTransformedInvalidInteriorRingsEb@Base 3.6.1 - _ZN4geos4geom4util19GeometryTransformer9transformEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformerC1Ev@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformerC2Ev@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformerD0Ev@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformerD1Ev@Base 3.4.2 - _ZN4geos4geom4util19GeometryTransformerD2Ev@Base 3.4.2 - _ZN4geos4geom4util24LinearComponentExtracter8getLinesERKNS0_8GeometryERSt6vectorIPKNS0_10LineStringESaIS9_EE@Base 3.5.0 - _ZN4geos4geom4util24LinearComponentExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util24LinearComponentExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util24LinearComponentExtracterC1ERSt6vectorIPKNS0_10LineStringESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util24LinearComponentExtracterC2ERSt6vectorIPKNS0_10LineStringESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util24LinearComponentExtracterD0Ev@Base 3.4.2 - _ZN4geos4geom4util24LinearComponentExtracterD1Ev@Base 3.4.2 - _ZN4geos4geom4util24LinearComponentExtracterD2Ev@Base 3.4.2 - _ZN4geos4geom4util28ComponentCoordinateExtracter14getCoordinatesERKNS0_8GeometryERSt6vectorIPKNS0_10CoordinateESaIS9_EE@Base 3.5.0 - _ZN4geos4geom4util28ComponentCoordinateExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util28ComponentCoordinateExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom4util28ComponentCoordinateExtracterC1ERSt6vectorIPKNS0_10CoordinateESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util28ComponentCoordinateExtracterC2ERSt6vectorIPKNS0_10CoordinateESaIS6_EE@Base 3.5.0 - _ZN4geos4geom4util28ComponentCoordinateExtracterD0Ev@Base 3.4.2 - _ZN4geos4geom4util28ComponentCoordinateExtracterD1Ev@Base 3.4.2 - _ZN4geos4geom4util28ComponentCoordinateExtracterD2Ev@Base 3.4.2 - _ZN4geos4geom4util29ShortCircuitedGeometryVisitor7applyToERKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geom5Point8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 - _ZN4geos4geom5Point8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 - _ZN4geos4geom5Point8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZN4geos4geom5Point8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZN4geos4geom5Point9normalizeEv@Base 3.4.2 - _ZN4geos4geom5PointC1EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom5PointC1ERKS1_@Base 3.4.2 - _ZN4geos4geom5PointC2EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom5PointC2ERKS1_@Base 3.4.2 - _ZN4geos4geom5PointD0Ev@Base 3.4.2 - _ZN4geos4geom5PointD1Ev@Base 3.4.2 - _ZN4geos4geom5PointD2Ev@Base 3.4.2 - (optional=templinst)_ZN4geos4geom6SnapOpINS_9operation7overlay9overlayOpEEESt8auto_ptrINS0_8GeometryEEPKS6_S9_T_@Base 3.4.2 - _ZN4geos4geom7Polygon8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 - _ZN4geos4geom7Polygon8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 - _ZN4geos4geom7Polygon8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZN4geos4geom7Polygon8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZN4geos4geom7Polygon9normalizeEPNS0_10LinearRingEb@Base 3.4.2 - _ZN4geos4geom7Polygon9normalizeEv@Base 3.4.2 - _ZN4geos4geom7PolygonC1EPNS0_10LinearRingEPSt6vectorIPNS0_8GeometryESaIS6_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom7PolygonC1ERKS1_@Base 3.4.2 - _ZN4geos4geom7PolygonC2EPNS0_10LinearRingEPSt6vectorIPNS0_8GeometryESaIS6_EEPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom7PolygonC2ERKS1_@Base 3.4.2 - _ZN4geos4geom7PolygonD0Ev@Base 3.4.2 - _ZN4geos4geom7PolygonD1Ev@Base 3.4.2 - _ZN4geos4geom7PolygonD2Ev@Base 3.4.2 - _ZN4geos4geom7jtsportB5cxx11Ev@Base 3.5.1 - (optional=templinst)_ZN4geos4geom8BinaryOpINS_9operation7overlay9overlayOpEEESt8auto_ptrINS0_8GeometryEEPKS6_S9_T_@Base 3.4.2 - _ZN4geos4geom8Envelope10intersectsERKNS0_10CoordinateES4_S4_@Base 3.4.2 - _ZN4geos4geom8Envelope10intersectsERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 - _ZN4geos4geom8Envelope15expandToIncludeEPKS1_@Base 3.4.2 - _ZN4geos4geom8Envelope15expandToIncludeERKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom8Envelope15expandToIncludeEdd@Base 3.4.2 - _ZN4geos4geom8Envelope4initERKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom8Envelope4initERKNS0_10CoordinateES4_@Base 3.4.2 - _ZN4geos4geom8Envelope4initEdddd@Base 3.4.2 - _ZN4geos4geom8Envelope4initEv@Base 3.4.2 - _ZN4geos4geom8Envelope5splitERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 - _ZN4geos4geom8Envelope8distanceEdddd@Base 3.4.2 - _ZN4geos4geom8Envelope8expandByEdd@Base 3.4.2 - _ZN4geos4geom8Envelope9setToNullEv@Base 3.4.2 - _ZN4geos4geom8Envelope9translateEdd@Base 3.4.2 - _ZN4geos4geom8EnvelopeC1ERKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom8EnvelopeC1ERKNS0_10CoordinateES4_@Base 3.4.2 - _ZN4geos4geom8EnvelopeC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4geom8EnvelopeC1ERKS1_@Base 3.4.2 - _ZN4geos4geom8EnvelopeC1Edddd@Base 3.4.2 - _ZN4geos4geom8EnvelopeC1Ev@Base 3.4.2 - _ZN4geos4geom8EnvelopeC2ERKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom8EnvelopeC2ERKNS0_10CoordinateES4_@Base 3.4.2 - _ZN4geos4geom8EnvelopeC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4geom8EnvelopeC2ERKS1_@Base 3.4.2 - _ZN4geos4geom8EnvelopeC2Edddd@Base 3.4.2 - _ZN4geos4geom8EnvelopeC2Ev@Base 3.4.2 - _ZN4geos4geom8EnvelopeD1Ev@Base 3.4.2 - _ZN4geos4geom8EnvelopeD2Ev@Base 3.4.2 - _ZN4geos4geom8EnvelopeaSERKS1_@Base 3.4.2 - _ZN4geos4geom8Geometry15geometryChangedEv@Base 3.4.2 - _ZN4geos4geom8Geometry15hasNullElementsEPKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos4geom8Geometry15hasNullElementsEPKSt6vectorIPS1_SaIS3_EE@Base 3.4.2 - _ZN4geos4geom8Geometry19hasNonEmptyElementsEPKSt6vectorIPS1_SaIS3_EE@Base 3.4.2 - _ZN4geos4geom8Geometry21GeometryChangedFilter9filter_rwEPS1_@Base 3.4.2 - _ZN4geos4geom8Geometry21GeometryChangedFilterD0Ev@Base 3.4.2 - _ZN4geos4geom8Geometry21GeometryChangedFilterD1Ev@Base 3.4.2 - _ZN4geos4geom8Geometry21GeometryChangedFilterD2Ev@Base 3.4.2 - _ZN4geos4geom8Geometry21geometryChangedActionEv@Base 3.4.2 - _ZN4geos4geom8Geometry21geometryChangedFilterE@Base 3.4.2 - _ZN4geos4geom8Geometry26checkNotGeometryCollectionEPKS1_@Base 3.4.2 - _ZN4geos4geom8Geometry7setSRIDEi@Base 3.4.2 - _ZN4geos4geom8Geometry8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 - _ZN4geos4geom8Geometry8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZN4geos4geom8GeometryC1EPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom8GeometryC1ERKS1_@Base 3.4.2 - _ZN4geos4geom8GeometryC2EPKNS0_15GeometryFactoryE@Base 3.4.2 - _ZN4geos4geom8GeometryC2ERKS1_@Base 3.4.2 - _ZN4geos4geom8GeometryD0Ev@Base 3.4.2 - _ZN4geos4geom8GeometryD1Ev@Base 3.4.2 - _ZN4geos4geom8GeometryD2Ev@Base 3.4.2 - _ZN4geos4geom8Location16toLocationSymbolEi@Base 3.4.2 - _ZN4geos4geom8Triangle12circumcentreERNS0_10CoordinateE@Base 3.5.0 - _ZN4geos4geom8Triangle8inCentreERNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geom9Dimension16toDimensionValueEc@Base 3.4.2 - _ZN4geos4geom9Dimension17toDimensionSymbolEi@Base 3.4.2 - _ZN4geos4geomeqERKNS0_10CoordinateES3_@Base 3.4.2 - _ZN4geos4geomeqERKNS0_11LineSegmentES3_@Base 3.4.2 - _ZN4geos4geomeqERKNS0_14PrecisionModelES3_@Base 3.4.2 - _ZN4geos4geomeqERKNS0_18CoordinateSequenceES3_@Base 3.4.2 - _ZN4geos4geomeqERKNS0_8EnvelopeES3_@Base 3.4.2 - _ZN4geos4geomlsERSoRKNS0_10CoordinateE@Base 3.4.2 - _ZN4geos4geomlsERSoRKNS0_11LineSegmentE@Base 3.4.2 - _ZN4geos4geomlsERSoRKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos4geomlsERSoRKNS0_18IntersectionMatrixE@Base 3.4.2 - _ZN4geos4geomlsERSoRKNS0_8GeometryE@Base 3.4.2 - _ZN4geos4geomneERKNS0_10CoordinateES3_@Base 3.4.2 - _ZN4geos4geomneERKNS0_18CoordinateSequenceES3_@Base 3.4.2 - _ZN4geos4util13GEOSExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util13GEOSExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 - _ZN4geos4util13GEOSExceptionC1ERKS1_@Base 3.4.2 - _ZN4geos4util13GEOSExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util13GEOSExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 - _ZN4geos4util13GEOSExceptionC2ERKS1_@Base 3.4.2 - _ZN4geos4util13GEOSExceptionD0Ev@Base 3.4.2 - _ZN4geos4util13GEOSExceptionD1Ev@Base 3.4.2 - _ZN4geos4util13GEOSExceptionD2Ev@Base 3.4.2 - _ZN4geos4util15java_math_roundEd@Base 3.4.2 - _ZN4geos4util17TopologyExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util17TopologyExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_4geom10CoordinateE@Base 3.5.1 - _ZN4geos4util17TopologyExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util17TopologyExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_4geom10CoordinateE@Base 3.5.1 - _ZN4geos4util17TopologyExceptionD0Ev@Base 3.4.2 - _ZN4geos4util17TopologyExceptionD1Ev@Base 3.4.2 - _ZN4geos4util17TopologyExceptionD2Ev@Base 3.4.2 - _ZN4geos4util20InterruptedExceptionD0Ev@Base 3.4.2 - _ZN4geos4util20InterruptedExceptionD1Ev@Base 3.4.2 - _ZN4geos4util20InterruptedExceptionD2Ev@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10Dimensions7setBaseERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10Dimensions7setSizeEd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10Dimensions8setWidthEd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10Dimensions9setCentreERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10Dimensions9setHeightEd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10DimensionsC1Ev@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory10DimensionsC2Ev@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory12createCircleEv@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory12setNumPointsEi@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory15createRectangleEv@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory16createArcPolygonEdd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory7setBaseERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory7setSizeEd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory8setWidthEd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory9createArcEdd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory9setCentreERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactory9setHeightEd@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactoryC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactoryC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactoryD0Ev@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactoryD1Ev@Base 3.4.2 - _ZN4geos4util21GeometricShapeFactoryD2Ev@Base 3.4.2 - _ZN4geos4util21IllegalStateExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util21IllegalStateExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util21IllegalStateExceptionD0Ev@Base 3.4.2 - _ZN4geos4util21IllegalStateExceptionD1Ev@Base 3.4.2 - _ZN4geos4util21IllegalStateExceptionD2Ev@Base 3.4.2 - _ZN4geos4util24AssertionFailedExceptionD0Ev@Base 3.4.2 - _ZN4geos4util24AssertionFailedExceptionD1Ev@Base 3.4.2 - _ZN4geos4util24AssertionFailedExceptionD2Ev@Base 3.4.2 - _ZN4geos4util24IllegalArgumentExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util24IllegalArgumentExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util24IllegalArgumentExceptionD0Ev@Base 3.4.2 - _ZN4geos4util24IllegalArgumentExceptionD1Ev@Base 3.4.2 - _ZN4geos4util24IllegalArgumentExceptionD2Ev@Base 3.4.2 - _ZN4geos4util27UniqueCoordinateArrayFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos4util27UniqueCoordinateArrayFilterD0Ev@Base 3.4.2 - _ZN4geos4util27UniqueCoordinateArrayFilterD1Ev@Base 3.4.2 - _ZN4geos4util27UniqueCoordinateArrayFilterD2Ev@Base 3.4.2 - _ZN4geos4util29UnsupportedOperationExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util29UnsupportedOperationExceptionC1Ev@Base 3.4.2 - _ZN4geos4util29UnsupportedOperationExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util29UnsupportedOperationExceptionC2Ev@Base 3.4.2 - _ZN4geos4util29UnsupportedOperationExceptionD0Ev@Base 3.4.2 - _ZN4geos4util29UnsupportedOperationExceptionD1Ev@Base 3.4.2 - _ZN4geos4util29UnsupportedOperationExceptionD2Ev@Base 3.4.2 - _ZN4geos4util6Assert20shouldNeverReachHereERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util6Assert6equalsERKNS_4geom10CoordinateES5_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util6Assert6isTrueEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util7ProfileC1ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util7ProfileC2ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util7ProfileD1Ev@Base 3.4.2 - _ZN4geos4util7ProfileD2Ev@Base 3.4.2 - _ZN4geos4util7rint_vcEd@Base 3.4.2 - _ZN4geos4util8Profiler3getENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util8Profiler4stopENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util8Profiler5startENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos4util8Profiler8instanceEv@Base 3.4.2 - _ZN4geos4util8ProfilerC1Ev@Base 3.4.2 - _ZN4geos4util8ProfilerC2Ev@Base 3.4.2 - _ZN4geos4util8ProfilerD1Ev@Base 3.4.2 - _ZN4geos4util8ProfilerD2Ev@Base 3.4.2 - _ZN4geos4util9Interrupt16registerCallbackEPFvvE@Base 3.4.2 - _ZN4geos4util9Interrupt5checkEv@Base 3.4.2 - _ZN4geos4util9Interrupt6cancelEv@Base 3.4.2 - _ZN4geos4util9Interrupt7processEv@Base 3.4.2 - _ZN4geos4util9Interrupt7requestEv@Base 3.4.2 - _ZN4geos4util9Interrupt9interruptEv@Base 3.4.2 - _ZN4geos4util9sym_roundEd@Base 3.4.2 - _ZN4geos4utillsERSoRKNS0_7ProfileE@Base 3.4.2 - _ZN4geos4utillsERSoRKNS0_8ProfilerE@Base 3.4.2 - _ZN4geos5index13intervalrtree17IntervalRTreeNode7compareEPKS2_S4_@Base 3.4.2 - _ZN4geos5index13intervalrtree21IntervalRTreeLeafNodeD0Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree21IntervalRTreeLeafNodeD1Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree21IntervalRTreeLeafNodeD2Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree23IntervalRTreeBranchNodeD0Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree23IntervalRTreeBranchNodeD1Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree23IntervalRTreeBranchNodeD2Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree10buildLevelEPSt6vectorIPKNS1_17IntervalRTreeNodeESaIS6_EES9_@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree4initEv@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree5queryEddPNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree6insertEddPv@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree9buildTreeEv@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeC1Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeC2Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeD1Ev@Base 3.4.2 - _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeD2Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain13MonotoneChain13computeSelectERKNS_4geom8EnvelopeEjjRNS1_25MonotoneChainSelectActionE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain13MonotoneChain13computeSelectERKNS_4geom8EnvelopeEmmRNS1_25MonotoneChainSelectActionE@Base 3.5.1 - _ZN4geos5index5chain13MonotoneChain15computeOverlapsEPS2_PNS1_26MonotoneChainOverlapActionE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain13MonotoneChain15computeOverlapsEjjRS2_jjRNS1_26MonotoneChainOverlapActionE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain13MonotoneChain15computeOverlapsEmmRS2_mmRNS1_26MonotoneChainOverlapActionE@Base 3.5.1 - _ZN4geos5index5chain13MonotoneChain6selectERKNS_4geom8EnvelopeERNS1_25MonotoneChainSelectActionE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain13MonotoneChainC1ERKNS_4geom18CoordinateSequenceEjjPv@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain13MonotoneChainC1ERKNS_4geom18CoordinateSequenceEmmPv@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain13MonotoneChainC2ERKNS_4geom18CoordinateSequenceEjjPv@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain13MonotoneChainC2ERKNS_4geom18CoordinateSequenceEmmPv@Base 3.5.1 - _ZN4geos5index5chain13MonotoneChainD1Ev@Base 3.4.2 - _ZN4geos5index5chain13MonotoneChainD2Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain20MonotoneChainBuilder12findChainEndERKNS_4geom18CoordinateSequenceEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain20MonotoneChainBuilder12findChainEndERKNS_4geom18CoordinateSequenceEm@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain20MonotoneChainBuilder20getChainStartIndicesERKNS_4geom18CoordinateSequenceERSt6vectorIjSaIjEE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain20MonotoneChainBuilder20getChainStartIndicesERKNS_4geom18CoordinateSequenceERSt6vectorImSaImEE@Base 3.5.1 - _ZN4geos5index5chain20MonotoneChainBuilder9getChainsEPKNS_4geom18CoordinateSequenceEPv@Base 3.4.2 - _ZN4geos5index5chain20MonotoneChainBuilder9getChainsEPKNS_4geom18CoordinateSequenceEPvRSt6vectorIPNS1_13MonotoneChainESaISA_EE@Base 3.4.2 - _ZN4geos5index5chain25MonotoneChainSelectAction6selectERNS1_13MonotoneChainEj@Base 3.4.2 - _ZN4geos5index5chain26MonotoneChainOverlapAction7overlapERKNS_4geom11LineSegmentES6_@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index5chain26MonotoneChainOverlapAction7overlapERNS1_13MonotoneChainEjS4_j@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index5chain26MonotoneChainOverlapAction7overlapERNS1_13MonotoneChainEmS4_m@Base 3.5.1 - _ZN4geos5index5chain26MonotoneChainOverlapActionD0Ev@Base 3.4.2 - _ZN4geos5index5chain26MonotoneChainOverlapActionD1Ev@Base 3.4.2 - _ZN4geos5index5chain26MonotoneChainOverlapActionD2Ev@Base 3.4.2 - _ZN4geos5index7bintree3Key10computeKeyEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree3Key11getIntervalEv@Base 3.4.2 - _ZN4geos5index7bintree3Key12computeLevelEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree3Key15computeIntervalEiPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree3Key8getLevelEv@Base 3.4.2 - _ZN4geos5index7bintree3Key8getPointEv@Base 3.4.2 - _ZN4geos5index7bintree3KeyC1EPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree3KeyC2EPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree3KeyD1Ev@Base 3.4.2 - _ZN4geos5index7bintree3KeyD2Ev@Base 3.4.2 - _ZN4geos5index7bintree4Node10createNodeEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree4Node10getSubnodeEi@Base 3.4.2 - _ZN4geos5index7bintree4Node11getIntervalEv@Base 3.4.2 - _ZN4geos5index7bintree4Node13createSubnodeEi@Base 3.4.2 - _ZN4geos5index7bintree4Node13isSearchMatchEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree4Node14createExpandedEPS2_PNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree4Node4findEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree4Node6insertEPS2_@Base 3.4.2 - _ZN4geos5index7bintree4Node7getNodeEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree4NodeC1EPNS1_8IntervalEi@Base 3.4.2 - _ZN4geos5index7bintree4NodeC2EPNS1_8IntervalEi@Base 3.4.2 - _ZN4geos5index7bintree4NodeD0Ev@Base 3.4.2 - _ZN4geos5index7bintree4NodeD1Ev@Base 3.4.2 - _ZN4geos5index7bintree4NodeD2Ev@Base 3.4.2 - _ZN4geos5index7bintree4Root13isSearchMatchEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree4Root15insertContainedEPNS1_4NodeEPNS1_8IntervalEPv@Base 3.4.2 - _ZN4geos5index7bintree4Root6insertEPNS1_8IntervalEPv@Base 3.4.2 - _ZN4geos5index7bintree4Root6originE@Base 3.4.2 - _ZN4geos5index7bintree4RootD0Ev@Base 3.4.2 - _ZN4geos5index7bintree4RootD1Ev@Base 3.4.2 - _ZN4geos5index7bintree4RootD2Ev@Base 3.4.2 - _ZN4geos5index7bintree7Bintree12collectStatsEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree7Bintree12ensureExtentEPKNS1_8IntervalEd@Base 3.4.2 - _ZN4geos5index7bintree7Bintree4sizeEv@Base 3.4.2 - _ZN4geos5index7bintree7Bintree5depthEv@Base 3.4.2 - _ZN4geos5index7bintree7Bintree5queryEPNS1_8IntervalE@Base 3.4.2 - _ZN4geos5index7bintree7Bintree5queryEPNS1_8IntervalEPSt6vectorIPvSaIS6_EE@Base 3.4.2 - _ZN4geos5index7bintree7Bintree5queryEd@Base 3.4.2 - _ZN4geos5index7bintree7Bintree6insertEPNS1_8IntervalEPv@Base 3.4.2 - _ZN4geos5index7bintree7Bintree8iteratorEv@Base 3.4.2 - _ZN4geos5index7bintree7Bintree8nodeSizeEv@Base 3.4.2 - _ZN4geos5index7bintree7BintreeC1Ev@Base 3.4.2 - _ZN4geos5index7bintree7BintreeC2Ev@Base 3.4.2 - _ZN4geos5index7bintree7BintreeD1Ev@Base 3.4.2 - _ZN4geos5index7bintree7BintreeD2Ev@Base 3.4.2 - _ZN4geos5index7bintree8Interval15expandToIncludeEPS2_@Base 3.4.2 - _ZN4geos5index7bintree8Interval4initEdd@Base 3.4.2 - _ZN4geos5index7bintree8IntervalC1EPKS2_@Base 3.4.2 - _ZN4geos5index7bintree8IntervalC1Edd@Base 3.4.2 - _ZN4geos5index7bintree8IntervalC1Ev@Base 3.4.2 - _ZN4geos5index7bintree8IntervalC2EPKS2_@Base 3.4.2 - _ZN4geos5index7bintree8IntervalC2Edd@Base 3.4.2 - _ZN4geos5index7bintree8IntervalC2Ev@Base 3.4.2 - _ZN4geos5index7bintree8IntervalD1Ev@Base 3.4.2 - _ZN4geos5index7bintree8IntervalD2Ev@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase11addAllItemsEPSt6vectorIPvSaIS4_EE@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase15getSubnodeIndexEPNS1_8IntervalEd@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase26addAllItemsFromOverlappingEPNS1_8IntervalEPSt6vectorIPvSaIS6_EE@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase3addEPv@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase4sizeEv@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase5depthEv@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase8getItemsEv@Base 3.4.2 - _ZN4geos5index7bintree8NodeBase8nodeSizeEv@Base 3.4.2 - _ZN4geos5index7bintree8NodeBaseC1Ev@Base 3.4.2 - _ZN4geos5index7bintree8NodeBaseC2Ev@Base 3.4.2 - _ZN4geos5index7bintree8NodeBaseD0Ev@Base 3.4.2 - _ZN4geos5index7bintree8NodeBaseD1Ev@Base 3.4.2 - _ZN4geos5index7bintree8NodeBaseD2Ev@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNode17addChildBoundableEPNS1_9BoundableE@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNode8getLevelEv@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNodeC1Eii@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNodeC2Eii@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNodeD0Ev@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNodeD1Ev@Base 3.4.2 - _ZN4geos5index7strtree12AbstractNodeD2Ev@Base 3.4.2 - _ZN4geos5index7strtree13BoundablePair11isCompositeEPKNS1_9BoundableE@Base 3.6.0 - _ZN4geos5index7strtree13BoundablePair13expandToQueueERSt14priority_queueIPS2_St6vectorIS4_SaIS4_EENS2_25BoundablePairQueueCompareEEd@Base 3.6.0 - _ZN4geos5index7strtree13BoundablePair4areaEPKNS1_9BoundableE@Base 3.6.0 - _ZN4geos5index7strtree13BoundablePair6expandEPKNS1_9BoundableES5_RSt14priority_queueIPS2_St6vectorIS7_SaIS7_EENS2_25BoundablePairQueueCompareEEd@Base 3.6.0 - _ZN4geos5index7strtree13BoundablePairC1EPKNS1_9BoundableES5_PNS1_12ItemDistanceE@Base 3.6.0 - _ZN4geos5index7strtree13BoundablePairC2EPKNS1_9BoundableES5_PNS1_12ItemDistanceE@Base 3.6.0 - _ZN4geos5index7strtree13ItemBoundableC1EPKvPv@Base 3.4.2 - _ZN4geos5index7strtree13ItemBoundableC2EPKvPv@Base 3.4.2 - _ZN4geos5index7strtree13ItemBoundableD0Ev@Base 3.4.2 - _ZN4geos5index7strtree13ItemBoundableD1Ev@Base 3.4.2 - _ZN4geos5index7strtree13ItemBoundableD2Ev@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree10removeItemERNS1_12AbstractNodeEPv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree15getNodeCapacityEv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree17boundablesAtLevelEi@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree17boundablesAtLevelEiPNS1_12AbstractNodeEPSt6vectorIPNS1_9BoundableESaIS7_EE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree18createHigherLevelsEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree22createParentBoundablesEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree5buildEv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvPKNS1_12AbstractNodeEPSt6vectorIPvSaIS9_EE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvRKNS1_12AbstractNodeERNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvRNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvRSt6vectorIPvSaIS6_EE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree6insertEPKvPv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree6removeEPKvPv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree6removeEPKvRNS1_12AbstractNodeEPv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree7getRootEv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree7iterateERNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree8lastNodeEPSt6vectorIPNS1_9BoundableESaIS5_EE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree9itemsTreeEPNS1_12AbstractNodeE@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtree9itemsTreeEv@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtreeD0Ev@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtreeD1Ev@Base 3.4.2 - _ZN4geos5index7strtree15AbstractSTRtreeD2Ev@Base 3.4.2 - _ZN4geos5index7strtree15SIRAbstractNodeD0Ev@Base 3.4.2 - _ZN4geos5index7strtree15SIRAbstractNodeD1Ev@Base 3.4.2 - _ZN4geos5index7strtree15SIRAbstractNodeD2Ev@Base 3.4.2 - _ZN4geos5index7strtree15STRAbstractNodeD0Ev@Base 3.4.2 - _ZN4geos5index7strtree15STRAbstractNodeD1Ev@Base 3.4.2 - _ZN4geos5index7strtree15STRAbstractNodeD2Ev@Base 3.4.2 - _ZN4geos5index7strtree20GeometryItemDistance8distanceEPKNS1_13ItemBoundableES5_@Base 3.6.0 - _ZN4geos5index7strtree7SIRtree10createNodeEi@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree14sortBoundablesEPKSt6vectorIPNS1_9BoundableESaIS5_EE@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree15SIRIntersectsOp10intersectsEPKvS5_@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree15SIRIntersectsOpD0Ev@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree15SIRIntersectsOpD1Ev@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree15SIRIntersectsOpD2Ev@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree15getIntersectsOpEv@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree22createParentBoundablesEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 - _ZN4geos5index7strtree7SIRtree6insertEddPv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index7strtree7SIRtreeC1Ej@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index7strtree7SIRtreeC1Em@Base 3.5.1 - _ZN4geos5index7strtree7SIRtreeC1Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index7strtree7SIRtreeC2Ej@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index7strtree7SIRtreeC2Em@Base 3.5.1 - _ZN4geos5index7strtree7SIRtreeC2Ev@Base 3.4.2 - _ZN4geos5index7strtree7SIRtreeD0Ev@Base 3.4.2 - _ZN4geos5index7strtree7SIRtreeD1Ev@Base 3.4.2 - _ZN4geos5index7strtree7SIRtreeD2Ev@Base 3.4.2 - _ZN4geos5index7strtree7STRtree10createNodeEi@Base 3.4.2 - _ZN4geos5index7strtree7STRtree14sortBoundablesEPKSt6vectorIPNS1_9BoundableESaIS5_EE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index7strtree7STRtree14verticalSlicesEPSt6vectorIPNS1_9BoundableESaIS5_EEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index7strtree7STRtree14verticalSlicesEPSt6vectorIPNS1_9BoundableESaIS5_EEm@Base 3.5.1 - _ZN4geos5index7strtree7STRtree15STRIntersectsOp10intersectsEPKvS5_@Base 3.4.2 - _ZN4geos5index7strtree7STRtree15STRIntersectsOpD0Ev@Base 3.4.2 - _ZN4geos5index7strtree7STRtree15STRIntersectsOpD1Ev@Base 3.4.2 - _ZN4geos5index7strtree7STRtree15STRIntersectsOpD2Ev@Base 3.4.2 - _ZN4geos5index7strtree7STRtree15getIntersectsOpEv@Base 3.4.2 - _ZN4geos5index7strtree7STRtree16nearestNeighbourEPKNS_4geom8EnvelopeEPKvPNS1_12ItemDistanceE@Base 3.6.0 - _ZN4geos5index7strtree7STRtree16nearestNeighbourEPNS1_12ItemDistanceE@Base 3.6.0 - _ZN4geos5index7strtree7STRtree16nearestNeighbourEPNS1_13BoundablePairE@Base 3.6.0 - _ZN4geos5index7strtree7STRtree16nearestNeighbourEPNS1_13BoundablePairEd@Base 3.6.0 - _ZN4geos5index7strtree7STRtree22createParentBoundablesEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 - _ZN4geos5index7strtree7STRtree39createParentBoundablesFromVerticalSliceEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 - _ZN4geos5index7strtree7STRtree40createParentBoundablesFromVerticalSlicesEPSt6vectorIPS3_IPNS1_9BoundableESaIS5_EESaIS8_EEi@Base 3.4.2 - _ZN4geos5index7strtree7STRtree5queryEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index7strtree7STRtree5queryEPKNS_4geom8EnvelopeERSt6vectorIPvSaIS8_EE@Base 3.4.2 - _ZN4geos5index7strtree7STRtree6insertEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - _ZN4geos5index7strtree7STRtree6removeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index7strtree7STRtreeC1Ej@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index7strtree7STRtreeC1Em@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos5index7strtree7STRtreeC2Ej@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos5index7strtree7STRtreeC2Em@Base 3.5.1 - _ZN4geos5index7strtree7STRtreeD0Ev@Base 3.4.2 - _ZN4geos5index7strtree7STRtreeD1Ev@Base 3.4.2 - _ZN4geos5index7strtree7STRtreeD2Ev@Base 3.4.2 - _ZN4geos5index7strtree8Interval15expandToIncludeEPKS2_@Base 3.5.0 - _ZN4geos5index7strtree8Interval9getCentreEv@Base 3.4.2 - _ZN4geos5index7strtree8IntervalC1Edd@Base 3.4.2 - _ZN4geos5index7strtree8IntervalC2Edd@Base 3.4.2 - _ZN4geos5index7strtree9ItemsListD1Ev@Base 3.4.2 - _ZN4geos5index7strtree9ItemsListD2Ev@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBits13zeroLowerBitsEi@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBits14toBinaryStringB5cxx11Ed@Base 3.5.1 - _ZN4geos5index8quadtree10DoubleBits20truncateToPowerOfTwoEd@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBits21maximumCommonMantissaEdd@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBits8exponentEd@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBits8powerOf2Ei@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBitsC1Ed@Base 3.4.2 - _ZN4geos5index8quadtree10DoubleBitsC2Ed@Base 3.4.2 - _ZN4geos5index8quadtree12IntervalSize11isZeroWidthEdd@Base 3.4.2 - _ZN4geos5index8quadtree3Key10computeKeyERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree3Key10computeKeyEiRKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree3Key16computeQuadLevelERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree3KeyC1ERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree3KeyC2ERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree3KeyD1Ev@Base 3.4.2 - _ZN4geos5index8quadtree3KeyD2Ev@Base 3.4.2 - _ZN4geos5index8quadtree4Node10createNodeERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree4Node10getSubnodeEi@Base 3.4.2 - _ZN4geos5index8quadtree4Node10insertNodeESt8auto_ptrIS2_E@Base 3.4.2 - _ZN4geos5index8quadtree4Node13createSubnodeEi@Base 3.4.2 - _ZN4geos5index8quadtree4Node14createExpandedESt8auto_ptrIS2_ERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree4Node4findEPKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree4Node7getNodeEPKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree4NodeD0Ev@Base 3.4.2 - _ZN4geos5index8quadtree4NodeD1Ev@Base 3.4.2 - _ZN4geos5index8quadtree4NodeD2Ev@Base 3.4.2 - _ZN4geos5index8quadtree4Root15insertContainedEPNS1_4NodeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - _ZN4geos5index8quadtree4Root6insertEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - _ZN4geos5index8quadtree4Root6originE@Base 3.4.2 - _ZN4geos5index8quadtree4RootD0Ev@Base 3.4.2 - _ZN4geos5index8quadtree4RootD1Ev@Base 3.4.2 - _ZN4geos5index8quadtree4RootD2Ev@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBase10visitItemsEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBase15getSubnodeIndexEPKNS_4geom8EnvelopeERKNS3_10CoordinateE@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBase3addEPv@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBase5visitEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBase6removeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBase8getItemsEv@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBaseC1Ev@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBaseC2Ev@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBaseD0Ev@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBaseD1Ev@Base 3.4.2 - _ZN4geos5index8quadtree8NodeBaseD2Ev@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree12collectStatsERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree12ensureExtentEPKNS_4geom8EnvelopeEd@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree4sizeEv@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree5depthEv@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree5queryEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree5queryEPKNS_4geom8EnvelopeERSt6vectorIPvSaIS8_EE@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree6insertEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree6removeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 - _ZN4geos5index8quadtree8Quadtree8queryAllEv@Base 3.4.2 - _ZN4geos5index8quadtree8QuadtreeD0Ev@Base 3.4.2 - _ZN4geos5index8quadtree8QuadtreeD1Ev@Base 3.4.2 - _ZN4geos5index8quadtree8QuadtreeD2Ev@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEvent11getIntervalEv@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEvent14getInsertEventEv@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEvent19getDeleteEventIndexEv@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEvent19setDeleteEventIndexEi@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEvent8isDeleteEv@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEvent8isInsertEv@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEventC1EdPS2_PNS1_17SweepLineIntervalE@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineEventC2EdPS2_PNS1_17SweepLineIntervalE@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndex10buildIndexEv@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndex15computeOverlapsEPNS1_22SweepLineOverlapActionE@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndex15processOverlapsEiiPNS1_17SweepLineIntervalEPNS1_22SweepLineOverlapActionE@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndex3addEPNS1_17SweepLineIntervalE@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndexC1Ev@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndexC2Ev@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndexD1Ev@Base 3.4.2 - _ZN4geos5index9sweepline14SweepLineIndexD2Ev@Base 3.4.2 - _ZN4geos5index9sweepline17SweepLineInterval6getMaxEv@Base 3.4.2 - _ZN4geos5index9sweepline17SweepLineInterval6getMinEv@Base 3.4.2 - _ZN4geos5index9sweepline17SweepLineInterval7getItemEv@Base 3.4.2 - _ZN4geos5index9sweepline17SweepLineIntervalC1EddPv@Base 3.4.2 - _ZN4geos5index9sweepline17SweepLineIntervalC2EddPv@Base 3.4.2 - _ZN4geos6noding11ScaledNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding11ScaledNoder6ScalerD0Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoder6ScalerD1Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoder6ScalerD2Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoder8ReScaler9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos6noding11ScaledNoder8ReScalerD0Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoder8ReScalerD1Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoder8ReScalerD2Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoderD0Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoderD1Ev@Base 3.4.2 - _ZN4geos6noding11ScaledNoderD2Ev@Base 3.4.2 - _ZN4geos6noding11SegmentNode9compareToERKS1_@Base 3.4.2 - _ZN4geos6noding11SegmentNodeC1ERKNS0_18NodedSegmentStringERKNS_4geom10CoordinateEji@Base 3.4.2 - _ZN4geos6noding11SegmentNodeC2ERKNS0_18NodedSegmentStringERKNS_4geom10CoordinateEji@Base 3.4.2 - _ZN4geos6noding11SimpleNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding11SimpleNoder17computeIntersectsEPNS0_13SegmentStringES3_@Base 3.4.2 - _ZN4geos6noding11SimpleNoderD0Ev@Base 3.4.2 - _ZN4geos6noding11SimpleNoderD1Ev@Base 3.4.2 - _ZN4geos6noding11SimpleNoderD2Ev@Base 3.4.2 - _ZN4geos6noding12MCIndexNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding12MCIndexNoder15intersectChainsEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding12MCIndexNoder20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEjS6_j@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding12MCIndexNoder20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEmS6_m@Base 3.5.1 - _ZN4geos6noding12MCIndexNoder20SegmentOverlapActionD0Ev@Base 3.4.2 - _ZN4geos6noding12MCIndexNoder20SegmentOverlapActionD1Ev@Base 3.4.2 - _ZN4geos6noding12MCIndexNoder20SegmentOverlapActionD2Ev@Base 3.4.2 - _ZN4geos6noding12MCIndexNoder3addEPNS0_13SegmentStringE@Base 3.4.2 - _ZN4geos6noding12MCIndexNoder8getIndexEv@Base 3.4.2 - _ZN4geos6noding12MCIndexNoderD0Ev@Base 3.4.2 - _ZN4geos6noding12MCIndexNoderD1Ev@Base 3.4.2 - _ZN4geos6noding12MCIndexNoderD2Ev@Base 3.4.2 - _ZN4geos6noding13GeometryNoder10toGeometryERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding13GeometryNoder21extractSegmentStringsERKNS_4geom8GeometryERSt6vectorIPNS0_13SegmentStringESaIS8_EE@Base 3.4.2 - _ZN4geos6noding13GeometryNoder4nodeERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos6noding13GeometryNoder8getNodedEv@Base 3.4.2 - _ZN4geos6noding13GeometryNoder8getNoderEv@Base 3.4.2 - _ZN4geos6noding13GeometryNoderC1ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos6noding13GeometryNoderC2ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos6noding13IteratedNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding13IteratedNoder4nodeEPSt6vectorIPNS0_13SegmentStringESaIS4_EEPi@Base 3.4.2 - _ZN4geos6noding13IteratedNoderD0Ev@Base 3.4.2 - _ZN4geos6noding13IteratedNoderD1Ev@Base 3.4.2 - _ZN4geos6noding13IteratedNoderD2Ev@Base 3.4.2 - _ZN4geos6noding15NodingValidator10checkValidEv@Base 3.4.2 - _ZN4geos6noding15NodingValidator26checkInteriorIntersectionsERKNS0_13SegmentStringES4_@Base 3.4.2 - _ZN4geos6noding15NodingValidator26checkInteriorIntersectionsERKNS0_13SegmentStringEjS4_j@Base 3.4.2 - _ZN4geos6noding15NodingValidator26checkInteriorIntersectionsEv@Base 3.4.2 - _ZN4geos6noding15SegmentNodeList12addEndpointsEv@Base 3.4.2 - _ZN4geos6noding15SegmentNodeList13addSplitEdgesERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding15SegmentNodeList15createSplitEdgeEPNS0_11SegmentNodeES3_@Base 3.4.2 - _ZN4geos6noding15SegmentNodeList17addCollapsedNodesEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding15SegmentNodeList17findCollapseIndexERNS0_11SegmentNodeES3_Rj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding15SegmentNodeList17findCollapseIndexERNS0_11SegmentNodeES3_Rm@Base 3.5.1 - _ZN4geos6noding15SegmentNodeList26checkSplitEdgesCorrectnessERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding15SegmentNodeList30findCollapsesFromInsertedNodesERSt6vectorIjSaIjEE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding15SegmentNodeList30findCollapsesFromInsertedNodesERSt6vectorImSaImEE@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding15SegmentNodeList33findCollapsesFromExistingVerticesERSt6vectorIjSaIjEE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding15SegmentNodeList33findCollapsesFromExistingVerticesERSt6vectorImSaImEE@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding15SegmentNodeList3addERKNS_4geom10CoordinateEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding15SegmentNodeList3addERKNS_4geom10CoordinateEm@Base 3.5.1 - _ZN4geos6noding15SegmentNodeListD0Ev@Base 3.4.2 - _ZN4geos6noding15SegmentNodeListD1Ev@Base 3.4.2 - _ZN4geos6noding15SegmentNodeListD2Ev@Base 3.4.2 - _ZN4geos6noding15SinglePassNoder21setSegmentIntersectorEPNS0_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos6noding17IntersectionAdder20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 - _ZN4geos6noding17IntersectionAdder21isTrivialIntersectionEPKNS0_13SegmentStringEiS4_i@Base 3.4.2 - _ZN4geos6noding17IntersectionAdderD0Ev@Base 3.4.2 - _ZN4geos6noding17IntersectionAdderD1Ev@Base 3.4.2 - _ZN4geos6noding17IntersectionAdderD2Ev@Base 3.4.2 - _ZN4geos6noding18BasicSegmentStringD0Ev@Base 3.4.2 - _ZN4geos6noding18BasicSegmentStringD1Ev@Base 3.4.2 - _ZN4geos6noding18BasicSegmentStringD2Ev@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString10safeOctantERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString11getNodeListEv@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString15addIntersectionEPNS_9algorithm15LineIntersectorEjii@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString15addIntersectionERKNS_4geom10CoordinateEj@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString16addIntersectionsEPNS_9algorithm15LineIntersectorEji@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString18getNodedSubstringsERKSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZN4geos6noding18NodedSegmentString18getNodedSubstringsERKSt6vectorIPNS0_13SegmentStringESaIS4_EEPS6_@Base 3.4.2 - _ZN4geos6noding18NodedSegmentStringD0Ev@Base 3.4.2 - _ZN4geos6noding18NodedSegmentStringD1Ev@Base 3.4.2 - _ZN4geos6noding18NodedSegmentStringD2Ev@Base 3.4.2 - _ZN4geos6noding19FastNodingValidator10checkValidEv@Base 3.4.2 - _ZN4geos6noding19FastNodingValidator26checkInteriorIntersectionsEv@Base 3.4.2 - _ZN4geos6noding23IntersectionFinderAdder20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 - _ZN4geos6noding23IntersectionFinderAdderD0Ev@Base 3.4.2 - _ZN4geos6noding23IntersectionFinderAdderD1Ev@Base 3.4.2 - _ZN4geos6noding23IntersectionFinderAdderD2Ev@Base 3.4.2 - _ZN4geos6noding23OrientedCoordinateArray11orientationERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos6noding23OrientedCoordinateArray15compareOrientedERKNS_4geom18CoordinateSequenceEbS5_b@Base 3.4.2 - _ZN4geos6noding27SegmentIntersectionDetector20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 - _ZN4geos6noding27SegmentIntersectionDetectorD0Ev@Base 3.4.2 - _ZN4geos6noding27SegmentIntersectionDetectorD1Ev@Base 3.4.2 - _ZN4geos6noding27SegmentIntersectionDetectorD2Ev@Base 3.4.2 - _ZN4geos6noding32FastSegmentSetIntersectionFinder10intersectsEPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding32FastSegmentSetIntersectionFinder10intersectsEPSt6vectorIPKNS0_13SegmentStringESaIS5_EEPNS0_27SegmentIntersectionDetectorE@Base 3.4.2 - _ZN4geos6noding32FastSegmentSetIntersectionFinderC1EPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding32FastSegmentSetIntersectionFinderC2EPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding32FastSegmentSetIntersectionFinderD1Ev@Base 3.4.2 - _ZN4geos6noding32FastSegmentSetIntersectionFinderD2Ev@Base 3.4.2 - _ZN4geos6noding32SingleInteriorIntersectionFinder20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 - _ZN4geos6noding32SingleInteriorIntersectionFinderD0Ev@Base 3.4.2 - _ZN4geos6noding32SingleInteriorIntersectionFinderD1Ev@Base 3.4.2 - _ZN4geos6noding32SingleInteriorIntersectionFinderD2Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector10addToIndexEPNS0_13SegmentStringE@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector15addToMonoChainsEPNS0_13SegmentStringE@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector15intersectChainsEv@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector15setBaseSegmentsEPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEjS6_j@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEmS6_m@Base 3.5.1 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionD0Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionD1Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionD2Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersector7processEPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorC1Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorC2Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorD0Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorD1Ev@Base 3.4.2 - _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorD2Ev@Base 3.4.2 - _ZN4geos6noding6Octant6octantERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos6noding6Octant6octantEdd@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder12computeSnapsEPNS0_18NodedSegmentStringERSt6vectorINS_4geom10CoordinateESaIS7_EE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder12computeSnapsERKSt6vectorIPNS0_13SegmentStringESaIS5_EERS3_INS_4geom10CoordinateESaISB_EE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder16checkCorrectnessERSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder18computeVertexSnapsEPNS0_18NodedSegmentStringES4_@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder18computeVertexSnapsERKSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder25findInteriorIntersectionsERSt6vectorIPNS0_13SegmentStringESaIS5_EERNS_9algorithm15LineIntersectorERS3_INS_4geom10CoordinateESaISD_EE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounder9snapRoundEPSt6vectorIPNS0_13SegmentStringESaIS5_EERNS_9algorithm15LineIntersectorE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounderC1ERKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounderC2ERKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounderD0Ev@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounderD1Ev@Base 3.4.2 - _ZN4geos6noding9snapround17SimpleSnapRounderD2Ev@Base 3.4.2 - _ZN4geos6noding9snapround18HotPixelSnapAction6selectERKNS_4geom11LineSegmentE@Base 3.4.2 - _ZN4geos6noding9snapround18HotPixelSnapAction6selectERNS_5index5chain13MonotoneChainEj@Base 3.4.2 - _ZN4geos6noding9snapround18HotPixelSnapActionD0Ev@Base 3.4.2 - _ZN4geos6noding9snapround18HotPixelSnapActionD1Ev@Base 3.4.2 - _ZN4geos6noding9snapround18HotPixelSnapActionD2Ev@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder16checkCorrectnessERSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder18computeVertexSnapsEPNS0_18NodedSegmentStringE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder18computeVertexSnapsERSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder24computeIntersectionSnapsERSt6vectorINS_4geom10CoordinateESaIS5_EE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder25findInteriorIntersectionsERNS0_12MCIndexNoderEPSt6vectorIPNS0_13SegmentStringESaIS7_EERS5_INS_4geom10CoordinateESaISC_EE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounder9snapRoundERNS0_12MCIndexNoderEPSt6vectorIPNS0_13SegmentStringESaIS7_EE@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounderD0Ev@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounderD1Ev@Base 3.4.2 - _ZN4geos6noding9snapround18MCIndexSnapRounderD2Ev@Base 3.4.2 - _ZN4geos6noding9snapround19MCIndexPointSnapper4snapERNS1_8HotPixelEPNS0_13SegmentStringEj@Base 3.4.2 - _ZN4geos6noding9snapround26MCIndexPointSnapperVisitor9visitItemEPv@Base 3.4.2 - _ZN4geos6noding9snapround26MCIndexPointSnapperVisitorD0Ev@Base 3.4.2 - _ZN4geos6noding9snapround26MCIndexPointSnapperVisitorD1Ev@Base 3.4.2 - _ZN4geos6noding9snapround26MCIndexPointSnapperVisitorD2Ev@Base 3.4.2 - _ZN4geos6noding9snapround8HotPixel11initCornersERKNS_4geom10CoordinateE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos6noding9snapround8HotPixel14addSnappedNodeERNS0_18NodedSegmentStringEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos6noding9snapround8HotPixel14addSnappedNodeERNS0_18NodedSegmentStringEm@Base 3.5.1 - _ZN4geos6noding9snapround8HotPixel22intersectsPixelClosureERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZN4geos6noding9snapround8HotPixelC1ERKNS_4geom10CoordinateEdRNS_9algorithm15LineIntersectorE@Base 3.4.2 - _ZN4geos6noding9snapround8HotPixelC2ERKNS_4geom10CoordinateEdRNS_9algorithm15LineIntersectorE@Base 3.4.2 - _ZN4geos6noding9snapround8HotPixelD1Ev@Base 3.4.2 - _ZN4geos6noding9snapround8HotPixelD2Ev@Base 3.4.2 - _ZN4geos6nodinglsERSoRKNS0_11SegmentNodeE@Base 3.4.2 - _ZN4geos6nodinglsERSoRKNS0_13SegmentStringE@Base 3.4.2 - _ZN4geos6nodinglsERSoRKNS0_15SegmentNodeListE@Base 3.4.2 - _ZN4geos8simplify13DPTransformer15createValidAreaEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos8simplify13DPTransformer16transformPolygonEPKNS_4geom7PolygonEPKNS2_8GeometryE@Base 3.4.2 - _ZN4geos8simplify13DPTransformer20transformCoordinatesEPKNS_4geom18CoordinateSequenceEPKNS2_8GeometryE@Base 3.4.2 - _ZN4geos8simplify13DPTransformer21transformMultiPolygonEPKNS_4geom12MultiPolygonEPKNS2_8GeometryE@Base 3.4.2 - _ZN4geos8simplify13DPTransformerC1Ed@Base 3.4.2 - _ZN4geos8simplify13DPTransformerC2Ed@Base 3.4.2 - _ZN4geos8simplify13DPTransformerD0Ev@Base 3.4.2 - _ZN4geos8simplify13DPTransformerD1Ev@Base 3.4.2 - _ZN4geos8simplify13DPTransformerD2Ev@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndex3addEPKNS_4geom11LineSegmentE@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndex3addERKNS0_16TaggedLineStringE@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndex6removeEPKNS_4geom11LineSegmentE@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndexC1Ev@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndexC2Ev@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndexD1Ev@Base 3.4.2 - _ZN4geos8simplify16LineSegmentIndexD2Ev@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify16TaggedLineString10getSegmentEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify16TaggedLineString10getSegmentEm@Base 3.5.1 - _ZN4geos8simplify16TaggedLineString11addToResultESt8auto_ptrINS0_17TaggedLineSegmentEE@Base 3.4.2 - _ZN4geos8simplify16TaggedLineString11getSegmentsEv@Base 3.4.2 - _ZN4geos8simplify16TaggedLineString18extractCoordinatesERKSt6vectorIPNS0_17TaggedLineSegmentESaIS4_EE@Base 3.4.2 - _ZN4geos8simplify16TaggedLineString4initEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify16TaggedLineStringC1EPKNS_4geom10LineStringEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify16TaggedLineStringC1EPKNS_4geom10LineStringEm@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify16TaggedLineStringC2EPKNS_4geom10LineStringEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify16TaggedLineStringC2EPKNS_4geom10LineStringEm@Base 3.5.1 - _ZN4geos8simplify16TaggedLineStringD1Ev@Base 3.4.2 - _ZN4geos8simplify16TaggedLineStringD2Ev@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentC1ERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentC1ERKNS_4geom10CoordinateES5_PKNS2_8GeometryEj@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentC1ERKS1_@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentC2ERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentC2ERKNS_4geom10CoordinateES5_PKNS2_8GeometryEj@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentC2ERKS1_@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentD0Ev@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentD1Ev@Base 3.4.2 - _ZN4geos8simplify17TaggedLineSegmentD2Ev@Base 3.4.2 - _ZN4geos8simplify18LineSegmentVisitor9visitItemEPv@Base 3.4.2 - _ZN4geos8simplify18LineSegmentVisitorD0Ev@Base 3.4.2 - _ZN4geos8simplify18LineSegmentVisitorD1Ev@Base 3.4.2 - _ZN4geos8simplify18LineSegmentVisitorD2Ev@Base 3.4.2 - _ZN4geos8simplify21TaggedLinesSimplifier20setDistanceToleranceEd@Base 3.4.2 - _ZN4geos8simplify21TaggedLinesSimplifier8simplifyERNS0_16TaggedLineStringE@Base 3.4.2 - _ZN4geos8simplify21TaggedLinesSimplifierC1Ev@Base 3.4.2 - _ZN4geos8simplify21TaggedLinesSimplifierC2Ev@Base 3.4.2 - _ZN4geos8simplify24DouglasPeuckerSimplifier17getResultGeometryEv@Base 3.4.2 - _ZN4geos8simplify24DouglasPeuckerSimplifier20setDistanceToleranceEd@Base 3.4.2 - _ZN4geos8simplify24DouglasPeuckerSimplifier8simplifyEPKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos8simplify24DouglasPeuckerSimplifierC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos8simplify24DouglasPeuckerSimplifierC2EPKNS_4geom8GeometryE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15isInLineSectionEPKNS0_16TaggedLineStringERKSt6vectorIjSaIjEEPKNS0_17TaggedLineSegmentE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15isInLineSectionEPKNS0_16TaggedLineStringERKSt6vectorImSaImEEPKNS0_17TaggedLineSegmentE@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15simplifySectionEjjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15simplifySectionEmmm@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier17findFurthestPointEPKNS_4geom18CoordinateSequenceEjjRd@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier17findFurthestPointEPKNS_4geom18CoordinateSequenceEmmRd@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier18hasBadIntersectionEPKNS0_16TaggedLineStringERKSt6vectorIjSaIjEERKNS_4geom11LineSegmentE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier18hasBadIntersectionEPKNS0_16TaggedLineStringERKSt6vectorImSaImEERKNS_4geom11LineSegmentE@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier23hasBadInputIntersectionEPKNS0_16TaggedLineStringERKSt6vectorIjSaIjEERKNS_4geom11LineSegmentE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier23hasBadInputIntersectionEPKNS0_16TaggedLineStringERKSt6vectorImSaImEERKNS_4geom11LineSegmentE@Base 3.5.1 - _ZN4geos8simplify26TaggedLineStringSimplifier24hasBadOutputIntersectionERKNS_4geom11LineSegmentE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier6removeEPKNS0_16TaggedLineStringEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier6removeEPKNS0_16TaggedLineStringEmm@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier7flattenEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier7flattenEmm@Base 3.5.1 - _ZN4geos8simplify26TaggedLineStringSimplifier8simplifyEPNS0_16TaggedLineStringE@Base 3.4.2 - _ZN4geos8simplify26TaggedLineStringSimplifierC1EPNS0_16LineSegmentIndexES3_@Base 3.4.2 - _ZN4geos8simplify26TaggedLineStringSimplifierC2EPNS0_16LineSegmentIndexES3_@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos8simplify28DouglasPeuckerLineSimplifier15simplifySectionEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos8simplify28DouglasPeuckerLineSimplifier15simplifySectionEmm@Base 3.5.1 - _ZN4geos8simplify28DouglasPeuckerLineSimplifier20setDistanceToleranceEd@Base 3.4.2 - _ZN4geos8simplify28DouglasPeuckerLineSimplifier8simplifyERKSt6vectorINS_4geom10CoordinateESaIS4_EEd@Base 3.4.2 - _ZN4geos8simplify28DouglasPeuckerLineSimplifier8simplifyEv@Base 3.4.2 - _ZN4geos8simplify28DouglasPeuckerLineSimplifierC1ERKSt6vectorINS_4geom10CoordinateESaIS4_EE@Base 3.4.2 - _ZN4geos8simplify28DouglasPeuckerLineSimplifierC2ERKSt6vectorINS_4geom10CoordinateESaIS4_EE@Base 3.4.2 - _ZN4geos8simplify28TopologyPreservingSimplifier17getResultGeometryEv@Base 3.4.2 - _ZN4geos8simplify28TopologyPreservingSimplifier20setDistanceToleranceEd@Base 3.4.2 - _ZN4geos8simplify28TopologyPreservingSimplifier8simplifyEPKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos8simplify28TopologyPreservingSimplifierC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos8simplify28TopologyPreservingSimplifierC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull10grahamScanERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull13computeOctPtsERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull13getConvexHullEv@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull13lineOrPolygonERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull14computeOctRingERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull18extractCoordinatesEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull20toCoordinateSequenceERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull6reduceERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull7preSortERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull9cleanRingERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull9isBetweenERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm10ConvexHull9padArray3ERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHullC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHullC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm10ConvexHullD1Ev@Base 3.4.2 - _ZN4geos9algorithm10ConvexHullD2Ev@Base 3.4.2 - _ZN4geos9algorithm11HCoordinate12intersectionERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC1ERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC1ERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC1ERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC1ERKS1_S3_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC1Eddd@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC1Ev@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC2ERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC2ERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC2ERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC2ERKS1_S3_@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC2Eddd@Base 3.4.2 - _ZN4geos9algorithm11HCoordinateC2Ev@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms10signedAreaEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms13isPointInRingERKNS_4geom10CoordinateEPKNS2_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms13isPointInRingERKNS_4geom10CoordinateERKSt6vectorIPS4_SaIS7_EE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms16distanceLineLineERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms16orientationIndexERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms17distancePointLineERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms17locatePointInRingERKNS_4geom10CoordinateERKNS2_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms17locatePointInRingERKNS_4geom10CoordinateERKSt6vectorIPS4_SaIS7_EE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms18computeOrientationERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms30distancePointLinePerpendicularERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms5isCCWEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms6lengthEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CGAlgorithms8isOnLineERKNS_4geom10CoordinateEPKNS2_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea11addTriangleERKNS_4geom10CoordinateES5_S5_b@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea12setBasePointERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea17addLinearSegmentsERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea3addEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea3addEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea5area2ERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea7addHoleEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea8addShellEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CentroidArea9centroid3ERKNS_4geom10CoordinateES5_S5_RS3_@Base 3.4.2 - _ZN4geos9algorithm12CentroidLine3addEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm12CentroidLine3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm12PointLocator15computeLocationERKNS_4geom10CoordinateEPKNS2_8GeometryE@Base 3.4.2 - _ZN4geos9algorithm12PointLocator18updateLocationInfoEi@Base 3.4.2 - _ZN4geos9algorithm12PointLocator19locateInPolygonRingERKNS_4geom10CoordinateEPKNS2_10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_10LineStringE@Base 3.4.2 - _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_5PointE@Base 3.5.1 - _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_7PolygonE@Base 3.4.2 - _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_8GeometryE@Base 3.4.2 - _ZN4geos9algorithm13CentroidPoint3addEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm13CentroidPoint3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10MCSelecter6selectERKNS_4geom11LineSegmentE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10MCSelecterC1ERKNS_4geom10CoordinateEPS1_@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10MCSelecterC2ERKNS_4geom10CoordinateEPS1_@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10MCSelecterD0Ev@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10MCSelecterD1Ev@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10MCSelecterD2Ev@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing10buildIndexEv@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing15testLineSegmentERKNS_4geom10CoordinateERKNS2_11LineSegmentE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing17testMonotoneChainEPNS_4geom8EnvelopeEPNS1_10MCSelecterEPNS_5index5chain13MonotoneChainE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRing8isInsideERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRingC1EPKNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRingC2EPKNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRingD0Ev@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRingD1Ev@Base 3.4.2 - _ZN4geos9algorithm13MCPointInRingD2Ev@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector12interpolateZERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector15hasIntersectionERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector16computeIntersectERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector19computeEdgeDistanceERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector19computeIntLineIndexEi@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector19computeIntLineIndexEv@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector19computeIntersectionERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector19computeIntersectionERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector20getIndexAlongSegmentEii@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector20isSameSignAndNonZeroEdd@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector22isInteriorIntersectionEi@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector22isInteriorIntersectionEv@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector27getIntersectionAlongSegmentEii@Base 3.4.2 - _ZN4geos9algorithm15LineIntersector28computeCollinearIntersectionERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter11getDiameterEv@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter12getNextIndexEPKNS_4geom18CoordinateSequenceEj@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter18computeWidthConvexEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter18getMinimumDiameterEPNS_4geom8GeometryE@Base 3.6.0 - _ZN4geos9algorithm15MinimumDiameter18getWidthCoordinateEv@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter19findMaxPerpDistanceEPKNS_4geom18CoordinateSequenceEPNS2_11LineSegmentEj@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter19getMinimumRectangleEPNS_4geom8GeometryE@Base 3.6.0 - _ZN4geos9algorithm15MinimumDiameter19getMinimumRectangleEv@Base 3.6.0 - _ZN4geos9algorithm15MinimumDiameter20getSupportingSegmentEv@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter21computeSegmentForLineEddd@Base 3.6.0 - _ZN4geos9algorithm15MinimumDiameter22computeMinimumDiameterEv@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter28computeConvexRingMinDiameterEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameter8computeCEddRKNS_4geom10CoordinateE@Base 3.6.0 - _ZN4geos9algorithm15MinimumDiameter9getLengthEv@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameterC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameterC1EPKNS_4geom8GeometryEb@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameterC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameterC2EPKNS_4geom8GeometryEb@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameterD1Ev@Base 3.4.2 - _ZN4geos9algorithm15MinimumDiameterD2Ev@Base 3.4.2 - _ZN4geos9algorithm16BoundaryNodeRule17getBoundaryOGCSFSEv@Base 3.4.2 - _ZN4geos9algorithm16BoundaryNodeRule19getBoundaryEndPointEv@Base 3.4.2 - _ZN4geos9algorithm16BoundaryNodeRule19getBoundaryRuleMod2Ev@Base 3.4.2 - _ZN4geos9algorithm16BoundaryNodeRule29getBoundaryMonovalentEndPointEv@Base 3.4.2 - _ZN4geos9algorithm16BoundaryNodeRule30getBoundaryMultivalentEndPointEv@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointArea10addPolygonEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointArea14widestGeometryEPKNS_4geom18GeometryCollectionE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointArea14widestGeometryEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointArea18horizontalBisectorEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointArea3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointAreaC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointAreaC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointAreaD1Ev@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointAreaD2Ev@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLine11addInteriorEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLine11addInteriorEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLine12addEndpointsEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLine12addEndpointsEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLine3addERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLineC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLineC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLineD1Ev@Base 3.4.2 - _ZN4geos9algorithm17InteriorPointLineD2Ev@Base 3.4.2 - _ZN4geos9algorithm17RobustDeterminant12signOfDet2x2Edddd@Base 3.4.2 - _ZN4geos9algorithm17SimplePointInRing8isInsideERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm17SimplePointInRingC1EPNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm17SimplePointInRingC2EPNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm17SimplePointInRingD0Ev@Base 3.4.2 - _ZN4geos9algorithm17SimplePointInRingD1Ev@Base 3.4.2 - _ZN4geos9algorithm17SimplePointInRingD2Ev@Base 3.4.2 - _ZN4geos9algorithm18InteriorPointPoint3addEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm18InteriorPointPoint3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm18InteriorPointPointC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm18InteriorPointPointC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm18RayCrossingCounter11getLocationEv@Base 3.4.2 - _ZN4geos9algorithm18RayCrossingCounter12countSegmentERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9algorithm18RayCrossingCounter16isPointInPolygonEv@Base 3.4.2 - _ZN4geos9algorithm18RayCrossingCounter16orientationIndexERKNS_4geom10CoordinateES5_S5_@Base 3.5.0 - _ZN4geos9algorithm18RayCrossingCounter17locatePointInRingERKNS_4geom10CoordinateERKNS2_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm18RayCrossingCounter17locatePointInRingERKNS_4geom10CoordinateERKSt6vectorIPS4_SaIS7_EE@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRing10buildIndexEv@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRing15testLineSegmentERKNS_4geom10CoordinateEPNS2_11LineSegmentE@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRing8isInsideERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRingC1EPNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRingC2EPNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRingD0Ev@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRingD1Ev@Base 3.4.2 - _ZN4geos9algorithm18SIRtreePointInRingD2Ev@Base 3.4.2 - _ZN4geos9algorithm25NotRepresentableExceptionC1ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos9algorithm25NotRepresentableExceptionC1Ev@Base 3.4.2 - _ZN4geos9algorithm25NotRepresentableExceptionC2ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos9algorithm25NotRepresentableExceptionC2Ev@Base 3.4.2 - _ZN4geos9algorithm25NotRepresentableExceptionD0Ev@Base 3.4.2 - _ZN4geos9algorithm25NotRepresentableExceptionD1Ev@Base 3.4.2 - _ZN4geos9algorithm25NotRepresentableExceptionD2Ev@Base 3.4.2 - _ZN4geos9algorithm5Angle10PI_TIMES_2E@Base 3.4.2 - _ZN4geos9algorithm5Angle12angleBetweenERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm5Angle13interiorAngleERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm5Angle17normalizePositiveEd@Base 3.4.2 - _ZN4geos9algorithm5Angle20angleBetweenOrientedERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm5Angle4diffEdd@Base 3.4.2 - _ZN4geos9algorithm5Angle5angleERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm5Angle5angleERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9algorithm5Angle7getTurnEdd@Base 3.4.2 - _ZN4geos9algorithm5Angle7isAcuteERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm5Angle8isObtuseERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm5Angle9PI_OVER_2E@Base 3.4.2 - _ZN4geos9algorithm5Angle9PI_OVER_4E@Base 3.4.2 - _ZN4geos9algorithm5Angle9normalizeEd@Base 3.4.2 - _ZN4geos9algorithm5Angle9toDegreesEd@Base 3.4.2 - _ZN4geos9algorithm5Angle9toRadiansEd@Base 3.4.2 - _ZN4geos9algorithm6locate24SimplePointInAreaLocator13containsPointERKNS_4geom10CoordinateEPKNS3_8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate24SimplePointInAreaLocator22containsPointInPolygonERKNS_4geom10CoordinateEPKNS3_7PolygonE@Base 3.4.2 - _ZN4geos9algorithm6locate24SimplePointInAreaLocator6locateEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm6locate24SimplePointInAreaLocator6locateERKNS_4geom10CoordinateEPKNS3_8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator10buildIndexERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitor9visitItemEPv@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorD0Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorD1Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorD2Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometry4initERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometry5queryEddPNS_5index11ItemVisitorE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometry7addLineEPNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryC1ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryC2ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryD1Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryD2Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocator6locateEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorC1ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorC2ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorD0Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorD1Ev@Base 3.4.2 - _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorD2Ev@Base 3.4.2 - _ZN4geos9algorithm8Centroid11addTriangleERKNS_4geom10CoordinateES5_S5_b@Base 3.4.2 - _ZN4geos9algorithm8Centroid11getCentroidERKNS_4geom8GeometryERNS2_10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm8Centroid12setBasePointERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm8Centroid15addLineSegmentsERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm8Centroid3addERKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9algorithm8Centroid3addERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9algorithm8Centroid5area2ERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZN4geos9algorithm8Centroid7addHoleERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm8Centroid8addPointERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm8Centroid8addShellERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9algorithm8Centroid9centroid3ERKNS_4geom10CoordinateES5_S5_RS3_@Base 3.4.2 - _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom10LineStringERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 - _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom11LineSegmentERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 - _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom7PolygonERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 - _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom8GeometryERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterD0Ev@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterD1Ev@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterD2Ev@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance23computeOrientedDistanceERKNS_4geom8GeometryES6_RNS1_17PointPairDistanceE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter9filter_roERKNS_4geom18CoordinateSequenceEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter9filter_roERKNS_4geom18CoordinateSequenceEm@Base 3.5.1 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterD0Ev@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterD1Ev@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterD2Ev@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance8distanceERKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9algorithm8distance25DiscreteHausdorffDistance8distanceERKNS_4geom8GeometryES6_d@Base 3.4.2 - _ZN4geos9algorithmlsERSoRKNS0_11HCoordinateE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar11getLocationEiRKNS_4geom10CoordinateEPSt6vectorIPNS0_13GeometryGraphESaIS8_EE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar13getCoordinateEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar13insertEdgeEndEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar16computeLabellingEPSt6vectorIPNS0_13GeometryGraphESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar19propagateSideLabelsEi@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar20computeEdgeEndLabelsERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar22isAreaLabelsConsistentERKNS0_13GeometryGraphE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar25checkAreaLabelsConsistentEi@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar3endEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar4findEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar4rendEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar5beginEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar6rbeginEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar8getEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar9getDegreeEv@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStar9getNextCWEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStarC1Ev@Base 3.4.2 - _ZN4geos9geomgraph11EdgeEndStarC2Ev@Base 3.4.2 - _ZN4geos9geomgraph11NodeFactory8instanceEv@Base 3.4.2 - _ZN4geos9geomgraph11NodeFactoryD0Ev@Base 3.4.2 - _ZN4geos9geomgraph11NodeFactoryD1Ev@Base 3.4.2 - _ZN4geos9geomgraph11NodeFactoryD2Ev@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph10getNodeMapEv@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph10insertEdgeEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph10printEdgesB5cxx11Ev@Base 3.5.1 - _ZN4geos9geomgraph11PlanarGraph11findEdgeEndEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph11getEdgeEndsEv@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph14isBoundaryNodeEiRKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph15getEdgeIteratorEv@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph15getNodeIteratorEv@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph20linkAllDirectedEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph20matchInSameDirectionERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph23findEdgeInSameDirectionERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph23linkResultDirectedEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph3addEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph4findERNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph7addNodeEPNS0_4NodeE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph7addNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph8addEdgesERKSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph8findEdgeERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraph8getNodesERSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphC1ERKNS0_11NodeFactoryE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphC1Ev@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphC2ERKNS0_11NodeFactoryE@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphC2Ev@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphD0Ev@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphD1Ev@Base 3.4.2 - _ZN4geos9geomgraph11PlanarGraphD2Ev@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge10getNextMinEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge10isInResultEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge10isLineEdgeEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge10setNextMinEPS1_@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge10setVisitedEb@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge11depthFactorEii@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge11getEdgeRingEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge11setEdgeRingEPNS0_8EdgeRingE@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge11setInResultEb@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge13setEdgeDepthsEii@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge14getMinEdgeRingEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge14setMinEdgeRingEPNS0_8EdgeRingE@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge14setVisitedEdgeEb@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge18isInteriorAreaEdgeEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge20computeDirectedLabelEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge6getSymEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge6setSymEPS1_@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge7getNextEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge7setNextEPS1_@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge8getDepthEi@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge8setDepthEii@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge9isForwardEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge9isVisitedEv@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdge9printEdgeB5cxx11Ev@Base 3.5.1 - _ZN4geos9geomgraph12DirectedEdgeC1EPNS0_4EdgeEb@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdgeC2EPNS0_4EdgeEb@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdgeD0Ev@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdgeD1Ev@Base 3.4.2 - _ZN4geos9geomgraph12DirectedEdgeD2Ev@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph10addPolygonEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph11getGeometryEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph11insertPointEiRKNS_4geom10CoordinateEi@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph12isInBoundaryEi@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph13addCollectionEPKNS_4geom18GeometryCollectionE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph13addLineStringEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph14addPolygonRingEPKNS_4geom10LinearRingEii@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph15getInvalidPointEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph15hasTooFewPointsEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph16computeSelfNodesERNS_9algorithm15LineIntersectorEbPKNS_4geom8EnvelopeE@Base 3.5.0 - _ZN4geos9geomgraph13GeometryGraph16computeSelfNodesERNS_9algorithm15LineIntersectorEbbPKNS_4geom8EnvelopeE@Base 3.5.1 - _ZN4geos9geomgraph13GeometryGraph16getBoundaryNodesERSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph16getBoundaryNodesEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph17computeSplitEdgesEPSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph17determineBoundaryERKNS_9algorithm16BoundaryNodeRuleEi@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph17determineBoundaryEi@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph17getBoundaryPointsEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph19insertBoundaryPointEiRKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph23addSelfIntersectionNodeEiRKNS_4geom10CoordinateEi@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph24addSelfIntersectionNodesEi@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph24computeEdgeIntersectionsEPS1_PNS_9algorithm15LineIntersectorEbPKNS_4geom8EnvelopeE@Base 3.5.0 - _ZN4geos9geomgraph13GeometryGraph24createEdgeSetIntersectorEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph7addEdgeEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph8addPointEPKNS_4geom5PointE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph8addPointERNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph8findEdgeEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraph8getEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphC1EiPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphC1EiPKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphC1Ev@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphC2EiPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphC2EiPKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphC2Ev@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphD0Ev@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphD1Ev@Base 3.4.2 - _ZN4geos9geomgraph13GeometryGraphD2Ev@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponent10setCoveredEb@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponent10setVisitedEb@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponent11setInResultEb@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponent8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentC1ERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentC1Ev@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentC2ERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentC2Ev@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentD0Ev@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentD1Ev@Base 3.4.2 - _ZN4geos9geomgraph14GraphComponentD2Ev@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar13computeDepthsEPNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar13computeDepthsESt23_Rb_tree_const_iteratorIPNS0_7EdgeEndEES5_i@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar14mergeSymLabelsEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar15updateLabellingERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar16computeLabellingEPSt6vectorIPNS0_13GeometryGraphESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar16getRightmostEdgeEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar17getOutgoingDegreeEPNS0_8EdgeRingE@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar17getOutgoingDegreeEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar18getResultAreaEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar20findCoveredLineEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar20linkAllDirectedEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar23linkResultDirectedEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar24linkMinimalDirectedEdgesEPNS0_8EdgeRingE@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStar6insertEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStarD0Ev@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStarD1Ev@Base 3.4.2 - _ZN4geos9geomgraph16DirectedEdgeStarD2Ev@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocation11setLocationEi@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos9geomgraph16TopologyLocation11setLocationEji@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos9geomgraph16TopologyLocation11setLocationEmi@Base 3.5.1 - _ZN4geos9geomgraph16TopologyLocation12setLocationsEiii@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocation15setAllLocationsEi@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocation21setAllLocationsIfNullEi@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocation4flipEv@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocation5mergeERKS1_@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC1ERKS1_@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC1ERKSt6vectorIiSaIiEE@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC1Ei@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC1Eiii@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC1Ev@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC2ERKS1_@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC2ERKSt6vectorIiSaIiEE@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC2Ei@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC2Eiii@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationC2Ev@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationD1Ev@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationD2Ev@Base 3.4.2 - _ZN4geos9geomgraph16TopologyLocationaSERKS1_@Base 3.4.2 - _ZN4geos9geomgraph19EdgeNodingValidator16toSegmentStringsERSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph19EdgeNodingValidatorD1Ev@Base 3.4.2 - _ZN4geos9geomgraph19EdgeNodingValidatorD2Ev@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionList12addEndpointsEv@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionList13addSplitEdgesEPSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionList15createSplitEdgeEPNS0_16EdgeIntersectionES3_@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionList3addERKNS_4geom10CoordinateEid@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionListC1EPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionListC2EPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionListD1Ev@Base 3.4.2 - _ZN4geos9geomgraph20EdgeIntersectionListD2Ev@Base 3.4.2 - (optional=templinst)_ZN4geos9geomgraph26collect_intersecting_edgesIN9__gnu_cxx17__normal_iteratorIPPNS0_4EdgeESt6vectorIS5_SaIS5_EEEES9_EEvPKNS_4geom8EnvelopeET_SF_RT0_@Base 3.5.0 - _ZN4geos9geomgraph4Edge11getEnvelopeEv@Base 3.4.2 - _ZN4geos9geomgraph4Edge11setIsolatedEb@Base 3.4.2 - _ZN4geos9geomgraph4Edge13setDepthDeltaEi@Base 3.4.2 - _ZN4geos9geomgraph4Edge15addIntersectionEPNS_9algorithm15LineIntersectorEiii@Base 3.4.2 - _ZN4geos9geomgraph4Edge16addIntersectionsEPNS_9algorithm15LineIntersectorEii@Base 3.4.2 - _ZN4geos9geomgraph4Edge16getCollapsedEdgeEv@Base 3.4.2 - _ZN4geos9geomgraph4Edge20getMonotoneChainEdgeEv@Base 3.4.2 - _ZN4geos9geomgraph4Edge23getEdgeIntersectionListEv@Base 3.4.2 - _ZN4geos9geomgraph4Edge7setNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZN4geos9geomgraph4Edge8getDepthEv@Base 3.4.2 - _ZN4geos9geomgraph4Edge8updateIMERKNS0_5LabelERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9geomgraph4Edge9computeIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9geomgraph4EdgeC1EPNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9geomgraph4EdgeC1EPNS_4geom18CoordinateSequenceERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph4EdgeC2EPNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9geomgraph4EdgeC2EPNS_4geom18CoordinateSequenceERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph4EdgeD0Ev@Base 3.4.2 - _ZN4geos9geomgraph4EdgeD1Ev@Base 3.4.2 - _ZN4geos9geomgraph4EdgeD2Ev@Base 3.4.2 - _ZN4geos9geomgraph4Node10mergeLabelERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph4Node10mergeLabelERKS1_@Base 3.4.2 - _ZN4geos9geomgraph4Node16setLabelBoundaryEi@Base 3.4.2 - _ZN4geos9geomgraph4Node21computeMergedLocationERKNS0_5LabelEi@Base 3.4.2 - _ZN4geos9geomgraph4Node3addEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph4Node4addZEd@Base 3.4.2 - _ZN4geos9geomgraph4Node5printB5cxx11Ev@Base 3.5.1 - _ZN4geos9geomgraph4Node8getEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph4Node8setLabelEii@Base 3.4.2 - _ZN4geos9geomgraph4Node9computeIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9geomgraph4NodeC1ERKNS_4geom10CoordinateEPNS0_11EdgeEndStarE@Base 3.4.2 - _ZN4geos9geomgraph4NodeC2ERKNS_4geom10CoordinateEPNS0_11EdgeEndStarE@Base 3.4.2 - _ZN4geos9geomgraph4NodeD0Ev@Base 3.4.2 - _ZN4geos9geomgraph4NodeD1Ev@Base 3.4.2 - _ZN4geos9geomgraph4NodeD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5Depth15depthAtLocationEi@Base 3.4.2 - _ZN4geos9geomgraph5Depth3addERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph5Depth3addEiii@Base 3.4.2 - _ZN4geos9geomgraph5Depth8setDepthEiii@Base 3.4.2 - _ZN4geos9geomgraph5Depth9normalizeEv@Base 3.4.2 - _ZN4geos9geomgraph5DepthC1Ev@Base 3.4.2 - _ZN4geos9geomgraph5DepthC2Ev@Base 3.4.2 - _ZN4geos9geomgraph5DepthD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5DepthD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5DepthD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5Label11setLocationEii@Base 3.4.2 - _ZN4geos9geomgraph5Label11setLocationEiii@Base 3.4.2 - _ZN4geos9geomgraph5Label11toLineLabelERKS1_@Base 3.4.2 - _ZN4geos9geomgraph5Label15setAllLocationsEii@Base 3.4.2 - _ZN4geos9geomgraph5Label21setAllLocationsIfNullEi@Base 3.4.2 - _ZN4geos9geomgraph5Label21setAllLocationsIfNullEii@Base 3.4.2 - _ZN4geos9geomgraph5Label4flipEv@Base 3.4.2 - _ZN4geos9geomgraph5Label5mergeERKS1_@Base 3.4.2 - _ZN4geos9geomgraph5Label6toLineEi@Base 3.4.2 - _ZN4geos9geomgraph5LabelC1ERKS1_@Base 3.4.2 - _ZN4geos9geomgraph5LabelC1Ei@Base 3.4.2 - _ZN4geos9geomgraph5LabelC1Eii@Base 3.4.2 - _ZN4geos9geomgraph5LabelC1Eiii@Base 3.4.2 - _ZN4geos9geomgraph5LabelC1Eiiii@Base 3.4.2 - _ZN4geos9geomgraph5LabelC1Ev@Base 3.4.2 - _ZN4geos9geomgraph5LabelC2ERKS1_@Base 3.4.2 - _ZN4geos9geomgraph5LabelC2Ei@Base 3.4.2 - _ZN4geos9geomgraph5LabelC2Eii@Base 3.4.2 - _ZN4geos9geomgraph5LabelC2Eiii@Base 3.4.2 - _ZN4geos9geomgraph5LabelC2Eiiii@Base 3.4.2 - _ZN4geos9geomgraph5LabelC2Ev@Base 3.4.2 - _ZN4geos9geomgraph5LabelaSERKS1_@Base 3.4.2 - _ZN4geos9geomgraph5index13MonotoneChainD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index13MonotoneChainD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index13MonotoneChainD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index14SweepLineEvent5printB5cxx11Ev@Base 3.5.1 - _ZN4geos9geomgraph5index14SweepLineEvent9compareToEPS2_@Base 3.4.2 - _ZN4geos9geomgraph5index14SweepLineEventC1EPvdPS2_PNS1_17SweepLineEventOBJE@Base 3.4.2 - _ZN4geos9geomgraph5index14SweepLineEventC2EPvdPS2_PNS1_17SweepLineEventOBJE@Base 3.4.2 - _ZN4geos9geomgraph5index14SweepLineEventD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index14SweepLineEventD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index14SweepLineEventD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegment20computeIntersectionsEPS2_PNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegment7getMaxXEv@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegment7getMinXEv@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegmentC1EPNS0_4EdgeEi@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegmentC2EPNS0_4EdgeEi@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegmentD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegmentD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index16SweepLineSegmentD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge14getCoordinatesEv@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge15getStartIndexesEv@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge17computeIntersectsERKS2_RNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge25computeIntersectsForChainEiRKS2_iRNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge25computeIntersectsForChainEiiRKS2_iiRNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge7getMaxXEi@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdge7getMinXEi@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdgeC1EPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdgeC2EPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdgeD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index17MonotoneChainEdgeD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index17SweepLineEventOBJD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index17SweepLineEventOBJD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index17SweepLineEventOBJD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector15hasIntersectionEv@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector15isBoundaryPointEPNS_9algorithm15LineIntersectorEPSt6vectorIPNS0_4NodeESaIS8_EE@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector15isBoundaryPointEPNS_9algorithm15LineIntersectorERSt6vectorIPS6_IPNS0_4NodeESaIS8_EESaISB_EE@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector16addIntersectionsEPNS0_4EdgeEiS4_i@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector16setBoundaryNodesEPSt6vectorIPNS0_4NodeESaIS5_EES8_@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector18isAdjacentSegmentsEii@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector20setIsDoneIfProperIntEb@Base 3.5.1 - _ZN4geos9geomgraph5index18SegmentIntersector21hasProperIntersectionEv@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector21isTrivialIntersectionEPNS0_4EdgeEiS4_i@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector26getProperIntersectionPointEv@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector29hasProperInteriorIntersectionEv@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersector9getIsDoneEv@Base 3.5.1 - _ZN4geos9geomgraph5index18SegmentIntersectorD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersectorD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index18SegmentIntersectorD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index20MonotoneChainIndexer12findChainEndEPKNS_4geom18CoordinateSequenceEi@Base 3.4.2 - _ZN4geos9geomgraph5index20MonotoneChainIndexer20getChainStartIndicesEPKNS_4geom18CoordinateSequenceERSt6vectorIiSaIiEE@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersector17computeIntersectsEPNS0_4EdgeES4_PNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EEPNS1_18SegmentIntersectorEb@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EES8_PNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorC1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorC2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector13prepareEventsEv@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector15processOverlapsEiiPNS1_14SweepLineEventEPNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector20computeIntersectionsEPNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EEPNS1_18SegmentIntersectorEb@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EES8_PNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector3addEPNS0_4EdgeEPv@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EE@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EEPv@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorC1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorC2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorD2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector13prepareEventsEv@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector15processOverlapsEiiPNS1_14SweepLineEventEPNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector20computeIntersectionsEPNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EEPNS1_18SegmentIntersectorEb@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EES8_PNS1_18SegmentIntersectorE@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector3addEPNS0_4EdgeEPv@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EE@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EEPv@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorC1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorC2Ev@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorD0Ev@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorD1Ev@Base 3.4.2 - _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorD2Ev@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd11getQuadrantEv@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd12computeLabelERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd13getCoordinateEv@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd21getDirectedCoordinateEv@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd4initERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd5getDxEv@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd5getDyEv@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd7getNodeEv@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEnd7setNodeEPNS0_4NodeE@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC1EPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC1EPNS0_4EdgeERKNS_4geom10CoordinateES7_@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC1EPNS0_4EdgeERKNS_4geom10CoordinateES7_RKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC1Ev@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC2EPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC2EPNS0_4EdgeERKNS_4geom10CoordinateES7_@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC2EPNS0_4EdgeERKNS_4geom10CoordinateES7_RKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndC2Ev@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndD0Ev@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndD1Ev@Base 3.4.2 - _ZN4geos9geomgraph7EdgeEndD2Ev@Base 3.4.2 - _ZN4geos9geomgraph7NodeMap3addEPNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraph7NodeMap7addNodeEPNS0_4NodeE@Base 3.4.2 - _ZN4geos9geomgraph7NodeMap7addNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph7NodeMapC1ERKNS0_11NodeFactoryE@Base 3.4.2 - _ZN4geos9geomgraph7NodeMapC2ERKNS0_11NodeFactoryE@Base 3.4.2 - _ZN4geos9geomgraph7NodeMapD0Ev@Base 3.4.2 - _ZN4geos9geomgraph7NodeMapD1Ev@Base 3.4.2 - _ZN4geos9geomgraph7NodeMapD2Ev@Base 3.4.2 - _ZN4geos9geomgraph8EdgeList13findEdgeIndexEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeList13findEqualEdgeEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeList3addEPNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeList3getEi@Base 3.4.2 - _ZN4geos9geomgraph8EdgeList5printB5cxx11Ev@Base 3.5.1 - _ZN4geos9geomgraph8EdgeList6addAllERKSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeList9clearListEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeListD0Ev@Base 3.4.2 - _ZN4geos9geomgraph8EdgeListD1Ev@Base 3.4.2 - _ZN4geos9geomgraph8EdgeListD2Ev@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing10isIsolatedEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing10mergeLabelERKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing10mergeLabelERKNS0_5LabelEi@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing11computeRingEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing11setInResultEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing13computePointsEPNS0_12DirectedEdgeE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing13containsPointERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing13getLinearRingEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing16getMaxNodeDegreeEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing20computeMaxNodeDegreeEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing6isHoleEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing7addHoleEPS1_@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing7isShellEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing8getEdgesEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing8getLabelEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing8getShellEv@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing8setShellEPS1_@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing9addPointsEPNS0_4EdgeEbb@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRing9toPolygonEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRingC1EPNS0_12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRingC2EPNS0_12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRingD0Ev@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRingD1Ev@Base 3.4.2 - _ZN4geos9geomgraph8EdgeRingD2Ev@Base 3.4.2 - _ZN4geos9geomgraph8Position8oppositeEi@Base 3.4.2 - _ZN4geos9geomgraph8Quadrant10isNorthernEi@Base 3.4.2 - _ZN4geos9geomgraph8Quadrant10isOppositeEii@Base 3.4.2 - _ZN4geos9geomgraph8Quadrant13isInHalfPlaneEii@Base 3.4.2 - _ZN4geos9geomgraph8Quadrant15commonHalfPlaneEii@Base 3.4.2 - _ZN4geos9geomgraph8Quadrant8quadrantERKNS_4geom10CoordinateES5_@Base 3.4.2 - _ZN4geos9geomgraph8Quadrant8quadrantEdd@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_11EdgeEndStarE@Base 3.6.0 - _ZN4geos9geomgraphlsERSoRKNS0_16TopologyLocationE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_20EdgeIntersectionListE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_4EdgeE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_4NodeE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_5LabelE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_7EdgeEndE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_8EdgeListE@Base 3.4.2 - _ZN4geos9geomgraphlsERSoRKNS0_8EdgeRingE@Base 3.4.2 - _ZN4geos9linearref14LinearIterator15loadCurrentLineEv@Base 3.4.2 - _ZN4geos9linearref14LinearIterator21segmentEndVertexIndexERKNS0_14LinearLocationE@Base 3.4.2 - _ZN4geos9linearref14LinearIterator4nextEv@Base 3.4.2 - _ZN4geos9linearref14LinearIteratorC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref14LinearIteratorC1EPKNS_4geom8GeometryERKNS0_14LinearLocationE@Base 3.4.2 - _ZN4geos9linearref14LinearIteratorC1EPKNS_4geom8GeometryEjj@Base 3.4.2 - _ZN4geos9linearref14LinearIteratorC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref14LinearIteratorC2EPKNS_4geom8GeometryERKNS0_14LinearLocationE@Base 3.4.2 - _ZN4geos9linearref14LinearIteratorC2EPKNS_4geom8GeometryEjj@Base 3.4.2 - _ZN4geos9linearref14LinearLocation12snapToVertexEPKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9linearref14LinearLocation14getEndLocationEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref14LinearLocation21compareLocationValuesEjjdjjd@Base 3.4.2 - _ZN4geos9linearref14LinearLocation27pointAlongSegmentByFractionERKNS_4geom10CoordinateES5_d@Base 3.4.2 - _ZN4geos9linearref14LinearLocation5clampEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref14LinearLocation8setToEndEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref14LinearLocation9normalizeEv@Base 3.4.2 - _ZN4geos9linearref14LinearLocationC1Ejd@Base 3.4.2 - _ZN4geos9linearref14LinearLocationC1Ejjd@Base 3.4.2 - _ZN4geos9linearref14LinearLocationC2Ejd@Base 3.4.2 - _ZN4geos9linearref14LinearLocationC2Ejjd@Base 3.4.2 - _ZN4geos9linearref17LengthIndexedLineC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref17LengthIndexedLineC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref17LengthLocationMap9getLengthEPKNS_4geom8GeometryERKNS0_14LinearLocationE@Base 3.4.2 - _ZN4geos9linearref17LengthLocationMapC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref17LengthLocationMapC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref18LengthIndexOfPoint12indexOfAfterEPKNS_4geom8GeometryERKNS2_10CoordinateEd@Base 3.4.2 - _ZN4geos9linearref18LengthIndexOfPoint7indexOfEPKNS_4geom8GeometryERKNS2_10CoordinateE@Base 3.4.2 - _ZN4geos9linearref18LengthIndexOfPointC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref18LengthIndexOfPointC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref19LocationIndexOfLine9indicesOfEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9linearref19LocationIndexOfLineC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref19LocationIndexOfLineC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref20LocationIndexOfPoint12indexOfAfterEPKNS_4geom8GeometryERKNS2_10CoordinateEPKNS0_14LinearLocationE@Base 3.4.2 - _ZN4geos9linearref20LocationIndexOfPoint7indexOfEPKNS_4geom8GeometryERKNS2_10CoordinateE@Base 3.4.2 - _ZN4geos9linearref20LocationIndexOfPointC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref20LocationIndexOfPointC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocation11computeLineERKNS0_14LinearLocationES4_@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocation13computeLinearERKNS0_14LinearLocationES4_@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocation7extractEPKNS_4geom8GeometryERKNS0_14LinearLocationES8_@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocation7extractERKNS0_14LinearLocationES4_@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocation7reverseEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocationC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref21ExtractLineByLocationC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilder11getGeometryEv@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilder18setFixInvalidLinesEb@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilder21setIgnoreInvalidLinesEb@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilder3addERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilder3addERKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilder7endLineEv@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilderC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilderC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilderD1Ev@Base 3.4.2 - _ZN4geos9linearref21LinearGeometryBuilderD2Ev@Base 3.4.2 - _ZN4geos9linearreflsERSoRKNS0_14LinearLocationE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp11addEndpointERSt3mapIPKNS_4geom10CoordinateEPNS0_12EndpointInfoENS3_18CoordinateLessThenESaISt4pairIKS6_S8_EEES6_b@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp18isSimpleMultiPointERKNS_4geom10MultiPointE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp22isSimpleLinearGeometryEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp26hasNonEndpointIntersectionERNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp29hasClosedEndpointIntersectionERNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp8isSimpleEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp8isSimpleEPKNS_4geom10MultiPointE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp8isSimpleEPKNS_4geom15MultiLineStringE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOp8isSimpleEv@Base 3.4.2 - _ZN4geos9operation10IsSimpleOpC1ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOpC1ERKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOpC1Ev@Base 3.4.2 - _ZN4geos9operation10IsSimpleOpC2ERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOpC2ERKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation10IsSimpleOpC2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer10getDanglesEv@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer10polygonizeEv@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer11getCutEdgesEv@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer11getPolygonsEv@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer14findValidRingsERKSt6vectorIPNS1_8EdgeRingESaIS5_EERS7_RS3_IPNS_4geom10LineStringESaISD_EE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer15LineStringAdder9filter_roEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderC1EPS2_@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderC2EPS2_@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderD0Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderD1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderD2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer17assignHoleToShellEPNS1_8EdgeRingERSt6vectorIS4_SaIS4_EE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer18findShellsAndHolesERKSt6vectorIPNS1_8EdgeRingESaIS5_EE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer19assignHolesToShellsERKSt6vectorIPNS1_8EdgeRingESaIS5_EERS7_@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer19getInvalidRingLinesEv@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer3addEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer3addEPNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer3addEPSt6vectorIPKNS_4geom8GeometryESaIS7_EE@Base 3.4.2 - _ZN4geos9operation10polygonize11Polygonizer3addEPSt6vectorIPNS_4geom8GeometryESaIS6_EE@Base 3.4.2 - _ZN4geos9operation10polygonize11PolygonizerC1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11PolygonizerC2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11PolygonizerD1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize11PolygonizerD2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize14PolygonizeEdge7getLineEv@Base 3.4.2 - _ZN4geos9operation10polygonize14PolygonizeEdgeC1EPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation10polygonize14PolygonizeEdgeC2EPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation10polygonize14PolygonizeEdgeD0Ev@Base 3.4.2 - _ZN4geos9operation10polygonize14PolygonizeEdgeD1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize14PolygonizeEdgeD2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph12findEdgeRingEPNS1_22PolygonizeDirectedEdgeE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph12getEdgeRingsERSt6vectorIPNS1_8EdgeRingESaIS5_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph13deleteDanglesERSt6vectorIPKNS_4geom10LineStringESaIS7_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph14deleteAllEdgesEPNS_11planargraph4NodeE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph14deleteCutEdgesERSt6vectorIPKNS_4geom10LineStringESaIS7_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph18computeNextCWEdgesEPNS_11planargraph4NodeE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph18computeNextCWEdgesEv@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph18findDirEdgesInRingEPNS1_22PolygonizeDirectedEdgeERSt6vectorIPNS_11planargraph12DirectedEdgeESaIS8_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph19computeNextCCWEdgesEPNS_11planargraph4NodeEl@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph19getDegreeNonDeletedEPNS_11planargraph4NodeE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph20findLabeledEdgeRingsERSt6vectorIPNS_11planargraph12DirectedEdgeESaIS6_EERS3_IPNS1_22PolygonizeDirectedEdgeESaISB_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph21findIntersectionNodesEPNS1_22PolygonizeDirectedEdgeElRSt6vectorIPNS_11planargraph4NodeESaIS8_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph32convertMaximalToMinimalEdgeRingsERSt6vectorIPNS1_22PolygonizeDirectedEdgeESaIS5_EE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph5labelERSt6vectorIPNS_11planargraph12DirectedEdgeESaIS6_EEl@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph7addEdgeEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph7getNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraph9getDegreeEPNS_11planargraph4NodeEl@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraphC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraphC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraphD0Ev@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraphD1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize15PolygonizeGraphD2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdge7setNextEPS2_@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdge7setRingEPNS1_8EdgeRingE@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdge8setLabelEl@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeC1EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeC2EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeD0Ev@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeD1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeD2Ev@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing10getPolygonEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing11ptNotInListEPKNS_4geom18CoordinateSequenceES6_@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing13getLineStringEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing14getCoordinatesEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing15getRingInternalEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing16getRingOwnershipEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing22findEdgeRingContainingEPS2_PSt6vectorIS3_SaIS3_EE@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing3addEPKNS_11planargraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing6isHoleEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing7addEdgeEPKNS_4geom18CoordinateSequenceEbPS4_@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing7addHoleEPNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing7isValidEv@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRing8isInListERKNS_4geom10CoordinateEPKNS3_18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRingC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRingC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRingD1Ev@Base 3.4.2 - _ZN4geos9operation10polygonize8EdgeRingD2Ev@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOp10clearEdgesERSt6vectorIPNS_4geom10LineStringESaIS6_EE@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOp13sharedPathsOpERKNS_4geom8GeometryES6_RSt6vectorIPNS3_10LineStringESaIS9_EESC_@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOp14getSharedPathsERSt6vectorIPNS_4geom10LineStringESaIS6_EES9_@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOp16checkLinealInputERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOp23findLinearIntersectionsERSt6vectorIPNS_4geom10LineStringESaIS6_EE@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOp9isForwardERKNS_4geom10LineStringERKNS3_8GeometryE@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOpC1ERKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation11sharedpaths13SharedPathsOpC2ERKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation12EndpointInfoC1ERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation12EndpointInfoC2ERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation12intersection13clip_to_edgesERdS2_ddRKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection14normalize_ringERSt6vectorINS_4geom10CoordinateESaIS4_EE@Base 3.5.0 - _ZN4geos9operation12intersection14reverse_pointsERSt6vectorINS_4geom10CoordinateESaIS4_EEii@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection10clip_pointEPKNS_4geom5PointERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection12clipBoundaryERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection12clipBoundaryEv@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection12clip_polygonEPKNS_4geom7PolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection15clip_linestringEPKNS_4geom10LineStringERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection15clip_multipointEPKNS_4geom10MultiPointERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection17clip_multipolygonEPKNS_4geom12MultiPolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection20clip_multilinestringEPKNS_4geom15MultiLineStringERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection21clip_linestring_partsEPKNS_4geom10LineStringERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection23clip_geometrycollectionEPKNS_4geom18GeometryCollectionERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection24clip_polygon_to_polygonsEPKNS_4geom7PolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection27clip_polygon_to_linestringsEPKNS_4geom7PolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection4clipERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection4clipEv@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersection9clip_geomEPKNS_4geom8GeometryERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersectionC1ERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection21RectangleIntersectionC2ERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder10close_ringERKNS1_9RectangleEPSt6vectorINS_4geom10CoordinateESaIS8_EE@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder12reverseLinesEv@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder14close_boundaryERKNS1_9RectangleEPSt6vectorINS_4geom10CoordinateESaIS8_EEdddd@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder17reconnectPolygonsERKNS1_9RectangleE@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder3addEPNS_4geom10LineStringE@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder3addEPNS_4geom5PointE@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder3addEPNS_4geom7PolygonE@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder5buildEv@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder5clearEv@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder7releaseERS2_@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilder9reconnectEv@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilderD1Ev@Base 3.5.0 - _ZN4geos9operation12intersection28RectangleIntersectionBuilderD2Ev@Base 3.5.0 - _ZN4geos9operation12intersection8distanceERKNS1_9RectangleERKSt6vectorINS_4geom10CoordinateESaIS7_EE@Base 3.5.0 - _ZN4geos9operation12intersection8distanceERKNS1_9RectangleERKSt6vectorINS_4geom10CoordinateESaIS7_EEPKNS6_10LineStringE@Base 3.5.0 - _ZN4geos9operation12intersection8distanceERKNS1_9RectangleEdddd@Base 3.5.0 - _ZN4geos9operation12intersection9RectangleC1Edddd@Base 3.5.0 - _ZN4geos9operation12intersection9RectangleC2Edddd@Base 3.5.0 - _ZN4geos9operation22GeometryGraphOperation23setComputationPrecisionEPKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationC1EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationC1EPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationC1EPKNS_4geom8GeometryES5_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationC2EPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationC2EPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationC2EPKNS_4geom8GeometryES5_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationD0Ev@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationD1Ev@Base 3.4.2 - _ZN4geos9operation22GeometryGraphOperationD2Ev@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester13getCoordinateEv@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom12MultiPolygonE@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom15MultiLineStringE@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom18GeometryCollectionE@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTester15getInvalidPointEv@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTester17hasDuplicateRingsEv@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTester20isNodeConsistentAreaEv@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTester30isNodeEdgeAreaLabelsConsistentEv@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTesterC1EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTesterC2EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTesterD1Ev@Base 3.4.2 - _ZN4geos9operation5valid20ConsistentAreaTesterD2Ev@Base 3.4.2 - _ZN4geos9operation5valid22SimpleNestedRingTester11isNonNestedEv@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester13getCoordinateEv@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester14buildEdgeRingsEPSt6vectorIPNS_9geomgraph7EdgeEndESaIS6_EERS3_IPNS4_8EdgeRingESaISB_EE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester17visitInteriorRingEPKNS_4geom10LineStringERNS_9geomgraph11PlanarGraphE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester18findDifferentPointEPKNS_4geom18CoordinateSequenceERKNS3_10CoordinateE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester19visitShellInteriorsEPKNS_4geom8GeometryERNS_9geomgraph11PlanarGraphE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester20isInteriorsConnectedEv@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester21hasUnvisitedShellEdgeEPSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester24setInteriorEdgesInResultERNS_9geomgraph11PlanarGraphE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTester24visitLinkedDirectedEdgesEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTesterC1ERNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTesterC2ERNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTesterD1Ev@Base 3.4.2 - _ZN4geos9operation5valid23ConnectedInteriorTesterD2Ev@Base 3.4.2 - _ZN4geos9operation5valid23IndexedNestedRingTester10buildIndexEv@Base 3.4.2 - _ZN4geos9operation5valid23IndexedNestedRingTester11isNonNestedEv@Base 3.4.2 - _ZN4geos9operation5valid23IndexedNestedRingTesterD1Ev@Base 3.4.2 - _ZN4geos9operation5valid23IndexedNestedRingTesterD2Ev@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationError10getMessageB5cxx11Ev@Base 3.5.1 - _ZN4geos9operation5valid23TopologyValidationError12getErrorTypeEv@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationError13getCoordinateEv@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationError6errMsgE@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationError8toStringB5cxx11Ev@Base 3.5.1 - _ZN4geos9operation5valid23TopologyValidationErrorC1Ei@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationErrorC1EiRKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationErrorC2Ei@Base 3.4.2 - _ZN4geos9operation5valid23TopologyValidationErrorC2EiRKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTester11isNonNestedEv@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTester13buildQuadtreeEv@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTester14getNestedPointEv@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTester3addEPKNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTesterC1EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTesterC2EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTesterD1Ev@Base 3.4.2 - _ZN4geos9operation5valid24QuadtreeNestedRingTesterD2Ev@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester10buildIndexEv@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester11isNonNestedEv@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapAction7overlapEPNS_5index9sweepline17SweepLineIntervalES7_@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionC1EPS2_@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionC2EPS2_@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionD0Ev@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionD1Ev@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionD2Ev@Base 3.4.2 - _ZN4geos9operation5valid25SweeplineNestedRingTester8isInsideEPNS_4geom10LinearRingES5_@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom12MultiPolygonE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom18GeometryCollectionE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom5PointE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp10checkValidEv@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp13findPtNotNodeEPKNS_4geom18CoordinateSequenceEPKNS3_10LinearRingEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp15checkClosedRingEPKNS_4geom10LinearRingE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp16checkClosedRingsEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp17checkHolesInShellEPKNS_4geom7PolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp17checkTooFewPointsEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp18getValidationErrorEv@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp19checkConsistentAreaEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp19checkHolesNotNestedEPKNS_4geom7PolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp19checkShellNotNestedEPKNS_4geom10LinearRingEPKNS3_7PolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp20checkShellInsideHoleEPKNS_4geom10LinearRingES6_PNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp20checkShellsNotNestedEPKNS_4geom12MultiPolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp23checkConnectedInteriorsERNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp23checkInvalidCoordinatesEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp23checkInvalidCoordinatesEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp27checkNoSelfIntersectingRingERNS_9geomgraph20EdgeIntersectionListE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp28checkNoSelfIntersectingRingsEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp7isValidERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp7isValidERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOp7isValidEv@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOpD0Ev@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOpD1Ev@Base 3.4.2 - _ZN4geos9operation5valid9IsValidOpD2Ev@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder10depthDeltaERKNS_9geomgraph5LabelE@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder14buildSubgraphsERKSt6vectorIPNS1_14BufferSubgraphESaIS5_EERNS0_7overlay14PolygonBuilderE@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder15createSubgraphsEPNS_9geomgraph11PlanarGraphERSt6vectorIPNS1_14BufferSubgraphESaIS8_EE@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder16insertUniqueEdgeEPNS_9geomgraph4EdgeE@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder17computeNodedEdgesERSt6vectorIPNS_6noding13SegmentStringESaIS6_EEPKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder21bufferLineSingleSidedEPKNS_4geom8GeometryEdb@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder6bufferEPKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilder8getNoderEPKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilderD1Ev@Base 3.4.2 - _ZN4geos9operation6buffer13BufferBuilderD2Ev@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph11getEnvelopeEv@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph12addReachableEPNS_9geomgraph4NodeE@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph12computeDepthEi@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph13computeDepthsEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph13copySymDepthsEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph15findResultEdgesEv@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph16computeNodeDepthEPNS_9geomgraph4NodeE@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph17clearVisitedEdgesEv@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph3addEPNS_9geomgraph4NodeEPSt6vectorIS5_SaIS5_EE@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph6createEPNS_9geomgraph4NodeE@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph8containsERSt3setIPNS_9geomgraph4NodeESt4lessIS6_ESaIS6_EES6_@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraph9compareToEPS2_@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraphC1Ev@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraphC2Ev@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraphD1Ev@Base 3.4.2 - _ZN4geos9operation6buffer14BufferSubgraphD2Ev@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParameters19DEFAULT_MITRE_LIMITE@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParameters19bufferDistanceErrorEi@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParameters19setQuadrantSegmentsEi@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC1Ei@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC1EiNS2_11EndCapStyleE@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC1EiNS2_11EndCapStyleENS2_9JoinStyleEd@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC1Ev@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC2Ei@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC2EiNS2_11EndCapStyleE@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC2EiNS2_11EndCapStyleENS2_9JoinStyleEd@Base 3.4.2 - _ZN4geos9operation6buffer16BufferParametersC2Ev@Base 3.4.2 - _ZN4geos9operation6buffer16BufferSubgraphGTEPNS1_14BufferSubgraphES3_@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder12getLineCurveEPKNS_4geom18CoordinateSequenceEdRSt6vectorIPS4_SaIS8_EE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder12getRingCurveEPKNS_4geom18CoordinateSequenceEidRSt6vectorIPS4_SaIS8_EE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder15SIMPLIFY_FACTORE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder17computePointCurveERKNS_4geom10CoordinateERNS1_22OffsetSegmentGeneratorE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder17simplifyToleranceEd@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder22computeLineBufferCurveERKNS_4geom18CoordinateSequenceERNS1_22OffsetSegmentGeneratorE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder22computeRingBufferCurveERKNS_4geom18CoordinateSequenceEiRNS1_22OffsetSegmentGeneratorE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder23getSingleSidedLineCurveEPKNS_4geom18CoordinateSequenceEdRSt6vectorIPS4_SaIS8_EEbb@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder29computeSingleSidedBufferCurveERKNS_4geom18CoordinateSequenceEbRNS1_22OffsetSegmentGeneratorE@Base 3.4.2 - _ZN4geos9operation6buffer18OffsetCurveBuilder9getSegGenEd@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinder16getRightmostSideEPNS_9geomgraph12DirectedEdgeEi@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinder23findRightmostEdgeAtNodeEv@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinder25findRightmostEdgeAtVertexEv@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinder25getRightmostSideOfSegmentEPNS_9geomgraph12DirectedEdgeEi@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinder27checkForRightmostCoordinateEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinder8findEdgeEPSt6vectorIPNS_9geomgraph12DirectedEdgeESaIS6_EE@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinderC1Ev@Base 3.4.2 - _ZN4geos9operation6buffer19RightmostEdgeFinderC2Ev@Base 3.4.2 - _ZN4geos9operation6buffer20SubgraphDepthLocater19findStabbedSegmentsERKNS_4geom10CoordinateEPNS_9geomgraph12DirectedEdgeERSt6vectorIPNS1_12DepthSegmentESaISC_EE@Base 3.4.2 - _ZN4geos9operation6buffer20SubgraphDepthLocater19findStabbedSegmentsERKNS_4geom10CoordinateEPSt6vectorIPNS_9geomgraph12DirectedEdgeESaISA_EERS7_IPNS1_12DepthSegmentESaISF_EE@Base 3.4.2 - _ZN4geos9operation6buffer20SubgraphDepthLocater19findStabbedSegmentsERKNS_4geom10CoordinateERSt6vectorIPNS1_12DepthSegmentESaIS9_EE@Base 3.4.2 - _ZN4geos9operation6buffer20SubgraphDepthLocater8getDepthERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder10addPolygonEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder13addCollectionEPKNS_4geom18GeometryCollectionE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder13addLineStringEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder14addPolygonRingEPKNS_4geom18CoordinateSequenceEdiii@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder18isErodedCompletelyEPKNS_4geom10LinearRingEd@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder26isTriangleErodedCompletelyEPKNS_4geom18CoordinateSequenceEd@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder3addERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder8addCurveEPNS_4geom18CoordinateSequenceEii@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder8addPointEPKNS_4geom5PointE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder9addCurvesERKSt6vectorIPNS_4geom18CoordinateSequenceESaIS6_EEii@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilder9getCurvesEv@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilderC1ERKNS_4geom8GeometryEdRNS1_18OffsetCurveBuilderE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilderC2ERKNS_4geom8GeometryEdRNS1_18OffsetCurveBuilderE@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilderD1Ev@Base 3.4.2 - _ZN4geos9operation6buffer21OffsetCurveSetBuilderD2Ev@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator12addBevelJoinERKNS_4geom11LineSegmentES6_@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator12addCollinearEb@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator12addMitreJoinERKNS_4geom10CoordinateERKNS3_11LineSegmentES9_d@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator12createCircleERKNS_4geom10CoordinateEd@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator12createSquareERKNS_4geom10CoordinateEd@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator13addInsideTurnEib@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator13addLineEndCapERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator14addNextSegmentERKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator14addOutsideTurnEib@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator15SIMPLIFY_FACTORE@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator16initSideSegmentsERKNS_4geom10CoordinateES6_i@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator19addLimitedMitreJoinERKNS_4geom11LineSegmentES6_dd@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator20computeOffsetSegmentERKNS_4geom11LineSegmentEidRS4_@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator2PIE@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator32OFFSET_SEGMENT_SEPARATION_FACTORE@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator33CURVE_VERTEX_SNAP_DISTANCE_FACTORE@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator39INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTORE@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator4initEd@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator9addFilletERKNS_4geom10CoordinateES6_S6_id@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGenerator9addFilletERKNS_4geom10CoordinateEddid@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGeneratorC1EPKNS_4geom14PrecisionModelERKNS1_16BufferParametersEd@Base 3.4.2 - _ZN4geos9operation6buffer22OffsetSegmentGeneratorC2EPKNS_4geom14PrecisionModelERKNS1_16BufferParametersEd@Base 3.4.2 - _ZN4geos9operation6buffer25BufferInputLineSimplifier24deleteShallowConcavitiesEv@Base 3.4.2 - _ZN4geos9operation6buffer25BufferInputLineSimplifier8simplifyERKNS_4geom18CoordinateSequenceEd@Base 3.4.2 - _ZN4geos9operation6buffer25BufferInputLineSimplifier8simplifyEd@Base 3.4.2 - _ZN4geos9operation6buffer25BufferInputLineSimplifierC1ERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9operation6buffer25BufferInputLineSimplifierC2ERKNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp15computeGeometryEv@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp17getResultGeometryEd@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp20bufferFixedPrecisionERKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp20precisionScaleFactorEPKNS_4geom8GeometryEdi@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp22bufferReducedPrecisionEi@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp22bufferReducedPrecisionEv@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp23bufferOriginalPrecisionEv@Base 3.4.2 - _ZN4geos9operation6buffer8BufferOp8bufferOpEPKNS_4geom8GeometryEdii@Base 3.4.2 - _ZN4geos9operation6bufferlsERSoRKNS1_14BufferSubgraphE@Base 3.4.2 - _ZN4geos9operation6relate10RelateNode17updateIMFromEdgesERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate10RelateNode9computeIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate10RelateNodeC1ERKNS_4geom10CoordinateEPNS_9geomgraph11EdgeEndStarE@Base 3.4.2 - _ZN4geos9operation6relate10RelateNodeC2ERKNS_4geom10CoordinateEPNS_9geomgraph11EdgeEndStarE@Base 3.4.2 - _ZN4geos9operation6relate10RelateNodeD0Ev@Base 3.4.2 - _ZN4geos9operation6relate10RelateNodeD1Ev@Base 3.4.2 - _ZN4geos9operation6relate10RelateNodeD2Ev@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle11getEdgeEndsEv@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle12computeLabelERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle14computeLabelOnEiRKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle16computeLabelSideEii@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle17computeLabelSidesEi@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle5printB5cxx11Ev@Base 3.5.1 - _ZN4geos9operation6relate13EdgeEndBundle6insertEPNS_9geomgraph7EdgeEndE@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundle8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundleC1EPNS_9geomgraph7EdgeEndE@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundleC2EPNS_9geomgraph7EdgeEndE@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundleD0Ev@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundleD1Ev@Base 3.4.2 - _ZN4geos9operation6relate13EdgeEndBundleD2Ev@Base 3.4.2 - _ZN4geos9operation6relate14EdgeEndBuilder15computeEdgeEndsEPNS_9geomgraph4EdgeEPSt6vectorIPNS3_7EdgeEndESaIS8_EE@Base 3.4.2 - _ZN4geos9operation6relate14EdgeEndBuilder15computeEdgeEndsEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EE@Base 3.4.2 - _ZN4geos9operation6relate14EdgeEndBuilder20createEdgeEndForNextEPNS_9geomgraph4EdgeEPSt6vectorIPNS3_7EdgeEndESaIS8_EEPNS3_16EdgeIntersectionESD_@Base 3.4.2 - _ZN4geos9operation6relate14EdgeEndBuilder20createEdgeEndForPrevEPNS_9geomgraph4EdgeEPSt6vectorIPNS3_7EdgeEndESaIS8_EEPNS3_16EdgeIntersectionESD_@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer14insertEdgeEndsEPSt6vectorIPNS_9geomgraph7EdgeEndESaIS6_EE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer14labelNodeEdgesEv@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer17computeDisjointIMEPNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer17labelIsolatedEdgeEPNS_9geomgraph4EdgeEiPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer17labelIsolatedNodeEPNS_9geomgraph4NodeEi@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer18copyNodesAndLabelsEi@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer18labelIsolatedEdgesEii@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer18labelIsolatedNodesEv@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer22labelIntersectionNodesEi@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer24computeIntersectionNodesEi@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer27computeProperIntersectionIMEPNS_9geomgraph5index18SegmentIntersectorEPNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputer9computeIMEv@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputerC1EPSt6vectorIPNS_9geomgraph13GeometryGraphESaIS6_EE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputerC2EPSt6vectorIPNS_9geomgraph13GeometryGraphESaIS6_EE@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputerD1Ev@Base 3.4.2 - _ZN4geos9operation6relate14RelateComputerD2Ev@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraph10getNodeMapEv@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraph14insertEdgeEndsEPSt6vectorIPNS_9geomgraph7EdgeEndESaIS6_EE@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraph18copyNodesAndLabelsEPNS_9geomgraph13GeometryGraphEi@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraph24computeIntersectionNodesEPNS_9geomgraph13GeometryGraphEi@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraph5buildEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraphC1Ev@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraphC2Ev@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraphD0Ev@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraphD1Ev@Base 3.4.2 - _ZN4geos9operation6relate15RelateNodeGraphD2Ev@Base 3.4.2 - _ZN4geos9operation6relate17EdgeEndBundleStar6insertEPNS_9geomgraph7EdgeEndE@Base 3.4.2 - _ZN4geos9operation6relate17EdgeEndBundleStar8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 - _ZN4geos9operation6relate17EdgeEndBundleStarD0Ev@Base 3.4.2 - _ZN4geos9operation6relate17EdgeEndBundleStarD1Ev@Base 3.4.2 - _ZN4geos9operation6relate17EdgeEndBundleStarD2Ev@Base 3.4.2 - _ZN4geos9operation6relate17RelateNodeFactory8instanceEv@Base 3.4.2 - _ZN4geos9operation6relate17RelateNodeFactoryD0Ev@Base 3.4.2 - _ZN4geos9operation6relate17RelateNodeFactoryD1Ev@Base 3.4.2 - _ZN4geos9operation6relate17RelateNodeFactoryD2Ev@Base 3.4.2 - _ZN4geos9operation6relate8RelateOp21getIntersectionMatrixEv@Base 3.4.2 - _ZN4geos9operation6relate8RelateOp6relateEPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation6relate8RelateOp6relateEPKNS_4geom8GeometryES6_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpC1EPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpC1EPKNS_4geom8GeometryES6_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpC2EPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpC2EPKNS_4geom8GeometryES6_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpD0Ev@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpD1Ev@Base 3.4.2 - _ZN4geos9operation6relate8RelateOpD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder10buildLinesENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder10propagateZEPNS_4geom18CoordinateSequenceE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder12collectLinesENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder15collectLineEdgeEPNS_9geomgraph12DirectedEdgeENS1_9OverlayOp6OpCodeEPSt6vectorIPNS3_4EdgeESaISA_EE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder17labelIsolatedLineEPNS_9geomgraph4EdgeEi@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder18labelIsolatedLinesEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder20findCoveredLineEdgesEv@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder24collectBoundaryTouchEdgeEPNS_9geomgraph12DirectedEdgeENS1_9OverlayOp6OpCodeEPSt6vectorIPNS3_4EdgeESaISA_EE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilder5buildENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilderC1EPNS1_9OverlayOpEPKNS_4geom15GeometryFactoryEPNS_9algorithm12PointLocatorE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilderC2EPNS1_9OverlayOpEPKNS_4geom15GeometryFactoryEPNS_9algorithm12PointLocatorE@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilderD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay11LineBuilderD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay12EdgeSetNoder13getNodedEdgesEv@Base 3.4.2 - _ZN4geos9operation7overlay12EdgeSetNoder8addEdgesEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EE@Base 3.4.2 - _ZN4geos9operation7overlay12PointBuilder24filterCoveredNodeToPointEPKNS_9geomgraph4NodeE@Base 3.4.2 - _ZN4geos9operation7overlay12PointBuilder28extractNonCoveredResultNodesENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay12PointBuilder5buildENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder11getPolygonsEv@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder13containsPointERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder14placeFreeHolesERSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EES9_@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder15computePolygonsERSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder17placePolygonHolesEPNS_9geomgraph8EdgeRingEPSt6vectorIPNS1_15MinimalEdgeRingESaIS8_EE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder18sortShellsAndHolesERSt6vectorIPNS1_15MaximalEdgeRingESaIS5_EERS3_IPNS_9geomgraph8EdgeRingESaISB_EESE_@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder21buildMaximalEdgeRingsEPKSt6vectorIPNS_9geomgraph12DirectedEdgeESaIS6_EERS3_IPNS1_15MaximalEdgeRingESaISC_EE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder21buildMinimalEdgeRingsERSt6vectorIPNS1_15MaximalEdgeRingESaIS5_EERS3_IPNS_9geomgraph8EdgeRingESaISB_EESE_S8_@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder22findEdgeRingContainingEPNS_9geomgraph8EdgeRingERSt6vectorIS5_SaIS5_EE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder3addEPKSt6vectorIPNS_9geomgraph12DirectedEdgeESaIS6_EEPKS3_IPNS4_4NodeESaISC_EE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder3addEPNS_9geomgraph11PlanarGraphE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilder9findShellEPSt6vectorIPNS1_15MinimalEdgeRingESaIS5_EE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilderC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilderC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilderD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay14PolygonBuilderD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrix3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrix3addERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrix7getCellERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrixC1ERKNS_4geom8EnvelopeEjj@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrixC2ERKNS_4geom8EnvelopeEjj@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrixD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay15ElevationMatrixD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRing11setEdgeRingEPNS_9geomgraph12DirectedEdgeEPNS3_8EdgeRingE@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRing17buildMinimalRingsERSt6vectorIPNS1_15MinimalEdgeRingESaIS5_EE@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRing17buildMinimalRingsERSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EE@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRing17buildMinimalRingsEv@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRing36linkDirectedEdgesForMinimalEdgeRingsEv@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRing7getNextEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRingC1EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRingC2EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRingD0Ev@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRingD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay15MaximalEdgeRingD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRing11setEdgeRingEPNS_9geomgraph12DirectedEdgeEPNS3_8EdgeRingE@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRing7getNextEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRingC1EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRingC2EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRingD0Ev@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRingD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay15MinimalEdgeRingD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay18OverlayNodeFactory8instanceEv@Base 3.4.2 - _ZN4geos9operation7overlay18OverlayNodeFactoryD0Ev@Base 3.4.2 - _ZN4geos9operation7overlay18OverlayNodeFactoryD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay18OverlayNodeFactoryD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay19ElevationMatrixCell3addERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay19ElevationMatrixCell3addEd@Base 3.4.2 - _ZN4geos9operation7overlay19ElevationMatrixCellC1Ev@Base 3.4.2 - _ZN4geos9operation7overlay19ElevationMatrixCellC2Ev@Base 3.4.2 - _ZN4geos9operation7overlay19ElevationMatrixCellD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay19ElevationMatrixCellD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay21ElevationMatrixFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay21ElevationMatrixFilterC1ERNS1_15ElevationMatrixE@Base 3.4.2 - _ZN4geos9operation7overlay21ElevationMatrixFilterC2ERNS1_15ElevationMatrixE@Base 3.4.2 - _ZN4geos9operation7overlay21ElevationMatrixFilterD0Ev@Base 3.4.2 - _ZN4geos9operation7overlay21ElevationMatrixFilterD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay21ElevationMatrixFilterD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay4snap13SnapOverlayOp13prepareResultERNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay4snap13SnapOverlayOp16removeCommonBitsERKNS_4geom8GeometryES7_RNS4_11GeomPtrPairE@Base 3.4.2 - _ZN4geos9operation7overlay4snap13SnapOverlayOp17getResultGeometryENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay4snap13SnapOverlayOp20computeSnapToleranceEv@Base 3.4.2 - _ZN4geos9operation7overlay4snap13SnapOverlayOp4snapERNS_4geom11GeomPtrPairE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper10snapToSelfERKNS_4geom8GeometryEdb@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper10snapToSelfEdb@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper19snapPrecisionFactorE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper24extractTargetCoordinatesERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper27computeOverlaySnapToleranceERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper27computeOverlaySnapToleranceERKNS_4geom8GeometryES7_@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper29computeSizeBasedSnapToleranceERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper4snapERKNS_4geom8GeometryES7_dRNS4_11GeomPtrPairE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15GeometrySnapper6snapToERKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9operation7overlay4snap15SnapTransformer20transformCoordinatesEPKNS_4geom18CoordinateSequenceEPKNS4_8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay4snap15SnapTransformerD0Ev@Base 3.4.2 - _ZN4geos9operation7overlay4snap15SnapTransformerD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay4snap15SnapTransformerD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay4snap17LineStringSnapper12snapSegmentsERNS_4geom14CoordinateListERKSt6vectorIPKNS4_10CoordinateESaISA_EE@Base 3.4.2 - _ZN4geos9operation7overlay4snap17LineStringSnapper12snapVerticesERNS_4geom14CoordinateListERKSt6vectorIPKNS4_10CoordinateESaISA_EE@Base 3.4.2 - _ZN4geos9operation7overlay4snap17LineStringSnapper16findVertexToSnapERKNS_4geom10CoordinateESt14_List_iteratorIS5_ES9_@Base 3.4.2 - _ZN4geos9operation7overlay4snap17LineStringSnapper17findSegmentToSnapERKNS_4geom10CoordinateESt14_List_iteratorIS5_ES9_@Base 3.4.2 - _ZN4geos9operation7overlay4snap17LineStringSnapper17findSnapForVertexERKNS_4geom10CoordinateERKSt6vectorIPS6_SaIS9_EE@Base 3.4.2 - _ZN4geos9operation7overlay4snap17LineStringSnapper6snapToERKSt6vectorIPKNS_4geom10CoordinateESaIS8_EE@Base 3.4.2 - _ZN4geos9operation7overlay4snap21SnapIfNeededOverlayOp17getResultGeometryENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay8validate17FuzzyPointLocator11getLineWorkERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay8validate17FuzzyPointLocator11getLocationERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay8validate17FuzzyPointLocator15extractLineWorkERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay8validate17FuzzyPointLocatorC1ERKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9operation7overlay8validate17FuzzyPointLocatorC2ERKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9operation7overlay8validate20OffsetPointGenerator13extractPointsEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation7overlay8validate20OffsetPointGenerator14computeOffsetsERKNS_4geom10CoordinateES7_@Base 3.4.2 - _ZN4geos9operation7overlay8validate20OffsetPointGenerator9getPointsEv@Base 3.4.2 - _ZN4geos9operation7overlay8validate20OffsetPointGeneratorC1ERKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9operation7overlay8validate20OffsetPointGeneratorC2ERKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator10addTestPtsERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator11addVerticesERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator13isValidResultENS1_9OverlayOp6OpCodeERSt6vectorINS_4geom8Location5ValueESaIS9_EE@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator32computeBoundaryDistanceToleranceERKNS_4geom8GeometryES7_@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator7isValidENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator7isValidERKNS_4geom8GeometryES7_NS1_9OverlayOp6OpCodeES7_@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator9testValidENS1_9OverlayOp6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidator9testValidENS1_9OverlayOp6OpCodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidatorC1ERKNS_4geom8GeometryES7_S7_@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidatorC2ERKNS_4geom8GeometryES7_S7_@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidatorD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay8validate22OverlayResultValidatorD2Ev@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp10copyPointsEiPKNS_4geom8EnvelopeE@Base 3.5.0 - _ZN4geos9operation7overlay9OverlayOp11getAverageZEPKNS_4geom7PolygonE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp11getAverageZEi@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp12isCoveredByAERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp12isResultOfOpERKNS_9geomgraph5LabelENS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp12isResultOfOpEiiNS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp13isCoveredByLAERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp14computeOverlayENS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp14mergeSymLabelsEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp15computeGeometryEPSt6vectorIPNS_4geom5PointESaIS6_EEPS3_IPNS4_10LineStringESaISB_EEPS3_IPNS4_7PolygonESaISG_EE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp16computeLabellingEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp16insertUniqueEdgeEPNS_9geomgraph4EdgeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp17getResultGeometryENS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp17insertUniqueEdgesEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EEPKNS_4geom8EnvelopeE@Base 3.5.0 - _ZN4geos9operation7overlay9OverlayOp19findResultAreaEdgesENS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp19labelIncompleteNodeEPNS_9geomgraph4NodeEi@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp19updateNodeLabellingEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp20labelIncompleteNodesEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp21replaceCollapsedEdgesEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp23computeLabelsFromDepthsEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp25checkObviouslyWrongResultENS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp26cancelDuplicateResultEdgesEv@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp9isCoveredERKNS_4geom10CoordinateEPSt6vectorIPNS3_10LineStringESaIS9_EE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp9isCoveredERKNS_4geom10CoordinateEPSt6vectorIPNS3_7PolygonESaIS9_EE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp9isCoveredERKNS_4geom10CoordinateEPSt6vectorIPNS3_8GeometryESaIS9_EE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOp9overlayOpEPKNS_4geom8GeometryES6_NS2_6OpCodeE@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOpC1EPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOpC2EPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOpD0Ev@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOpD1Ev@Base 3.4.2 - _ZN4geos9operation7overlay9OverlayOpD2Ev@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp13closestPointsEPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp13closestPointsEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp13computeInsideEPNS1_16GeometryLocationEPKNS_4geom7PolygonEPSt6vectorIS4_SaIS4_EE@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp13computeInsideEPSt6vectorIPNS1_16GeometryLocationESaIS5_EERKS3_IPKNS_4geom7PolygonESaISC_EES8_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp13nearestPointsEPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp13nearestPointsEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp16isWithinDistanceERKNS_4geom8GeometryES6_d@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp16nearestLocationsEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp17updateMinDistanceERSt6vectorIPNS1_16GeometryLocationESaIS5_EEb@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp18computeMinDistanceEPKNS_4geom10LineStringEPKNS3_5PointERSt6vectorIPNS1_16GeometryLocationESaISC_EE@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp18computeMinDistanceEPKNS_4geom10LineStringES6_RSt6vectorIPNS1_16GeometryLocationESaIS9_EE@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp18computeMinDistanceEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp20computeFacetDistanceEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp23computeMinDistanceLinesERKSt6vectorIPKNS_4geom10LineStringESaIS7_EESB_RS3_IPNS1_16GeometryLocationESaISD_EE@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp24computeMinDistancePointsERKSt6vectorIPKNS_4geom5PointESaIS7_EESB_RS3_IPNS1_16GeometryLocationESaISD_EE@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp26computeContainmentDistanceEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp29computeMinDistanceLinesPointsERKSt6vectorIPKNS_4geom10LineStringESaIS7_EERKS3_IPKNS4_5PointESaISE_EERS3_IPNS1_16GeometryLocationESaISK_EE@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp8distanceEPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp8distanceERKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOp8distanceEv@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpC1EPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpC1ERKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpC1ERKNS_4geom8GeometryES6_d@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpC2EPKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpC2ERKNS_4geom8GeometryES6_@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpC2ERKNS_4geom8GeometryES6_d@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpD1Ev@Base 3.4.2 - _ZN4geos9operation8distance10DistanceOpD2Ev@Base 3.4.2 - _ZN4geos9operation8distance13FacetSequence15computeEnvelopeEv@Base 3.6.0 - _ZN4geos9operation8distance13FacetSequence8distanceERKS2_@Base 3.6.0 - (subst)_ZN4geos9operation8distance13FacetSequenceC1EPKNS_4geom18CoordinateSequenceE{size_t}{size_t}@Base 3.6.0 - (subst)_ZN4geos9operation8distance13FacetSequenceC2EPKNS_4geom18CoordinateSequenceE{size_t}{size_t}@Base 3.6.0 - _ZN4geos9operation8distance16GeometryLocation12isInsideAreaEv@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocation13getCoordinateEv@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocation15getSegmentIndexEv@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocation20getGeometryComponentEv@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocationC1EPKNS_4geom8GeometryERKNS3_10CoordinateE@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocationC1EPKNS_4geom8GeometryEiRKNS3_10CoordinateE@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocationC2EPKNS_4geom8GeometryERKNS3_10CoordinateE@Base 3.4.2 - _ZN4geos9operation8distance16GeometryLocationC2EPKNS_4geom8GeometryEiRKNS3_10CoordinateE@Base 3.4.2 - _ZN4geos9operation8distance24FacetSequenceTreeBuilder17addFacetSequencesEPKNS_4geom18CoordinateSequenceERSt6vectorIPNS1_13FacetSequenceESaIS9_EE@Base 3.6.0 - _ZN4geos9operation8distance24FacetSequenceTreeBuilder21computeFacetSequencesEPKNS_4geom8GeometryE@Base 3.6.0 - _ZN4geos9operation8distance24FacetSequenceTreeBuilder5buildEPKNS_4geom8GeometryE@Base 3.6.0 - _ZN4geos9operation8distance27ConnectedElementPointFilter14getCoordinatesEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation8distance27ConnectedElementPointFilter9filter_roEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation8distance27ConnectedElementPointFilterD0Ev@Base 3.4.2 - _ZN4geos9operation8distance27ConnectedElementPointFilterD1Ev@Base 3.4.2 - _ZN4geos9operation8distance27ConnectedElementPointFilterD2Ev@Base 3.4.2 - _ZN4geos9operation8distance30ConnectedElementLocationFilter12getLocationsEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation8distance30ConnectedElementLocationFilter9filter_roEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation8distance30ConnectedElementLocationFilter9filter_rwEPNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation8distance30ConnectedElementLocationFilterD0Ev@Base 3.4.2 - _ZN4geos9operation8distance30ConnectedElementLocationFilterD1Ev@Base 3.4.2 - _ZN4geos9operation8distance30ConnectedElementLocationFilterD2Ev@Base 3.4.2 - _ZN4geos9operation8geounion12UnaryUnionOp13unionWithNullESt8auto_ptrINS_4geom8GeometryEES6_@Base 3.4.2 - _ZN4geos9operation8geounion12UnaryUnionOp5UnionEv@Base 3.4.2 - _ZN4geos9operation8geounion12UnaryUnionOpD1Ev@Base 3.4.2 - _ZN4geos9operation8geounion12UnaryUnionOpD2Ev@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion11binaryUnionEPNS1_18GeometryListHolderE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos9operation8geounion13CascadedUnion11binaryUnionEPNS1_18GeometryListHolderEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos9operation8geounion13CascadedUnion11binaryUnionEPNS1_18GeometryListHolderEmm@Base 3.5.1 - _ZN4geos9operation8geounion13CascadedUnion11unionActualEPNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion14unionOptimizedEPNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion17extractByEnvelopeERKNS_4geom8EnvelopeEPNS3_8GeometryERSt6vectorIS8_SaIS8_EE@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion18reduceToGeometriesEPNS_5index7strtree9ItemsListE@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion30unionUsingEnvelopeIntersectionEPNS_4geom8GeometryES5_RKNS3_8EnvelopeE@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion5UnionEPSt6vectorIPNS_4geom8GeometryESaIS6_EE@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion5UnionEv@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion9unionSafeEPNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation8geounion13CascadedUnion9unionTreeEPNS_5index7strtree9ItemsListE@Base 3.4.2 - _ZN4geos9operation8geounion18GeometryListHolder10deleteItemEPNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation8geounion18PointGeometryUnion5UnionERKNS_4geom6PuntalERKNS3_8GeometryE@Base 3.4.2 - _ZN4geos9operation8geounion18PointGeometryUnionC1ERKNS_4geom6PuntalERKNS3_8GeometryE@Base 3.4.2 - _ZN4geos9operation8geounion18PointGeometryUnionC2ERKNS_4geom6PuntalERKNS3_8GeometryE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion11binaryUnionEPNS1_18GeometryListHolderE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZN4geos9operation8geounion20CascadedPolygonUnion11binaryUnionEPNS1_18GeometryListHolderEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZN4geos9operation8geounion20CascadedPolygonUnion11binaryUnionEPNS1_18GeometryListHolderEmm@Base 3.5.1 - _ZN4geos9operation8geounion20CascadedPolygonUnion11unionActualEPNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion14unionOptimizedEPNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion17extractByEnvelopeERKNS_4geom8EnvelopeEPNS3_8GeometryERSt6vectorIS8_SaIS8_EE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion17extractByEnvelopeERKNS_4geom8EnvelopeEPNS3_8GeometryERSt6vectorIS8_SaIS8_EESC_@Base 3.6.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion17extractByEnvelopeERKNS_4geom8EnvelopeERSt6vectorIPNS3_8GeometryESaIS9_EESC_SC_@Base 3.6.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion18reduceToGeometriesEPNS_5index7strtree9ItemsListE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion18restrictToPolygonsESt8auto_ptrINS_4geom8GeometryEE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion30unionUsingEnvelopeIntersectionEPNS_4geom8GeometryES5_RKNS3_8EnvelopeE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion5UnionEPKNS_4geom12MultiPolygonE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion5UnionEPSt6vectorIPNS_4geom7PolygonESaIS6_EE@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion5UnionEv@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion9unionSafeEPNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9operation8geounion20CascadedPolygonUnion9unionTreeEPNS_5index7strtree9ItemsListE@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeString12toLineStringEv@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeString14getCoordinatesEv@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeString3addEPNS1_21LineMergeDirectedEdgeE@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeStringC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeStringC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeStringD1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge10EdgeStringD2Ev@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger20getMergedLineStringsEv@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger26buildEdgeStringsStartingAtEPNS_11planargraph4NodeE@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger27buildEdgeStringStartingWithEPNS1_21LineMergeDirectedEdgeE@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger32buildEdgeStringsForIsolatedLoopsEv@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger34buildEdgeStringsForNonDegree2NodesEv@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger35buildEdgeStringsForUnprocessedNodesEv@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger36buildEdgeStringsForObviousStartNodesEv@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger3addEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger3addEPSt6vectorIPNS_4geom8GeometryESaIS6_EE@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMerger5mergeEv@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMergerC1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMergerC2Ev@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMergerD1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge10LineMergerD2Ev@Base 3.4.2 - _ZN4geos9operation9linemerge13LineMergeEdgeC1EPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineMergeEdgeC2EPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineMergeEdgeD0Ev@Base 3.4.2 - _ZN4geos9operation9linemerge13LineMergeEdgeD1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge13LineMergeEdgeD2Ev@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer11hasSequenceERNS_11planargraph8SubgraphE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer11isSequencedEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer12findSequenceB5cxx11ERNS_11planargraph8SubgraphE@Base 3.5.1 - _ZN4geos9operation9linemerge13LineSequencer13findSequencesB5cxx11Ev@Base 3.5.1 - _ZN4geos9operation9linemerge13LineSequencer15computeSequenceEv@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer17addReverseSubpathEPKNS_11planargraph12DirectedEdgeERNSt7__cxx114listIPS4_SaIS9_EEESt14_List_iteratorIS9_Eb@Base 3.5.1 - _ZN4geos9operation9linemerge13LineSequencer20findLowestDegreeNodeERKNS_11planargraph8SubgraphE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer22buildSequencedGeometryERKSt6vectorIPNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS8_EEESaISB_EE@Base 3.5.1 - _ZN4geos9operation9linemerge13LineSequencer27findUnvisitedBestOrientedDEEPKNS_11planargraph4NodeE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer6delAllERSt6vectorIPNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS8_EEESaISB_EE@Base 3.5.1 - _ZN4geos9operation9linemerge13LineSequencer6orientEPNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS7_EEE@Base 3.5.1 - _ZN4geos9operation9linemerge13LineSequencer7addLineEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer7reverseEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9linemerge13LineSequencer7reverseERNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS7_EEE@Base 3.5.1 - _ZN4geos9operation9linemerge14LineMergeGraph7addEdgeEPKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9linemerge14LineMergeGraph7getNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation9linemerge14LineMergeGraphD0Ev@Base 3.4.2 - _ZN4geos9operation9linemerge14LineMergeGraphD1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge14LineMergeGraphD2Ev@Base 3.4.2 - _ZN4geos9operation9linemerge21LineMergeDirectedEdge7getNextEv@Base 3.4.2 - _ZN4geos9operation9linemerge21LineMergeDirectedEdgeC1EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos9operation9linemerge21LineMergeDirectedEdgeC2EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 - _ZN4geos9operation9linemerge21LineMergeDirectedEdgeD0Ev@Base 3.4.2 - _ZN4geos9operation9linemerge21LineMergeDirectedEdgeD1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge21LineMergeDirectedEdgeD2Ev@Base 3.4.2 - _ZN4geos9operation9linemerge25LMGeometryComponentFilterD0Ev@Base 3.4.2 - _ZN4geos9operation9linemerge25LMGeometryComponentFilterD1Ev@Base 3.4.2 - _ZN4geos9operation9linemerge25LMGeometryComponentFilterD2Ev@Base 3.4.2 - _ZN4geos9operation9predicate17RectangleContains21isContainedInBoundaryERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9predicate17RectangleContains26isPointContainedInBoundaryERKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9operation9predicate17RectangleContains26isPointContainedInBoundaryERKNS_4geom5PointE@Base 3.4.2 - _ZN4geos9operation9predicate17RectangleContains31isLineStringContainedInBoundaryERKNS_4geom10LineStringE@Base 3.4.2 - _ZN4geos9operation9predicate17RectangleContains32isLineSegmentContainedInBoundaryERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZN4geos9operation9predicate17RectangleContains8containsERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9predicate19RectangleIntersects10intersectsERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9predicate20ContainsPointVisitor5visitERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9predicate20ContainsPointVisitor6isDoneEv@Base 3.4.2 - _ZN4geos9operation9predicate20ContainsPointVisitorD0Ev@Base 3.4.2 - _ZN4geos9operation9predicate20ContainsPointVisitorD1Ev@Base 3.4.2 - _ZN4geos9operation9predicate20ContainsPointVisitorD2Ev@Base 3.4.2 - _ZN4geos9operation9predicate21LineIntersectsVisitor5visitERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9predicate21LineIntersectsVisitor6isDoneEv@Base 3.4.2 - _ZN4geos9operation9predicate21LineIntersectsVisitorD0Ev@Base 3.4.2 - _ZN4geos9operation9predicate21LineIntersectsVisitorD1Ev@Base 3.4.2 - _ZN4geos9operation9predicate21LineIntersectsVisitorD2Ev@Base 3.4.2 - _ZN4geos9operation9predicate25EnvelopeIntersectsVisitor5visitERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9operation9predicate25EnvelopeIntersectsVisitor6isDoneEv@Base 3.4.2 - _ZN4geos9operation9predicate25EnvelopeIntersectsVisitorD0Ev@Base 3.4.2 - _ZN4geos9operation9predicate25EnvelopeIntersectsVisitorD1Ev@Base 3.4.2 - _ZN4geos9operation9predicate25EnvelopeIntersectsVisitorD2Ev@Base 3.4.2 - _ZN4geos9operation9predicate25SegmentIntersectionTester15hasIntersectionERKNS_4geom10LineStringES6_@Base 3.4.2 - _ZN4geos9operation9predicate25SegmentIntersectionTester30hasIntersectionWithLineStringsERKNS_4geom10LineStringERKSt6vectorIPS5_SaIS8_EE@Base 3.4.2 - _ZN4geos9operation9predicate25SegmentIntersectionTester33hasIntersectionWithEnvelopeFilterERKNS_4geom10LineStringES6_@Base 3.4.2 - _ZN4geos9precision10CommonBits11signExpBitsEx@Base 3.5.0 - _ZN4geos9precision10CommonBits13zeroLowerBitsExi@Base 3.5.0 - _ZN4geos9precision10CommonBits28numCommonMostSigMantissaBitsExx@Base 3.5.0 - _ZN4geos9precision10CommonBits3addEd@Base 3.4.2 - _ZN4geos9precision10CommonBits6getBitExi@Base 3.5.0 - _ZN4geos9precision10CommonBits9getCommonEv@Base 3.4.2 - _ZN4geos9precision10CommonBitsC1Ev@Base 3.4.2 - _ZN4geos9precision10CommonBitsC2Ev@Base 3.4.2 - _ZN4geos9precision10Translater9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9precision10TranslaterD0Ev@Base 3.4.2 - _ZN4geos9precision10TranslaterD1Ev@Base 3.4.2 - _ZN4geos9precision10TranslaterD2Ev@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp10differenceEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp12intersectionEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp13symDifferenceEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp16removeCommonBitsEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp16removeCommonBitsEPKNS_4geom8GeometryES5_RSt8auto_ptrIS3_ES8_@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp22computeResultPrecisionEPNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp5UnionEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision12CommonBitsOp6bufferEPKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9precision12CommonBitsOpC1Eb@Base 3.4.2 - _ZN4geos9precision12CommonBitsOpC1Ev@Base 3.4.2 - _ZN4geos9precision12CommonBitsOpC2Eb@Base 3.4.2 - _ZN4geos9precision12CommonBitsOpC2Ev@Base 3.4.2 - _ZN4geos9precision16MinimumClearance11getDistanceEv@Base 3.6.0 - _ZN4geos9precision16MinimumClearance7computeEv@Base 3.6.0 - _ZN4geos9precision16MinimumClearance7getLineEv@Base 3.6.0 - _ZN4geos9precision16MinimumClearanceC1EPKNS_4geom8GeometryE@Base 3.6.0 - _ZN4geos9precision16MinimumClearanceC2EPKNS_4geom8GeometryE@Base 3.6.0 - _ZN4geos9precision17CommonBitsRemover13addCommonBitsEPNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemover16removeCommonBitsEPNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemover19getCommonCoordinateEv@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemover3addEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemoverC1Ev@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemoverC2Ev@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemoverD1Ev@Base 3.4.2 - _ZN4geos9precision17CommonBitsRemoverD2Ev@Base 3.4.2 - _ZN4geos9precision19EnhancedPrecisionOp10differenceEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision19EnhancedPrecisionOp12intersectionEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision19EnhancedPrecisionOp13symDifferenceEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision19EnhancedPrecisionOp5UnionEPKNS_4geom8GeometryES5_@Base 3.4.2 - _ZN4geos9precision19EnhancedPrecisionOp6bufferEPKNS_4geom8GeometryEd@Base 3.4.2 - _ZN4geos9precision22CommonCoordinateFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 - _ZN4geos9precision22CommonCoordinateFilterD0Ev@Base 3.4.2 - _ZN4geos9precision22CommonCoordinateFilterD1Ev@Base 3.4.2 - _ZN4geos9precision22CommonCoordinateFilterD2Ev@Base 3.4.2 - _ZN4geos9precision24GeometryPrecisionReducer13createFactoryERKNS_4geom15GeometryFactoryERKNS2_14PrecisionModelE@Base 3.4.2 - _ZN4geos9precision24GeometryPrecisionReducer15reducePointwiseERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision24GeometryPrecisionReducer20fixPolygonalTopologyERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision24GeometryPrecisionReducer6reduceERKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision24GeometryPrecisionReducerC1ERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9precision24GeometryPrecisionReducerC2ERKNS_4geom15GeometryFactoryE@Base 3.4.2 - _ZN4geos9precision30SimpleGeometryPrecisionReducer17getPrecisionModelEv@Base 3.4.2 - _ZN4geos9precision30SimpleGeometryPrecisionReducer18getRemoveCollapsedEv@Base 3.4.2 - _ZN4geos9precision30SimpleGeometryPrecisionReducer28setRemoveCollapsedComponentsEb@Base 3.4.2 - _ZN4geos9precision30SimpleGeometryPrecisionReducer6reduceEPKNS_4geom8GeometryE@Base 3.4.2 - _ZN4geos9precision30SimpleGeometryPrecisionReducerC1EPKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos9precision30SimpleGeometryPrecisionReducerC2EPKNS_4geom14PrecisionModelE@Base 3.4.2 - _ZN4geos9precision35PrecisionReducerCoordinateOperation4editEPKNS_4geom18CoordinateSequenceEPKNS2_8GeometryE@Base 3.4.2 - _ZN4geos9precision35PrecisionReducerCoordinateOperationD0Ev@Base 3.4.2 - _ZN4geos9precision35PrecisionReducerCoordinateOperationD1Ev@Base 3.4.2 - _ZN4geos9precision35PrecisionReducerCoordinateOperationD2Ev@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge11getFromNodeEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge11getQuadrantEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge13getCoordinateEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge14getDirectionPtEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge16compareDirectionEPKS1_@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge16getEdgeDirectionEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge5printB5cxx11Ev@Base 3.5.1 - _ZNK4geos11planargraph12DirectedEdge6getSymEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge7getEdgeEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge8getAngleEv@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge9compareToEPKS1_@Base 3.4.2 - _ZNK4geos11planargraph12DirectedEdge9getToNodeEv@Base 3.4.2 - _ZNK4geos11planargraph14GraphComponent8isMarkedEv@Base 3.4.2 - _ZNK4geos11planargraph14GraphComponent9isVisitedEv@Base 3.4.2 - _ZNK4geos11planargraph16DirectedEdgeStar13getCoordinateEv@Base 3.4.2 - _ZNK4geos11planargraph16DirectedEdgeStar3endEv@Base 3.4.2 - _ZNK4geos11planargraph16DirectedEdgeStar5beginEv@Base 3.4.2 - _ZNK4geos11planargraph16DirectedEdgeStar8getIndexEi@Base 3.4.2 - _ZNK4geos11planargraph16DirectedEdgeStar9sortEdgesEv@Base 3.4.2 - _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision11isFrameEdgeERKNS1_8QuadEdgeE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision13isFrameVertexERKNS1_6VertexE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision14isVertexOfEdgeERKNS1_8QuadEdgeERKNS1_6VertexE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision14locateFromEdgeERKNS1_6VertexERKNS1_8QuadEdgeE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision17isFrameBorderEdgeERKNS1_8QuadEdgeE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision8isOnEdgeERKNS1_8QuadEdgeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge6Vertex10isInCircleERKS2_S4_S4_@Base 3.4.2 - _ZNK4geos11triangulate8quadedge6Vertex12circleCenterERKS2_S4_@Base 3.4.2 - _ZNK4geos11triangulate8quadedge6Vertex17interpolateZValueERKS2_S4_S4_@Base 3.4.2 - _ZNK4geos11triangulate8quadedge6Vertex6leftOfERKNS1_8QuadEdgeE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge6Vertex7rightOfERKNS1_8QuadEdgeE@Base 3.4.2 - _ZNK4geos11triangulate8quadedge8QuadEdge10getPrimaryEv@Base 3.4.2 - _ZNK4geos11triangulate8quadedge8QuadEdge13toLineSegmentEv@Base 3.4.2 - _ZNK4geos11triangulate8quadedge8QuadEdge14equalsOrientedERKS2_@Base 3.4.2 - _ZNK4geos11triangulate8quadedge8QuadEdge17equalsNonOrientedERKS2_@Base 3.4.2 - _ZNK4geos2io9WKBWriter12getByteOrderEv@Base 3.4.2 - _ZNK4geos2io9WKBWriter14getIncludeSRIDEv@Base 3.4.2 - _ZNK4geos2io9WKBWriter18getOutputDimensionEv@Base 3.4.2 - _ZNK4geos4geom10Coordinate6equalsERKS1_@Base 3.4.2 - _ZNK4geos4geom10Coordinate6isNullEv@Base 3.4.2 - _ZNK4geos4geom10Coordinate8distanceERKS1_@Base 3.4.2 - _ZNK4geos4geom10Coordinate8equals2DERKS1_@Base 3.4.2 - _ZNK4geos4geom10Coordinate8equals3DERKS1_@Base 3.4.2 - _ZNK4geos4geom10Coordinate8hashCodeEv@Base 3.4.2 - _ZNK4geos4geom10Coordinate8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom10Coordinate9compareToERKS1_@Base 3.4.2 - _ZNK4geos4geom10LineString11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom10LineString11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom10LineString11getEndPointEv@Base 3.4.2 - _ZNK4geos4geom10LineString12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom10LineString12getNumPointsEv@Base 3.4.2 - _ZNK4geos4geom10LineString12isCoordinateERNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom10LineString13getCoordinateEv@Base 3.4.2 - _ZNK4geos4geom10LineString13getStartPointEv@Base 3.4.2 - _ZNK4geos4geom10LineString14getCoordinateNEi@Base 3.4.2 - _ZNK4geos4geom10LineString14getCoordinatesEv@Base 3.4.2 - _ZNK4geos4geom10LineString15getGeometryTypeB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom10LineString16getCoordinatesROEv@Base 3.4.2 - _ZNK4geos4geom10LineString17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom10LineString18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom10LineString20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom10LineString22getCoordinateDimensionEv@Base 3.4.2 - _ZNK4geos4geom10LineString23computeEnvelopeInternalEv@Base 3.4.2 - _ZNK4geos4geom10LineString5cloneEv@Base 3.4.2 - _ZNK4geos4geom10LineString6isRingEv@Base 3.4.2 - _ZNK4geos4geom10LineString7isEmptyEv@Base 3.4.2 - _ZNK4geos4geom10LineString7reverseEv@Base 3.4.2 - _ZNK4geos4geom10LineString8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 - _ZNK4geos4geom10LineString8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 - _ZNK4geos4geom10LineString8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZNK4geos4geom10LineString8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZNK4geos4geom10LineString8isClosedEv@Base 3.4.2 - _ZNK4geos4geom10LineString9getLengthEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom10LineString9getPointNEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom10LineString9getPointNEm@Base 3.5.1 - _ZNK4geos4geom10LinearRing15getGeometryTypeB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom10LinearRing17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom10LinearRing20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom10LinearRing5cloneEv@Base 3.4.2 - _ZNK4geos4geom10LinearRing7reverseEv@Base 3.4.2 - _ZNK4geos4geom10LinearRing8isClosedEv@Base 3.4.2 - _ZNK4geos4geom10LinearRing8isSimpleEv@Base 3.4.2 - _ZNK4geos4geom10MultiPoint11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom10MultiPoint11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom10MultiPoint12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom10MultiPoint14getCoordinateNEi@Base 3.4.2 - _ZNK4geos4geom10MultiPoint15getGeometryTypeB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom10MultiPoint17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom10MultiPoint20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom10MultiPoint5cloneEv@Base 3.4.2 - _ZNK4geos4geom11LineSegment10equalsTopoERKS1_@Base 3.4.2 - _ZNK4geos4geom11LineSegment10isVerticalEv@Base 3.4.2 - _ZNK4geos4geom11LineSegment10pointAlongEdRNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment10toGeometryERKNS0_15GeometryFactoryE@Base 3.4.2 - _ZNK4geos4geom11LineSegment12closestPointERKNS0_10CoordinateERS2_@Base 3.4.2 - _ZNK4geos4geom11LineSegment12intersectionERKS1_RNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment12isHorizontalEv@Base 3.4.2 - _ZNK4geos4geom11LineSegment15segmentFractionERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment16lineIntersectionERKS1_RNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment16orientationIndexEPKS1_@Base 3.4.2 - _ZNK4geos4geom11LineSegment16orientationIndexERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment16orientationIndexERKS1_@Base 3.4.2 - _ZNK4geos4geom11LineSegment16pointAlongOffsetEddRNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment16projectionFactorERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment21distancePerpendicularERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment5angleEv@Base 3.4.2 - _ZNK4geos4geom11LineSegment7projectERKNS0_10CoordinateERS2_@Base 3.4.2 - _ZNK4geos4geom11LineSegment7projectERKS1_RS1_@Base 3.4.2 - _ZNK4geos4geom11LineSegment8distanceERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment8distanceERKS1_@Base 3.4.2 - _ZNK4geos4geom11LineSegment8midPointERNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom11LineSegment9compareToERKS1_@Base 3.4.2 - _ZNK4geos4geom11LineSegment9getLengthEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom11LineSegmentixEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom11LineSegmentixEm@Base 3.5.1 - _ZNK4geos4geom12GeometryList4sizeEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom12GeometryListixEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom12GeometryListixEm@Base 3.5.1 - _ZNK4geos4geom12MultiPolygon11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom12MultiPolygon11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom12MultiPolygon12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom12MultiPolygon15getGeometryTypeB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom12MultiPolygon17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom12MultiPolygon20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom12MultiPolygon5cloneEv@Base 3.4.2 - _ZNK4geos4geom12MultiPolygon8isSimpleEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel10getOffsetXEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel10getOffsetYEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel10isFloatingEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel11makePreciseEPNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel11makePreciseERNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel11makePreciseEd@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel27getMaximumSignificantDigitsEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel7getTypeEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel8getScaleEv@Base 3.4.2 - _ZNK4geos4geom14PrecisionModel8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom14PrecisionModel9compareToEPKS1_@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory10toGeometryEPKNS0_8EnvelopeE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory11createPointEPNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory11createPointERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory11createPointERKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory11createPointEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory13buildGeometryEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory13buildGeometryERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory13createPolygonEPNS0_10LinearRingEPSt6vectorIPNS0_8GeometryESaIS6_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory13createPolygonERKNS0_10LinearRingERKSt6vectorIPNS0_8GeometryESaIS7_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory13createPolygonEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory14createGeometryEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory15destroyGeometryEPNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLineStringEPNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLineStringERKNS0_10LineStringE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLineStringERKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLineStringESt8auto_ptrINS0_18CoordinateSequenceEE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLineStringEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLinearRingEPNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLinearRingERKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLinearRingESt8auto_ptrINS0_18CoordinateSequenceEE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createLinearRingEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createMultiPointEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createMultiPointERKNS0_18CoordinateSequenceE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createMultiPointERKSt6vectorINS0_10CoordinateESaIS3_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createMultiPointERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory16createMultiPointEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory17getPrecisionModelEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory18createMultiPolygonEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory18createMultiPolygonERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory18createMultiPolygonEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory19createEmptyGeometryEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory21createMultiLineStringEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory21createMultiLineStringERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory21createMultiLineStringEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory24createGeometryCollectionEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory24createGeometryCollectionERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory24createGeometryCollectionEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory28createPointFromInternalCoordEPKNS0_10CoordinateEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory28getCoordinateSequenceFactoryEv@Base 3.4.2 - _ZNK4geos4geom15GeometryFactory6addRefEv@Base 3.6.0 - _ZNK4geos4geom15GeometryFactory7dropRefEv@Base 3.6.0 - _ZNK4geos4geom15GeometryFactory7getSRIDEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom15MultiLineString11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString15getGeometryTypeB5cxx11Ev@Base 3.4.2 - _ZNK4geos4geom15MultiLineString17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString5cloneEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString7reverseEv@Base 3.4.2 - _ZNK4geos4geom15MultiLineString8isClosedEv@Base 3.4.2 - _ZNK4geos4geom16CoordinateFilter9filter_rwEPNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom18CoordinateLessThenclEPKNS0_10CoordinateES4_@Base 3.4.2 - _ZNK4geos4geom18CoordinateLessThenclERKNS0_10CoordinateES4_@Base 3.4.2 - _ZNK4geos4geom18CoordinateSequence13minCoordinateEv@Base 3.4.2 - _ZNK4geos4geom18CoordinateSequence14expandEnvelopeERNS0_8EnvelopeE@Base 3.4.2 - _ZNK4geos4geom18CoordinateSequence17hasRepeatedPointsEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom18CoordinateSequence4getXEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom18CoordinateSequence4getXEm@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom18CoordinateSequence4getYEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom18CoordinateSequence4getYEm@Base 3.5.1 - _ZNK4geos4geom18GeometryCollection11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection12getDimensionEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom18GeometryCollection12getGeometryNEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom18GeometryCollection12getGeometryNEm@Base 3.5.1 - _ZNK4geos4geom18GeometryCollection12getNumPointsEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection13getCoordinateEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection14getCoordinatesEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection15getGeometryTypeB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom18GeometryCollection16getNumGeometriesEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection22getCoordinateDimensionEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection23computeEnvelopeInternalEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection3endEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection5beginEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection5cloneEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection7getAreaEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection7isEmptyEv@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZNK4geos4geom18GeometryCollection9getLengthEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix10isContainsEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix10isDisjointEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix10isOverlapsEii@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix11isCoveredByEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix12isIntersectsEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix3getEii@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix7matchesERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZNK4geos4geom18IntersectionMatrix8isCoversEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix8isEqualsEii@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix8isWithinEv@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom18IntersectionMatrix9isCrossesEii@Base 3.4.2 - _ZNK4geos4geom18IntersectionMatrix9isTouchesEii@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom23CoordinateArraySequence11getOrdinateEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom23CoordinateArraySequence11getOrdinateEmm@Base 3.5.1 - _ZNK4geos4geom23CoordinateArraySequence12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom23CoordinateArraySequence14expandEnvelopeERNS0_8EnvelopeE@Base 3.4.2 - _ZNK4geos4geom23CoordinateArraySequence5cloneEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEj@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEjRNS0_10CoordinateE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEm@Base 3.5.1 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEmRNS0_10CoordinateE@Base 3.5.1 - _ZNK4geos4geom23CoordinateArraySequence7getSizeEv@Base 3.4.2 - _ZNK4geos4geom23CoordinateArraySequence7isEmptyEv@Base 3.4.2 - _ZNK4geos4geom23CoordinateArraySequence8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 - _ZNK4geos4geom23CoordinateArraySequence8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom23CoordinateArraySequence8toVectorERSt6vectorINS0_10CoordinateESaIS3_EE@Base 3.4.2 - _ZNK4geos4geom23CoordinateArraySequence8toVectorEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEPSt6vectorINS0_10CoordinateESaIS3_EEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEPSt6vectorINS0_10CoordinateESaIS3_EEm@Base 3.5.1 - _ZNK4geos4geom30CoordinateArraySequenceFactory6createERKNS0_18CoordinateSequenceE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEjj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEmm@Base 3.5.1 - _ZNK4geos4geom30CoordinateArraySequenceFactory6createEv@Base 3.5.0 - _ZNK4geos4geom4prep13PreparedPoint10intersectsEPKNS0_8GeometryE@Base 3.5.0 - _ZNK4geos4geom4prep15PreparedPolygon10intersectsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep15PreparedPolygon15getPointLocatorEv@Base 3.4.2 - _ZNK4geos4geom4prep15PreparedPolygon16containsProperlyEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep15PreparedPolygon21getIntersectionFinderEv@Base 3.4.2 - _ZNK4geos4geom4prep15PreparedPolygon6coversEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep15PreparedPolygon8containsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep18PreparedLineString10intersectsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry10intersectsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry11getGeometryEv@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry14envelopeCoversEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry16containsProperlyEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry18envelopesIntersectEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry26isAnyTargetComponentInTestEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry6coversEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry6withinEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry7crossesEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry7touchesEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry8containsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry8disjointEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry8overlapsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep21BasicPreparedGeometry9coveredByEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep23PreparedGeometryFactory6createEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep24PreparedPolygonPredicate26isAnyTestComponentInTargetEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep24PreparedPolygonPredicate27isAllTestComponentsInTargetEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep24PreparedPolygonPredicate30isAnyTargetComponentInAreaTestEPKNS0_8GeometryEPKSt6vectorIPKNS0_10CoordinateESaIS9_EE@Base 3.4.2 - _ZNK4geos4geom4prep24PreparedPolygonPredicate34isAnyTestComponentInTargetInteriorEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep24PreparedPolygonPredicate35isAllTestComponentsInTargetInteriorEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep28PreparedLineStringIntersects10intersectsEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4prep28PreparedLineStringIntersects22isAnyTestPointInTargetEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom4util15SineStarFactory14createSineStarEv@Base 3.4.2 - _ZNK4geos4geom5Point11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom5Point11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom5Point12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom5Point12getNumPointsEv@Base 3.4.2 - _ZNK4geos4geom5Point13getCoordinateEv@Base 3.4.2 - _ZNK4geos4geom5Point14getCoordinatesEv@Base 3.4.2 - _ZNK4geos4geom5Point15getGeometryTypeB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom5Point16getCoordinatesROEv@Base 3.4.2 - _ZNK4geos4geom5Point17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom5Point18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom5Point20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom5Point22getCoordinateDimensionEv@Base 3.4.2 - _ZNK4geos4geom5Point23computeEnvelopeInternalEv@Base 3.4.2 - _ZNK4geos4geom5Point4getXEv@Base 3.4.2 - _ZNK4geos4geom5Point4getYEv@Base 3.4.2 - _ZNK4geos4geom5Point5cloneEv@Base 3.4.2 - _ZNK4geos4geom5Point7isEmptyEv@Base 3.4.2 - _ZNK4geos4geom5Point8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 - _ZNK4geos4geom5Point8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 - _ZNK4geos4geom5Point8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZNK4geos4geom5Point8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZNK4geos4geom5Point8isSimpleEv@Base 3.4.2 - _ZNK4geos4geom7Polygon10convexHullEv@Base 3.4.2 - _ZNK4geos4geom7Polygon11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 - _ZNK4geos4geom7Polygon11getBoundaryEv@Base 3.4.2 - _ZNK4geos4geom7Polygon11isRectangleEv@Base 3.4.2 - _ZNK4geos4geom7Polygon12getDimensionEv@Base 3.4.2 - _ZNK4geos4geom7Polygon12getNumPointsEv@Base 3.4.2 - _ZNK4geos4geom7Polygon13getCoordinateEv@Base 3.4.2 - _ZNK4geos4geom7Polygon14getCoordinatesEv@Base 3.4.2 - _ZNK4geos4geom7Polygon15getExteriorRingEv@Base 3.4.2 - _ZNK4geos4geom7Polygon15getGeometryTypeB5cxx11Ev@Base 3.5.1 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom7Polygon16getInteriorRingNEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom7Polygon16getInteriorRingNEm@Base 3.5.1 - _ZNK4geos4geom7Polygon17getGeometryTypeIdEv@Base 3.4.2 - _ZNK4geos4geom7Polygon18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 - _ZNK4geos4geom7Polygon18getNumInteriorRingEv@Base 3.4.2 - _ZNK4geos4geom7Polygon20getBoundaryDimensionEv@Base 3.4.2 - _ZNK4geos4geom7Polygon22getCoordinateDimensionEv@Base 3.4.2 - _ZNK4geos4geom7Polygon23computeEnvelopeInternalEv@Base 3.4.2 - _ZNK4geos4geom7Polygon5cloneEv@Base 3.4.2 - _ZNK4geos4geom7Polygon7getAreaEv@Base 3.4.2 - _ZNK4geos4geom7Polygon7isEmptyEv@Base 3.4.2 - _ZNK4geos4geom7Polygon8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 - _ZNK4geos4geom7Polygon8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 - _ZNK4geos4geom7Polygon8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZNK4geos4geom7Polygon8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 - _ZNK4geos4geom7Polygon8isSimpleEv@Base 3.4.2 - _ZNK4geos4geom7Polygon9getLengthEv@Base 3.4.2 - _ZNK4geos4geom8Envelope10intersectsEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Envelope10intersectsERKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom8Envelope10intersectsERKS1_@Base 3.4.2 - _ZNK4geos4geom8Envelope10intersectsEdd@Base 3.4.2 - _ZNK4geos4geom8Envelope12intersectionERKS1_RS1_@Base 3.4.2 - _ZNK4geos4geom8Envelope6centreERNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom8Envelope6coversEPKNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom8Envelope6coversERKS1_@Base 3.4.2 - _ZNK4geos4geom8Envelope6coversEdd@Base 3.4.2 - _ZNK4geos4geom8Envelope6equalsEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Envelope6isNullEv@Base 3.4.2 - _ZNK4geos4geom8Envelope7getMaxXEv@Base 3.4.2 - _ZNK4geos4geom8Envelope7getMaxYEv@Base 3.4.2 - _ZNK4geos4geom8Envelope7getMinXEv@Base 3.4.2 - _ZNK4geos4geom8Envelope7getMinYEv@Base 3.4.2 - _ZNK4geos4geom8Envelope8distanceEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Envelope8getWidthEv@Base 3.4.2 - _ZNK4geos4geom8Envelope8hashCodeEv@Base 3.4.2 - _ZNK4geos4geom8Envelope8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom8Envelope9getHeightEv@Base 3.4.2 - _ZNK4geos4geom8Geometry10convexHullEv@Base 3.4.2 - _ZNK4geos4geom8Geometry10differenceEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry10intersectsEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry11getCentroidERNS0_10CoordinateE@Base 3.4.2 - _ZNK4geos4geom8Geometry11getCentroidEv@Base 3.4.2 - _ZNK4geos4geom8Geometry11getEnvelopeEv@Base 3.4.2 - _ZNK4geos4geom8Geometry11isRectangleEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos4geom8Geometry12getGeometryNEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos4geom8Geometry12getGeometryNEm@Base 3.5.1 - _ZNK4geos4geom8Geometry12intersectionEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry13symDifferenceEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry16getInteriorPointEv@Base 3.4.2 - _ZNK4geos4geom8Geometry16getNumGeometriesEv@Base 3.4.2 - _ZNK4geos4geom8Geometry16isWithinDistanceEPKS1_d@Base 3.4.2 - _ZNK4geos4geom8Geometry17getClassSortIndexEv@Base 3.4.2 - _ZNK4geos4geom8Geometry17getPrecisionModelEv@Base 3.4.2 - _ZNK4geos4geom8Geometry17isEquivalentClassEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry19getEnvelopeInternalEv@Base 3.4.2 - _ZNK4geos4geom8Geometry5UnionEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry5UnionEv@Base 3.4.2 - _ZNK4geos4geom8Geometry5equalERKNS0_10CoordinateES4_d@Base 3.4.2 - _ZNK4geos4geom8Geometry6bufferEd@Base 3.4.2 - _ZNK4geos4geom8Geometry6bufferEdi@Base 3.4.2 - _ZNK4geos4geom8Geometry6bufferEdii@Base 3.4.2 - _ZNK4geos4geom8Geometry6coversEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry6equalsEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry6relateEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry6relateEPKS1_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 - _ZNK4geos4geom8Geometry6toTextB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom8Geometry6withinEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry7compareESt6vectorINS0_10CoordinateESaIS3_EES5_@Base 3.4.2 - _ZNK4geos4geom8Geometry7compareESt6vectorIPS1_SaIS3_EES5_@Base 3.4.2 - _ZNK4geos4geom8Geometry7crossesEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry7getAreaEv@Base 3.4.2 - _ZNK4geos4geom8Geometry7getSRIDEv@Base 3.4.2 - _ZNK4geos4geom8Geometry7isValidEv@Base 3.4.2 - _ZNK4geos4geom8Geometry7touchesEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 - _ZNK4geos4geom8Geometry8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 - _ZNK4geos4geom8Geometry8containsEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry8disjointEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry8distanceEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry8isSimpleEv@Base 3.4.2 - _ZNK4geos4geom8Geometry8overlapsEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos4geom8Geometry9compareToEPKS1_@Base 3.4.2 - _ZNK4geos4geom8Geometry9getLengthEv@Base 3.4.2 - _ZNK4geos4geom8Triangle3detEdddd@Base 3.5.0 - _ZNK4geos4util13GEOSException4whatEv@Base 3.4.2 - _ZNK4geos4util21GeometricShapeFactory10Dimensions11getEnvelopeEv@Base 3.4.2 - _ZNK4geos4util21GeometricShapeFactory5coordEdd@Base 3.4.2 - _ZNK4geos4util7Profile13getNumTimingsEv@Base 3.4.2 - _ZNK4geos4util7Profile6getAvgEv@Base 3.4.2 - _ZNK4geos4util7Profile6getMaxEv@Base 3.4.2 - _ZNK4geos4util7Profile6getMinEv@Base 3.4.2 - _ZNK4geos4util7Profile6getTotEv@Base 3.4.2 - _ZNK4geos5index13intervalrtree21IntervalRTreeLeafNode5queryEddPNS0_11ItemVisitorE@Base 3.4.2 - _ZNK4geos5index13intervalrtree23IntervalRTreeBranchNode5queryEddPNS0_11ItemVisitorE@Base 3.4.2 - _ZNK4geos5index5chain13MonotoneChain11getEnvelopeEv@Base 3.4.2 - _ZNK4geos5index5chain13MonotoneChain14getCoordinatesEv@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos5index5chain13MonotoneChain14getLineSegmentEjRNS_4geom11LineSegmentE@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos5index5chain13MonotoneChain14getLineSegmentEmRNS_4geom11LineSegmentE@Base 3.5.1 - _ZNK4geos5index7bintree8Interval6getMaxEv@Base 3.4.2 - _ZNK4geos5index7bintree8Interval6getMinEv@Base 3.4.2 - _ZNK4geos5index7bintree8Interval8containsEPKS2_@Base 3.4.2 - _ZNK4geos5index7bintree8Interval8containsEd@Base 3.4.2 - _ZNK4geos5index7bintree8Interval8containsEdd@Base 3.4.2 - _ZNK4geos5index7bintree8Interval8getWidthEv@Base 3.4.2 - _ZNK4geos5index7bintree8Interval8overlapsEPKS2_@Base 3.4.2 - _ZNK4geos5index7bintree8Interval8overlapsEdd@Base 3.4.2 - _ZNK4geos5index7strtree12AbstractNode9getBoundsEv@Base 3.4.2 - _ZNK4geos5index7strtree13BoundablePair11getDistanceEv@Base 3.6.0 - _ZNK4geos5index7strtree13BoundablePair12getBoundableEi@Base 3.6.0 - _ZNK4geos5index7strtree13BoundablePair8distanceEv@Base 3.6.0 - _ZNK4geos5index7strtree13BoundablePair8isLeavesEv@Base 3.6.0 - _ZNK4geos5index7strtree13ItemBoundable7getItemEv@Base 3.4.2 - _ZNK4geos5index7strtree13ItemBoundable9getBoundsEv@Base 3.4.2 - _ZNK4geos5index7strtree15SIRAbstractNode13computeBoundsEv@Base 3.4.2 - _ZNK4geos5index7strtree15STRAbstractNode13computeBoundsEv@Base 3.4.2 - _ZNK4geos5index7strtree8Interval10intersectsEPKS2_@Base 3.5.0 - _ZNK4geos5index7strtree8Interval6equalsEPKS2_@Base 3.5.0 - _ZNK4geos5index8quadtree10DoubleBits11getExponentEv@Base 3.4.2 - _ZNK4geos5index8quadtree10DoubleBits14biasedExponentEv@Base 3.4.2 - _ZNK4geos5index8quadtree10DoubleBits21numCommonMantissaBitsERKS2_@Base 3.4.2 - _ZNK4geos5index8quadtree10DoubleBits6getBitEi@Base 3.4.2 - _ZNK4geos5index8quadtree10DoubleBits8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos5index8quadtree10DoubleBits9getDoubleEv@Base 3.4.2 - _ZNK4geos5index8quadtree3Key11getEnvelopeEv@Base 3.4.2 - _ZNK4geos5index8quadtree3Key8getLevelEv@Base 3.4.2 - _ZNK4geos5index8quadtree3Key8getPointEv@Base 3.4.2 - _ZNK4geos5index8quadtree3Key9getCentreEv@Base 3.4.2 - _ZNK4geos5index8quadtree4Node13isSearchMatchERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZNK4geos5index8quadtree4Node8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos5index8quadtree4Root13isSearchMatchERKNS_4geom8EnvelopeE@Base 3.4.2 - _ZNK4geos5index8quadtree8NodeBase11addAllItemsERSt6vectorIPvSaIS4_EE@Base 3.4.2 - _ZNK4geos5index8quadtree8NodeBase12getNodeCountEv@Base 3.4.2 - _ZNK4geos5index8quadtree8NodeBase26addAllItemsFromOverlappingERKNS_4geom8EnvelopeERSt6vectorIPvSaIS8_EE@Base 3.4.2 - _ZNK4geos5index8quadtree8NodeBase4sizeEv@Base 3.4.2 - _ZNK4geos5index8quadtree8NodeBase5depthEv@Base 3.4.2 - _ZNK4geos5index8quadtree8NodeBase8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos5index8quadtree8Quadtree8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos5index9sweepline14SweepLineEvent9compareToEPKS2_@Base 3.4.2 - _ZNK4geos5index9sweepline22SweepLineEventLessThenclEPKNS1_14SweepLineEventES5_@Base 3.4.2 - _ZNK4geos6noding11ScaledNoder18getNodedSubstringsEv@Base 3.4.2 - _ZNK4geos6noding11ScaledNoder5scaleERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZNK4geos6noding11ScaledNoder6Scaler9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos6noding11ScaledNoder7rescaleERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 - _ZNK4geos6noding11ScaledNoder8ReScaler9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos6noding11SegmentNode10isEndPointEj@Base 3.4.2 - _ZNK4geos6noding11SimpleNoder18getNodedSubstringsEv@Base 3.4.2 - _ZNK4geos6noding12MCIndexNoder18getNodedSubstringsEv@Base 3.4.2 - _ZNK4geos6noding13IteratedNoder18getNodedSubstringsEv@Base 3.4.2 - _ZNK4geos6noding13SegmentString5printERSo@Base 3.4.2 - _ZNK4geos6noding15NodingValidator13checkCollapseERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 - _ZNK4geos6noding15NodingValidator14checkCollapsesERKNS0_13SegmentStringE@Base 3.4.2 - _ZNK4geos6noding15NodingValidator14checkCollapsesEv@Base 3.4.2 - _ZNK4geos6noding15NodingValidator23hasInteriorIntersectionERKNS_9algorithm15LineIntersectorERKNS_4geom10CoordinateES9_@Base 3.4.2 - _ZNK4geos6noding15NodingValidator29checkEndPtVertexIntersectionsERKNS_4geom10CoordinateERKSt6vectorIPNS0_13SegmentStringESaIS8_EE@Base 3.4.2 - _ZNK4geos6noding15NodingValidator29checkEndPtVertexIntersectionsEv@Base 3.4.2 - _ZNK4geos6noding17IntersectionAdder6isDoneEv@Base 3.4.2 - _ZNK4geos6noding18BasicSegmentString13getCoordinateEj@Base 3.4.2 - _ZNK4geos6noding18BasicSegmentString14getCoordinatesEv@Base 3.4.2 - _ZNK4geos6noding18BasicSegmentString16getSegmentOctantEj@Base 3.4.2 - _ZNK4geos6noding18BasicSegmentString4sizeEv@Base 3.4.2 - _ZNK4geos6noding18BasicSegmentString5printERSo@Base 3.4.2 - _ZNK4geos6noding18BasicSegmentString8isClosedEv@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString11getNodeListEv@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString13getCoordinateEj@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString14getCoordinatesEv@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString16getSegmentOctantEj@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString4sizeEv@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString5printERSo@Base 3.4.2 - _ZNK4geos6noding18NodedSegmentString8isClosedEv@Base 3.4.2 - _ZNK4geos6noding18SegmentIntersector6isDoneEv@Base 3.4.2 - _ZNK4geos6noding19FastNodingValidator15getErrorMessageB5cxx11Ev@Base 3.5.1 - _ZNK4geos6noding23IntersectionFinderAdder6isDoneEv@Base 3.4.2 - _ZNK4geos6noding23OrientedCoordinateArray9compareToERKS1_@Base 3.4.2 - _ZNK4geos6noding27SegmentIntersectionDetector6isDoneEv@Base 3.4.2 - _ZNK4geos6noding32SingleInteriorIntersectionFinder6isDoneEv@Base 3.4.2 - _ZNK4geos6noding9snapround17SimpleSnapRounder18getNodedSubstringsEv@Base 3.4.2 - _ZNK4geos6noding9snapround18MCIndexSnapRounder18getNodedSubstringsEv@Base 3.4.2 - _ZNK4geos6noding9snapround8HotPixel10copyScaledERKNS_4geom10CoordinateERS4_@Base 3.4.2 - _ZNK4geos6noding9snapround8HotPixel10intersectsERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZNK4geos6noding9snapround8HotPixel15getSafeEnvelopeEv@Base 3.4.2 - _ZNK4geos6noding9snapround8HotPixel16intersectsScaledERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZNK4geos6noding9snapround8HotPixel25intersectsToleranceSquareERKNS_4geom10CoordinateES6_@Base 3.4.2 - _ZNK4geos6noding9snapround8HotPixel5scaleEd@Base 3.4.2 - _ZNK4geos8simplify16LineSegmentIndex5queryEPKNS_4geom11LineSegmentE@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos8simplify16TaggedLineString10getSegmentEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos8simplify16TaggedLineString10getSegmentEm@Base 3.5.1 - _ZNK4geos8simplify16TaggedLineString11getSegmentsEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString12asLineStringEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString12asLinearRingEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString13getResultSizeEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString14getMinimumSizeEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString20getParentCoordinatesEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString20getResultCoordinatesEv@Base 3.4.2 - _ZNK4geos8simplify16TaggedLineString9getParentEv@Base 3.4.2 - _ZNK4geos8simplify17TaggedLineSegment8getIndexEv@Base 3.4.2 - _ZNK4geos8simplify17TaggedLineSegment9getParentEv@Base 3.4.2 - _ZNK4geos8simplify26TaggedLineStringSimplifier23hasInteriorIntersectionERKNS_4geom11LineSegmentES5_@Base 3.4.2 - _ZNK4geos9algorithm11HCoordinate13getCoordinateERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm11HCoordinate4getXEv@Base 3.4.2 - _ZNK4geos9algorithm11HCoordinate4getYEv@Base 3.4.2 - _ZNK4geos9algorithm12CentroidArea11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm12CentroidArea11getCentroidEv@Base 3.4.2 - _ZNK4geos9algorithm12CentroidLine11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm12CentroidLine11getCentroidEv@Base 3.4.2 - _ZNK4geos9algorithm13CentroidPoint11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm13CentroidPoint11getCentroidEv@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector12intersectionERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector14isIntersectionERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector15getEdgeDistanceEii@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector18smallestInAbsValueEdddd@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector20isInSegmentEnvelopesERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector20normalizeToEnvCentreERNS_4geom10CoordinateES4_S4_S4_S4_@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector27safeHCoordinateIntersectionERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector29intersectionWithNormalizationERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 - _ZNK4geos9algorithm15LineIntersector8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos9algorithm17InteriorPointArea16getInteriorPointERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm17InteriorPointLine16getInteriorPointERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm18InteriorPointPoint16getInteriorPointERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm8Centroid11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter17isGeometryChangedEv@Base 3.4.2 - _ZNK4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter6isDoneEv@Base 3.4.2 - _ZNK4geos9geomgraph11EdgeEndStar13getCoordinateEv@Base 3.6.0 - _ZNK4geos9geomgraph11EdgeEndStar3endEv@Base 3.6.0 - _ZNK4geos9geomgraph11EdgeEndStar5beginEv@Base 3.6.0 - _ZNK4geos9geomgraph11EdgeEndStar5printB5cxx11Ev@Base 3.6.0 - _ZNK4geos9geomgraph11NodeFactory10createNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9geomgraph12DirectedEdge13getDepthDeltaEv@Base 3.6.2 - _ZNK4geos9geomgraph12DirectedEdge5printB5cxx11Ev@Base 3.6.2 - _ZNK4geos9geomgraph14GraphComponent10isInResultEv@Base 3.4.2 - _ZNK4geos9geomgraph14GraphComponent12isCoveredSetEv@Base 3.4.2 - _ZNK4geos9geomgraph14GraphComponent9isCoveredEv@Base 3.4.2 - _ZNK4geos9geomgraph14GraphComponent9isVisitedEv@Base 3.4.2 - _ZNK4geos9geomgraph16DirectedEdgeStar5printB5cxx11Ev@Base 3.6.2 - _ZNK4geos9geomgraph16TopologyLocation12getLocationsEv@Base 3.4.2 - _ZNK4geos9geomgraph16TopologyLocation13isEqualOnSideERKS1_i@Base 3.4.2 - _ZNK4geos9geomgraph16TopologyLocation17allPositionsEqualEi@Base 3.4.2 - (arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNK4geos9geomgraph16TopologyLocation3getEj@Base 3.4.2 - (arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNK4geos9geomgraph16TopologyLocation3getEm@Base 3.5.1 - _ZNK4geos9geomgraph16TopologyLocation6isAreaEv@Base 3.4.2 - _ZNK4geos9geomgraph16TopologyLocation6isLineEv@Base 3.4.2 - _ZNK4geos9geomgraph16TopologyLocation6isNullEv@Base 3.4.2 - _ZNK4geos9geomgraph16TopologyLocation8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos9geomgraph16TopologyLocation9isAnyNullEv@Base 3.4.2 - _ZNK4geos9geomgraph20EdgeIntersectionList14isIntersectionERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9geomgraph20EdgeIntersectionList5printB5cxx11Ev@Base 3.5.1 - _ZNK4geos9geomgraph20EdgeIntersectionList7isEmptyEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge10isIsolatedEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge11isCollapsedEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge12getNumPointsEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge12printReverseB5cxx11Ev@Base 3.5.1 - _ZNK4geos9geomgraph4Edge13getCoordinateEi@Base 3.4.2 - _ZNK4geos9geomgraph4Edge13getCoordinateEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge13getDepthDeltaEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge14getCoordinatesEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge16isPointwiseEqualEPKS1_@Base 3.4.2 - _ZNK4geos9geomgraph4Edge22getMaximumSegmentIndexEv@Base 3.4.2 - _ZNK4geos9geomgraph4Edge5printB5cxx11Ev@Base 3.5.1 - _ZNK4geos9geomgraph4Edge6equalsEPKS1_@Base 3.4.2 - _ZNK4geos9geomgraph4Edge6equalsERKS1_@Base 3.4.2 - _ZNK4geos9geomgraph4Edge8isClosedEv@Base 3.4.2 - _ZNK4geos9geomgraph4Node10isIsolatedEv@Base 3.4.2 - _ZNK4geos9geomgraph4Node13getCoordinateEv@Base 3.4.2 - _ZNK4geos9geomgraph4Node22isIncidentEdgeInResultEv@Base 3.4.2 - _ZNK4geos9geomgraph4Node4getZEv@Base 3.4.2 - _ZNK4geos9geomgraph5Depth11getLocationEii@Base 3.4.2 - _ZNK4geos9geomgraph5Depth6isNullEi@Base 3.4.2 - _ZNK4geos9geomgraph5Depth6isNullEii@Base 3.4.2 - _ZNK4geos9geomgraph5Depth6isNullEv@Base 3.4.2 - _ZNK4geos9geomgraph5Depth8getDeltaEi@Base 3.4.2 - _ZNK4geos9geomgraph5Depth8getDepthEii@Base 3.4.2 - _ZNK4geos9geomgraph5Depth8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos9geomgraph5Label11getLocationEi@Base 3.4.2 - _ZNK4geos9geomgraph5Label11getLocationEii@Base 3.4.2 - _ZNK4geos9geomgraph5Label13isEqualOnSideERKS1_i@Base 3.4.2 - _ZNK4geos9geomgraph5Label16getGeometryCountEv@Base 3.4.2 - _ZNK4geos9geomgraph5Label17allPositionsEqualEii@Base 3.4.2 - _ZNK4geos9geomgraph5Label6isAreaEi@Base 3.4.2 - _ZNK4geos9geomgraph5Label6isAreaEv@Base 3.4.2 - _ZNK4geos9geomgraph5Label6isLineEi@Base 3.4.2 - _ZNK4geos9geomgraph5Label6isNullEi@Base 3.4.2 - _ZNK4geos9geomgraph5Label6isNullEv@Base 3.4.2 - _ZNK4geos9geomgraph5Label8toStringB5cxx11Ev@Base 3.5.1 - _ZNK4geos9geomgraph5Label9isAnyNullEi@Base 3.4.2 - _ZNK4geos9geomgraph7EdgeEnd16compareDirectionEPKS1_@Base 3.4.2 - _ZNK4geos9geomgraph7EdgeEnd5printB5cxx11Ev@Base 3.6.0 - _ZNK4geos9geomgraph7EdgeEnd9compareToEPKS1_@Base 3.4.2 - _ZNK4geos9geomgraph7NodeMap16getBoundaryNodesEiRSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 - _ZNK4geos9geomgraph7NodeMap4findERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9geomgraph7NodeMap5printB5cxx11Ev@Base 3.5.1 - _ZNK4geos9linearref14LinearIterator11isEndOfLineEv@Base 3.4.2 - _ZNK4geos9linearref14LinearIterator13getSegmentEndEv@Base 3.4.2 - _ZNK4geos9linearref14LinearIterator14getVertexIndexEv@Base 3.4.2 - _ZNK4geos9linearref14LinearIterator15getSegmentStartEv@Base 3.4.2 - _ZNK4geos9linearref14LinearIterator17getComponentIndexEv@Base 3.4.2 - _ZNK4geos9linearref14LinearIterator7getLineEv@Base 3.4.2 - _ZNK4geos9linearref14LinearIterator7hasNextEv@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation10getSegmentEPKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation10isEndpointERKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation13getCoordinateEPKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation15getSegmentIndexEv@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation15isOnSameSegmentERKS1_@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation16getSegmentLengthEPKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation17getComponentIndexEv@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation18getSegmentFractionEv@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation21compareLocationValuesEjjd@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation7isValidEPKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation8isVertexEv@Base 3.4.2 - _ZNK4geos9linearref14LinearLocation9compareToERKS1_@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine10clampIndexEd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine10locationOfEd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine10locationOfEdb@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine11extractLineEdd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine11getEndIndexEv@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine12extractPointEd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine12extractPointEdd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine12indexOfAfterERKNS_4geom10CoordinateEd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine12isValidIndexEd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine13getStartIndexEv@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine13positiveIndexEd@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine7indexOfERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine7projectERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9linearref17LengthIndexedLine9indicesOfEPKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref17LengthLocationMap11getLocationEd@Base 3.4.2 - _ZNK4geos9linearref17LengthLocationMap11getLocationEdb@Base 3.4.2 - _ZNK4geos9linearref17LengthLocationMap13resolveHigherERKNS0_14LinearLocationE@Base 3.4.2 - _ZNK4geos9linearref17LengthLocationMap18getLocationForwardEd@Base 3.4.2 - _ZNK4geos9linearref17LengthLocationMap9getLengthERKNS0_14LinearLocationE@Base 3.4.2 - _ZNK4geos9linearref18LengthIndexOfPoint12indexOfAfterERKNS_4geom10CoordinateEd@Base 3.4.2 - _ZNK4geos9linearref18LengthIndexOfPoint16indexOfFromStartERKNS_4geom10CoordinateEd@Base 3.4.2 - _ZNK4geos9linearref18LengthIndexOfPoint21segmentNearestMeasureEPKNS_4geom11LineSegmentERKNS2_10CoordinateEd@Base 3.4.2 - _ZNK4geos9linearref18LengthIndexOfPoint7indexOfERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9linearref19LocationIndexOfLine9indicesOfEPKNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9linearref20LocationIndexOfPoint12indexOfAfterERKNS_4geom10CoordinateEPKNS0_14LinearLocationE@Base 3.4.2 - _ZNK4geos9linearref20LocationIndexOfPoint16indexOfFromStartERKNS_4geom10CoordinateEPKNS0_14LinearLocationE@Base 3.4.2 - _ZNK4geos9linearref20LocationIndexOfPoint7indexOfERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9linearref21LinearGeometryBuilder17getLastCoordinateEv@Base 3.4.2 - _ZNK4geos9operation10polygonize22PolygonizeDirectedEdge7getNextEv@Base 3.4.2 - _ZNK4geos9operation10polygonize22PolygonizeDirectedEdge8getLabelEv@Base 3.4.2 - _ZNK4geos9operation10polygonize22PolygonizeDirectedEdge8isInRingEv@Base 3.4.2 - _ZNK4geos9operation12intersection28RectangleIntersectionBuilder5emptyEv@Base 3.5.0 - _ZNK4geos9operation12intersection9Rectangle12toLinearRingERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZNK4geos9operation12intersection9Rectangle9toPolygonERKNS_4geom15GeometryFactoryE@Base 3.5.0 - _ZNK4geos9operation22GeometryGraphOperation14getArgGeometryEj@Base 3.4.2 - _ZNK4geos9operation6buffer13BufferBuilder25createEmptyResultGeometryEv@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier11isDeletableEiiid@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier12collapseLineEv@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier16isShallowSampledERKNS_4geom10CoordinateES6_iid@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier18isShallowConcavityERKNS_4geom10CoordinateES6_S6_d@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier23findNextNonDeletedIndexEj@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier9isConcaveERKNS_4geom10CoordinateES6_S6_@Base 3.4.2 - _ZNK4geos9operation6buffer25BufferInputLineSimplifier9isShallowERKNS_4geom10CoordinateES6_S6_d@Base 3.4.2 - _ZNK4geos9operation6relate17RelateNodeFactory10createNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9operation7overlay15ElevationMatrix15getAvgElevationEv@Base 3.4.2 - _ZNK4geos9operation7overlay15ElevationMatrix5printB5cxx11Ev@Base 3.5.1 - _ZNK4geos9operation7overlay15ElevationMatrix7elevateEPNS_4geom8GeometryE@Base 3.4.2 - _ZNK4geos9operation7overlay15ElevationMatrix7getCellERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9operation7overlay18OverlayNodeFactory10createNodeERKNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9operation7overlay19ElevationMatrixCell5printB5cxx11Ev@Base 3.5.1 - _ZNK4geos9operation7overlay19ElevationMatrixCell6getAvgEv@Base 3.4.2 - _ZNK4geos9operation7overlay19ElevationMatrixCell8getTotalEv@Base 3.4.2 - _ZNK4geos9operation7overlay21ElevationMatrixFilter9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9operation7overlay9OverlayOp6mergeZEPNS_9geomgraph4NodeEPKNS_4geom10LineStringE@Base 3.4.2 - _ZNK4geos9operation7overlay9OverlayOp6mergeZEPNS_9geomgraph4NodeEPKNS_4geom7PolygonE@Base 3.4.2 - _ZNK4geos9operation8distance13FacetSequence11getEnvelopeEv@Base 3.6.0 - (subst)_ZNK4geos9operation8distance13FacetSequence13getCoordinateE{size_t}@Base 3.6.0 - _ZNK4geos9operation8distance13FacetSequence23computeLineLineDistanceERKS2_@Base 3.6.0 - _ZNK4geos9operation8distance13FacetSequence24computePointLineDistanceERKNS_4geom10CoordinateERKS2_@Base 3.6.0 - _ZNK4geos9operation8distance13FacetSequence4sizeEv@Base 3.6.0 - _ZNK4geos9operation8distance13FacetSequence7isPointEv@Base 3.6.0 - _ZNK4geos9operation8geounion18PointGeometryUnion5UnionEv@Base 3.4.2 - _ZNK4geos9operation9linemerge13LineMergeEdge7getLineEv@Base 3.4.2 - _ZNK4geos9precision10Translater9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 - _ZNK4geos9precision22CommonCoordinateFilter9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 - (optional=templinst)_ZNKSt5ctypeIcE8do_widenEc@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt11_Deque_baseIPN4geos11planargraph4NodeESaIS3_EE17_M_initialize_mapEj@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt11_Deque_baseIPN4geos11planargraph4NodeESaIS3_EE17_M_initialize_mapEm@Base 3.4.2 - (optional=templinst)_ZNSt11_Deque_baseIPN4geos11planargraph4NodeESaIS3_EED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt11_Deque_baseIPN4geos11planargraph4NodeESaIS3_EED2Ev@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_initialize_mapEj@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_initialize_mapEm@Base 3.4.2 - (optional=templinst)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt5dequeIPN4geos11planargraph4NodeESaIS3_EE16_M_push_back_auxERKS3_@Base 3.4.2 - (optional=templinst)_ZNSt5dequeIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE16_M_push_back_auxERKS4_@Base 3.4.2 - (optional=templinst|arch=!amd64 !arm64 !x32)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE13_M_assign_auxIN9__gnu_cxx17__normal_iteratorIPKS2_S4_EEEEvT_SB_St20forward_iterator_tag@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE13_M_assign_auxISt20_List_const_iteratorIS2_EEEvT_S8_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst|arch=alpha armel armhf powerpc ppc64 ppc64el s390x sh4)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS2_S4_EERKS2_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPS2_S4_EEjRKS2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPS2_S4_EEmRKS2_@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPKS2_S4_EEEEvNS7_IPS2_S4_EET_SD_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS2_S4_EEEEvS9_T_SA_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS2_S4_EERKS2_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !hppa !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64 !x32)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE7reserveEj@Base 3.4.2 - (optional=templinst|arch=alpha ppc64 ppc64el s390x)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE7reserveEm@Base 3.5.0 - (optional=templinst)_ZNSt6vectorIN4geos5index7strtree13ItemsListItemESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS5_S7_EERKS5_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPKN4geos11planargraph12DirectedEdgeESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE13_M_assign_auxISt23_Rb_tree_const_iteratorIS4_EEEvT_SA_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EEjRKS4_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EEmRKS4_@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EEaSERKS6_@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom10LineStringESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom10LinearRingESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom5PointESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom7PolygonESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos5index13intervalrtree17IntervalRTreeNodeESaIS5_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS5_S7_EERKS5_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPKN4geos6noding13SegmentStringESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos11planargraph12DirectedEdgeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos11planargraph12DirectedEdgeESaIS3_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS3_S5_EE@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos11planargraph4EdgeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos11planargraph4EdgeESaIS3_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS3_S5_EE@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos11planargraph4NodeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos11planargraph8SubgraphESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom10CoordinateESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom10LineStringESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom11LineSegmentESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom18CoordinateSequenceESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom5PointESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom7PolygonESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8EnvelopeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS1_10LineStringES_ISA_SaISA_EEEEEEvNS8_IPS3_S5_EET_SH_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS1_5PointES_ISA_SaISA_EEEEEEvNS8_IPS3_S5_EET_SH_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS1_7PolygonES_ISA_SaISA_EEEEEEvNS8_IPS3_S5_EET_SH_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS3_S5_EEEEvSA_T_SB_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEj@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEm@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index5chain13MonotoneChainESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIPN4geos5index5chain13MonotoneChainESaIS4_EE7reserveEj@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIPN4geos5index5chain13MonotoneChainESaIS4_EE7reserveEm@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index7bintree8IntervalESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index7strtree12AbstractNodeESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index7strtree13BoundablePairESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS4_S6_EEEEvSB_T_SC_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS4_S6_EE@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos5index9sweepline14SweepLineEventESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos6noding13SegmentStringESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos8simplify17TaggedLineSegmentESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph12DirectedEdgeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph4EdgeESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS3_S5_EEEEvSA_T_SB_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph4EdgeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph4NodeESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph5LabelESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph5index14SweepLineEventESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph7EdgeEndESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph8EdgeRingESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS0_9operation7overlay15MinimalEdgeRingES_ISC_SaISC_EEEEEEvNS8_IPS3_S5_EET_SJ_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph8EdgeRingESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation10polygonize22PolygonizeDirectedEdgeESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation10polygonize8EdgeRingESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation6buffer12DepthSegmentESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation6buffer14BufferSubgraphESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation7overlay15MaximalEdgeRingESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation7overlay15MinimalEdgeRingESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation8distance13FacetSequenceESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation8distance16GeometryLocationESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation9linemerge10EdgeStringESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos9operation9linemerge21LineMergeDirectedEdgeESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPNSt7__cxx114listIPN4geos11planargraph12DirectedEdgeESaIS5_EEESaIS8_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS8_SA_EERKS8_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPvSaIS0_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPKS0_S2_EEEEvNS5_IPS0_S2_EET_SB_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPvSaIS0_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS0_S2_EEEEvS7_T_S8_St20forward_iterator_tag@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPvSaIS0_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIdSaIdEE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPdS1_EEjRKd@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIdSaIdEE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPdS1_EEmRKd@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIdSaIdEE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPdS1_EERKd@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIiSaIiEE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPiS1_EEjRKi@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIiSaIiEE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPiS1_EEmRKi@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIiSaIiEE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIiSaIiEEaSERKS1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIjSaIjEE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPjS1_EERKj@Base 3.6.2 - (optional=templinst)_ZNSt6vectorImSaImEE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPmS1_EERKm@Base 3.6.2 - (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev@Base 3.4.2 - (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev@Base 3.4.2 - (optional=templinst|arch=amd64 arm64 hppa mips64el sparc64 x32)_ZNSt7__cxx114listIN4geos4geom10CoordinateESaIS3_EE6insertESt14_List_iteratorIS3_ERKS3_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIN4geos11triangulate8quadedge6VertexES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueERKS3_@Base 3.5.0 - (optional=templinst)_ZNSt8_Rb_treeIN4geos11triangulate8quadedge6VertexES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE4findERKS3_@Base 3.5.0 - (optional=templinst)_ZNSt8_Rb_treeIN4geos11triangulate8quadedge6VertexES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.5.0 - (optional=templinst)_ZNSt8_Rb_treeIN4geos4geom10CoordinateES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E@Base 3.4.2 - (optional=templinst|arch=amd64 arm64 hppa kfreebsd-amd64 m68k sh4 x32)_ZNSt8_Rb_treeIN4geos4geom10CoordinateESt4pairIKS2_PNS0_11planargraph4NodeEESt10_Select1stIS8_ENS1_18CoordinateLessThenESaIS8_EE11equal_rangeERS4_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIN4geos4geom10CoordinateESt4pairIKS2_PNS0_11planargraph4NodeEESt10_Select1stIS8_ENS1_18CoordinateLessThenESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIN4geos6noding23OrientedCoordinateArrayES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_PN4geos4util7ProfileEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE16_M_insert_uniqueERKSC_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_PN4geos4util7ProfileEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE4findERS7_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_PN4geos4util7ProfileEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE8_M_eraseEPSt13_Rb_tree_nodeISC_E@Base 3.4.2 - (optional=templinst|arch=armel armhf sparc)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE16_M_insert_uniqueERKS4_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE24_M_get_insert_unique_posERKS4_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 hppa kfreebsd-amd64 m68k mips64el ppc64 ppc64el s390x sh4 sparc64 x32)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERKS4_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE4findERKS4_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 - (optional=templinst|arch=armel armhf)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE14_M_lower_boundEPSt13_Rb_tree_nodeISA_EPSt18_Rb_tree_node_baseRS6_@Base 3.5.1 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE24_M_get_insert_unique_posERS6_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 hppa kfreebsd-amd64 m68k mips64el ppc64 ppc64el s390x sh4 sparc64 x32)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorISA_ERS6_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE24_M_get_insert_unique_posERS6_@Base 3.4.2 - (optional=templinst|arch=amd64 arm64 hppa kfreebsd-amd64 m68k mips64el ppc64el sh4 sparc64 x32)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorISA_ERS6_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom8GeometryESt4pairIKS4_PNS0_8simplify16TaggedLineStringEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE16_M_insert_uniqueERKSA_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom8GeometryESt4pairIKS4_PNS0_8simplify16TaggedLineStringEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos11planargraph4EdgeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueERKS3_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos11planargraph4EdgeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE16_M_insert_uniqueERKS4_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE24_M_get_insert_unique_posERS5_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 hppa kfreebsd-amd64 m68k mips64el ppc64 ppc64el s390x sh4 sparc64 x32)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS9_ERS5_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE8_M_eraseEPSt13_Rb_tree_nodeIS9_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos6noding11SegmentNodeES3_St9_IdentityIS3_ENS1_13SegmentNodeLTESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE24_M_get_insert_unique_posERS5_@Base 3.4.2 - (optional=templinst|arch=amd64 arm64 hppa kfreebsd-amd64 m68k mips64el ppc64el sh4 sparc64 x32)_ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS9_ERS5_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE8_M_eraseEPSt13_Rb_tree_nodeIS9_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph16EdgeIntersectionES3_St9_IdentityIS3_ENS1_24EdgeIntersectionLessThenESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph4NodeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueERKS3_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph4NodeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph7EdgeEndES3_St9_IdentityIS3_ENS1_9EdgeEndLTESaIS3_EE16_M_insert_uniqueERKS3_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph7EdgeEndES3_St9_IdentityIS3_ENS1_9EdgeEndLTESaIS3_EE4findERKS3_@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph7EdgeEndES3_St9_IdentityIS3_ENS1_9EdgeEndLTESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIddSt9_IdentityIdESt4lessIdESaIdEE16_M_insert_uniqueERKd@Base 3.4.2 - (optional=templinst)_ZNSt8_Rb_treeIddSt9_IdentityIdESt4lessIdESaIdEE7_M_copyINS5_11_Alloc_nodeEEEPSt13_Rb_tree_nodeIdEPKS9_PSt18_Rb_tree_node_baseRT_@Base 3.5.1 - (optional=templinst)_ZNSt8_Rb_treeIddSt9_IdentityIdESt4lessIdESaIdEE8_M_eraseEPSt13_Rb_tree_nodeIdE@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos4geom8EnvelopeEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos4geom8EnvelopeEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos4geom8GeometryEE5resetEPS2_@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos5index7strtree9ItemsListEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos5index7strtree9ItemsListEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos8simplify16LineSegmentIndexEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos8simplify16LineSegmentIndexEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos8simplify21TaggedLinesSimplifierEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos8simplify21TaggedLinesSimplifierEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos9operation6buffer22OffsetSegmentGeneratorEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos9operation6buffer22OffsetSegmentGeneratorEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos9operation8geounion18GeometryListHolderEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos9operation8geounion18GeometryListHolderEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos9precision17CommonBitsRemoverEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrIN4geos9precision17CommonBitsRemoverEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIN4geos4geom10CoordinateESaIS3_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIN4geos4geom10CoordinateESaIS3_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPKN4geos4geom10CoordinateESaIS5_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPKN4geos4geom10CoordinateESaIS5_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos11triangulate8quadedge8QuadEdgeESaIS5_EEED1Ev@Base 3.5.1 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos11triangulate8quadedge8QuadEdgeESaIS5_EEED2Ev@Base 3.5.1 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos4geom11LineSegmentESaIS4_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos4geom11LineSegmentESaIS4_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos4geom8GeometryESaIS4_EEED1Ev@Base 3.5.0 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos4geom8GeometryESaIS4_EEED2Ev@Base 3.5.0 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos5index7strtree9BoundableESaIS5_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos5index7strtree9BoundableESaIS5_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos9geomgraph4NodeESaIS4_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos9geomgraph4NodeESaIS4_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos9geomgraph7EdgeEndESaIS4_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos9geomgraph7EdgeEndESaIS4_EEED2Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos9operation8distance13FacetSequenceESaIS5_EEED1Ev@Base 3.6.0 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos9operation8distance13FacetSequenceESaIS5_EEED2Ev@Base 3.6.0 - (optional=templinst|arch=hppa sh4 x32)_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree13BoundablePairESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops14_Iter_comp_valINS5_25BoundablePairQueueCompareEEEEvT_T0_SH_T1_RT2_@Base 3.6.2 - (optional=templinst)_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree13BoundablePairESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops14_Iter_comp_valINS5_25BoundablePairQueueCompareEEEEvT_T0_SH_T1_RT2_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEEiS4_NS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_T0_SF_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEElS4_NS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_T0_SF_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEEiS7_NS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_T0_SJ_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEElS7_NS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_T0_SJ_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEEiS5_NS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEElS5_NS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEEiS5_NS0_5__ops15_Iter_less_iterEEvT_T0_SE_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEElS5_NS0_5__ops15_Iter_less_iterEEvT_T0_SE_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEEiS5_NS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_T0_SG_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEElS5_NS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_T0_SG_T1_T2_@Base 3.4.2 - (optional=templinst|subst)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree13BoundablePairESt6vectorIS6_SaIS6_EEEE{ssize_t}S6_NS0_5__ops15_Iter_comp_iterINS5_25BoundablePairQueueCompareEEEEvT_T0_SH_T1_T2_@Base 3.6.0 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 - (optional=templinst)_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_SE_T0_@Base 3.6.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEENS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_SI_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_SG_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_less_iterEEvT_SD_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_SF_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_@Base 3.4.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_SG_T0_@Base 3.6.2 - (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEEiNS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEElNS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_SI_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEElNS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_SI_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEElNS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEEiNS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_SF_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEElNS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_SF_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 - (optional=templinst|arch=!alpha !armel !armhf !powerpc !powerpcspe !ppc64 !ppc64el !s390x !sh4)_ZSt22__move_median_to_firstIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_SE_SE_T0_@Base 3.4.2 - (optional=templinst|arch=!amd64 !arm64 !x32)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops14_Val_comp_iterINS3_18CoordinateLessThenEEEEvT_T0_@Base 3.6.2 - (optional=templinst)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEENS0_5__ops14_Val_comp_iterINS3_19GeometryGreaterThenEEEEvT_T0_@Base 3.4.2 - (optional=templinst)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops14_Val_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_@Base 3.4.2 - (optional=templinst|arch=hurd-i386 i386 kfreebsd-i386 m68k mips mipsel powerpc powerpcspe)_ZSt8__uniqueIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops19_Iter_equal_to_iterEET_SC_SC_T0_@Base 3.5.0 - (optional=templinst|arch=armel armhf m68k)_ZSt9__find_ifIN9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEENS0_5__ops16_Iter_equals_valIKdEEET_SB_SB_T0_St26random_access_iterator_tag@Base 3.4.2 - (optional=templinst)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_@Base 3.4.2 - (optional=templinst)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_@Base 3.4.2 - (optional=templinst)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_@Base 3.4.2 - _ZTIN4geos11planargraph11PlanarGraphE@Base 3.4.2 - _ZTIN4geos11planargraph12DirectedEdgeE@Base 3.4.2 - _ZTIN4geos11planargraph14GraphComponentE@Base 3.4.2 - _ZTIN4geos11planargraph16DirectedEdgeStarE@Base 3.4.2 - _ZTIN4geos11planargraph4EdgeE@Base 3.4.2 - _ZTIN4geos11planargraph4NodeE@Base 3.4.2 - _ZTIN4geos11planargraph7NodeMapE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge15QuadEdgeLocatorE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge15TriangleVisitorE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorE@Base 3.5.0 - _ZTIN4geos11triangulate8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge22LocateFailureExceptionE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge6VertexE@Base 3.4.2 - _ZTIN4geos11triangulate8quadedge8QuadEdgeE@Base 3.4.2 - _ZTIN4geos2io14ParseExceptionE@Base 3.4.2 - _ZTIN4geos2io9WKBWriterE@Base 3.4.2 - _ZTIN4geos4geom10LineStringE@Base 3.4.2 - _ZTIN4geos4geom10LinearRingE@Base 3.4.2 - _ZTIN4geos4geom10MultiPointE@Base 3.4.2 - _ZTIN4geos4geom11LineSegmentE@Base 3.4.2 - _ZTIN4geos4geom12MultiPolygonE@Base 3.4.2 - _ZTIN4geos4geom14GeometryFilterE@Base 3.4.2 - _ZTIN4geos4geom15GeometryFactoryE@Base 3.4.2 - _ZTIN4geos4geom15MultiLineStringE@Base 3.4.2 - _ZTIN4geos4geom16CoordinateFilterE@Base 3.4.2 - _ZTIN4geos4geom18CoordinateSequenceE@Base 3.4.2 - _ZTIN4geos4geom18GeometryCollectionE@Base 3.4.2 - _ZTIN4geos4geom23CoordinateArraySequenceE@Base 3.4.2 - _ZTIN4geos4geom23GeometryComponentFilterE@Base 3.4.2 - _ZTIN4geos4geom24CoordinateSequenceFilterE@Base 3.4.2 - _ZTIN4geos4geom25CoordinateSequenceFactoryE@Base 3.4.2 - _ZTIN4geos4geom30CoordinateArraySequenceFactoryE@Base 3.4.2 - _ZTIN4geos4geom4prep13PreparedPointE@Base 3.4.2 - _ZTIN4geos4geom4prep15PreparedPolygonE@Base 3.4.2 - _ZTIN4geos4geom4prep16PreparedGeometryE@Base 3.4.2 - _ZTIN4geos4geom4prep18PreparedLineStringE@Base 3.4.2 - _ZTIN4geos4geom4prep21BasicPreparedGeometryE@Base 3.4.2 - _ZTIN4geos4geom4prep21PreparedPolygonCoversE@Base 3.4.2 - _ZTIN4geos4geom4prep23PreparedPolygonContainsE@Base 3.4.2 - _ZTIN4geos4geom4prep24PreparedPolygonPredicateE@Base 3.4.2 - _ZTIN4geos4geom4prep25PreparedPolygonIntersectsE@Base 3.4.2 - _ZTIN4geos4geom4prep31AbstractPreparedPolygonContainsE@Base 3.4.2 - _ZTIN4geos4geom4prep31PreparedPolygonContainsProperlyE@Base 3.4.2 - _ZTIN4geos4geom4util14PointExtracterE@Base 3.4.2 - _ZTIN4geos4geom4util16PolygonExtracterE@Base 3.4.2 - _ZTIN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTIN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTIN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTIN4geos4geom4util19CoordinateOperationE@Base 3.4.2 - _ZTIN4geos4geom4util19GeometryTransformerE@Base 3.4.2 - _ZTIN4geos4geom4util23GeometryEditorOperationE@Base 3.4.2 - _ZTIN4geos4geom4util24LinearComponentExtracterE@Base 3.4.2 - _ZTIN4geos4geom4util28ComponentCoordinateExtracterE@Base 3.4.2 - _ZTIN4geos4geom4util29ShortCircuitedGeometryVisitorE@Base 3.4.2 - _ZTIN4geos4geom5PointE@Base 3.4.2 - _ZTIN4geos4geom6LinealE@Base 3.4.2 - _ZTIN4geos4geom6PuntalE@Base 3.4.2 - _ZTIN4geos4geom7PolygonE@Base 3.4.2 - _ZTIN4geos4geom8Geometry21GeometryChangedFilterE@Base 3.4.2 - _ZTIN4geos4geom8GeometryE@Base 3.4.2 - _ZTIN4geos4geom9PolygonalE@Base 3.4.2 - _ZTIN4geos4util13GEOSExceptionE@Base 3.4.2 - _ZTIN4geos4util17TopologyExceptionE@Base 3.4.2 - _ZTIN4geos4util20InterruptedExceptionE@Base 3.4.2 - _ZTIN4geos4util21GeometricShapeFactoryE@Base 3.4.2 - _ZTIN4geos4util21IllegalStateExceptionE@Base 3.4.2 - _ZTIN4geos4util24AssertionFailedExceptionE@Base 3.4.2 - _ZTIN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 - _ZTIN4geos4util27UniqueCoordinateArrayFilterE@Base 3.4.2 - _ZTIN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 - _ZTIN4geos5index11ItemVisitorE@Base 3.4.2 - _ZTIN4geos5index12SpatialIndexE@Base 3.4.2 - _ZTIN4geos5index13intervalrtree17IntervalRTreeNodeE@Base 3.4.2 - _ZTIN4geos5index13intervalrtree21IntervalRTreeLeafNodeE@Base 3.4.2 - _ZTIN4geos5index13intervalrtree23IntervalRTreeBranchNodeE@Base 3.4.2 - _ZTIN4geos5index5chain25MonotoneChainSelectActionE@Base 3.4.2 - _ZTIN4geos5index5chain26MonotoneChainOverlapActionE@Base 3.4.2 - _ZTIN4geos5index7bintree4NodeE@Base 3.4.2 - _ZTIN4geos5index7bintree4RootE@Base 3.4.2 - _ZTIN4geos5index7bintree8NodeBaseE@Base 3.4.2 - _ZTIN4geos5index7strtree12AbstractNodeE@Base 3.4.2 - _ZTIN4geos5index7strtree12ItemDistanceE@Base 3.6.0 - _ZTIN4geos5index7strtree13ItemBoundableE@Base 3.4.2 - _ZTIN4geos5index7strtree15AbstractSTRtree12IntersectsOpE@Base 3.4.2 - _ZTIN4geos5index7strtree15AbstractSTRtreeE@Base 3.4.2 - _ZTIN4geos5index7strtree15SIRAbstractNodeE@Base 3.4.2 - _ZTIN4geos5index7strtree15STRAbstractNodeE@Base 3.4.2 - _ZTIN4geos5index7strtree20GeometryItemDistanceE@Base 3.6.0 - _ZTIN4geos5index7strtree7SIRtree15SIRIntersectsOpE@Base 3.4.2 - _ZTIN4geos5index7strtree7SIRtreeE@Base 3.4.2 - _ZTIN4geos5index7strtree7STRtree15STRIntersectsOpE@Base 3.4.2 - _ZTIN4geos5index7strtree7STRtreeE@Base 3.4.2 - _ZTIN4geos5index7strtree9BoundableE@Base 3.4.2 - _ZTIN4geos5index8quadtree4NodeE@Base 3.4.2 - _ZTIN4geos5index8quadtree4RootE@Base 3.4.2 - _ZTIN4geos5index8quadtree8NodeBaseE@Base 3.4.2 - _ZTIN4geos5index8quadtree8QuadtreeE@Base 3.4.2 - _ZTIN4geos5index9sweepline22SweepLineOverlapActionE@Base 3.4.2 - _ZTIN4geos6noding11ScaledNoder6ScalerE@Base 3.4.2 - _ZTIN4geos6noding11ScaledNoder8ReScalerE@Base 3.4.2 - _ZTIN4geos6noding11ScaledNoderE@Base 3.4.2 - _ZTIN4geos6noding11SimpleNoderE@Base 3.4.2 - _ZTIN4geos6noding12MCIndexNoder20SegmentOverlapActionE@Base 3.4.2 - _ZTIN4geos6noding12MCIndexNoderE@Base 3.4.2 - _ZTIN4geos6noding13IteratedNoderE@Base 3.4.2 - _ZTIN4geos6noding13SegmentStringE@Base 3.4.2 - _ZTIN4geos6noding15SegmentNodeListE@Base 3.4.2 - _ZTIN4geos6noding15SinglePassNoderE@Base 3.4.2 - _ZTIN4geos6noding17IntersectionAdderE@Base 3.4.2 - _ZTIN4geos6noding18BasicSegmentStringE@Base 3.4.2 - _ZTIN4geos6noding18NodedSegmentStringE@Base 3.4.2 - _ZTIN4geos6noding18SegmentIntersectorE@Base 3.4.2 - _ZTIN4geos6noding20NodableSegmentStringE@Base 3.4.2 - _ZTIN4geos6noding23IntersectionFinderAdderE@Base 3.4.2 - _ZTIN4geos6noding27SegmentIntersectionDetectorE@Base 3.4.2 - _ZTIN4geos6noding27SegmentSetMutualIntersectorE@Base 3.4.2 - _ZTIN4geos6noding32SingleInteriorIntersectionFinderE@Base 3.4.2 - _ZTIN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionE@Base 3.4.2 - _ZTIN4geos6noding34MCIndexSegmentSetMutualIntersectorE@Base 3.4.2 - _ZTIN4geos6noding5NoderE@Base 3.4.2 - _ZTIN4geos6noding9snapround17SimpleSnapRounderE@Base 3.4.2 - _ZTIN4geos6noding9snapround18HotPixelSnapActionE@Base 3.4.2 - _ZTIN4geos6noding9snapround18MCIndexSnapRounderE@Base 3.4.2 - _ZTIN4geos6noding9snapround26MCIndexPointSnapperVisitorE@Base 3.4.2 - _ZTIN4geos8simplify13DPTransformerE@Base 3.4.2 - _ZTIN4geos8simplify17TaggedLineSegmentE@Base 3.4.2 - _ZTIN4geos8simplify18LineSegmentVisitorE@Base 3.4.2 - _ZTIN4geos9algorithm11PointInRingE@Base 3.4.2 - _ZTIN4geos9algorithm13MCPointInRing10MCSelecterE@Base 3.4.2 - _ZTIN4geos9algorithm13MCPointInRingE@Base 3.4.2 - _ZTIN4geos9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZTIN4geos9algorithm17SimplePointInRingE@Base 3.4.2 - _ZTIN4geos9algorithm18SIRtreePointInRingE@Base 3.4.2 - _ZTIN4geos9algorithm25NotRepresentableExceptionE@Base 3.4.2 - _ZTIN4geos9algorithm6locate22PointOnGeometryLocatorE@Base 3.4.2 - _ZTIN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorE@Base 3.4.2 - _ZTIN4geos9algorithm6locate25IndexedPointInAreaLocatorE@Base 3.4.2 - _ZTIN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterE@Base 3.4.2 - _ZTIN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterE@Base 3.4.2 - _ZTIN4geos9geomgraph11EdgeEndStarE@Base 3.4.2 - _ZTIN4geos9geomgraph11NodeFactoryE@Base 3.4.2 - _ZTIN4geos9geomgraph11PlanarGraphE@Base 3.4.2 - _ZTIN4geos9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZTIN4geos9geomgraph13GeometryGraphE@Base 3.4.2 - _ZTIN4geos9geomgraph14GraphComponentE@Base 3.4.2 - _ZTIN4geos9geomgraph16DirectedEdgeStarE@Base 3.4.2 - _ZTIN4geos9geomgraph4EdgeE@Base 3.4.2 - _ZTIN4geos9geomgraph4NodeE@Base 3.4.2 - _ZTIN4geos9geomgraph5DepthE@Base 3.4.2 - _ZTIN4geos9geomgraph5index13MonotoneChainE@Base 3.4.2 - _ZTIN4geos9geomgraph5index14SweepLineEventE@Base 3.4.2 - _ZTIN4geos9geomgraph5index16SweepLineSegmentE@Base 3.4.2 - _ZTIN4geos9geomgraph5index17SweepLineEventOBJE@Base 3.4.2 - _ZTIN4geos9geomgraph5index18EdgeSetIntersectorE@Base 3.4.2 - _ZTIN4geos9geomgraph5index18SegmentIntersectorE@Base 3.4.2 - _ZTIN4geos9geomgraph5index24SimpleEdgeSetIntersectorE@Base 3.4.2 - _ZTIN4geos9geomgraph5index26SimpleSweepLineIntersectorE@Base 3.4.2 - _ZTIN4geos9geomgraph5index28SimpleMCSweepLineIntersectorE@Base 3.4.2 - _ZTIN4geos9geomgraph7EdgeEndE@Base 3.4.2 - _ZTIN4geos9geomgraph7NodeMapE@Base 3.4.2 - _ZTIN4geos9geomgraph8EdgeListE@Base 3.4.2 - _ZTIN4geos9geomgraph8EdgeRingE@Base 3.4.2 - _ZTIN4geos9operation10polygonize11Polygonizer15LineStringAdderE@Base 3.4.2 - _ZTIN4geos9operation10polygonize14PolygonizeEdgeE@Base 3.4.2 - _ZTIN4geos9operation10polygonize15PolygonizeGraphE@Base 3.4.2 - _ZTIN4geos9operation10polygonize22PolygonizeDirectedEdgeE@Base 3.4.2 - _ZTIN4geos9operation22GeometryGraphOperationE@Base 3.4.2 - _ZTIN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionE@Base 3.4.2 - _ZTIN4geos9operation5valid9IsValidOpE@Base 3.4.2 - _ZTIN4geos9operation6relate10RelateNodeE@Base 3.4.2 - _ZTIN4geos9operation6relate13EdgeEndBundleE@Base 3.4.2 - _ZTIN4geos9operation6relate15RelateNodeGraphE@Base 3.4.2 - _ZTIN4geos9operation6relate17EdgeEndBundleStarE@Base 3.4.2 - _ZTIN4geos9operation6relate17RelateNodeFactoryE@Base 3.4.2 - _ZTIN4geos9operation6relate8RelateOpE@Base 3.4.2 - _ZTIN4geos9operation7overlay15MaximalEdgeRingE@Base 3.4.2 - _ZTIN4geos9operation7overlay15MinimalEdgeRingE@Base 3.4.2 - _ZTIN4geos9operation7overlay18OverlayNodeFactoryE@Base 3.4.2 - _ZTIN4geos9operation7overlay21ElevationMatrixFilterE@Base 3.4.2 - _ZTIN4geos9operation7overlay4snap15SnapTransformerE@Base 3.4.2 - _ZTIN4geos9operation7overlay9OverlayOpE@Base 3.4.2 - _ZTIN4geos9operation8distance27ConnectedElementPointFilterE@Base 3.4.2 - _ZTIN4geos9operation8distance30ConnectedElementLocationFilterE@Base 3.4.2 - _ZTIN4geos9operation9linemerge13LineMergeEdgeE@Base 3.4.2 - _ZTIN4geos9operation9linemerge14LineMergeGraphE@Base 3.4.2 - _ZTIN4geos9operation9linemerge21LineMergeDirectedEdgeE@Base 3.4.2 - _ZTIN4geos9operation9predicate20ContainsPointVisitorE@Base 3.4.2 - _ZTIN4geos9operation9predicate21LineIntersectsVisitorE@Base 3.4.2 - _ZTIN4geos9operation9predicate25EnvelopeIntersectsVisitorE@Base 3.4.2 - _ZTIN4geos9precision10TranslaterE@Base 3.4.2 - _ZTIN4geos9precision22CommonCoordinateFilterE@Base 3.4.2 - _ZTIN4geos9precision35PrecisionReducerCoordinateOperationE@Base 3.4.2 - _ZTIPN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 - _ZTIPN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 - _ZTSN4geos11planargraph11PlanarGraphE@Base 3.4.2 - _ZTSN4geos11planargraph12DirectedEdgeE@Base 3.4.2 - _ZTSN4geos11planargraph14GraphComponentE@Base 3.4.2 - _ZTSN4geos11planargraph16DirectedEdgeStarE@Base 3.4.2 - _ZTSN4geos11planargraph4EdgeE@Base 3.4.2 - _ZTSN4geos11planargraph4NodeE@Base 3.4.2 - _ZTSN4geos11planargraph7NodeMapE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge15QuadEdgeLocatorE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge15TriangleVisitorE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorE@Base 3.5.0 - _ZTSN4geos11triangulate8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge22LocateFailureExceptionE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge6VertexE@Base 3.4.2 - _ZTSN4geos11triangulate8quadedge8QuadEdgeE@Base 3.4.2 - _ZTSN4geos2io14ParseExceptionE@Base 3.4.2 - _ZTSN4geos2io9WKBWriterE@Base 3.4.2 - _ZTSN4geos4geom10LineStringE@Base 3.4.2 - _ZTSN4geos4geom10LinearRingE@Base 3.4.2 - _ZTSN4geos4geom10MultiPointE@Base 3.4.2 - _ZTSN4geos4geom11LineSegmentE@Base 3.4.2 - _ZTSN4geos4geom12MultiPolygonE@Base 3.4.2 - _ZTSN4geos4geom14GeometryFilterE@Base 3.4.2 - _ZTSN4geos4geom15GeometryFactoryE@Base 3.4.2 - _ZTSN4geos4geom15MultiLineStringE@Base 3.4.2 - _ZTSN4geos4geom16CoordinateFilterE@Base 3.4.2 - _ZTSN4geos4geom18CoordinateSequenceE@Base 3.4.2 - _ZTSN4geos4geom18GeometryCollectionE@Base 3.4.2 - _ZTSN4geos4geom23CoordinateArraySequenceE@Base 3.4.2 - _ZTSN4geos4geom23GeometryComponentFilterE@Base 3.4.2 - _ZTSN4geos4geom24CoordinateSequenceFilterE@Base 3.4.2 - _ZTSN4geos4geom25CoordinateSequenceFactoryE@Base 3.4.2 - _ZTSN4geos4geom30CoordinateArraySequenceFactoryE@Base 3.4.2 - _ZTSN4geos4geom4prep13PreparedPointE@Base 3.4.2 - _ZTSN4geos4geom4prep15PreparedPolygonE@Base 3.4.2 - _ZTSN4geos4geom4prep16PreparedGeometryE@Base 3.4.2 - _ZTSN4geos4geom4prep18PreparedLineStringE@Base 3.4.2 - _ZTSN4geos4geom4prep21BasicPreparedGeometryE@Base 3.4.2 - _ZTSN4geos4geom4prep21PreparedPolygonCoversE@Base 3.4.2 - _ZTSN4geos4geom4prep23PreparedPolygonContainsE@Base 3.4.2 - _ZTSN4geos4geom4prep24PreparedPolygonPredicateE@Base 3.4.2 - _ZTSN4geos4geom4prep25PreparedPolygonIntersectsE@Base 3.4.2 - _ZTSN4geos4geom4prep31AbstractPreparedPolygonContainsE@Base 3.4.2 - _ZTSN4geos4geom4prep31PreparedPolygonContainsProperlyE@Base 3.4.2 - _ZTSN4geos4geom4util14PointExtracterE@Base 3.4.2 - _ZTSN4geos4geom4util16PolygonExtracterE@Base 3.4.2 - _ZTSN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTSN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTSN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTSN4geos4geom4util19CoordinateOperationE@Base 3.4.2 - _ZTSN4geos4geom4util19GeometryTransformerE@Base 3.4.2 - _ZTSN4geos4geom4util23GeometryEditorOperationE@Base 3.4.2 - _ZTSN4geos4geom4util24LinearComponentExtracterE@Base 3.4.2 - _ZTSN4geos4geom4util28ComponentCoordinateExtracterE@Base 3.4.2 - _ZTSN4geos4geom4util29ShortCircuitedGeometryVisitorE@Base 3.4.2 - _ZTSN4geos4geom5PointE@Base 3.4.2 - _ZTSN4geos4geom6LinealE@Base 3.4.2 - _ZTSN4geos4geom6PuntalE@Base 3.4.2 - _ZTSN4geos4geom7PolygonE@Base 3.4.2 - _ZTSN4geos4geom8Geometry21GeometryChangedFilterE@Base 3.4.2 - _ZTSN4geos4geom8GeometryE@Base 3.4.2 - _ZTSN4geos4geom9PolygonalE@Base 3.4.2 - _ZTSN4geos4util13GEOSExceptionE@Base 3.4.2 - _ZTSN4geos4util17TopologyExceptionE@Base 3.4.2 - _ZTSN4geos4util20InterruptedExceptionE@Base 3.4.2 - _ZTSN4geos4util21GeometricShapeFactoryE@Base 3.4.2 - _ZTSN4geos4util21IllegalStateExceptionE@Base 3.4.2 - _ZTSN4geos4util24AssertionFailedExceptionE@Base 3.4.2 - _ZTSN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 - _ZTSN4geos4util27UniqueCoordinateArrayFilterE@Base 3.4.2 - _ZTSN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 - _ZTSN4geos5index11ItemVisitorE@Base 3.4.2 - _ZTSN4geos5index12SpatialIndexE@Base 3.4.2 - _ZTSN4geos5index13intervalrtree17IntervalRTreeNodeE@Base 3.4.2 - _ZTSN4geos5index13intervalrtree21IntervalRTreeLeafNodeE@Base 3.4.2 - _ZTSN4geos5index13intervalrtree23IntervalRTreeBranchNodeE@Base 3.4.2 - _ZTSN4geos5index5chain25MonotoneChainSelectActionE@Base 3.4.2 - _ZTSN4geos5index5chain26MonotoneChainOverlapActionE@Base 3.4.2 - _ZTSN4geos5index7bintree4NodeE@Base 3.4.2 - _ZTSN4geos5index7bintree4RootE@Base 3.4.2 - _ZTSN4geos5index7bintree8NodeBaseE@Base 3.4.2 - _ZTSN4geos5index7strtree12AbstractNodeE@Base 3.4.2 - _ZTSN4geos5index7strtree12ItemDistanceE@Base 3.6.0 - _ZTSN4geos5index7strtree13ItemBoundableE@Base 3.4.2 - _ZTSN4geos5index7strtree15AbstractSTRtree12IntersectsOpE@Base 3.4.2 - _ZTSN4geos5index7strtree15AbstractSTRtreeE@Base 3.4.2 - _ZTSN4geos5index7strtree15SIRAbstractNodeE@Base 3.4.2 - _ZTSN4geos5index7strtree15STRAbstractNodeE@Base 3.4.2 - _ZTSN4geos5index7strtree20GeometryItemDistanceE@Base 3.6.0 - _ZTSN4geos5index7strtree7SIRtree15SIRIntersectsOpE@Base 3.4.2 - _ZTSN4geos5index7strtree7SIRtreeE@Base 3.4.2 - _ZTSN4geos5index7strtree7STRtree15STRIntersectsOpE@Base 3.4.2 - _ZTSN4geos5index7strtree7STRtreeE@Base 3.4.2 - _ZTSN4geos5index7strtree9BoundableE@Base 3.4.2 - _ZTSN4geos5index8quadtree4NodeE@Base 3.4.2 - _ZTSN4geos5index8quadtree4RootE@Base 3.4.2 - _ZTSN4geos5index8quadtree8NodeBaseE@Base 3.4.2 - _ZTSN4geos5index8quadtree8QuadtreeE@Base 3.4.2 - _ZTSN4geos5index9sweepline22SweepLineOverlapActionE@Base 3.4.2 - _ZTSN4geos6noding11ScaledNoder6ScalerE@Base 3.4.2 - _ZTSN4geos6noding11ScaledNoder8ReScalerE@Base 3.4.2 - _ZTSN4geos6noding11ScaledNoderE@Base 3.4.2 - _ZTSN4geos6noding11SimpleNoderE@Base 3.4.2 - _ZTSN4geos6noding12MCIndexNoder20SegmentOverlapActionE@Base 3.4.2 - _ZTSN4geos6noding12MCIndexNoderE@Base 3.4.2 - _ZTSN4geos6noding13IteratedNoderE@Base 3.4.2 - _ZTSN4geos6noding13SegmentStringE@Base 3.4.2 - _ZTSN4geos6noding15SegmentNodeListE@Base 3.4.2 - _ZTSN4geos6noding15SinglePassNoderE@Base 3.4.2 - _ZTSN4geos6noding17IntersectionAdderE@Base 3.4.2 - _ZTSN4geos6noding18BasicSegmentStringE@Base 3.4.2 - _ZTSN4geos6noding18NodedSegmentStringE@Base 3.4.2 - _ZTSN4geos6noding18SegmentIntersectorE@Base 3.4.2 - _ZTSN4geos6noding20NodableSegmentStringE@Base 3.4.2 - _ZTSN4geos6noding23IntersectionFinderAdderE@Base 3.4.2 - _ZTSN4geos6noding27SegmentIntersectionDetectorE@Base 3.4.2 - _ZTSN4geos6noding27SegmentSetMutualIntersectorE@Base 3.4.2 - _ZTSN4geos6noding32SingleInteriorIntersectionFinderE@Base 3.4.2 - _ZTSN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionE@Base 3.4.2 - _ZTSN4geos6noding34MCIndexSegmentSetMutualIntersectorE@Base 3.4.2 - _ZTSN4geos6noding5NoderE@Base 3.4.2 - _ZTSN4geos6noding9snapround17SimpleSnapRounderE@Base 3.4.2 - _ZTSN4geos6noding9snapround18HotPixelSnapActionE@Base 3.4.2 - _ZTSN4geos6noding9snapround18MCIndexSnapRounderE@Base 3.4.2 - _ZTSN4geos6noding9snapround26MCIndexPointSnapperVisitorE@Base 3.4.2 - _ZTSN4geos8simplify13DPTransformerE@Base 3.4.2 - _ZTSN4geos8simplify17TaggedLineSegmentE@Base 3.4.2 - _ZTSN4geos8simplify18LineSegmentVisitorE@Base 3.4.2 - _ZTSN4geos9algorithm11PointInRingE@Base 3.4.2 - _ZTSN4geos9algorithm13MCPointInRing10MCSelecterE@Base 3.4.2 - _ZTSN4geos9algorithm13MCPointInRingE@Base 3.4.2 - _ZTSN4geos9algorithm16BoundaryNodeRuleE@Base 3.4.2 - _ZTSN4geos9algorithm17SimplePointInRingE@Base 3.4.2 - _ZTSN4geos9algorithm18SIRtreePointInRingE@Base 3.4.2 - _ZTSN4geos9algorithm25NotRepresentableExceptionE@Base 3.4.2 - _ZTSN4geos9algorithm6locate22PointOnGeometryLocatorE@Base 3.4.2 - _ZTSN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorE@Base 3.4.2 - _ZTSN4geos9algorithm6locate25IndexedPointInAreaLocatorE@Base 3.4.2 - _ZTSN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterE@Base 3.4.2 - _ZTSN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterE@Base 3.4.2 - _ZTSN4geos9geomgraph11EdgeEndStarE@Base 3.4.2 - _ZTSN4geos9geomgraph11NodeFactoryE@Base 3.4.2 - _ZTSN4geos9geomgraph11PlanarGraphE@Base 3.4.2 - _ZTSN4geos9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZTSN4geos9geomgraph13GeometryGraphE@Base 3.4.2 - _ZTSN4geos9geomgraph14GraphComponentE@Base 3.4.2 - _ZTSN4geos9geomgraph16DirectedEdgeStarE@Base 3.4.2 - _ZTSN4geos9geomgraph4EdgeE@Base 3.4.2 - _ZTSN4geos9geomgraph4NodeE@Base 3.4.2 - _ZTSN4geos9geomgraph5DepthE@Base 3.4.2 - _ZTSN4geos9geomgraph5index13MonotoneChainE@Base 3.4.2 - _ZTSN4geos9geomgraph5index14SweepLineEventE@Base 3.4.2 - _ZTSN4geos9geomgraph5index16SweepLineSegmentE@Base 3.4.2 - _ZTSN4geos9geomgraph5index17SweepLineEventOBJE@Base 3.4.2 - _ZTSN4geos9geomgraph5index18EdgeSetIntersectorE@Base 3.4.2 - _ZTSN4geos9geomgraph5index18SegmentIntersectorE@Base 3.4.2 - _ZTSN4geos9geomgraph5index24SimpleEdgeSetIntersectorE@Base 3.4.2 - _ZTSN4geos9geomgraph5index26SimpleSweepLineIntersectorE@Base 3.4.2 - _ZTSN4geos9geomgraph5index28SimpleMCSweepLineIntersectorE@Base 3.4.2 - _ZTSN4geos9geomgraph7EdgeEndE@Base 3.4.2 - _ZTSN4geos9geomgraph7NodeMapE@Base 3.4.2 - _ZTSN4geos9geomgraph8EdgeListE@Base 3.4.2 - _ZTSN4geos9geomgraph8EdgeRingE@Base 3.4.2 - _ZTSN4geos9operation10polygonize11Polygonizer15LineStringAdderE@Base 3.4.2 - _ZTSN4geos9operation10polygonize14PolygonizeEdgeE@Base 3.4.2 - _ZTSN4geos9operation10polygonize15PolygonizeGraphE@Base 3.4.2 - _ZTSN4geos9operation10polygonize22PolygonizeDirectedEdgeE@Base 3.4.2 - _ZTSN4geos9operation22GeometryGraphOperationE@Base 3.4.2 - _ZTSN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionE@Base 3.4.2 - _ZTSN4geos9operation5valid9IsValidOpE@Base 3.4.2 - _ZTSN4geos9operation6relate10RelateNodeE@Base 3.4.2 - _ZTSN4geos9operation6relate13EdgeEndBundleE@Base 3.4.2 - _ZTSN4geos9operation6relate15RelateNodeGraphE@Base 3.4.2 - _ZTSN4geos9operation6relate17EdgeEndBundleStarE@Base 3.4.2 - _ZTSN4geos9operation6relate17RelateNodeFactoryE@Base 3.4.2 - _ZTSN4geos9operation6relate8RelateOpE@Base 3.4.2 - _ZTSN4geos9operation7overlay15MaximalEdgeRingE@Base 3.4.2 - _ZTSN4geos9operation7overlay15MinimalEdgeRingE@Base 3.4.2 - _ZTSN4geos9operation7overlay18OverlayNodeFactoryE@Base 3.4.2 - _ZTSN4geos9operation7overlay21ElevationMatrixFilterE@Base 3.4.2 - _ZTSN4geos9operation7overlay4snap15SnapTransformerE@Base 3.4.2 - _ZTSN4geos9operation7overlay9OverlayOpE@Base 3.4.2 - _ZTSN4geos9operation8distance27ConnectedElementPointFilterE@Base 3.4.2 - _ZTSN4geos9operation8distance30ConnectedElementLocationFilterE@Base 3.4.2 - _ZTSN4geos9operation9linemerge13LineMergeEdgeE@Base 3.4.2 - _ZTSN4geos9operation9linemerge14LineMergeGraphE@Base 3.4.2 - _ZTSN4geos9operation9linemerge21LineMergeDirectedEdgeE@Base 3.4.2 - _ZTSN4geos9operation9predicate20ContainsPointVisitorE@Base 3.4.2 - _ZTSN4geos9operation9predicate21LineIntersectsVisitorE@Base 3.4.2 - _ZTSN4geos9operation9predicate25EnvelopeIntersectsVisitorE@Base 3.4.2 - _ZTSN4geos9precision10TranslaterE@Base 3.4.2 - _ZTSN4geos9precision22CommonCoordinateFilterE@Base 3.4.2 - _ZTSN4geos9precision35PrecisionReducerCoordinateOperationE@Base 3.4.2 - _ZTSPN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 - _ZTSPN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 - _ZTTN4geos4geom10LineStringE@Base 3.4.2 - _ZTTN4geos4geom10LinearRingE@Base 3.4.2 - _ZTTN4geos4geom10MultiPointE@Base 3.4.2 - _ZTTN4geos4geom12MultiPolygonE@Base 3.4.2 - _ZTTN4geos4geom15MultiLineStringE@Base 3.4.2 - _ZTTN4geos4geom18GeometryCollectionE@Base 3.4.2 - _ZTTN4geos4geom5PointE@Base 3.4.2 - _ZTTN4geos4geom7PolygonE@Base 3.4.2 - _ZTVN4geos11planargraph11PlanarGraphE@Base 3.4.2 - _ZTVN4geos11planargraph12DirectedEdgeE@Base 3.4.2 - _ZTVN4geos11planargraph16DirectedEdgeStarE@Base 3.4.2 - _ZTVN4geos11planargraph4EdgeE@Base 3.4.2 - _ZTVN4geos11planargraph4NodeE@Base 3.4.2 - _ZTVN4geos11planargraph7NodeMapE@Base 3.4.2 - _ZTVN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorE@Base 3.4.2 - _ZTVN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorE@Base 3.5.0 - _ZTVN4geos11triangulate8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 - _ZTVN4geos11triangulate8quadedge22LocateFailureExceptionE@Base 3.4.2 - _ZTVN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorE@Base 3.4.2 - _ZTVN4geos11triangulate8quadedge6VertexE@Base 3.4.2 - _ZTVN4geos11triangulate8quadedge8QuadEdgeE@Base 3.4.2 - _ZTVN4geos2io14ParseExceptionE@Base 3.4.2 - _ZTVN4geos2io9WKBWriterE@Base 3.4.2 - _ZTVN4geos4geom10LineStringE@Base 3.4.2 - _ZTVN4geos4geom10LinearRingE@Base 3.4.2 - _ZTVN4geos4geom10MultiPointE@Base 3.4.2 - _ZTVN4geos4geom11LineSegmentE@Base 3.4.2 - _ZTVN4geos4geom12MultiPolygonE@Base 3.4.2 - _ZTVN4geos4geom15GeometryFactoryE@Base 3.4.2 - _ZTVN4geos4geom15MultiLineStringE@Base 3.4.2 - _ZTVN4geos4geom18CoordinateSequenceE@Base 3.4.2 - _ZTVN4geos4geom18GeometryCollectionE@Base 3.4.2 - _ZTVN4geos4geom23CoordinateArraySequenceE@Base 3.4.2 - _ZTVN4geos4geom23GeometryComponentFilterE@Base 3.4.2 - _ZTVN4geos4geom25CoordinateSequenceFactoryE@Base 3.4.2 - _ZTVN4geos4geom30CoordinateArraySequenceFactoryE@Base 3.4.2 - _ZTVN4geos4geom4prep13PreparedPointE@Base 3.4.2 - _ZTVN4geos4geom4prep15PreparedPolygonE@Base 3.4.2 - _ZTVN4geos4geom4prep18PreparedLineStringE@Base 3.4.2 - _ZTVN4geos4geom4prep21BasicPreparedGeometryE@Base 3.4.2 - _ZTVN4geos4geom4prep21PreparedPolygonCoversE@Base 3.4.2 - _ZTVN4geos4geom4prep23PreparedPolygonContainsE@Base 3.4.2 - _ZTVN4geos4geom4prep25PreparedPolygonIntersectsE@Base 3.4.2 - _ZTVN4geos4geom4prep31PreparedPolygonContainsProperlyE@Base 3.4.2 - _ZTVN4geos4geom4util14PointExtracterE@Base 3.4.2 - _ZTVN4geos4geom4util16PolygonExtracterE@Base 3.4.2 - _ZTVN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTVN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTVN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 - _ZTVN4geos4geom4util19CoordinateOperationE@Base 3.4.2 - _ZTVN4geos4geom4util19GeometryTransformerE@Base 3.4.2 - _ZTVN4geos4geom4util24LinearComponentExtracterE@Base 3.4.2 - _ZTVN4geos4geom4util28ComponentCoordinateExtracterE@Base 3.4.2 - _ZTVN4geos4geom5PointE@Base 3.4.2 - _ZTVN4geos4geom7PolygonE@Base 3.4.2 - _ZTVN4geos4geom8Geometry21GeometryChangedFilterE@Base 3.4.2 - _ZTVN4geos4geom8GeometryE@Base 3.4.2 - _ZTVN4geos4util13GEOSExceptionE@Base 3.4.2 - _ZTVN4geos4util17TopologyExceptionE@Base 3.4.2 - _ZTVN4geos4util20InterruptedExceptionE@Base 3.4.2 - _ZTVN4geos4util21GeometricShapeFactoryE@Base 3.4.2 - _ZTVN4geos4util21IllegalStateExceptionE@Base 3.4.2 - _ZTVN4geos4util24AssertionFailedExceptionE@Base 3.4.2 - _ZTVN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 - _ZTVN4geos4util27UniqueCoordinateArrayFilterE@Base 3.4.2 - _ZTVN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 - _ZTVN4geos5index13intervalrtree21IntervalRTreeLeafNodeE@Base 3.4.2 - _ZTVN4geos5index13intervalrtree23IntervalRTreeBranchNodeE@Base 3.4.2 - _ZTVN4geos5index5chain25MonotoneChainSelectActionE@Base 3.4.2 - _ZTVN4geos5index5chain26MonotoneChainOverlapActionE@Base 3.4.2 - _ZTVN4geos5index7bintree4NodeE@Base 3.4.2 - _ZTVN4geos5index7bintree4RootE@Base 3.4.2 - _ZTVN4geos5index7bintree8NodeBaseE@Base 3.4.2 - _ZTVN4geos5index7strtree12AbstractNodeE@Base 3.4.2 - _ZTVN4geos5index7strtree13ItemBoundableE@Base 3.4.2 - _ZTVN4geos5index7strtree15AbstractSTRtreeE@Base 3.4.2 - _ZTVN4geos5index7strtree15SIRAbstractNodeE@Base 3.4.2 - _ZTVN4geos5index7strtree15STRAbstractNodeE@Base 3.4.2 - _ZTVN4geos5index7strtree20GeometryItemDistanceE@Base 3.6.0 - _ZTVN4geos5index7strtree7SIRtree15SIRIntersectsOpE@Base 3.4.2 - _ZTVN4geos5index7strtree7SIRtreeE@Base 3.4.2 - _ZTVN4geos5index7strtree7STRtree15STRIntersectsOpE@Base 3.4.2 - _ZTVN4geos5index7strtree7STRtreeE@Base 3.4.2 - _ZTVN4geos5index8quadtree4NodeE@Base 3.4.2 - _ZTVN4geos5index8quadtree4RootE@Base 3.4.2 - _ZTVN4geos5index8quadtree8NodeBaseE@Base 3.4.2 - _ZTVN4geos5index8quadtree8QuadtreeE@Base 3.4.2 - _ZTVN4geos6noding11ScaledNoder6ScalerE@Base 3.4.2 - _ZTVN4geos6noding11ScaledNoder8ReScalerE@Base 3.4.2 - _ZTVN4geos6noding11ScaledNoderE@Base 3.4.2 - _ZTVN4geos6noding11SimpleNoderE@Base 3.4.2 - _ZTVN4geos6noding12MCIndexNoder20SegmentOverlapActionE@Base 3.4.2 - _ZTVN4geos6noding12MCIndexNoderE@Base 3.4.2 - _ZTVN4geos6noding13IteratedNoderE@Base 3.4.2 - _ZTVN4geos6noding13SegmentStringE@Base 3.4.2 - _ZTVN4geos6noding15SegmentNodeListE@Base 3.4.2 - _ZTVN4geos6noding17IntersectionAdderE@Base 3.4.2 - _ZTVN4geos6noding18BasicSegmentStringE@Base 3.4.2 - _ZTVN4geos6noding18NodedSegmentStringE@Base 3.4.2 - _ZTVN4geos6noding23IntersectionFinderAdderE@Base 3.4.2 - _ZTVN4geos6noding27SegmentIntersectionDetectorE@Base 3.4.2 - _ZTVN4geos6noding32SingleInteriorIntersectionFinderE@Base 3.4.2 - _ZTVN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionE@Base 3.4.2 - _ZTVN4geos6noding34MCIndexSegmentSetMutualIntersectorE@Base 3.4.2 - _ZTVN4geos6noding9snapround17SimpleSnapRounderE@Base 3.4.2 - _ZTVN4geos6noding9snapround18HotPixelSnapActionE@Base 3.4.2 - _ZTVN4geos6noding9snapround18MCIndexSnapRounderE@Base 3.4.2 - _ZTVN4geos6noding9snapround26MCIndexPointSnapperVisitorE@Base 3.4.2 - _ZTVN4geos8simplify13DPTransformerE@Base 3.4.2 - _ZTVN4geos8simplify17TaggedLineSegmentE@Base 3.4.2 - _ZTVN4geos8simplify18LineSegmentVisitorE@Base 3.4.2 - _ZTVN4geos9algorithm13MCPointInRing10MCSelecterE@Base 3.4.2 - _ZTVN4geos9algorithm13MCPointInRingE@Base 3.4.2 - _ZTVN4geos9algorithm17SimplePointInRingE@Base 3.4.2 - _ZTVN4geos9algorithm18SIRtreePointInRingE@Base 3.4.2 - _ZTVN4geos9algorithm25NotRepresentableExceptionE@Base 3.4.2 - _ZTVN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorE@Base 3.4.2 - _ZTVN4geos9algorithm6locate25IndexedPointInAreaLocatorE@Base 3.4.2 - _ZTVN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterE@Base 3.4.2 - _ZTVN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterE@Base 3.4.2 - _ZTVN4geos9geomgraph11EdgeEndStarE@Base 3.4.2 - _ZTVN4geos9geomgraph11NodeFactoryE@Base 3.4.2 - _ZTVN4geos9geomgraph11PlanarGraphE@Base 3.4.2 - _ZTVN4geos9geomgraph12DirectedEdgeE@Base 3.4.2 - _ZTVN4geos9geomgraph13GeometryGraphE@Base 3.4.2 - _ZTVN4geos9geomgraph14GraphComponentE@Base 3.4.2 - _ZTVN4geos9geomgraph16DirectedEdgeStarE@Base 3.4.2 - _ZTVN4geos9geomgraph4EdgeE@Base 3.4.2 - _ZTVN4geos9geomgraph4NodeE@Base 3.4.2 - _ZTVN4geos9geomgraph5DepthE@Base 3.4.2 - _ZTVN4geos9geomgraph5index13MonotoneChainE@Base 3.4.2 - _ZTVN4geos9geomgraph5index14SweepLineEventE@Base 3.4.2 - _ZTVN4geos9geomgraph5index16SweepLineSegmentE@Base 3.4.2 - _ZTVN4geos9geomgraph5index18SegmentIntersectorE@Base 3.4.2 - _ZTVN4geos9geomgraph5index24SimpleEdgeSetIntersectorE@Base 3.4.2 - _ZTVN4geos9geomgraph5index26SimpleSweepLineIntersectorE@Base 3.4.2 - _ZTVN4geos9geomgraph5index28SimpleMCSweepLineIntersectorE@Base 3.4.2 - _ZTVN4geos9geomgraph7EdgeEndE@Base 3.4.2 - _ZTVN4geos9geomgraph7NodeMapE@Base 3.4.2 - _ZTVN4geos9geomgraph8EdgeListE@Base 3.4.2 - _ZTVN4geos9geomgraph8EdgeRingE@Base 3.4.2 - _ZTVN4geos9operation10polygonize11Polygonizer15LineStringAdderE@Base 3.4.2 - _ZTVN4geos9operation10polygonize14PolygonizeEdgeE@Base 3.4.2 - _ZTVN4geos9operation10polygonize15PolygonizeGraphE@Base 3.4.2 - _ZTVN4geos9operation10polygonize22PolygonizeDirectedEdgeE@Base 3.4.2 - _ZTVN4geos9operation22GeometryGraphOperationE@Base 3.4.2 - _ZTVN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionE@Base 3.4.2 - _ZTVN4geos9operation5valid9IsValidOpE@Base 3.4.2 - _ZTVN4geos9operation6relate10RelateNodeE@Base 3.4.2 - _ZTVN4geos9operation6relate13EdgeEndBundleE@Base 3.4.2 - _ZTVN4geos9operation6relate15RelateNodeGraphE@Base 3.4.2 - _ZTVN4geos9operation6relate17EdgeEndBundleStarE@Base 3.4.2 - _ZTVN4geos9operation6relate17RelateNodeFactoryE@Base 3.4.2 - _ZTVN4geos9operation6relate8RelateOpE@Base 3.4.2 - _ZTVN4geos9operation7overlay15MaximalEdgeRingE@Base 3.4.2 - _ZTVN4geos9operation7overlay15MinimalEdgeRingE@Base 3.4.2 - _ZTVN4geos9operation7overlay18OverlayNodeFactoryE@Base 3.4.2 - _ZTVN4geos9operation7overlay21ElevationMatrixFilterE@Base 3.4.2 - _ZTVN4geos9operation7overlay4snap15SnapTransformerE@Base 3.4.2 - _ZTVN4geos9operation7overlay9OverlayOpE@Base 3.4.2 - _ZTVN4geos9operation8distance27ConnectedElementPointFilterE@Base 3.4.2 - _ZTVN4geos9operation8distance30ConnectedElementLocationFilterE@Base 3.4.2 - _ZTVN4geos9operation9linemerge13LineMergeEdgeE@Base 3.4.2 - _ZTVN4geos9operation9linemerge14LineMergeGraphE@Base 3.4.2 - _ZTVN4geos9operation9linemerge21LineMergeDirectedEdgeE@Base 3.4.2 - _ZTVN4geos9operation9predicate20ContainsPointVisitorE@Base 3.4.2 - _ZTVN4geos9operation9predicate21LineIntersectsVisitorE@Base 3.4.2 - _ZTVN4geos9operation9predicate25EnvelopeIntersectsVisitorE@Base 3.4.2 - _ZTVN4geos9precision10TranslaterE@Base 3.4.2 - _ZTVN4geos9precision22CommonCoordinateFilterE@Base 3.4.2 - _ZTVN4geos9precision35PrecisionReducerCoordinateOperationE@Base 3.4.2 - _ZZ19getMachineByteOrdervE12endian_check@Base 3.4.2 - (c++)"non-virtual thunk to geos::geom::MultiLineString::~MultiLineString()@Base" 3.4.2 - (c++)"non-virtual thunk to geos::geom::MultiPoint::~MultiPoint()@Base" 3.4.2 - (c++)"non-virtual thunk to geos::geom::MultiPolygon::~MultiPolygon()@Base" 3.4.2 - (c++)"non-virtual thunk to geos::index::strtree::STRtree::insert(geos::geom::Envelope const*, void*)@Base" 3.4.2 - (c++)"non-virtual thunk to geos::index::strtree::STRtree::query(geos::geom::Envelope const*, geos::index::ItemVisitor&)@Base" 3.4.2 - (c++)"non-virtual thunk to geos::index::strtree::STRtree::query(geos::geom::Envelope const*, std::vector >&)@Base" 3.4.2 - (c++)"non-virtual thunk to geos::index::strtree::STRtree::remove(geos::geom::Envelope const*, void*)@Base" 3.4.2 - (c++)"non-virtual thunk to geos::index::strtree::STRtree::~STRtree()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::computeEnvelopeInternal() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getArea() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getCoordinate() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getCoordinateDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getCoordinates() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getDimension() const@Base" 3.4.2 - (c++|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)"virtual thunk to geos::geom::GeometryCollection::getGeometryN(unsigned int) const@Base" 3.4.2 - (c++|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)"virtual thunk to geos::geom::GeometryCollection::getGeometryN(unsigned long) const@Base" 3.5.1 - (c++)"virtual thunk to geos::geom::GeometryCollection::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getLength() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getNumGeometries() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::getNumPoints() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::isEmpty() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::normalize()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::GeometryCollection::~GeometryCollection()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::computeEnvelopeInternal() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getCoordinate() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getCoordinateDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getCoordinates() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::LineString::getLength() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::getNumPoints() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::isEmpty() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::normalize()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LineString::~LineString()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LinearRing::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LinearRing::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LinearRing::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LinearRing::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::LinearRing::isSimple() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::LinearRing::~LinearRing()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::getDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiLineString::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::MultiLineString::~MultiLineString()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::getDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPoint::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::MultiPoint::~MultiPoint()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::getDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::isSimple() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::MultiPolygon::~MultiPolygon()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::computeEnvelopeInternal() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getCoordinate() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getCoordinateDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getCoordinates() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::Point::getNumPoints() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::isEmpty() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::isSimple() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::normalize()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Point::~Point()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::clone() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::computeEnvelopeInternal() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::convexHull() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getArea() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getBoundary() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getBoundaryDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getCoordinate() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getCoordinateDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getCoordinates() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getDimension() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getGeometryTypeId() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getGeometryType[abi:cxx11]() const@Base" 3.6.2 - (c++)"virtual thunk to geos::geom::Polygon::getLength() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::getNumPoints() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::isEmpty() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::isRectangle() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::isSimple() const@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::normalize()@Base" 3.4.2 - (c++)"virtual thunk to geos::geom::Polygon::~Polygon()@Base" 3.4.2 diff -Nru geos-3.6.2/debian/libgeos-3.7.1.dirs geos-3.7.1/debian/libgeos-3.7.1.dirs --- geos-3.6.2/debian/libgeos-3.7.1.dirs 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/debian/libgeos-3.7.1.dirs 2018-12-05 18:55:38.000000000 +0000 @@ -0,0 +1 @@ +usr/lib diff -Nru geos-3.6.2/debian/libgeos-3.7.1.install geos-3.7.1/debian/libgeos-3.7.1.install --- geos-3.6.2/debian/libgeos-3.7.1.install 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/debian/libgeos-3.7.1.install 2018-12-05 18:55:38.000000000 +0000 @@ -0,0 +1 @@ +usr/lib/*/libgeos-* diff -Nru geos-3.6.2/debian/libgeos-3.7.1.symbols geos-3.7.1/debian/libgeos-3.7.1.symbols --- geos-3.6.2/debian/libgeos-3.7.1.symbols 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/debian/libgeos-3.7.1.symbols 2018-12-05 18:59:27.000000000 +0000 @@ -0,0 +1,4528 @@ +# SymbolsHelper-Confirmed: 3.7.1 amd64 hppa i386 m68k powerpc powerpcspe ppc64 ppc64el riscv64 s390x sh4 sparc64 +libgeos-3.7.1.so #PACKAGE# #MINVER# +* Build-Depends-Package: libgeos++-dev + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEj@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEjRSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEm@Base 3.7.0 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos11planargraph11PlanarGraph17findNodesOfDegreeEmRSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.7.0 + _ZN4geos11planargraph11PlanarGraph3addEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos11planargraph11PlanarGraph6removeEPNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos11planargraph11PlanarGraph6removeEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos11planargraph11PlanarGraph6removeEPNS0_4NodeE@Base 3.4.2 + _ZN4geos11planargraph11PlanarGraphD0Ev@Base 3.4.2 + _ZN4geos11planargraph11PlanarGraphD1Ev@Base 3.4.2 + _ZN4geos11planargraph11PlanarGraphD2Ev@Base 3.4.2 + _ZN4geos11planargraph11pdeLessThanEPNS0_12DirectedEdgeES2_@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdge6setSymEPS1_@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdge7setEdgeEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdge7toEdgesERSt6vectorIPS1_SaIS3_EE@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdge7toEdgesERSt6vectorIPS1_SaIS3_EERS2_IPNS0_4EdgeESaIS8_EE@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdgeC1EPNS0_4NodeES3_RKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdgeC2EPNS0_4NodeES3_RKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdgeD0Ev@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdgeD1Ev@Base 3.4.2 + _ZN4geos11planargraph12DirectedEdgeD2Ev@Base 3.4.2 + _ZN4geos11planargraph14GraphComponent10setVisitedEb@Base 3.4.2 + _ZN4geos11planargraph14GraphComponent9setMarkedEb@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar11getNextEdgeEPNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar3addEPNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar3endEv@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar5beginEv@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar6removeEPNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar8getEdgesEv@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar8getIndexEPKNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStar8getIndexEPKNS0_4EdgeE@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStarD0Ev@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStarD1Ev@Base 3.4.2 + _ZN4geos11planargraph16DirectedEdgeStarD2Ev@Base 3.4.2 + _ZN4geos11planargraph4Edge10getDirEdgeEPNS0_4NodeE@Base 3.4.2 + _ZN4geos11planargraph4Edge10getDirEdgeEi@Base 3.4.2 + _ZN4geos11planargraph4Edge15getOppositeNodeEPNS0_4NodeE@Base 3.4.2 + _ZN4geos11planargraph4Edge16setDirectedEdgesEPNS0_12DirectedEdgeES3_@Base 3.4.2 + _ZN4geos11planargraph4EdgeD0Ev@Base 3.4.2 + _ZN4geos11planargraph4EdgeD1Ev@Base 3.4.2 + _ZN4geos11planargraph4EdgeD2Ev@Base 3.4.2 + _ZN4geos11planargraph4Node15getEdgesBetweenEPS1_S2_@Base 3.4.2 + _ZN4geos11planargraph4NodeD0Ev@Base 3.4.2 + _ZN4geos11planargraph4NodeD1Ev@Base 3.4.2 + _ZN4geos11planargraph4NodeD2Ev@Base 3.4.2 + _ZN4geos11planargraph7NodeMap10getNodeMapEv@Base 3.4.2 + _ZN4geos11planargraph7NodeMap3addEPNS0_4NodeE@Base 3.4.2 + _ZN4geos11planargraph7NodeMap4findERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos11planargraph7NodeMap6removeERNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos11planargraph7NodeMap8getNodesERSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 + _ZN4geos11planargraph7NodeMapC1Ev@Base 3.4.2 + _ZN4geos11planargraph7NodeMapC2Ev@Base 3.4.2 + _ZN4geos11planargraph7NodeMapD0Ev@Base 3.4.2 + _ZN4geos11planargraph7NodeMapD1Ev@Base 3.4.2 + _ZN4geos11planargraph7NodeMapD2Ev@Base 3.4.2 + _ZN4geos11planargraph8Subgraph3addEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder12addReachableEPNS0_4NodeEPNS0_8SubgraphE@Base 3.4.2 + _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder12findSubgraphEPNS0_4NodeE@Base 3.4.2 + _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder21getConnectedSubgraphsERSt6vectorIPNS0_8SubgraphESaIS5_EE@Base 3.4.2 + _ZN4geos11planargraph9algorithm23ConnectedSubgraphFinder8addEdgesEPNS0_4NodeERSt5stackIS4_St5dequeIS4_SaIS4_EEEPNS0_8SubgraphE@Base 3.4.2 + _ZN4geos11planargraphlsERSoRKNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos11planargraphlsERSoRKNS0_4EdgeE@Base 3.4.2 + _ZN4geos11planargraphlsERSoRKNS0_4NodeE@Base 3.4.2 + _ZN4geos11triangulate21VoronoiDiagramBuilder10getDiagramERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder12setToleranceEd@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder14getSubdivisionEv@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder15getDiagramEdgesERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder15setClipEnvelopeEPKNS_4geom8EnvelopeE@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder22clipGeometryCollectionERKNS_4geom18GeometryCollectionERKNS2_8EnvelopeE@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder6createEv@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder8setSitesERKNS_4geom18CoordinateSequenceE@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilder8setSitesERKNS_4geom8GeometryE@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilderC1Ev@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilderC2Ev@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilderD1Ev@Base 3.5.0 + _ZN4geos11triangulate21VoronoiDiagramBuilderD2Ev@Base 3.5.0 + _ZN4geos11triangulate28DelaunayTriangulationBuilder10toVerticesB5cxx11ERKNS_4geom18CoordinateSequenceE@Base 3.5.1 + _ZN4geos11triangulate28DelaunayTriangulationBuilder12getTrianglesERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder14getSubdivisionEv@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder24extractUniqueCoordinatesERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder6createEv@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder6uniqueERNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder8envelopeERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder8getEdgesERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder8setSitesERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilder8setSitesERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilderC1Ev@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilderC2Ev@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilderD1Ev@Base 3.4.2 + _ZN4geos11triangulate28DelaunayTriangulationBuilderD2Ev@Base 3.4.2 + _ZN4geos11triangulate31IncrementalDelaunayTriangulator10insertSiteERKNS0_8quadedge6VertexE@Base 3.4.2 + _ZN4geos11triangulate31IncrementalDelaunayTriangulator11insertSitesERKNSt7__cxx114listINS0_8quadedge6VertexESaIS5_EEE@Base 3.5.1 + _ZN4geos11triangulate31IncrementalDelaunayTriangulatorC1EPNS0_8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 + _ZN4geos11triangulate31IncrementalDelaunayTriangulatorC2EPNS0_8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 + _ZN4geos11triangulate8quadedge15QuadEdgeLocatorD0Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge15QuadEdgeLocatorD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge15QuadEdgeLocatorD2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge15TriangleVisitorD0Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge15TriangleVisitorD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge15TriangleVisitorD2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision10initSubdivEPPNS1_8QuadEdgeE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision10insertSiteERKNS1_6VertexE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision11createFrameERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision12getTrianglesERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision14visitTrianglesEPNS1_15TriangleVisitorEb@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision15getPrimaryEdgesEb@Base 3.5.1 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision16getTriangleEdgesERKNS1_8QuadEdgeEPPS4_@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision17getVoronoiDiagramERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision18getVoronoiCellEdgeEPNS1_8QuadEdgeERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision19getVoronoiCellEdgesERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision20fetchTriangleToVisitEPNS1_8QuadEdgeERSt5stackIS4_St5dequeIS4_SaIS4_EEEbRSt3setIS4_St4lessIS4_ES7_E@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision20getVertexUniqueEdgesEb@Base 3.5.1 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision21getVoronoiCellPolygonEPNS1_8QuadEdgeERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision22getTriangleCoordinatesEPNSt7__cxx114listIPNS_4geom18CoordinateSequenceESaIS7_EEEb@Base 3.5.1 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision22getVoronoiCellPolygonsERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision22getVoronoiDiagramEdgesERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitor5visitEPPNS1_8QuadEdgeE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorD0Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorD2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitor5visitEPPNS1_8QuadEdgeE@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorD0Ev@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorD1Ev@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorD2Ev@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision6locateERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision6removeERNS1_8QuadEdgeE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision7connectERNS1_8QuadEdgeES4_@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision8getEdgesERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivision8makeEdgeERKNS1_6VertexES5_@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionC1ERKNS_4geom8EnvelopeEd@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionC2ERKNS_4geom8EnvelopeEd@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionD0Ev@Base 3.5.0 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge19QuadEdgeSubdivisionD2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge22LocateFailureExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos11triangulate8quadedge22LocateFailureExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos11triangulate8quadedge22LocateFailureExceptionD0Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge22LocateFailureExceptionD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge22LocateFailureExceptionD2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocator4initEv@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocator6locateERKNS1_6VertexE@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocator8findEdgeEv@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorC1EPNS1_19QuadEdgeSubdivisionE@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorC2EPNS1_19QuadEdgeSubdivisionE@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorD0Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorD2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge6Vertex12interpolateZERKNS_4geom10CoordinateES6_S6_@Base 3.4.2 + _ZN4geos11triangulate8quadedge6Vertex12interpolateZERKNS_4geom10CoordinateES6_S6_S6_@Base 3.4.2 + _ZN4geos11triangulate8quadedge6Vertex17circumRadiusRatioERKS2_S4_@Base 3.4.2 + _ZN4geos11triangulate8quadedge6Vertex8bisectorERKS2_S4_@Base 3.4.2 + _ZN4geos11triangulate8quadedge6Vertex8classifyERKS2_S4_@Base 3.4.2 + _ZN4geos11triangulate8quadedge6Vertex8midPointERKS2_@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC1ERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC1Edd@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC1Eddd@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC2ERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC2Edd@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC2Eddd@Base 3.4.2 + _ZN4geos11triangulate8quadedge6VertexC2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge4freeEv@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge4swapERS2_@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge6removeEv@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge6spliceERS2_S3_@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge7connectERS2_S3_@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge7getDataEv@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge7setDataEPv@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdge8makeEdgeERKNS1_6VertexES5_@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdgeC1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdgeC2Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdgeD0Ev@Base 3.5.0 + _ZN4geos11triangulate8quadedge8QuadEdgeD1Ev@Base 3.4.2 + _ZN4geos11triangulate8quadedge8QuadEdgeD2Ev@Base 3.4.2 + _ZN4geos2io10CLocalizerC1Ev@Base 3.4.2 + _ZN4geos2io10CLocalizerC2Ev@Base 3.4.2 + _ZN4geos2io10CLocalizerD1Ev@Base 3.4.2 + _ZN4geos2io10CLocalizerD2Ev@Base 3.4.2 + _ZN4geos2io14ParseException9stringifyB5cxx11Ed@Base 3.5.1 + _ZN4geos2io14ParseExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos2io14ParseExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 + _ZN4geos2io14ParseExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEd@Base 3.5.1 + _ZN4geos2io14ParseExceptionC1Ev@Base 3.4.2 + _ZN4geos2io14ParseExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos2io14ParseExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 + _ZN4geos2io14ParseExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEd@Base 3.5.1 + _ZN4geos2io14ParseExceptionC2Ev@Base 3.4.2 + _ZN4geos2io14ParseExceptionD0Ev@Base 3.4.2 + _ZN4geos2io14ParseExceptionD1Ev@Base 3.4.2 + _ZN4geos2io14ParseExceptionD2Ev@Base 3.4.2 + _ZN4geos2io15ByteOrderValues6getIntEPKhi@Base 3.4.2 + _ZN4geos2io15ByteOrderValues6putIntEiPhi@Base 3.4.2 + _ZN4geos2io15ByteOrderValues7getLongEPKhi@Base 3.4.2 + _ZN4geos2io15ByteOrderValues7putLongExPhi@Base 3.5.0 + _ZN4geos2io15ByteOrderValues9getDoubleEPKhi@Base 3.4.2 + _ZN4geos2io15ByteOrderValues9putDoubleEdPhi@Base 3.4.2 + _ZN4geos2io15StringTokenizer13peekNextTokenEv@Base 3.4.2 + _ZN4geos2io15StringTokenizer7getNValEv@Base 3.4.2 + _ZN4geos2io15StringTokenizer7getSValB5cxx11Ev@Base 3.5.1 + _ZN4geos2io15StringTokenizer9nextTokenEv@Base 3.4.2 + _ZN4geos2io15StringTokenizerC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos2io15StringTokenizerC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos2io18strtod_with_vc_fixEPKcPPc@Base 3.5.0 + _ZN4geos2io21ByteOrderDataInStream10readDoubleEv@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStream11setInStreamEPSi@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStream7readIntEv@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStream8readByteEv@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStream8readLongEv@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStream8setOrderEi@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStreamC1EPSi@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStreamC2EPSi@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStreamD1Ev@Base 3.4.2 + _ZN4geos2io21ByteOrderDataInStreamD2Ev@Base 3.4.2 + _ZN4geos2io6Unload7ReleaseEv@Base 3.4.2 + _ZN4geos2io6Writer5writeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos2io6Writer7reserveEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos2io6Writer7reserveEm@Base 3.7.0 + _ZN4geos2io6Writer8toStringB5cxx11Ev@Base 3.5.1 + _ZN4geos2io6WriterC1Ev@Base 3.4.2 + _ZN4geos2io6WriterC2Ev@Base 3.4.2 + _ZN4geos2io6WriterD1Ev@Base 3.4.2 + _ZN4geos2io6WriterD2Ev@Base 3.4.2 + _ZN4geos2io9WKBReader11readPolygonEv@Base 3.4.2 + _ZN4geos2io9WKBReader12readGeometryEv@Base 3.4.2 + _ZN4geos2io9WKBReader14readCoordinateEv@Base 3.4.2 + _ZN4geos2io9WKBReader14readLineStringEv@Base 3.4.2 + _ZN4geos2io9WKBReader14readLinearRingEv@Base 3.4.2 + _ZN4geos2io9WKBReader14readMultiPointEv@Base 3.4.2 + _ZN4geos2io9WKBReader16readMultiPolygonEv@Base 3.4.2 + _ZN4geos2io9WKBReader19readMultiLineStringEv@Base 3.4.2 + _ZN4geos2io9WKBReader22readCoordinateSequenceEi@Base 3.4.2 + _ZN4geos2io9WKBReader22readGeometryCollectionEv@Base 3.4.2 + _ZN4geos2io9WKBReader4readERSi@Base 3.4.2 + _ZN4geos2io9WKBReader7readHEXERSi@Base 3.4.2 + _ZN4geos2io9WKBReader8printHEXERSiRSo@Base 3.4.2 + _ZN4geos2io9WKBReader9readPointEv@Base 3.4.2 + _ZN4geos2io9WKBReaderC1Ev@Base 3.4.2 + _ZN4geos2io9WKBReaderC2Ev@Base 3.4.2 + _ZN4geos2io9WKBWriter10writePointERKNS_4geom5PointE@Base 3.4.2 + _ZN4geos2io9WKBWriter12setByteOrderEi@Base 3.4.2 + _ZN4geos2io9WKBWriter12writePolygonERKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos2io9WKBWriter14setIncludeSRIDEi@Base 3.4.2 + _ZN4geos2io9WKBWriter14writeByteOrderEv@Base 3.4.2 + _ZN4geos2io9WKBWriter15writeCoordinateERKNS_4geom18CoordinateSequenceEib@Base 3.4.2 + _ZN4geos2io9WKBWriter15writeLineStringERKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos2io9WKBWriter17writeGeometryTypeEii@Base 3.4.2 + _ZN4geos2io9WKBWriter18setOutputDimensionEi@Base 3.4.2 + _ZN4geos2io9WKBWriter23writeCoordinateSequenceERKNS_4geom18CoordinateSequenceEb@Base 3.4.2 + _ZN4geos2io9WKBWriter23writeGeometryCollectionERKNS_4geom18GeometryCollectionEi@Base 3.4.2 + _ZN4geos2io9WKBWriter5writeERKNS_4geom8GeometryERSo@Base 3.4.2 + _ZN4geos2io9WKBWriter8writeHEXERKNS_4geom8GeometryERSo@Base 3.4.2 + _ZN4geos2io9WKBWriter8writeIntEi@Base 3.4.2 + _ZN4geos2io9WKBWriter9writeSRIDEi@Base 3.4.2 + _ZN4geos2io9WKBWriterC1Eiib@Base 3.4.2 + _ZN4geos2io9WKBWriterC2Eiib@Base 3.4.2 + _ZN4geos2io9WKBWriterD0Ev@Base 3.4.2 + _ZN4geos2io9WKBWriterD1Ev@Base 3.4.2 + _ZN4geos2io9WKBWriterD2Ev@Base 3.4.2 + _ZN4geos2io9WKTReader11getNextWordB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 + _ZN4geos2io9WKTReader12isNumberNextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader13getNextCloserB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 + _ZN4geos2io9WKTReader13getNextNumberEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader13readPointTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader14getCoordinatesEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader15readPolygonTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader18readLineStringTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader18readLinearRingTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader18readMultiPointTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader20getNextCloserOrCommaB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 + _ZN4geos2io9WKTReader20getNextEmptyOrOpenerB5cxx11EPNS0_15StringTokenizerE@Base 3.5.1 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos2io9WKTReader20getPreciseCoordinateEPNS0_15StringTokenizerERNS_4geom10CoordinateERj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos2io9WKTReader20getPreciseCoordinateEPNS0_15StringTokenizerERNS_4geom10CoordinateERm@Base 3.7.0 + _ZN4geos2io9WKTReader20readMultiPolygonTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader22readGeometryTaggedTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader23readMultiLineStringTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader26readGeometryCollectionTextEPNS0_15StringTokenizerE@Base 3.4.2 + _ZN4geos2io9WKTReader4readERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos2io9WKTReaderC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos2io9WKTReaderC1ERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos2io9WKTReaderC1Ev@Base 3.4.2 + _ZN4geos2io9WKTReaderC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos2io9WKTReaderC2ERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos2io9WKTReaderC2Ev@Base 3.4.2 + _ZN4geos2io9WKTReaderD1Ev@Base 3.4.2 + _ZN4geos2io9WKTReaderD2Ev@Base 3.4.2 + _ZN4geos2io9WKTWriter11writeNumberB5cxx11Ed@Base 3.5.1 + _ZN4geos2io9WKTWriter12toLineStringB5cxx11ERKNS_4geom10CoordinateES5_@Base 3.5.1 + _ZN4geos2io9WKTWriter12toLineStringB5cxx11ERKNS_4geom18CoordinateSequenceE@Base 3.5.1 + _ZN4geos2io9WKTWriter14writeFormattedB5cxx11EPKNS_4geom8GeometryE@Base 3.5.1 + _ZN4geos2io9WKTWriter14writeFormattedEPKNS_4geom8GeometryEPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter14writeFormattedEPKNS_4geom8GeometryEbPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter15appendPointTextEPKNS_4geom10CoordinateEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter16appendCoordinateEPKNS_4geom10CoordinateEPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter17appendPolygonTextEPKNS_4geom7PolygonEibPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter18setOutputDimensionEi@Base 3.4.2 + _ZN4geos2io9WKTWriter20appendLineStringTextEPKNS_4geom10LineStringEibPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter20appendMultiPointTextEPKNS_4geom10MultiPointEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter20setRoundingPrecisionEi@Base 3.4.2 + _ZN4geos2io9WKTWriter21appendPointTaggedTextEPKNS_4geom10CoordinateEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter22appendMultiPolygonTextEPKNS_4geom12MultiPolygonEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter23appendPolygonTaggedTextEPKNS_4geom7PolygonEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter24appendGeometryTaggedTextEPKNS_4geom8GeometryEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter25appendMultiLineStringTextEPKNS_4geom15MultiLineStringEibPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter26appendLineStringTaggedTextEPKNS_4geom10LineStringEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter26appendLinearRingTaggedTextEPKNS_4geom10LinearRingEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter26appendMultiPointTaggedTextEPKNS_4geom10MultiPointEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter28appendGeometryCollectionTextEPKNS_4geom18GeometryCollectionEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter28appendMultiPolygonTaggedTextEPKNS_4geom12MultiPolygonEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter31appendMultiLineStringTaggedTextEPKNS_4geom15MultiLineStringEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter34appendGeometryCollectionTaggedTextEPKNS_4geom18GeometryCollectionEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter5writeB5cxx11EPKNS_4geom8GeometryE@Base 3.5.1 + _ZN4geos2io9WKTWriter5writeEPKNS_4geom8GeometryEPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter6indentEiPNS0_6WriterE@Base 3.4.2 + _ZN4geos2io9WKTWriter7setTrimEb@Base 3.4.2 + _ZN4geos2io9WKTWriter7toPointB5cxx11ERKNS_4geom10CoordinateE@Base 3.5.1 + _ZN4geos2io9WKTWriterC1Ev@Base 3.4.2 + _ZN4geos2io9WKTWriterC2Ev@Base 3.4.2 + _ZN4geos2io9WKTWriterD1Ev@Base 3.4.2 + _ZN4geos2io9WKTWriterD2Ev@Base 3.4.2 + _ZN4geos4geom10Coordinate10_nullCoordE@Base 3.6.0 + _ZN4geos4geom10Coordinate7getNullEv@Base 3.4.2 + _ZN4geos4geom10Coordinate7setNullEv@Base 3.4.2 + _ZN4geos4geom10Coordinate8hashCodeEd@Base 3.4.2 + _ZN4geos4geom10CoordinateC1Eddd@Base 3.4.2 + _ZN4geos4geom10CoordinateC2Eddd@Base 3.4.2 + _ZN4geos4geom10LineString20validateConstructionEv@Base 3.4.2 + _ZN4geos4geom10LineString8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 + _ZN4geos4geom10LineString8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 + _ZN4geos4geom10LineString8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZN4geos4geom10LineString8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZN4geos4geom10LineString9normalizeEv@Base 3.4.2 + _ZN4geos4geom10LineStringC1EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom10LineStringC1ERKS1_@Base 3.4.2 + _ZN4geos4geom10LineStringC1ESt10unique_ptrINS0_18CoordinateSequenceESt14default_deleteIS3_EEPKNS0_15GeometryFactoryE@Base 3.7.0 + _ZN4geos4geom10LineStringC2EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom10LineStringC2ERKS1_@Base 3.4.2 + _ZN4geos4geom10LineStringC2ESt10unique_ptrINS0_18CoordinateSequenceESt14default_deleteIS3_EEPKNS0_15GeometryFactoryE@Base 3.7.0 + _ZN4geos4geom10LineStringD0Ev@Base 3.4.2 + _ZN4geos4geom10LineStringD1Ev@Base 3.4.2 + _ZN4geos4geom10LineStringD2Ev@Base 3.4.2 + _ZN4geos4geom10LinearRing20validateConstructionEv@Base 3.4.2 + _ZN4geos4geom10LinearRing9setPointsEPNS0_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos4geom10LinearRingC1EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom10LinearRingC1ERKS1_@Base 3.4.2 + _ZN4geos4geom10LinearRingC1ESt10unique_ptrINS0_18CoordinateSequenceESt14default_deleteIS3_EEPKNS0_15GeometryFactoryE@Base 3.7.0 + _ZN4geos4geom10LinearRingC2EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom10LinearRingC2ERKS1_@Base 3.4.2 + _ZN4geos4geom10LinearRingC2ESt10unique_ptrINS0_18CoordinateSequenceESt14default_deleteIS3_EEPKNS0_15GeometryFactoryE@Base 3.7.0 + _ZN4geos4geom10LinearRingD0Ev@Base 3.4.2 + _ZN4geos4geom10LinearRingD1Ev@Base 3.4.2 + _ZN4geos4geom10LinearRingD2Ev@Base 3.4.2 + _ZN4geos4geom10MultiPointC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom10MultiPointC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom10MultiPointD0Ev@Base 3.4.2 + _ZN4geos4geom10MultiPointD1Ev@Base 3.4.2 + _ZN4geos4geom10MultiPointD2Ev@Base 3.4.2 + _ZN4geos4geom11GeomPtrPairD1Ev@Base 3.4.2 + _ZN4geos4geom11GeomPtrPairD2Ev@Base 3.4.2 + _ZN4geos4geom11LineSegment13closestPointsEPKS1_@Base 3.4.2 + _ZN4geos4geom11LineSegment13closestPointsERKS1_@Base 3.4.2 + _ZN4geos4geom11LineSegment14setCoordinatesERKNS0_10CoordinateES4_@Base 3.4.2 + _ZN4geos4geom11LineSegment14setCoordinatesERKS1_@Base 3.4.2 + _ZN4geos4geom11LineSegment7reverseEv@Base 3.4.2 + _ZN4geos4geom11LineSegment9normalizeEv@Base 3.4.2 + _ZN4geos4geom11LineSegmentC1ERKNS0_10CoordinateES4_@Base 3.4.2 + _ZN4geos4geom11LineSegmentC1ERKS1_@Base 3.4.2 + _ZN4geos4geom11LineSegmentC1Edddd@Base 3.4.2 + _ZN4geos4geom11LineSegmentC1Ev@Base 3.4.2 + _ZN4geos4geom11LineSegmentC2ERKNS0_10CoordinateES4_@Base 3.4.2 + _ZN4geos4geom11LineSegmentC2ERKS1_@Base 3.4.2 + _ZN4geos4geom11LineSegmentC2Edddd@Base 3.4.2 + _ZN4geos4geom11LineSegmentC2Ev@Base 3.4.2 + _ZN4geos4geom11LineSegmentD0Ev@Base 3.4.2 + _ZN4geos4geom11LineSegmentD1Ev@Base 3.4.2 + _ZN4geos4geom11LineSegmentD2Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom11LineSegmentixEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom11LineSegmentixEm@Base 3.7.0 + _ZN4geos4geom11check_validERKNS0_8GeometryERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb@Base 3.5.1 + _ZN4geos4geom11geosversionB5cxx11Ev@Base 3.5.1 + _ZN4geos4geom12MultiPolygonC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom12MultiPolygonC1ERKS1_@Base 3.4.2 + _ZN4geos4geom12MultiPolygonC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom12MultiPolygonC2ERKS1_@Base 3.4.2 + _ZN4geos4geom12MultiPolygonD0Ev@Base 3.4.2 + _ZN4geos4geom12MultiPolygonD1Ev@Base 3.4.2 + _ZN4geos4geom12MultiPolygonD2Ev@Base 3.4.2 + _ZN4geos4geom14GeometryFilter9filter_rwEPNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom14PrecisionModel19maximumPreciseValueE@Base 3.4.2 + _ZN4geos4geom14PrecisionModel8setScaleEd@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC1ENS1_4TypeE@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC1ERKS1_@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC1Ed@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC1Eddd@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC1Ev@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC2ENS1_4TypeE@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC2ERKS1_@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC2Ed@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC2Eddd@Base 3.4.2 + _ZN4geos4geom14PrecisionModelC2Ev@Base 3.4.2 + _ZN4geos4geom14PrecisionModelD1Ev@Base 3.4.2 + _ZN4geos4geom14PrecisionModelD2Ev@Base 3.4.2 + _ZN4geos4geom15GeometryFactory18getDefaultInstanceEv@Base 3.4.2 + _ZN4geos4geom15GeometryFactory6createEPKNS0_14PrecisionModelE@Base 3.6.0 + _ZN4geos4geom15GeometryFactory6createEPKNS0_14PrecisionModelEi@Base 3.6.0 + _ZN4geos4geom15GeometryFactory6createEPKNS0_14PrecisionModelEiPNS0_25CoordinateSequenceFactoryE@Base 3.6.0 + _ZN4geos4geom15GeometryFactory6createEPNS0_25CoordinateSequenceFactoryE@Base 3.6.0 + _ZN4geos4geom15GeometryFactory6createERKS1_@Base 3.6.0 + _ZN4geos4geom15GeometryFactory6createEv@Base 3.6.0 + _ZN4geos4geom15GeometryFactory7destroyEv@Base 3.6.0 + _ZN4geos4geom15GeometryFactoryC1EPKNS0_14PrecisionModelE@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC1EPKNS0_14PrecisionModelEi@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC1EPKNS0_14PrecisionModelEiPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC1EPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC1ERKS1_@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC1Ev@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC2EPKNS0_14PrecisionModelE@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC2EPKNS0_14PrecisionModelEi@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC2EPKNS0_14PrecisionModelEiPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC2EPNS0_25CoordinateSequenceFactoryE@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC2ERKS1_@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryC2Ev@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryD0Ev@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryD1Ev@Base 3.4.2 + _ZN4geos4geom15GeometryFactoryD2Ev@Base 3.4.2 + _ZN4geos4geom15MultiLineStringC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom15MultiLineStringC1ERKS1_@Base 3.4.2 + _ZN4geos4geom15MultiLineStringC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom15MultiLineStringC2ERKS1_@Base 3.4.2 + _ZN4geos4geom15MultiLineStringD0Ev@Base 3.4.2 + _ZN4geos4geom15MultiLineStringD1Ev@Base 3.4.2 + _ZN4geos4geom15MultiLineStringD2Ev@Base 3.4.2 + _ZN4geos4geom16CoordinateFilter9filter_roEPKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom17TrianglePredicate16isInCircleRobustERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 + _ZN4geos4geom17TrianglePredicate19isInCircleNonRobustERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 + _ZN4geos4geom17TrianglePredicate20isInCircleNormalizedERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 + _ZN4geos4geom17TrianglePredicate7triAreaERKNS0_10CoordinateES4_S4_@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence13minCoordinateEPS1_@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence17hasRepeatedPointsEPKS1_@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence19increasingDirectionERKS1_@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence20removeRepeatedPointsEPKS1_@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom18CoordinateSequence28atLeastNCoordinatesOrNothingEjPS1_@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom18CoordinateSequence28atLeastNCoordinatesOrNothingEmPS1_@Base 3.7.0 + _ZN4geos4geom18CoordinateSequence3addEPKS1_bb@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence3addEPKSt6vectorINS0_10CoordinateESaIS3_EEb@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence3addERKNS0_10CoordinateEb@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence6equalsEPKS1_S3_@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence6scrollEPS1_PKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence7indexOfEPKNS0_10CoordinateEPKS1_@Base 3.4.2 + _ZN4geos4geom18CoordinateSequence7reverseEPS1_@Base 3.4.2 + _ZN4geos4geom18GeometryCollection8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 + _ZN4geos4geom18GeometryCollection8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 + _ZN4geos4geom18GeometryCollection8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZN4geos4geom18GeometryCollection8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZN4geos4geom18GeometryCollection9normalizeEv@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionC1EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionC1ERKS1_@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionC2EPSt6vectorIPNS0_8GeometryESaIS4_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionC2ERKS1_@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionD0Ev@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionD1Ev@Base 3.4.2 + _ZN4geos4geom18GeometryCollectionD2Ev@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix10setAtLeastENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4geom18IntersectionMatrix10setAtLeastEiii@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix17setAtLeastIfValidEiii@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix3addEPS1_@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix3setERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4geom18IntersectionMatrix3setEiii@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix6setAllEi@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix7matchesERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 + _ZN4geos4geom18IntersectionMatrix7matchesEic@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix8firstDimE@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix9secondDimE@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrix9transposeEv@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrixC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4geom18IntersectionMatrixC1ERKS1_@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrixC1Ev@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrixC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4geom18IntersectionMatrixC2ERKS1_@Base 3.4.2 + _ZN4geos4geom18IntersectionMatrixC2Ev@Base 3.4.2 + _ZN4geos4geom19GeometryGreaterThenclEPKNS0_8GeometryES4_@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence11setOrdinateEjjd@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequence11setOrdinateEmmd@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequence20removeRepeatedPointsEv@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequence3addERKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequence3addERKNS0_10CoordinateEb@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence3addEjRKNS0_10CoordinateEb@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequence3addEmRKNS0_10CoordinateEb@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence5setAtERKNS0_10CoordinateEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequence5setAtERKNS0_10CoordinateEm@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequence8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequence8deleteAtEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequence8deleteAtEm@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequence9setPointsERKSt6vectorINS0_10CoordinateESaIS3_EE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC1EPSt6vectorINS0_10CoordinateESaIS3_EEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC1EPSt6vectorINS0_10CoordinateESaIS3_EEm@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequenceC1ERKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequenceC1ERKS1_@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC1Ejj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC1Emm@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequenceC1Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC2EPSt6vectorINS0_10CoordinateESaIS3_EEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC2EPSt6vectorINS0_10CoordinateESaIS3_EEm@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequenceC2ERKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequenceC2ERKS1_@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom23CoordinateArraySequenceC2Ejj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom23CoordinateArraySequenceC2Emm@Base 3.7.0 + _ZN4geos4geom23CoordinateArraySequenceC2Ev@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequenceD0Ev@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequenceD1Ev@Base 3.4.2 + _ZN4geos4geom23CoordinateArraySequenceD2Ev@Base 3.4.2 + _ZN4geos4geom23GeometryComponentFilter9filter_roEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom23GeometryComponentFilter9filter_rwEPNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom23GeometryComponentFilterD0Ev@Base 3.4.2 + _ZN4geos4geom23GeometryComponentFilterD1Ev@Base 3.4.2 + _ZN4geos4geom23GeometryComponentFilterD2Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos4geom24CoordinateSequenceFilter9filter_rwERNS0_18CoordinateSequenceEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos4geom24CoordinateSequenceFilter9filter_rwERNS0_18CoordinateSequenceEm@Base 3.7.0 + _ZN4geos4geom25CoordinateSequenceFactoryD0Ev@Base 3.4.2 + _ZN4geos4geom25CoordinateSequenceFactoryD1Ev@Base 3.4.2 + _ZN4geos4geom25CoordinateSequenceFactoryD2Ev@Base 3.4.2 + _ZN4geos4geom30CoordinateArraySequenceFactory8instanceEv@Base 3.4.2 + _ZN4geos4geom30CoordinateArraySequenceFactoryD0Ev@Base 3.4.2 + _ZN4geos4geom30CoordinateArraySequenceFactoryD1Ev@Base 3.4.2 + _ZN4geos4geom30CoordinateArraySequenceFactoryD2Ev@Base 3.4.2 + _ZN4geos4geom4prep13PreparedPointD0Ev@Base 3.4.2 + _ZN4geos4geom4prep13PreparedPointD1Ev@Base 3.4.2 + _ZN4geos4geom4prep13PreparedPointD2Ev@Base 3.4.2 + _ZN4geos4geom4prep15PreparedPolygonC1EPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep15PreparedPolygonC2EPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep15PreparedPolygonD0Ev@Base 3.4.2 + _ZN4geos4geom4prep15PreparedPolygonD1Ev@Base 3.4.2 + _ZN4geos4geom4prep15PreparedPolygonD2Ev@Base 3.4.2 + _ZN4geos4geom4prep18PreparedLineString21getIntersectionFinderEv@Base 3.4.2 + _ZN4geos4geom4prep18PreparedLineStringD0Ev@Base 3.4.2 + _ZN4geos4geom4prep18PreparedLineStringD1Ev@Base 3.4.2 + _ZN4geos4geom4prep18PreparedLineStringD2Ev@Base 3.4.2 + _ZN4geos4geom4prep21BasicPreparedGeometry11setGeometryEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep21BasicPreparedGeometry8toStringB5cxx11Ev@Base 3.5.1 + _ZN4geos4geom4prep21BasicPreparedGeometryC1EPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep21BasicPreparedGeometryC2EPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep21BasicPreparedGeometryD0Ev@Base 3.4.2 + _ZN4geos4geom4prep21BasicPreparedGeometryD1Ev@Base 3.4.2 + _ZN4geos4geom4prep21BasicPreparedGeometryD2Ev@Base 3.4.2 + _ZN4geos4geom4prep21PreparedPolygonCovers24fullTopologicalPredicateEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep21PreparedPolygonCoversD0Ev@Base 3.4.2 + _ZN4geos4geom4prep21PreparedPolygonCoversD1Ev@Base 3.4.2 + _ZN4geos4geom4prep21PreparedPolygonCoversD2Ev@Base 3.4.2 + _ZN4geos4geom4prep23PreparedPolygonContains24fullTopologicalPredicateEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep23PreparedPolygonContainsC1EPKNS1_15PreparedPolygonE@Base 3.4.2 + _ZN4geos4geom4prep23PreparedPolygonContainsC2EPKNS1_15PreparedPolygonE@Base 3.4.2 + _ZN4geos4geom4prep23PreparedPolygonContainsD0Ev@Base 3.4.2 + _ZN4geos4geom4prep23PreparedPolygonContainsD1Ev@Base 3.4.2 + _ZN4geos4geom4prep23PreparedPolygonContainsD2Ev@Base 3.4.2 + _ZN4geos4geom4prep25PreparedPolygonIntersects10intersectsEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep25PreparedPolygonIntersectsD0Ev@Base 3.4.2 + _ZN4geos4geom4prep25PreparedPolygonIntersectsD1Ev@Base 3.4.2 + _ZN4geos4geom4prep25PreparedPolygonIntersectsD2Ev@Base 3.4.2 + _ZN4geos4geom4prep31AbstractPreparedPolygonContains13isSingleShellERKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep31AbstractPreparedPolygonContains28findAndClassifyIntersectionsEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep31AbstractPreparedPolygonContains48isProperIntersectionImpliesNotContainedSituationEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep31AbstractPreparedPolygonContains4evalEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep31PreparedPolygonContainsProperly16containsProperlyEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4prep31PreparedPolygonContainsProperlyD0Ev@Base 3.4.2 + _ZN4geos4geom4prep31PreparedPolygonContainsProperlyD1Ev@Base 3.4.2 + _ZN4geos4geom4prep31PreparedPolygonContainsProperlyD2Ev@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditor11editPolygonEPKNS0_7PolygonEPNS1_23GeometryEditorOperationE@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditor22editGeometryCollectionEPKNS0_18GeometryCollectionEPNS1_23GeometryEditorOperationE@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditor4editEPKNS0_8GeometryEPNS1_23GeometryEditorOperationE@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditorC1EPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditorC1Ev@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditorC2EPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom4util14GeometryEditorC2Ev@Base 3.4.2 + _ZN4geos4geom4util14PointExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util14PointExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util14PointExtracter9getPointsERKNS0_8GeometryERSt6vectorIPKNS0_5PointESaIS9_EE@Base 3.5.0 + _ZN4geos4geom4util14PointExtracterC1ERSt6vectorIPKNS0_5PointESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util14PointExtracterC2ERSt6vectorIPKNS0_5PointESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util14PointExtracterD0Ev@Base 3.4.2 + _ZN4geos4geom4util14PointExtracterD1Ev@Base 3.4.2 + _ZN4geos4geom4util14PointExtracterD2Ev@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombiner14extractFactoryERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombiner15extractElementsEPNS0_8GeometryERSt6vectorIS4_SaIS4_EE@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombiner7combineEPKNS0_8GeometryES5_@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombiner7combineEPKNS0_8GeometryES5_S5_@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombiner7combineERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombiner7combineEv@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombinerC1ERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 + _ZN4geos4geom4util16GeometryCombinerC2ERKSt6vectorIPNS0_8GeometryESaIS5_EE@Base 3.4.2 + _ZN4geos4geom4util16PolygonExtracter11getPolygonsERKNS0_8GeometryERSt6vectorIPKNS0_7PolygonESaIS9_EE@Base 3.5.0 + _ZN4geos4geom4util16PolygonExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util16PolygonExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util16PolygonExtracterC1ERSt6vectorIPKNS0_7PolygonESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util16PolygonExtracterC2ERSt6vectorIPKNS0_7PolygonESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util16PolygonExtracterD0Ev@Base 3.4.2 + _ZN4geos4geom4util16PolygonExtracterD1Ev@Base 3.4.2 + _ZN4geos4geom4util16PolygonExtracterD2Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEE9filter_roEPKNS0_8GeometryE@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEED0Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEED1Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEED2Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEE9filter_roEPKNS0_8GeometryE@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEED0Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEED1Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEED2Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEE9filter_roEPKNS0_8GeometryE@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEED0Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEED1Ev@Base 3.4.2 + (optional=templinst)_ZN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEED2Ev@Base 3.4.2 + _ZN4geos4geom4util19CoordinateOperation4editEPKNS0_8GeometryEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer14transformPointEPKNS0_5PointEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer16transformPolygonEPKNS0_7PolygonEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer19transformLineStringEPKNS0_10LineStringEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer19transformLinearRingEPKNS0_10LinearRingEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer19transformMultiPointEPKNS0_10MultiPointEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer20transformCoordinatesEPKNS0_18CoordinateSequenceEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer21transformMultiPolygonEPKNS0_12MultiPolygonEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer24createCoordinateSequenceESt10unique_ptrISt6vectorINS0_10CoordinateESaIS5_EESt14default_deleteIS7_EE@Base 3.7.0 + _ZN4geos4geom4util19GeometryTransformer24transformMultiLineStringEPKNS0_15MultiLineStringEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer27transformGeometryCollectionEPKNS0_18GeometryCollectionEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformer38setSkipTransformedInvalidInteriorRingsEb@Base 3.6.1 + _ZN4geos4geom4util19GeometryTransformer9transformEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformerC1Ev@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformerC2Ev@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformerD0Ev@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformerD1Ev@Base 3.4.2 + _ZN4geos4geom4util19GeometryTransformerD2Ev@Base 3.4.2 + _ZN4geos4geom4util24LinearComponentExtracter8getLinesERKNS0_8GeometryERSt6vectorIPKNS0_10LineStringESaIS9_EE@Base 3.5.0 + _ZN4geos4geom4util24LinearComponentExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util24LinearComponentExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util24LinearComponentExtracterC1ERSt6vectorIPKNS0_10LineStringESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util24LinearComponentExtracterC2ERSt6vectorIPKNS0_10LineStringESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util24LinearComponentExtracterD0Ev@Base 3.4.2 + _ZN4geos4geom4util24LinearComponentExtracterD1Ev@Base 3.4.2 + _ZN4geos4geom4util24LinearComponentExtracterD2Ev@Base 3.4.2 + _ZN4geos4geom4util28ComponentCoordinateExtracter14getCoordinatesERKNS0_8GeometryERSt6vectorIPKNS0_10CoordinateESaIS9_EE@Base 3.5.0 + _ZN4geos4geom4util28ComponentCoordinateExtracter9filter_roEPKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util28ComponentCoordinateExtracter9filter_rwEPNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom4util28ComponentCoordinateExtracterC1ERSt6vectorIPKNS0_10CoordinateESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util28ComponentCoordinateExtracterC2ERSt6vectorIPKNS0_10CoordinateESaIS6_EE@Base 3.5.0 + _ZN4geos4geom4util28ComponentCoordinateExtracterD0Ev@Base 3.4.2 + _ZN4geos4geom4util28ComponentCoordinateExtracterD1Ev@Base 3.4.2 + _ZN4geos4geom4util28ComponentCoordinateExtracterD2Ev@Base 3.4.2 + _ZN4geos4geom4util29ShortCircuitedGeometryVisitor7applyToERKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geom5Point8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 + _ZN4geos4geom5Point8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 + _ZN4geos4geom5Point8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZN4geos4geom5Point8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZN4geos4geom5Point9normalizeEv@Base 3.4.2 + _ZN4geos4geom5PointC1EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom5PointC1ERKS1_@Base 3.4.2 + _ZN4geos4geom5PointC2EPNS0_18CoordinateSequenceEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom5PointC2ERKS1_@Base 3.4.2 + _ZN4geos4geom5PointD0Ev@Base 3.4.2 + _ZN4geos4geom5PointD1Ev@Base 3.4.2 + _ZN4geos4geom5PointD2Ev@Base 3.4.2 + _ZN4geos4geom6SnapOpINS_9operation7overlay9overlayOpEEESt10unique_ptrINS0_8GeometryESt14default_deleteIS6_EEPKS6_SB_T_@Base 3.7.0 + _ZN4geos4geom7Polygon8apply_rwEPKNS0_16CoordinateFilterE@Base 3.4.2 + _ZN4geos4geom7Polygon8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 + _ZN4geos4geom7Polygon8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZN4geos4geom7Polygon8apply_rwERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZN4geos4geom7Polygon9normalizeEPNS0_10LinearRingEb@Base 3.4.2 + _ZN4geos4geom7Polygon9normalizeEv@Base 3.4.2 + _ZN4geos4geom7PolygonC1EPNS0_10LinearRingEPSt6vectorIPNS0_8GeometryESaIS6_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom7PolygonC1ERKS1_@Base 3.4.2 + _ZN4geos4geom7PolygonC2EPNS0_10LinearRingEPSt6vectorIPNS0_8GeometryESaIS6_EEPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom7PolygonC2ERKS1_@Base 3.4.2 + _ZN4geos4geom7PolygonD0Ev@Base 3.4.2 + _ZN4geos4geom7PolygonD1Ev@Base 3.4.2 + _ZN4geos4geom7PolygonD2Ev@Base 3.4.2 + _ZN4geos4geom7jtsportB5cxx11Ev@Base 3.5.1 + _ZN4geos4geom8BinaryOpINS_9operation7overlay9overlayOpEEESt10unique_ptrINS0_8GeometryESt14default_deleteIS6_EEPKS6_SB_T_@Base 3.7.0 + _ZN4geos4geom8Envelope10intersectsERKNS0_10CoordinateES4_S4_@Base 3.4.2 + _ZN4geos4geom8Envelope10intersectsERKNS0_10CoordinateES4_S4_S4_@Base 3.4.2 + _ZN4geos4geom8Envelope15expandToIncludeEPKS1_@Base 3.4.2 + _ZN4geos4geom8Envelope15expandToIncludeERKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom8Envelope15expandToIncludeEdd@Base 3.4.2 + _ZN4geos4geom8Envelope4initERKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom8Envelope4initERKNS0_10CoordinateES4_@Base 3.4.2 + _ZN4geos4geom8Envelope4initEdddd@Base 3.4.2 + _ZN4geos4geom8Envelope4initEv@Base 3.4.2 + _ZN4geos4geom8Envelope5splitERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 + _ZN4geos4geom8Envelope8distanceEdddd@Base 3.4.2 + _ZN4geos4geom8Envelope8expandByEdd@Base 3.4.2 + _ZN4geos4geom8Envelope9setToNullEv@Base 3.4.2 + _ZN4geos4geom8Envelope9translateEdd@Base 3.4.2 + _ZN4geos4geom8EnvelopeC1ERKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom8EnvelopeC1ERKNS0_10CoordinateES4_@Base 3.4.2 + _ZN4geos4geom8EnvelopeC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4geom8EnvelopeC1ERKS1_@Base 3.4.2 + _ZN4geos4geom8EnvelopeC1Edddd@Base 3.4.2 + _ZN4geos4geom8EnvelopeC1Ev@Base 3.4.2 + _ZN4geos4geom8EnvelopeC2ERKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom8EnvelopeC2ERKNS0_10CoordinateES4_@Base 3.4.2 + _ZN4geos4geom8EnvelopeC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4geom8EnvelopeC2ERKS1_@Base 3.4.2 + _ZN4geos4geom8EnvelopeC2Edddd@Base 3.4.2 + _ZN4geos4geom8EnvelopeC2Ev@Base 3.4.2 + _ZN4geos4geom8EnvelopeD1Ev@Base 3.4.2 + _ZN4geos4geom8EnvelopeD2Ev@Base 3.4.2 + _ZN4geos4geom8EnvelopeaSERKS1_@Base 3.4.2 + _ZN4geos4geom8Geometry15geometryChangedEv@Base 3.4.2 + _ZN4geos4geom8Geometry15hasNullElementsEPKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos4geom8Geometry15hasNullElementsEPKSt6vectorIPS1_SaIS3_EE@Base 3.4.2 + _ZN4geos4geom8Geometry19hasNonEmptyElementsEPKSt6vectorIPS1_SaIS3_EE@Base 3.4.2 + _ZN4geos4geom8Geometry21GeometryChangedFilter9filter_rwEPS1_@Base 3.4.2 + _ZN4geos4geom8Geometry21GeometryChangedFilterD0Ev@Base 3.4.2 + _ZN4geos4geom8Geometry21GeometryChangedFilterD1Ev@Base 3.4.2 + _ZN4geos4geom8Geometry21GeometryChangedFilterD2Ev@Base 3.4.2 + _ZN4geos4geom8Geometry21geometryChangedActionEv@Base 3.4.2 + _ZN4geos4geom8Geometry21geometryChangedFilterE@Base 3.4.2 + _ZN4geos4geom8Geometry26checkNotGeometryCollectionEPKS1_@Base 3.4.2 + _ZN4geos4geom8Geometry7setSRIDEi@Base 3.4.2 + _ZN4geos4geom8Geometry8apply_rwEPNS0_14GeometryFilterE@Base 3.4.2 + _ZN4geos4geom8Geometry8apply_rwEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZN4geos4geom8GeometryC1EPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom8GeometryC1ERKS1_@Base 3.4.2 + _ZN4geos4geom8GeometryC2EPKNS0_15GeometryFactoryE@Base 3.4.2 + _ZN4geos4geom8GeometryC2ERKS1_@Base 3.4.2 + _ZN4geos4geom8GeometryD0Ev@Base 3.4.2 + _ZN4geos4geom8GeometryD1Ev@Base 3.4.2 + _ZN4geos4geom8GeometryD2Ev@Base 3.4.2 + _ZN4geos4geom8Location16toLocationSymbolEi@Base 3.4.2 + _ZN4geos4geom8Triangle12circumcentreERNS0_10CoordinateE@Base 3.5.0 + _ZN4geos4geom8Triangle8inCentreERNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geom9Dimension16toDimensionValueEc@Base 3.4.2 + _ZN4geos4geom9Dimension17toDimensionSymbolEi@Base 3.4.2 + _ZN4geos4geomeqERKNS0_10CoordinateES3_@Base 3.4.2 + _ZN4geos4geomeqERKNS0_11LineSegmentES3_@Base 3.4.2 + _ZN4geos4geomeqERKNS0_14PrecisionModelES3_@Base 3.4.2 + _ZN4geos4geomeqERKNS0_18CoordinateSequenceES3_@Base 3.4.2 + _ZN4geos4geomeqERKNS0_8EnvelopeES3_@Base 3.4.2 + _ZN4geos4geomlsERSoRKNS0_10CoordinateE@Base 3.4.2 + _ZN4geos4geomlsERSoRKNS0_11LineSegmentE@Base 3.4.2 + _ZN4geos4geomlsERSoRKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos4geomlsERSoRKNS0_18IntersectionMatrixE@Base 3.4.2 + _ZN4geos4geomlsERSoRKNS0_8EnvelopeE@Base 3.7.0 + _ZN4geos4geomlsERSoRKNS0_8GeometryE@Base 3.4.2 + _ZN4geos4geomneERKNS0_10CoordinateES3_@Base 3.4.2 + _ZN4geos4geomneERKNS0_18CoordinateSequenceES3_@Base 3.4.2 + _ZN4geos4util13GEOSExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 + _ZN4geos4util13GEOSExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_@Base 3.5.1 + _ZN4geos4util13GEOSExceptionD0Ev@Base 3.4.2 + _ZN4geos4util13GEOSExceptionD1Ev@Base 3.4.2 + _ZN4geos4util13GEOSExceptionD2Ev@Base 3.4.2 + _ZN4geos4util15java_math_roundEd@Base 3.4.2 + _ZN4geos4util17TopologyExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util17TopologyExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_4geom10CoordinateE@Base 3.5.1 + _ZN4geos4util17TopologyExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util17TopologyExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_4geom10CoordinateE@Base 3.5.1 + _ZN4geos4util17TopologyExceptionD0Ev@Base 3.4.2 + _ZN4geos4util17TopologyExceptionD1Ev@Base 3.4.2 + _ZN4geos4util17TopologyExceptionD2Ev@Base 3.4.2 + _ZN4geos4util20InterruptedExceptionD0Ev@Base 3.4.2 + _ZN4geos4util20InterruptedExceptionD1Ev@Base 3.4.2 + _ZN4geos4util20InterruptedExceptionD2Ev@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10Dimensions7setBaseERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10Dimensions7setSizeEd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10Dimensions8setWidthEd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10Dimensions9setCentreERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10Dimensions9setHeightEd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10DimensionsC1Ev@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory10DimensionsC2Ev@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory12createCircleEv@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory12setNumPointsEi@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory15createRectangleEv@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory16createArcPolygonEdd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory7setBaseERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory7setSizeEd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory8setWidthEd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory9createArcEdd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory9setCentreERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactory9setHeightEd@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactoryC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactoryC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactoryD0Ev@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactoryD1Ev@Base 3.4.2 + _ZN4geos4util21GeometricShapeFactoryD2Ev@Base 3.4.2 + _ZN4geos4util21IllegalStateExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util21IllegalStateExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util21IllegalStateExceptionD0Ev@Base 3.4.2 + _ZN4geos4util21IllegalStateExceptionD1Ev@Base 3.4.2 + _ZN4geos4util21IllegalStateExceptionD2Ev@Base 3.4.2 + _ZN4geos4util24AssertionFailedExceptionD0Ev@Base 3.4.2 + _ZN4geos4util24AssertionFailedExceptionD1Ev@Base 3.4.2 + _ZN4geos4util24AssertionFailedExceptionD2Ev@Base 3.4.2 + _ZN4geos4util24IllegalArgumentExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util24IllegalArgumentExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util24IllegalArgumentExceptionD0Ev@Base 3.4.2 + _ZN4geos4util24IllegalArgumentExceptionD1Ev@Base 3.4.2 + _ZN4geos4util24IllegalArgumentExceptionD2Ev@Base 3.4.2 + _ZN4geos4util27UniqueCoordinateArrayFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos4util27UniqueCoordinateArrayFilterD0Ev@Base 3.4.2 + _ZN4geos4util27UniqueCoordinateArrayFilterD1Ev@Base 3.4.2 + _ZN4geos4util27UniqueCoordinateArrayFilterD2Ev@Base 3.4.2 + _ZN4geos4util29UnsupportedOperationExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util29UnsupportedOperationExceptionC1Ev@Base 3.4.2 + _ZN4geos4util29UnsupportedOperationExceptionC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util29UnsupportedOperationExceptionC2Ev@Base 3.4.2 + _ZN4geos4util29UnsupportedOperationExceptionD0Ev@Base 3.4.2 + _ZN4geos4util29UnsupportedOperationExceptionD1Ev@Base 3.4.2 + _ZN4geos4util29UnsupportedOperationExceptionD2Ev@Base 3.4.2 + _ZN4geos4util6Assert20shouldNeverReachHereERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util6Assert6equalsERKNS_4geom10CoordinateES5_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util6Assert6isTrueEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util7ProfileC1ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util7ProfileC2ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util7ProfileD1Ev@Base 3.4.2 + _ZN4geos4util7ProfileD2Ev@Base 3.4.2 + _ZN4geos4util7rint_vcEd@Base 3.4.2 + _ZN4geos4util8Profiler3getENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util8Profiler4stopENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util8Profiler5startENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos4util8Profiler8instanceEv@Base 3.4.2 + _ZN4geos4util8ProfilerC1Ev@Base 3.4.2 + _ZN4geos4util8ProfilerC2Ev@Base 3.4.2 + _ZN4geos4util8ProfilerD1Ev@Base 3.4.2 + _ZN4geos4util8ProfilerD2Ev@Base 3.4.2 + _ZN4geos4util9Interrupt16registerCallbackEPFvvE@Base 3.4.2 + _ZN4geos4util9Interrupt5checkEv@Base 3.4.2 + _ZN4geos4util9Interrupt6cancelEv@Base 3.4.2 + _ZN4geos4util9Interrupt7processEv@Base 3.4.2 + _ZN4geos4util9Interrupt7requestEv@Base 3.4.2 + _ZN4geos4util9Interrupt9interruptEv@Base 3.4.2 + _ZN4geos4util9sym_roundEd@Base 3.4.2 + _ZN4geos4utillsERSoRKNS0_7ProfileE@Base 3.4.2 + _ZN4geos4utillsERSoRKNS0_8ProfilerE@Base 3.4.2 + _ZN4geos5index13intervalrtree17IntervalRTreeNode7compareEPKS2_S4_@Base 3.4.2 + _ZN4geos5index13intervalrtree21IntervalRTreeLeafNodeD0Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree21IntervalRTreeLeafNodeD1Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree21IntervalRTreeLeafNodeD2Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree23IntervalRTreeBranchNodeD0Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree23IntervalRTreeBranchNodeD1Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree23IntervalRTreeBranchNodeD2Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree10buildLevelEPSt6vectorIPKNS1_17IntervalRTreeNodeESaIS6_EES9_@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree4initEv@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree5queryEddPNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree6insertEddPv@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTree9buildTreeEv@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeC1Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeC2Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeD1Ev@Base 3.4.2 + _ZN4geos5index13intervalrtree25SortedPackedIntervalRTreeD2Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain13MonotoneChain13computeSelectERKNS_4geom8EnvelopeEjjRNS1_25MonotoneChainSelectActionE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain13MonotoneChain13computeSelectERKNS_4geom8EnvelopeEmmRNS1_25MonotoneChainSelectActionE@Base 3.7.0 + _ZN4geos5index5chain13MonotoneChain15computeOverlapsEPS2_PNS1_26MonotoneChainOverlapActionE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain13MonotoneChain15computeOverlapsEjjRS2_jjRNS1_26MonotoneChainOverlapActionE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain13MonotoneChain15computeOverlapsEmmRS2_mmRNS1_26MonotoneChainOverlapActionE@Base 3.7.0 + _ZN4geos5index5chain13MonotoneChain6selectERKNS_4geom8EnvelopeERNS1_25MonotoneChainSelectActionE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain13MonotoneChainC1ERKNS_4geom18CoordinateSequenceEjjPv@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain13MonotoneChainC1ERKNS_4geom18CoordinateSequenceEmmPv@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain13MonotoneChainC2ERKNS_4geom18CoordinateSequenceEjjPv@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain13MonotoneChainC2ERKNS_4geom18CoordinateSequenceEmmPv@Base 3.7.0 + _ZN4geos5index5chain13MonotoneChainD1Ev@Base 3.4.2 + _ZN4geos5index5chain13MonotoneChainD2Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain20MonotoneChainBuilder12findChainEndERKNS_4geom18CoordinateSequenceEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain20MonotoneChainBuilder12findChainEndERKNS_4geom18CoordinateSequenceEm@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain20MonotoneChainBuilder20getChainStartIndicesERKNS_4geom18CoordinateSequenceERSt6vectorIjSaIjEE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain20MonotoneChainBuilder20getChainStartIndicesERKNS_4geom18CoordinateSequenceERSt6vectorImSaImEE@Base 3.7.0 + _ZN4geos5index5chain20MonotoneChainBuilder9getChainsEPKNS_4geom18CoordinateSequenceEPv@Base 3.4.2 + _ZN4geos5index5chain20MonotoneChainBuilder9getChainsEPKNS_4geom18CoordinateSequenceEPvRSt6vectorIPNS1_13MonotoneChainESaISA_EE@Base 3.4.2 + _ZN4geos5index5chain25MonotoneChainSelectAction6selectERNS1_13MonotoneChainEj@Base 3.4.2 + _ZN4geos5index5chain26MonotoneChainOverlapAction7overlapERKNS_4geom11LineSegmentES6_@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index5chain26MonotoneChainOverlapAction7overlapERNS1_13MonotoneChainEjS4_j@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index5chain26MonotoneChainOverlapAction7overlapERNS1_13MonotoneChainEmS4_m@Base 3.7.0 + _ZN4geos5index5chain26MonotoneChainOverlapActionD0Ev@Base 3.4.2 + _ZN4geos5index5chain26MonotoneChainOverlapActionD1Ev@Base 3.4.2 + _ZN4geos5index5chain26MonotoneChainOverlapActionD2Ev@Base 3.4.2 + _ZN4geos5index7bintree3Key10computeKeyEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree3Key11getIntervalEv@Base 3.4.2 + _ZN4geos5index7bintree3Key12computeLevelEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree3Key15computeIntervalEiPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree3Key8getLevelEv@Base 3.4.2 + _ZN4geos5index7bintree3Key8getPointEv@Base 3.4.2 + _ZN4geos5index7bintree3KeyC1EPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree3KeyC2EPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree3KeyD1Ev@Base 3.4.2 + _ZN4geos5index7bintree3KeyD2Ev@Base 3.4.2 + _ZN4geos5index7bintree4Node10createNodeEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree4Node10getSubnodeEi@Base 3.4.2 + _ZN4geos5index7bintree4Node11getIntervalEv@Base 3.4.2 + _ZN4geos5index7bintree4Node13createSubnodeEi@Base 3.4.2 + _ZN4geos5index7bintree4Node13isSearchMatchEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree4Node14createExpandedEPS2_PNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree4Node4findEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree4Node6insertEPS2_@Base 3.4.2 + _ZN4geos5index7bintree4Node7getNodeEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree4NodeC1EPNS1_8IntervalEi@Base 3.4.2 + _ZN4geos5index7bintree4NodeC2EPNS1_8IntervalEi@Base 3.4.2 + _ZN4geos5index7bintree4NodeD0Ev@Base 3.4.2 + _ZN4geos5index7bintree4NodeD1Ev@Base 3.4.2 + _ZN4geos5index7bintree4NodeD2Ev@Base 3.4.2 + _ZN4geos5index7bintree4Root13isSearchMatchEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree4Root15insertContainedEPNS1_4NodeEPNS1_8IntervalEPv@Base 3.4.2 + _ZN4geos5index7bintree4Root6insertEPNS1_8IntervalEPv@Base 3.4.2 + _ZN4geos5index7bintree4Root6originE@Base 3.4.2 + _ZN4geos5index7bintree4RootD0Ev@Base 3.4.2 + _ZN4geos5index7bintree4RootD1Ev@Base 3.4.2 + _ZN4geos5index7bintree4RootD2Ev@Base 3.4.2 + _ZN4geos5index7bintree7Bintree12collectStatsEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree7Bintree12ensureExtentEPKNS1_8IntervalEd@Base 3.4.2 + _ZN4geos5index7bintree7Bintree4sizeEv@Base 3.4.2 + _ZN4geos5index7bintree7Bintree5depthEv@Base 3.4.2 + _ZN4geos5index7bintree7Bintree5queryEPNS1_8IntervalE@Base 3.4.2 + _ZN4geos5index7bintree7Bintree5queryEPNS1_8IntervalEPSt6vectorIPvSaIS6_EE@Base 3.4.2 + _ZN4geos5index7bintree7Bintree5queryEd@Base 3.4.2 + _ZN4geos5index7bintree7Bintree6insertEPNS1_8IntervalEPv@Base 3.4.2 + _ZN4geos5index7bintree7Bintree8iteratorEv@Base 3.4.2 + _ZN4geos5index7bintree7Bintree8nodeSizeEv@Base 3.4.2 + _ZN4geos5index7bintree7BintreeC1Ev@Base 3.4.2 + _ZN4geos5index7bintree7BintreeC2Ev@Base 3.4.2 + _ZN4geos5index7bintree7BintreeD1Ev@Base 3.4.2 + _ZN4geos5index7bintree7BintreeD2Ev@Base 3.4.2 + _ZN4geos5index7bintree8Interval15expandToIncludeEPS2_@Base 3.4.2 + _ZN4geos5index7bintree8Interval4initEdd@Base 3.4.2 + _ZN4geos5index7bintree8IntervalC1EPKS2_@Base 3.4.2 + _ZN4geos5index7bintree8IntervalC1Edd@Base 3.4.2 + _ZN4geos5index7bintree8IntervalC1Ev@Base 3.4.2 + _ZN4geos5index7bintree8IntervalC2EPKS2_@Base 3.4.2 + _ZN4geos5index7bintree8IntervalC2Edd@Base 3.4.2 + _ZN4geos5index7bintree8IntervalC2Ev@Base 3.4.2 + _ZN4geos5index7bintree8IntervalD1Ev@Base 3.4.2 + _ZN4geos5index7bintree8IntervalD2Ev@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase11addAllItemsEPSt6vectorIPvSaIS4_EE@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase15getSubnodeIndexEPNS1_8IntervalEd@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase26addAllItemsFromOverlappingEPNS1_8IntervalEPSt6vectorIPvSaIS6_EE@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase3addEPv@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase4sizeEv@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase5depthEv@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase8getItemsEv@Base 3.4.2 + _ZN4geos5index7bintree8NodeBase8nodeSizeEv@Base 3.4.2 + _ZN4geos5index7bintree8NodeBaseC1Ev@Base 3.4.2 + _ZN4geos5index7bintree8NodeBaseC2Ev@Base 3.4.2 + _ZN4geos5index7bintree8NodeBaseD0Ev@Base 3.4.2 + _ZN4geos5index7bintree8NodeBaseD1Ev@Base 3.4.2 + _ZN4geos5index7bintree8NodeBaseD2Ev@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNode17addChildBoundableEPNS1_9BoundableE@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNode8getLevelEv@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNodeC1Eii@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNodeC2Eii@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNodeD0Ev@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNodeD1Ev@Base 3.4.2 + _ZN4geos5index7strtree12AbstractNodeD2Ev@Base 3.4.2 + _ZN4geos5index7strtree13BoundablePair11isCompositeEPKNS1_9BoundableE@Base 3.6.0 + _ZN4geos5index7strtree13BoundablePair13expandToQueueERSt14priority_queueIPS2_St6vectorIS4_SaIS4_EENS2_25BoundablePairQueueCompareEEd@Base 3.6.0 + _ZN4geos5index7strtree13BoundablePair4areaEPKNS1_9BoundableE@Base 3.6.0 + _ZN4geos5index7strtree13BoundablePair6expandEPKNS1_9BoundableES5_RSt14priority_queueIPS2_St6vectorIS7_SaIS7_EENS2_25BoundablePairQueueCompareEEd@Base 3.6.0 + _ZN4geos5index7strtree13BoundablePairC1EPKNS1_9BoundableES5_PNS1_12ItemDistanceE@Base 3.6.0 + _ZN4geos5index7strtree13BoundablePairC2EPKNS1_9BoundableES5_PNS1_12ItemDistanceE@Base 3.6.0 + _ZN4geos5index7strtree13ItemBoundableC1EPKvPv@Base 3.4.2 + _ZN4geos5index7strtree13ItemBoundableC2EPKvPv@Base 3.4.2 + _ZN4geos5index7strtree13ItemBoundableD0Ev@Base 3.4.2 + _ZN4geos5index7strtree13ItemBoundableD1Ev@Base 3.4.2 + _ZN4geos5index7strtree13ItemBoundableD2Ev@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree10removeItemERNS1_12AbstractNodeEPv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree15getNodeCapacityEv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree17boundablesAtLevelEi@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree17boundablesAtLevelEiPNS1_12AbstractNodeEPSt6vectorIPNS1_9BoundableESaIS7_EE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree18createHigherLevelsEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree22createParentBoundablesEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree5buildEv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvPKNS1_12AbstractNodeEPSt6vectorIPvSaIS9_EE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvRKNS1_12AbstractNodeERNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvRNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree5queryEPKvRSt6vectorIPvSaIS6_EE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree6insertEPKvPv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree6removeEPKvPv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree6removeEPKvRNS1_12AbstractNodeEPv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree7getRootEv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree7iterateERNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree8lastNodeEPSt6vectorIPNS1_9BoundableESaIS5_EE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree9itemsTreeEPNS1_12AbstractNodeE@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtree9itemsTreeEv@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtreeD0Ev@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtreeD1Ev@Base 3.4.2 + _ZN4geos5index7strtree15AbstractSTRtreeD2Ev@Base 3.4.2 + _ZN4geos5index7strtree15SIRAbstractNodeD0Ev@Base 3.4.2 + _ZN4geos5index7strtree15SIRAbstractNodeD1Ev@Base 3.4.2 + _ZN4geos5index7strtree15SIRAbstractNodeD2Ev@Base 3.4.2 + _ZN4geos5index7strtree15STRAbstractNodeD0Ev@Base 3.4.2 + _ZN4geos5index7strtree15STRAbstractNodeD1Ev@Base 3.4.2 + _ZN4geos5index7strtree15STRAbstractNodeD2Ev@Base 3.4.2 + _ZN4geos5index7strtree20GeometryItemDistance8distanceEPKNS1_13ItemBoundableES5_@Base 3.6.0 + _ZN4geos5index7strtree7SIRtree10createNodeEi@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree14sortBoundablesEPKSt6vectorIPNS1_9BoundableESaIS5_EE@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree15SIRIntersectsOp10intersectsEPKvS5_@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree15SIRIntersectsOpD0Ev@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree15SIRIntersectsOpD1Ev@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree15SIRIntersectsOpD2Ev@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree15getIntersectsOpEv@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree22createParentBoundablesEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 + _ZN4geos5index7strtree7SIRtree6insertEddPv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index7strtree7SIRtreeC1Ej@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index7strtree7SIRtreeC1Em@Base 3.7.0 + _ZN4geos5index7strtree7SIRtreeC1Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index7strtree7SIRtreeC2Ej@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index7strtree7SIRtreeC2Em@Base 3.7.0 + _ZN4geos5index7strtree7SIRtreeC2Ev@Base 3.4.2 + _ZN4geos5index7strtree7SIRtreeD0Ev@Base 3.4.2 + _ZN4geos5index7strtree7SIRtreeD1Ev@Base 3.4.2 + _ZN4geos5index7strtree7SIRtreeD2Ev@Base 3.4.2 + _ZN4geos5index7strtree7STRtree10createNodeEi@Base 3.4.2 + _ZN4geos5index7strtree7STRtree14sortBoundablesEPKSt6vectorIPNS1_9BoundableESaIS5_EE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index7strtree7STRtree14verticalSlicesEPSt6vectorIPNS1_9BoundableESaIS5_EEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index7strtree7STRtree14verticalSlicesEPSt6vectorIPNS1_9BoundableESaIS5_EEm@Base 3.7.0 + _ZN4geos5index7strtree7STRtree15STRIntersectsOp10intersectsEPKvS5_@Base 3.4.2 + _ZN4geos5index7strtree7STRtree15STRIntersectsOpD0Ev@Base 3.4.2 + _ZN4geos5index7strtree7STRtree15STRIntersectsOpD1Ev@Base 3.4.2 + _ZN4geos5index7strtree7STRtree15STRIntersectsOpD2Ev@Base 3.4.2 + _ZN4geos5index7strtree7STRtree15getIntersectsOpEv@Base 3.4.2 + _ZN4geos5index7strtree7STRtree16nearestNeighbourEPKNS_4geom8EnvelopeEPKvPNS1_12ItemDistanceE@Base 3.6.0 + _ZN4geos5index7strtree7STRtree16nearestNeighbourEPNS1_12ItemDistanceE@Base 3.6.0 + _ZN4geos5index7strtree7STRtree16nearestNeighbourEPNS1_13BoundablePairE@Base 3.6.0 + _ZN4geos5index7strtree7STRtree16nearestNeighbourEPNS1_13BoundablePairEd@Base 3.6.0 + _ZN4geos5index7strtree7STRtree16nearestNeighbourEPS2_PNS1_12ItemDistanceE@Base 3.7.0 + _ZN4geos5index7strtree7STRtree22createParentBoundablesEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 + _ZN4geos5index7strtree7STRtree39createParentBoundablesFromVerticalSliceEPSt6vectorIPNS1_9BoundableESaIS5_EEi@Base 3.4.2 + _ZN4geos5index7strtree7STRtree40createParentBoundablesFromVerticalSlicesEPSt6vectorIPS3_IPNS1_9BoundableESaIS5_EESaIS8_EEi@Base 3.4.2 + _ZN4geos5index7strtree7STRtree5queryEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index7strtree7STRtree5queryEPKNS_4geom8EnvelopeERSt6vectorIPvSaIS8_EE@Base 3.4.2 + _ZN4geos5index7strtree7STRtree6insertEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + _ZN4geos5index7strtree7STRtree6removeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index7strtree7STRtreeC1Ej@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index7strtree7STRtreeC1Em@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos5index7strtree7STRtreeC2Ej@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos5index7strtree7STRtreeC2Em@Base 3.7.0 + _ZN4geos5index7strtree7STRtreeD0Ev@Base 3.4.2 + _ZN4geos5index7strtree7STRtreeD1Ev@Base 3.4.2 + _ZN4geos5index7strtree7STRtreeD2Ev@Base 3.4.2 + _ZN4geos5index7strtree8Interval15expandToIncludeEPKS2_@Base 3.5.0 + _ZN4geos5index7strtree8Interval9getCentreEv@Base 3.4.2 + _ZN4geos5index7strtree8IntervalC1Edd@Base 3.4.2 + _ZN4geos5index7strtree8IntervalC2Edd@Base 3.4.2 + _ZN4geos5index7strtree9ItemsListD1Ev@Base 3.4.2 + _ZN4geos5index7strtree9ItemsListD2Ev@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBits13zeroLowerBitsEi@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBits14toBinaryStringB5cxx11Ed@Base 3.5.1 + _ZN4geos5index8quadtree10DoubleBits20truncateToPowerOfTwoEd@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBits21maximumCommonMantissaEdd@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBits8exponentEd@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBits8powerOf2Ei@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBitsC1Ed@Base 3.4.2 + _ZN4geos5index8quadtree10DoubleBitsC2Ed@Base 3.4.2 + _ZN4geos5index8quadtree12IntervalSize11isZeroWidthEdd@Base 3.4.2 + _ZN4geos5index8quadtree3Key10computeKeyERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree3Key10computeKeyEiRKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree3Key16computeQuadLevelERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree3KeyC1ERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree3KeyC2ERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree3KeyD1Ev@Base 3.4.2 + _ZN4geos5index8quadtree3KeyD2Ev@Base 3.4.2 + _ZN4geos5index8quadtree4Node10createNodeERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree4Node10getSubnodeEi@Base 3.4.2 + _ZN4geos5index8quadtree4Node10insertNodeESt10unique_ptrIS2_St14default_deleteIS2_EE@Base 3.7.0 + _ZN4geos5index8quadtree4Node13createSubnodeEi@Base 3.4.2 + _ZN4geos5index8quadtree4Node14createExpandedESt10unique_ptrIS2_St14default_deleteIS2_EERKNS_4geom8EnvelopeE@Base 3.7.0 + _ZN4geos5index8quadtree4Node4findEPKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree4Node7getNodeEPKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree4NodeD0Ev@Base 3.4.2 + _ZN4geos5index8quadtree4NodeD1Ev@Base 3.4.2 + _ZN4geos5index8quadtree4NodeD2Ev@Base 3.4.2 + _ZN4geos5index8quadtree4Root15insertContainedEPNS1_4NodeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + _ZN4geos5index8quadtree4Root6insertEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + _ZN4geos5index8quadtree4Root6originE@Base 3.4.2 + _ZN4geos5index8quadtree4RootD0Ev@Base 3.4.2 + _ZN4geos5index8quadtree4RootD1Ev@Base 3.4.2 + _ZN4geos5index8quadtree4RootD2Ev@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBase10visitItemsEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBase15getSubnodeIndexEPKNS_4geom8EnvelopeERKNS3_10CoordinateE@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBase3addEPv@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBase5visitEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBase6removeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBase8getItemsEv@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBaseC1Ev@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBaseC2Ev@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBaseD0Ev@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBaseD1Ev@Base 3.4.2 + _ZN4geos5index8quadtree8NodeBaseD2Ev@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree12collectStatsERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree12ensureExtentEPKNS_4geom8EnvelopeEd@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree4sizeEv@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree5depthEv@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree5queryEPKNS_4geom8EnvelopeERNS0_11ItemVisitorE@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree5queryEPKNS_4geom8EnvelopeERSt6vectorIPvSaIS8_EE@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree6insertEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree6removeEPKNS_4geom8EnvelopeEPv@Base 3.4.2 + _ZN4geos5index8quadtree8Quadtree8queryAllEv@Base 3.4.2 + _ZN4geos5index8quadtree8QuadtreeD0Ev@Base 3.4.2 + _ZN4geos5index8quadtree8QuadtreeD1Ev@Base 3.4.2 + _ZN4geos5index8quadtree8QuadtreeD2Ev@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEvent11getIntervalEv@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEvent14getInsertEventEv@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEvent19getDeleteEventIndexEv@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEvent19setDeleteEventIndexEi@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEvent8isDeleteEv@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEvent8isInsertEv@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEventC1EdPS2_PNS1_17SweepLineIntervalE@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineEventC2EdPS2_PNS1_17SweepLineIntervalE@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndex10buildIndexEv@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndex15computeOverlapsEPNS1_22SweepLineOverlapActionE@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndex15processOverlapsEiiPNS1_17SweepLineIntervalEPNS1_22SweepLineOverlapActionE@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndex3addEPNS1_17SweepLineIntervalE@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndexC1Ev@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndexC2Ev@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndexD1Ev@Base 3.4.2 + _ZN4geos5index9sweepline14SweepLineIndexD2Ev@Base 3.4.2 + _ZN4geos5index9sweepline17SweepLineInterval6getMaxEv@Base 3.4.2 + _ZN4geos5index9sweepline17SweepLineInterval6getMinEv@Base 3.4.2 + _ZN4geos5index9sweepline17SweepLineInterval7getItemEv@Base 3.4.2 + _ZN4geos5index9sweepline17SweepLineIntervalC1EddPv@Base 3.4.2 + _ZN4geos5index9sweepline17SweepLineIntervalC2EddPv@Base 3.4.2 + _ZN4geos6noding11ScaledNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding11ScaledNoder6ScalerD0Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoder6ScalerD1Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoder6ScalerD2Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoder8ReScaler9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos6noding11ScaledNoder8ReScalerD0Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoder8ReScalerD1Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoder8ReScalerD2Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoderD0Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoderD1Ev@Base 3.4.2 + _ZN4geos6noding11ScaledNoderD2Ev@Base 3.4.2 + _ZN4geos6noding11SegmentNode9compareToERKS1_@Base 3.4.2 + _ZN4geos6noding11SegmentNodeC1ERKNS0_18NodedSegmentStringERKNS_4geom10CoordinateEji@Base 3.4.2 + _ZN4geos6noding11SegmentNodeC2ERKNS0_18NodedSegmentStringERKNS_4geom10CoordinateEji@Base 3.4.2 + _ZN4geos6noding11SimpleNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding11SimpleNoder17computeIntersectsEPNS0_13SegmentStringES3_@Base 3.4.2 + _ZN4geos6noding11SimpleNoderD0Ev@Base 3.4.2 + _ZN4geos6noding11SimpleNoderD1Ev@Base 3.4.2 + _ZN4geos6noding11SimpleNoderD2Ev@Base 3.4.2 + _ZN4geos6noding12MCIndexNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding12MCIndexNoder15intersectChainsEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding12MCIndexNoder20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEjS6_j@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding12MCIndexNoder20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEmS6_m@Base 3.7.0 + _ZN4geos6noding12MCIndexNoder20SegmentOverlapActionD0Ev@Base 3.4.2 + _ZN4geos6noding12MCIndexNoder20SegmentOverlapActionD1Ev@Base 3.4.2 + _ZN4geos6noding12MCIndexNoder20SegmentOverlapActionD2Ev@Base 3.4.2 + _ZN4geos6noding12MCIndexNoder3addEPNS0_13SegmentStringE@Base 3.4.2 + _ZN4geos6noding12MCIndexNoder8getIndexEv@Base 3.4.2 + _ZN4geos6noding12MCIndexNoderD0Ev@Base 3.4.2 + _ZN4geos6noding12MCIndexNoderD1Ev@Base 3.4.2 + _ZN4geos6noding12MCIndexNoderD2Ev@Base 3.4.2 + _ZN4geos6noding13GeometryNoder10toGeometryERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding13GeometryNoder21extractSegmentStringsERKNS_4geom8GeometryERSt6vectorIPNS0_13SegmentStringESaIS8_EE@Base 3.4.2 + _ZN4geos6noding13GeometryNoder4nodeERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos6noding13GeometryNoder8getNodedEv@Base 3.4.2 + _ZN4geos6noding13GeometryNoder8getNoderEv@Base 3.4.2 + _ZN4geos6noding13GeometryNoderC1ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos6noding13GeometryNoderC2ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos6noding13IteratedNoder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding13IteratedNoder4nodeEPSt6vectorIPNS0_13SegmentStringESaIS4_EEPi@Base 3.4.2 + _ZN4geos6noding13IteratedNoderD0Ev@Base 3.4.2 + _ZN4geos6noding13IteratedNoderD1Ev@Base 3.4.2 + _ZN4geos6noding13IteratedNoderD2Ev@Base 3.4.2 + _ZN4geos6noding15NodingValidator10checkValidEv@Base 3.4.2 + _ZN4geos6noding15NodingValidator26checkInteriorIntersectionsERKNS0_13SegmentStringES4_@Base 3.4.2 + _ZN4geos6noding15NodingValidator26checkInteriorIntersectionsERKNS0_13SegmentStringEjS4_j@Base 3.4.2 + _ZN4geos6noding15NodingValidator26checkInteriorIntersectionsEv@Base 3.4.2 + _ZN4geos6noding15SegmentNodeList12addEndpointsEv@Base 3.4.2 + _ZN4geos6noding15SegmentNodeList13addSplitEdgesERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding15SegmentNodeList15createSplitEdgeEPNS0_11SegmentNodeES3_@Base 3.4.2 + _ZN4geos6noding15SegmentNodeList17addCollapsedNodesEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding15SegmentNodeList17findCollapseIndexERNS0_11SegmentNodeES3_Rj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding15SegmentNodeList17findCollapseIndexERNS0_11SegmentNodeES3_Rm@Base 3.7.0 + _ZN4geos6noding15SegmentNodeList26checkSplitEdgesCorrectnessERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding15SegmentNodeList30findCollapsesFromInsertedNodesERSt6vectorIjSaIjEE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding15SegmentNodeList30findCollapsesFromInsertedNodesERSt6vectorImSaImEE@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding15SegmentNodeList33findCollapsesFromExistingVerticesERSt6vectorIjSaIjEE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding15SegmentNodeList33findCollapsesFromExistingVerticesERSt6vectorImSaImEE@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding15SegmentNodeList3addERKNS_4geom10CoordinateEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding15SegmentNodeList3addERKNS_4geom10CoordinateEm@Base 3.7.0 + _ZN4geos6noding15SegmentNodeListD0Ev@Base 3.4.2 + _ZN4geos6noding15SegmentNodeListD1Ev@Base 3.4.2 + _ZN4geos6noding15SegmentNodeListD2Ev@Base 3.4.2 + _ZN4geos6noding15SinglePassNoder21setSegmentIntersectorEPNS0_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos6noding17IntersectionAdder20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 + _ZN4geos6noding17IntersectionAdder21isTrivialIntersectionEPKNS0_13SegmentStringEiS4_i@Base 3.4.2 + _ZN4geos6noding17IntersectionAdderD0Ev@Base 3.4.2 + _ZN4geos6noding17IntersectionAdderD1Ev@Base 3.4.2 + _ZN4geos6noding17IntersectionAdderD2Ev@Base 3.4.2 + _ZN4geos6noding18BasicSegmentStringD0Ev@Base 3.4.2 + _ZN4geos6noding18BasicSegmentStringD1Ev@Base 3.4.2 + _ZN4geos6noding18BasicSegmentStringD2Ev@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString10safeOctantERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString11getNodeListEv@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString15addIntersectionEPNS_9algorithm15LineIntersectorEjii@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString15addIntersectionERKNS_4geom10CoordinateEj@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString16addIntersectionsEPNS_9algorithm15LineIntersectorEji@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString18getNodedSubstringsERKSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZN4geos6noding18NodedSegmentString18getNodedSubstringsERKSt6vectorIPNS0_13SegmentStringESaIS4_EEPS6_@Base 3.4.2 + _ZN4geos6noding18NodedSegmentStringD0Ev@Base 3.4.2 + _ZN4geos6noding18NodedSegmentStringD1Ev@Base 3.4.2 + _ZN4geos6noding18NodedSegmentStringD2Ev@Base 3.4.2 + _ZN4geos6noding19FastNodingValidator10checkValidEv@Base 3.4.2 + _ZN4geos6noding19FastNodingValidator26checkInteriorIntersectionsEv@Base 3.4.2 + _ZN4geos6noding23IntersectionFinderAdder20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 + _ZN4geos6noding23IntersectionFinderAdderD0Ev@Base 3.4.2 + _ZN4geos6noding23IntersectionFinderAdderD1Ev@Base 3.4.2 + _ZN4geos6noding23IntersectionFinderAdderD2Ev@Base 3.4.2 + _ZN4geos6noding23OrientedCoordinateArray11orientationERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos6noding23OrientedCoordinateArray15compareOrientedERKNS_4geom18CoordinateSequenceEbS5_b@Base 3.4.2 + _ZN4geos6noding27SegmentIntersectionDetector20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 + _ZN4geos6noding27SegmentIntersectionDetectorD0Ev@Base 3.4.2 + _ZN4geos6noding27SegmentIntersectionDetectorD1Ev@Base 3.4.2 + _ZN4geos6noding27SegmentIntersectionDetectorD2Ev@Base 3.4.2 + _ZN4geos6noding32FastSegmentSetIntersectionFinder10intersectsEPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding32FastSegmentSetIntersectionFinder10intersectsEPSt6vectorIPKNS0_13SegmentStringESaIS5_EEPNS0_27SegmentIntersectionDetectorE@Base 3.4.2 + _ZN4geos6noding32FastSegmentSetIntersectionFinderC1EPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding32FastSegmentSetIntersectionFinderC2EPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding32FastSegmentSetIntersectionFinderD1Ev@Base 3.4.2 + _ZN4geos6noding32FastSegmentSetIntersectionFinderD2Ev@Base 3.4.2 + _ZN4geos6noding32SingleInteriorIntersectionFinder20processIntersectionsEPNS0_13SegmentStringEiS3_i@Base 3.4.2 + _ZN4geos6noding32SingleInteriorIntersectionFinderD0Ev@Base 3.4.2 + _ZN4geos6noding32SingleInteriorIntersectionFinderD1Ev@Base 3.4.2 + _ZN4geos6noding32SingleInteriorIntersectionFinderD2Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector10addToIndexEPNS0_13SegmentStringE@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector15addToMonoChainsEPNS0_13SegmentStringE@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector15intersectChainsEv@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector15setBaseSegmentsEPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEjS6_j@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapAction7overlapERNS_5index5chain13MonotoneChainEmS6_m@Base 3.7.0 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionD0Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionD1Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionD2Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersector7processEPSt6vectorIPKNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorC1Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorC2Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorD0Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorD1Ev@Base 3.4.2 + _ZN4geos6noding34MCIndexSegmentSetMutualIntersectorD2Ev@Base 3.4.2 + _ZN4geos6noding6Octant6octantERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos6noding6Octant6octantEdd@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder12computeSnapsEPNS0_18NodedSegmentStringERSt6vectorINS_4geom10CoordinateESaIS7_EE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder12computeSnapsERKSt6vectorIPNS0_13SegmentStringESaIS5_EERS3_INS_4geom10CoordinateESaISB_EE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder16checkCorrectnessERSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder18computeVertexSnapsEPNS0_18NodedSegmentStringES4_@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder18computeVertexSnapsERKSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder25findInteriorIntersectionsERSt6vectorIPNS0_13SegmentStringESaIS5_EERNS_9algorithm15LineIntersectorERS3_INS_4geom10CoordinateESaISD_EE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounder9snapRoundEPSt6vectorIPNS0_13SegmentStringESaIS5_EERNS_9algorithm15LineIntersectorE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounderC1ERKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounderC2ERKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounderD0Ev@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounderD1Ev@Base 3.4.2 + _ZN4geos6noding9snapround17SimpleSnapRounderD2Ev@Base 3.4.2 + _ZN4geos6noding9snapround18HotPixelSnapAction6selectERKNS_4geom11LineSegmentE@Base 3.4.2 + _ZN4geos6noding9snapround18HotPixelSnapAction6selectERNS_5index5chain13MonotoneChainEj@Base 3.4.2 + _ZN4geos6noding9snapround18HotPixelSnapActionD0Ev@Base 3.4.2 + _ZN4geos6noding9snapround18HotPixelSnapActionD1Ev@Base 3.4.2 + _ZN4geos6noding9snapround18HotPixelSnapActionD2Ev@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder12computeNodesEPSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder16checkCorrectnessERSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder18computeVertexSnapsEPNS0_18NodedSegmentStringE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder18computeVertexSnapsERSt6vectorIPNS0_13SegmentStringESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder24computeIntersectionSnapsERSt6vectorINS_4geom10CoordinateESaIS5_EE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder25findInteriorIntersectionsERNS0_12MCIndexNoderEPSt6vectorIPNS0_13SegmentStringESaIS7_EERS5_INS_4geom10CoordinateESaISC_EE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounder9snapRoundERNS0_12MCIndexNoderEPSt6vectorIPNS0_13SegmentStringESaIS7_EE@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounderD0Ev@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounderD1Ev@Base 3.4.2 + _ZN4geos6noding9snapround18MCIndexSnapRounderD2Ev@Base 3.4.2 + _ZN4geos6noding9snapround19MCIndexPointSnapper4snapERNS1_8HotPixelEPNS0_13SegmentStringEj@Base 3.4.2 + _ZN4geos6noding9snapround26MCIndexPointSnapperVisitor9visitItemEPv@Base 3.4.2 + _ZN4geos6noding9snapround26MCIndexPointSnapperVisitorD0Ev@Base 3.4.2 + _ZN4geos6noding9snapround26MCIndexPointSnapperVisitorD1Ev@Base 3.4.2 + _ZN4geos6noding9snapround26MCIndexPointSnapperVisitorD2Ev@Base 3.4.2 + _ZN4geos6noding9snapround8HotPixel11initCornersERKNS_4geom10CoordinateE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos6noding9snapround8HotPixel14addSnappedNodeERNS0_18NodedSegmentStringEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos6noding9snapround8HotPixel14addSnappedNodeERNS0_18NodedSegmentStringEm@Base 3.7.0 + _ZN4geos6noding9snapround8HotPixel22intersectsPixelClosureERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZN4geos6noding9snapround8HotPixelC1ERKNS_4geom10CoordinateEdRNS_9algorithm15LineIntersectorE@Base 3.4.2 + _ZN4geos6noding9snapround8HotPixelC2ERKNS_4geom10CoordinateEdRNS_9algorithm15LineIntersectorE@Base 3.4.2 + _ZN4geos6noding9snapround8HotPixelD1Ev@Base 3.4.2 + _ZN4geos6noding9snapround8HotPixelD2Ev@Base 3.4.2 + _ZN4geos6nodinglsERSoRKNS0_11SegmentNodeE@Base 3.4.2 + _ZN4geos6nodinglsERSoRKNS0_13SegmentStringE@Base 3.4.2 + _ZN4geos6nodinglsERSoRKNS0_15SegmentNodeListE@Base 3.4.2 + _ZN4geos8simplify13DPTransformer15createValidAreaEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos8simplify13DPTransformer16transformPolygonEPKNS_4geom7PolygonEPKNS2_8GeometryE@Base 3.4.2 + _ZN4geos8simplify13DPTransformer20transformCoordinatesEPKNS_4geom18CoordinateSequenceEPKNS2_8GeometryE@Base 3.4.2 + _ZN4geos8simplify13DPTransformer21transformMultiPolygonEPKNS_4geom12MultiPolygonEPKNS2_8GeometryE@Base 3.4.2 + _ZN4geos8simplify13DPTransformerC1Ed@Base 3.4.2 + _ZN4geos8simplify13DPTransformerC2Ed@Base 3.4.2 + _ZN4geos8simplify13DPTransformerD0Ev@Base 3.4.2 + _ZN4geos8simplify13DPTransformerD1Ev@Base 3.4.2 + _ZN4geos8simplify13DPTransformerD2Ev@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndex3addEPKNS_4geom11LineSegmentE@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndex3addERKNS0_16TaggedLineStringE@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndex6removeEPKNS_4geom11LineSegmentE@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndexC1Ev@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndexC2Ev@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndexD1Ev@Base 3.4.2 + _ZN4geos8simplify16LineSegmentIndexD2Ev@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify16TaggedLineString10getSegmentEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify16TaggedLineString10getSegmentEm@Base 3.7.0 + _ZN4geos8simplify16TaggedLineString11addToResultESt10unique_ptrINS0_17TaggedLineSegmentESt14default_deleteIS3_EE@Base 3.7.0 + _ZN4geos8simplify16TaggedLineString11getSegmentsEv@Base 3.4.2 + _ZN4geos8simplify16TaggedLineString18extractCoordinatesERKSt6vectorIPNS0_17TaggedLineSegmentESaIS4_EE@Base 3.4.2 + _ZN4geos8simplify16TaggedLineString4initEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify16TaggedLineStringC1EPKNS_4geom10LineStringEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify16TaggedLineStringC1EPKNS_4geom10LineStringEm@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify16TaggedLineStringC2EPKNS_4geom10LineStringEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify16TaggedLineStringC2EPKNS_4geom10LineStringEm@Base 3.7.0 + _ZN4geos8simplify16TaggedLineStringD1Ev@Base 3.4.2 + _ZN4geos8simplify16TaggedLineStringD2Ev@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentC1ERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentC1ERKNS_4geom10CoordinateES5_PKNS2_8GeometryEj@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentC1ERKS1_@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentC2ERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentC2ERKNS_4geom10CoordinateES5_PKNS2_8GeometryEj@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentC2ERKS1_@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentD0Ev@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentD1Ev@Base 3.4.2 + _ZN4geos8simplify17TaggedLineSegmentD2Ev@Base 3.4.2 + _ZN4geos8simplify18LineSegmentVisitor9visitItemEPv@Base 3.4.2 + _ZN4geos8simplify18LineSegmentVisitorD0Ev@Base 3.4.2 + _ZN4geos8simplify18LineSegmentVisitorD1Ev@Base 3.4.2 + _ZN4geos8simplify18LineSegmentVisitorD2Ev@Base 3.4.2 + _ZN4geos8simplify21TaggedLinesSimplifier20setDistanceToleranceEd@Base 3.4.2 + _ZN4geos8simplify21TaggedLinesSimplifier8simplifyERNS0_16TaggedLineStringE@Base 3.4.2 + _ZN4geos8simplify21TaggedLinesSimplifierC1Ev@Base 3.4.2 + _ZN4geos8simplify21TaggedLinesSimplifierC2Ev@Base 3.4.2 + _ZN4geos8simplify24DouglasPeuckerSimplifier17getResultGeometryEv@Base 3.4.2 + _ZN4geos8simplify24DouglasPeuckerSimplifier20setDistanceToleranceEd@Base 3.4.2 + _ZN4geos8simplify24DouglasPeuckerSimplifier8simplifyEPKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos8simplify24DouglasPeuckerSimplifierC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos8simplify24DouglasPeuckerSimplifierC2EPKNS_4geom8GeometryE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15isInLineSectionEPKNS0_16TaggedLineStringERKSt6vectorIjSaIjEEPKNS0_17TaggedLineSegmentE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15isInLineSectionEPKNS0_16TaggedLineStringERKSt6vectorImSaImEEPKNS0_17TaggedLineSegmentE@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15simplifySectionEjjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier15simplifySectionEmmm@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier17findFurthestPointEPKNS_4geom18CoordinateSequenceEjjRd@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier17findFurthestPointEPKNS_4geom18CoordinateSequenceEmmRd@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier18hasBadIntersectionEPKNS0_16TaggedLineStringERKSt6vectorIjSaIjEERKNS_4geom11LineSegmentE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier18hasBadIntersectionEPKNS0_16TaggedLineStringERKSt6vectorImSaImEERKNS_4geom11LineSegmentE@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier23hasBadInputIntersectionEPKNS0_16TaggedLineStringERKSt6vectorIjSaIjEERKNS_4geom11LineSegmentE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier23hasBadInputIntersectionEPKNS0_16TaggedLineStringERKSt6vectorImSaImEERKNS_4geom11LineSegmentE@Base 3.7.0 + _ZN4geos8simplify26TaggedLineStringSimplifier24hasBadOutputIntersectionERKNS_4geom11LineSegmentE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier6removeEPKNS0_16TaggedLineStringEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier6removeEPKNS0_16TaggedLineStringEmm@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier7flattenEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify26TaggedLineStringSimplifier7flattenEmm@Base 3.7.0 + _ZN4geos8simplify26TaggedLineStringSimplifier8simplifyEPNS0_16TaggedLineStringE@Base 3.4.2 + _ZN4geos8simplify26TaggedLineStringSimplifierC1EPNS0_16LineSegmentIndexES3_@Base 3.4.2 + _ZN4geos8simplify26TaggedLineStringSimplifierC2EPNS0_16LineSegmentIndexES3_@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos8simplify28DouglasPeuckerLineSimplifier15simplifySectionEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos8simplify28DouglasPeuckerLineSimplifier15simplifySectionEmm@Base 3.7.0 + _ZN4geos8simplify28DouglasPeuckerLineSimplifier20setDistanceToleranceEd@Base 3.4.2 + _ZN4geos8simplify28DouglasPeuckerLineSimplifier8simplifyERKSt6vectorINS_4geom10CoordinateESaIS4_EEd@Base 3.4.2 + _ZN4geos8simplify28DouglasPeuckerLineSimplifier8simplifyEv@Base 3.4.2 + _ZN4geos8simplify28DouglasPeuckerLineSimplifierC1ERKSt6vectorINS_4geom10CoordinateESaIS4_EE@Base 3.4.2 + _ZN4geos8simplify28DouglasPeuckerLineSimplifierC2ERKSt6vectorINS_4geom10CoordinateESaIS4_EE@Base 3.4.2 + _ZN4geos8simplify28TopologyPreservingSimplifier17getResultGeometryEv@Base 3.4.2 + _ZN4geos8simplify28TopologyPreservingSimplifier20setDistanceToleranceEd@Base 3.4.2 + _ZN4geos8simplify28TopologyPreservingSimplifier8simplifyEPKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos8simplify28TopologyPreservingSimplifierC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos8simplify28TopologyPreservingSimplifierC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull10grahamScanERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull13computeOctPtsERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull13getConvexHullEv@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull13lineOrPolygonERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull14computeOctRingERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull18extractCoordinatesEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull20toCoordinateSequenceERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull6reduceERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull7preSortERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull9cleanRingERKSt6vectorIPKNS_4geom10CoordinateESaIS6_EERS8_@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull9isBetweenERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm10ConvexHull9padArray3ERSt6vectorIPKNS_4geom10CoordinateESaIS6_EE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHullC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHullC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm10ConvexHullD1Ev@Base 3.4.2 + _ZN4geos9algorithm10ConvexHullD2Ev@Base 3.4.2 + _ZN4geos9algorithm11HCoordinate12intersectionERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC1ERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC1ERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC1ERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC1ERKS1_S3_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC1Eddd@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC1Ev@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC2ERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC2ERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC2ERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC2ERKS1_S3_@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC2Eddd@Base 3.4.2 + _ZN4geos9algorithm11HCoordinateC2Ev@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms10signedAreaEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms13isPointInRingERKNS_4geom10CoordinateEPKNS2_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms13isPointInRingERKNS_4geom10CoordinateERKSt6vectorIPS4_SaIS7_EE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms16distanceLineLineERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms16orientationIndexERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms17distancePointLineERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms17locatePointInRingERKNS_4geom10CoordinateERKNS2_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms17locatePointInRingERKNS_4geom10CoordinateERKSt6vectorIPS4_SaIS7_EE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms18computeOrientationERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms30distancePointLinePerpendicularERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms5isCCWEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms6lengthEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CGAlgorithms8isOnLineERKNS_4geom10CoordinateEPKNS2_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea11addTriangleERKNS_4geom10CoordinateES5_S5_b@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea12setBasePointERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea17addLinearSegmentsERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea3addEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea3addEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea5area2ERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea7addHoleEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea8addShellEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CentroidArea9centroid3ERKNS_4geom10CoordinateES5_S5_RS3_@Base 3.4.2 + _ZN4geos9algorithm12CentroidLine3addEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm12CentroidLine3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm12PointLocator15computeLocationERKNS_4geom10CoordinateEPKNS2_8GeometryE@Base 3.4.2 + _ZN4geos9algorithm12PointLocator18updateLocationInfoEi@Base 3.4.2 + _ZN4geos9algorithm12PointLocator19locateInPolygonRingERKNS_4geom10CoordinateEPKNS2_10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_10LineStringE@Base 3.4.2 + _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_5PointE@Base 3.5.1 + _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_7PolygonE@Base 3.4.2 + _ZN4geos9algorithm12PointLocator6locateERKNS_4geom10CoordinateEPKNS2_8GeometryE@Base 3.4.2 + _ZN4geos9algorithm13CentroidPoint3addEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm13CentroidPoint3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10MCSelecter6selectERKNS_4geom11LineSegmentE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10MCSelecterC1ERKNS_4geom10CoordinateEPS1_@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10MCSelecterC2ERKNS_4geom10CoordinateEPS1_@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10MCSelecterD0Ev@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10MCSelecterD1Ev@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10MCSelecterD2Ev@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing10buildIndexEv@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing15testLineSegmentERKNS_4geom10CoordinateERKNS2_11LineSegmentE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing17testMonotoneChainEPNS_4geom8EnvelopeEPNS1_10MCSelecterEPNS_5index5chain13MonotoneChainE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRing8isInsideERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRingC1EPKNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRingC2EPKNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRingD0Ev@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRingD1Ev@Base 3.4.2 + _ZN4geos9algorithm13MCPointInRingD2Ev@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector12interpolateZERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector15hasIntersectionERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector16computeIntersectERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector19computeEdgeDistanceERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector19computeIntLineIndexEi@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector19computeIntLineIndexEv@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector19computeIntersectionERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector19computeIntersectionERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector20getIndexAlongSegmentEii@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector20isSameSignAndNonZeroEdd@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector22isInteriorIntersectionEi@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector22isInteriorIntersectionEv@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector27getIntersectionAlongSegmentEii@Base 3.4.2 + _ZN4geos9algorithm15LineIntersector28computeCollinearIntersectionERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter11getDiameterEv@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter12getNextIndexEPKNS_4geom18CoordinateSequenceEj@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter18computeWidthConvexEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter18getMinimumDiameterEPNS_4geom8GeometryE@Base 3.6.0 + _ZN4geos9algorithm15MinimumDiameter18getWidthCoordinateEv@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter19findMaxPerpDistanceEPKNS_4geom18CoordinateSequenceEPNS2_11LineSegmentEj@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter19getMinimumRectangleEPNS_4geom8GeometryE@Base 3.6.0 + _ZN4geos9algorithm15MinimumDiameter19getMinimumRectangleEv@Base 3.6.0 + _ZN4geos9algorithm15MinimumDiameter20getSupportingSegmentEv@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter21computeSegmentForLineEddd@Base 3.6.0 + _ZN4geos9algorithm15MinimumDiameter22computeMinimumDiameterEv@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter28computeConvexRingMinDiameterEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameter8computeCEddRKNS_4geom10CoordinateE@Base 3.6.0 + _ZN4geos9algorithm15MinimumDiameter9getLengthEv@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameterC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameterC1EPKNS_4geom8GeometryEb@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameterC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameterC2EPKNS_4geom8GeometryEb@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameterD1Ev@Base 3.4.2 + _ZN4geos9algorithm15MinimumDiameterD2Ev@Base 3.4.2 + _ZN4geos9algorithm16BoundaryNodeRule17getBoundaryOGCSFSEv@Base 3.4.2 + _ZN4geos9algorithm16BoundaryNodeRule19getBoundaryEndPointEv@Base 3.4.2 + _ZN4geos9algorithm16BoundaryNodeRule19getBoundaryRuleMod2Ev@Base 3.4.2 + _ZN4geos9algorithm16BoundaryNodeRule29getBoundaryMonovalentEndPointEv@Base 3.4.2 + _ZN4geos9algorithm16BoundaryNodeRule30getBoundaryMultivalentEndPointEv@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointArea10addPolygonEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointArea14widestGeometryEPKNS_4geom18GeometryCollectionE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointArea14widestGeometryEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointArea18horizontalBisectorEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointArea3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointAreaC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointAreaC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointAreaD1Ev@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointAreaD2Ev@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLine11addInteriorEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLine11addInteriorEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLine12addEndpointsEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLine12addEndpointsEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLine3addERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLineC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLineC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLineD1Ev@Base 3.4.2 + _ZN4geos9algorithm17InteriorPointLineD2Ev@Base 3.4.2 + _ZN4geos9algorithm17RobustDeterminant12signOfDet2x2Edddd@Base 3.4.2 + _ZN4geos9algorithm17SimplePointInRing8isInsideERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm17SimplePointInRingC1EPNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm17SimplePointInRingC2EPNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm17SimplePointInRingD0Ev@Base 3.4.2 + _ZN4geos9algorithm17SimplePointInRingD1Ev@Base 3.4.2 + _ZN4geos9algorithm17SimplePointInRingD2Ev@Base 3.4.2 + _ZN4geos9algorithm18InteriorPointPoint3addEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm18InteriorPointPoint3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm18InteriorPointPointC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm18InteriorPointPointC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm18RayCrossingCounter11getLocationEv@Base 3.4.2 + _ZN4geos9algorithm18RayCrossingCounter12countSegmentERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9algorithm18RayCrossingCounter16isPointInPolygonEv@Base 3.4.2 + _ZN4geos9algorithm18RayCrossingCounter16orientationIndexERKNS_4geom10CoordinateES5_S5_@Base 3.5.0 + _ZN4geos9algorithm18RayCrossingCounter17locatePointInRingERKNS_4geom10CoordinateERKNS2_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm18RayCrossingCounter17locatePointInRingERKNS_4geom10CoordinateERKSt6vectorIPS4_SaIS7_EE@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRing10buildIndexEv@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRing15testLineSegmentERKNS_4geom10CoordinateEPNS2_11LineSegmentE@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRing8isInsideERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRingC1EPNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRingC2EPNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRingD0Ev@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRingD1Ev@Base 3.4.2 + _ZN4geos9algorithm18SIRtreePointInRingD2Ev@Base 3.4.2 + _ZN4geos9algorithm25NotRepresentableExceptionC1ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos9algorithm25NotRepresentableExceptionC1Ev@Base 3.4.2 + _ZN4geos9algorithm25NotRepresentableExceptionC2ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos9algorithm25NotRepresentableExceptionC2Ev@Base 3.4.2 + _ZN4geos9algorithm25NotRepresentableExceptionD0Ev@Base 3.4.2 + _ZN4geos9algorithm25NotRepresentableExceptionD1Ev@Base 3.4.2 + _ZN4geos9algorithm25NotRepresentableExceptionD2Ev@Base 3.4.2 + _ZN4geos9algorithm5Angle10PI_TIMES_2E@Base 3.4.2 + _ZN4geos9algorithm5Angle12angleBetweenERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm5Angle13interiorAngleERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm5Angle17normalizePositiveEd@Base 3.4.2 + _ZN4geos9algorithm5Angle20angleBetweenOrientedERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm5Angle4diffEdd@Base 3.4.2 + _ZN4geos9algorithm5Angle5angleERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm5Angle5angleERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9algorithm5Angle7getTurnEdd@Base 3.4.2 + _ZN4geos9algorithm5Angle7isAcuteERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm5Angle8isObtuseERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm5Angle9PI_OVER_2E@Base 3.4.2 + _ZN4geos9algorithm5Angle9PI_OVER_4E@Base 3.4.2 + _ZN4geos9algorithm5Angle9normalizeEd@Base 3.4.2 + _ZN4geos9algorithm5Angle9toDegreesEd@Base 3.4.2 + _ZN4geos9algorithm5Angle9toRadiansEd@Base 3.4.2 + _ZN4geos9algorithm6locate24SimplePointInAreaLocator13containsPointERKNS_4geom10CoordinateEPKNS3_8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate24SimplePointInAreaLocator22containsPointInPolygonERKNS_4geom10CoordinateEPKNS3_7PolygonE@Base 3.4.2 + _ZN4geos9algorithm6locate24SimplePointInAreaLocator6locateEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm6locate24SimplePointInAreaLocator6locateERKNS_4geom10CoordinateEPKNS3_8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator10buildIndexERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitor9visitItemEPv@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorD0Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorD1Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorD2Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometry4initERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometry5queryEddPNS_5index11ItemVisitorE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometry7addLineEPNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryC1ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryC2ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryD1Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator23IntervalIndexedGeometryD2Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocator6locateEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorC1ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorC2ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorD0Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorD1Ev@Base 3.4.2 + _ZN4geos9algorithm6locate25IndexedPointInAreaLocatorD2Ev@Base 3.4.2 + _ZN4geos9algorithm8Centroid11addTriangleERKNS_4geom10CoordinateES5_S5_b@Base 3.4.2 + _ZN4geos9algorithm8Centroid11getCentroidERKNS_4geom8GeometryERNS2_10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm8Centroid12setBasePointERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm8Centroid15addLineSegmentsERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm8Centroid3addERKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9algorithm8Centroid3addERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9algorithm8Centroid5area2ERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZN4geos9algorithm8Centroid7addHoleERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm8Centroid8addPointERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm8Centroid8addShellERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9algorithm8Centroid9centroid3ERKNS_4geom10CoordinateES5_S5_RS3_@Base 3.4.2 + _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom10LineStringERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 + _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom11LineSegmentERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 + _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom7PolygonERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 + _ZN4geos9algorithm8distance15DistanceToPoint15computeDistanceERKNS_4geom8GeometryERKNS3_10CoordinateERNS1_17PointPairDistanceE@Base 3.4.2 + (subst)_ZN4geos9algorithm8distance23DiscreteFrechetDistance13getSegementAtERKNS_4geom18CoordinateSequenceE{size_t}@Base 3.7.0 + (subst)_ZN4geos9algorithm8distance23DiscreteFrechetDistance17getFrecheDistanceERSt6vectorIS3_INS1_17PointPairDistanceESaIS4_EESaIS6_EE{size_t}{size_t}RKNS_4geom18CoordinateSequenceESD_@Base 3.7.0 + _ZN4geos9algorithm8distance23DiscreteFrechetDistance7computeERKNS_4geom8GeometryES6_@Base 3.7.0 + _ZN4geos9algorithm8distance23DiscreteFrechetDistance8distanceERKNS_4geom8GeometryES6_@Base 3.7.0 + _ZN4geos9algorithm8distance23DiscreteFrechetDistance8distanceERKNS_4geom8GeometryES6_d@Base 3.7.0 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterD0Ev@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterD1Ev@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterD2Ev@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance23computeOrientedDistanceERKNS_4geom8GeometryES6_RNS1_17PointPairDistanceE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter9filter_roERKNS_4geom18CoordinateSequenceEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter9filter_roERKNS_4geom18CoordinateSequenceEm@Base 3.7.0 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterD0Ev@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterD1Ev@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterD2Ev@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance8distanceERKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9algorithm8distance25DiscreteHausdorffDistance8distanceERKNS_4geom8GeometryES6_d@Base 3.4.2 + _ZN4geos9algorithmlsERSoRKNS0_11HCoordinateE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar11getLocationEiRKNS_4geom10CoordinateEPSt6vectorIPNS0_13GeometryGraphESaIS8_EE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar13getCoordinateEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar13insertEdgeEndEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar16computeLabellingEPSt6vectorIPNS0_13GeometryGraphESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar19propagateSideLabelsEi@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar20computeEdgeEndLabelsERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar22isAreaLabelsConsistentERKNS0_13GeometryGraphE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar25checkAreaLabelsConsistentEi@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar3endEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar4findEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar4rendEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar5beginEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar6rbeginEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar8getEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar9getDegreeEv@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStar9getNextCWEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStarC1Ev@Base 3.4.2 + _ZN4geos9geomgraph11EdgeEndStarC2Ev@Base 3.4.2 + _ZN4geos9geomgraph11NodeFactory8instanceEv@Base 3.4.2 + _ZN4geos9geomgraph11NodeFactoryD0Ev@Base 3.4.2 + _ZN4geos9geomgraph11NodeFactoryD1Ev@Base 3.4.2 + _ZN4geos9geomgraph11NodeFactoryD2Ev@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph10getNodeMapEv@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph10insertEdgeEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph10printEdgesB5cxx11Ev@Base 3.5.1 + _ZN4geos9geomgraph11PlanarGraph11findEdgeEndEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph11getEdgeEndsEv@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph14isBoundaryNodeEiRKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph15getEdgeIteratorEv@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph15getNodeIteratorEv@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph20linkAllDirectedEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph20matchInSameDirectionERKNS_4geom10CoordinateES5_S5_S5_@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph23findEdgeInSameDirectionERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph23linkResultDirectedEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph3addEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph4findERNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph7addNodeEPNS0_4NodeE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph7addNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph8addEdgesERKSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph8findEdgeERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraph8getNodesERSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphC1ERKNS0_11NodeFactoryE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphC1Ev@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphC2ERKNS0_11NodeFactoryE@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphC2Ev@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphD0Ev@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphD1Ev@Base 3.4.2 + _ZN4geos9geomgraph11PlanarGraphD2Ev@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge10getNextMinEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge10isInResultEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge10isLineEdgeEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge10setNextMinEPS1_@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge10setVisitedEb@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge11depthFactorEii@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge11getEdgeRingEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge11setEdgeRingEPNS0_8EdgeRingE@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge11setInResultEb@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge13setEdgeDepthsEii@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge14getMinEdgeRingEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge14setMinEdgeRingEPNS0_8EdgeRingE@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge14setVisitedEdgeEb@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge18isInteriorAreaEdgeEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge20computeDirectedLabelEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge6getSymEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge6setSymEPS1_@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge7getNextEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge7setNextEPS1_@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge8getDepthEi@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge8setDepthEii@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge9isForwardEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge9isVisitedEv@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdge9printEdgeB5cxx11Ev@Base 3.5.1 + _ZN4geos9geomgraph12DirectedEdgeC1EPNS0_4EdgeEb@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdgeC2EPNS0_4EdgeEb@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdgeD0Ev@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdgeD1Ev@Base 3.4.2 + _ZN4geos9geomgraph12DirectedEdgeD2Ev@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph10addPolygonEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph11getGeometryEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph11insertPointEiRKNS_4geom10CoordinateEi@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph12isInBoundaryEi@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph13addCollectionEPKNS_4geom18GeometryCollectionE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph13addLineStringEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph14addPolygonRingEPKNS_4geom10LinearRingEii@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph15getInvalidPointEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph15hasTooFewPointsEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph16computeSelfNodesERNS_9algorithm15LineIntersectorEbPKNS_4geom8EnvelopeE@Base 3.5.0 + _ZN4geos9geomgraph13GeometryGraph16computeSelfNodesERNS_9algorithm15LineIntersectorEbbPKNS_4geom8EnvelopeE@Base 3.5.1 + _ZN4geos9geomgraph13GeometryGraph16getBoundaryNodesERSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph16getBoundaryNodesEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph17computeSplitEdgesEPSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph17determineBoundaryERKNS_9algorithm16BoundaryNodeRuleEi@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph17determineBoundaryEi@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph17getBoundaryPointsEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph19insertBoundaryPointEiRKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph23addSelfIntersectionNodeEiRKNS_4geom10CoordinateEi@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph24addSelfIntersectionNodesEi@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph24computeEdgeIntersectionsEPS1_PNS_9algorithm15LineIntersectorEbPKNS_4geom8EnvelopeE@Base 3.5.0 + _ZN4geos9geomgraph13GeometryGraph24createEdgeSetIntersectorEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph7addEdgeEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph8addPointEPKNS_4geom5PointE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph8addPointERNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph8findEdgeEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraph8getEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphC1EiPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphC1EiPKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphC1Ev@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphC2EiPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphC2EiPKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphC2Ev@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphD0Ev@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphD1Ev@Base 3.4.2 + _ZN4geos9geomgraph13GeometryGraphD2Ev@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponent10setCoveredEb@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponent10setVisitedEb@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponent11setInResultEb@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponent8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentC1ERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentC1Ev@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentC2ERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentC2Ev@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentD0Ev@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentD1Ev@Base 3.4.2 + _ZN4geos9geomgraph14GraphComponentD2Ev@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar13computeDepthsEPNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar13computeDepthsESt23_Rb_tree_const_iteratorIPNS0_7EdgeEndEES5_i@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar14mergeSymLabelsEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar15updateLabellingERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar16computeLabellingEPSt6vectorIPNS0_13GeometryGraphESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar16getRightmostEdgeEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar17getOutgoingDegreeEPNS0_8EdgeRingE@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar17getOutgoingDegreeEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar18getResultAreaEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar20findCoveredLineEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar20linkAllDirectedEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar23linkResultDirectedEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar24linkMinimalDirectedEdgesEPNS0_8EdgeRingE@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStar6insertEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStarD0Ev@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStarD1Ev@Base 3.4.2 + _ZN4geos9geomgraph16DirectedEdgeStarD2Ev@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocation11setLocationEi@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos9geomgraph16TopologyLocation11setLocationEji@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos9geomgraph16TopologyLocation11setLocationEmi@Base 3.7.0 + _ZN4geos9geomgraph16TopologyLocation12setLocationsEiii@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocation15setAllLocationsEi@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocation21setAllLocationsIfNullEi@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocation4flipEv@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocation5mergeERKS1_@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC1ERKS1_@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC1ERKSt6vectorIiSaIiEE@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC1Ei@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC1Eiii@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC1Ev@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC2ERKS1_@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC2ERKSt6vectorIiSaIiEE@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC2Ei@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC2Eiii@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationC2Ev@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationD1Ev@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationD2Ev@Base 3.4.2 + _ZN4geos9geomgraph16TopologyLocationaSERKS1_@Base 3.4.2 + _ZN4geos9geomgraph19EdgeNodingValidator16toSegmentStringsERSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph19EdgeNodingValidatorD1Ev@Base 3.4.2 + _ZN4geos9geomgraph19EdgeNodingValidatorD2Ev@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionList12addEndpointsEv@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionList13addSplitEdgesEPSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionList15createSplitEdgeEPNS0_16EdgeIntersectionES3_@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionList3addERKNS_4geom10CoordinateEid@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionListC1EPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionListC2EPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionListD1Ev@Base 3.4.2 + _ZN4geos9geomgraph20EdgeIntersectionListD2Ev@Base 3.4.2 + (optional=templinst)_ZN4geos9geomgraph26collect_intersecting_edgesIN9__gnu_cxx17__normal_iteratorIPPNS0_4EdgeESt6vectorIS5_SaIS5_EEEES9_EEvPKNS_4geom8EnvelopeET_SF_RT0_@Base 3.5.0 + _ZN4geos9geomgraph4Edge11getEnvelopeEv@Base 3.4.2 + _ZN4geos9geomgraph4Edge11setIsolatedEb@Base 3.4.2 + _ZN4geos9geomgraph4Edge13setDepthDeltaEi@Base 3.4.2 + _ZN4geos9geomgraph4Edge15addIntersectionEPNS_9algorithm15LineIntersectorEiii@Base 3.4.2 + _ZN4geos9geomgraph4Edge16addIntersectionsEPNS_9algorithm15LineIntersectorEii@Base 3.4.2 + _ZN4geos9geomgraph4Edge16getCollapsedEdgeEv@Base 3.4.2 + _ZN4geos9geomgraph4Edge20getMonotoneChainEdgeEv@Base 3.4.2 + _ZN4geos9geomgraph4Edge23getEdgeIntersectionListEv@Base 3.4.2 + _ZN4geos9geomgraph4Edge7setNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZN4geos9geomgraph4Edge8getDepthEv@Base 3.4.2 + _ZN4geos9geomgraph4Edge8updateIMERKNS0_5LabelERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9geomgraph4Edge9computeIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9geomgraph4EdgeC1EPNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9geomgraph4EdgeC1EPNS_4geom18CoordinateSequenceERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph4EdgeC2EPNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9geomgraph4EdgeC2EPNS_4geom18CoordinateSequenceERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph4EdgeD0Ev@Base 3.4.2 + _ZN4geos9geomgraph4EdgeD1Ev@Base 3.4.2 + _ZN4geos9geomgraph4EdgeD2Ev@Base 3.4.2 + _ZN4geos9geomgraph4Node10mergeLabelERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph4Node10mergeLabelERKS1_@Base 3.4.2 + _ZN4geos9geomgraph4Node16setLabelBoundaryEi@Base 3.4.2 + _ZN4geos9geomgraph4Node21computeMergedLocationERKNS0_5LabelEi@Base 3.4.2 + _ZN4geos9geomgraph4Node3addEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph4Node4addZEd@Base 3.4.2 + _ZN4geos9geomgraph4Node5printB5cxx11Ev@Base 3.5.1 + _ZN4geos9geomgraph4Node8getEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph4Node8setLabelEii@Base 3.4.2 + _ZN4geos9geomgraph4Node9computeIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9geomgraph4NodeC1ERKNS_4geom10CoordinateEPNS0_11EdgeEndStarE@Base 3.4.2 + _ZN4geos9geomgraph4NodeC2ERKNS_4geom10CoordinateEPNS0_11EdgeEndStarE@Base 3.4.2 + _ZN4geos9geomgraph4NodeD0Ev@Base 3.4.2 + _ZN4geos9geomgraph4NodeD1Ev@Base 3.4.2 + _ZN4geos9geomgraph4NodeD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5Depth15depthAtLocationEi@Base 3.4.2 + _ZN4geos9geomgraph5Depth3addERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph5Depth3addEiii@Base 3.4.2 + _ZN4geos9geomgraph5Depth8setDepthEiii@Base 3.4.2 + _ZN4geos9geomgraph5Depth9normalizeEv@Base 3.4.2 + _ZN4geos9geomgraph5DepthC1Ev@Base 3.4.2 + _ZN4geos9geomgraph5DepthC2Ev@Base 3.4.2 + _ZN4geos9geomgraph5DepthD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5DepthD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5DepthD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5Label11setLocationEii@Base 3.4.2 + _ZN4geos9geomgraph5Label11setLocationEiii@Base 3.4.2 + _ZN4geos9geomgraph5Label11toLineLabelERKS1_@Base 3.4.2 + _ZN4geos9geomgraph5Label15setAllLocationsEii@Base 3.4.2 + _ZN4geos9geomgraph5Label21setAllLocationsIfNullEi@Base 3.4.2 + _ZN4geos9geomgraph5Label21setAllLocationsIfNullEii@Base 3.4.2 + _ZN4geos9geomgraph5Label4flipEv@Base 3.4.2 + _ZN4geos9geomgraph5Label5mergeERKS1_@Base 3.4.2 + _ZN4geos9geomgraph5Label6toLineEi@Base 3.4.2 + _ZN4geos9geomgraph5LabelC1ERKS1_@Base 3.4.2 + _ZN4geos9geomgraph5LabelC1Ei@Base 3.4.2 + _ZN4geos9geomgraph5LabelC1Eii@Base 3.4.2 + _ZN4geos9geomgraph5LabelC1Eiii@Base 3.4.2 + _ZN4geos9geomgraph5LabelC1Eiiii@Base 3.4.2 + _ZN4geos9geomgraph5LabelC1Ev@Base 3.4.2 + _ZN4geos9geomgraph5LabelC2ERKS1_@Base 3.4.2 + _ZN4geos9geomgraph5LabelC2Ei@Base 3.4.2 + _ZN4geos9geomgraph5LabelC2Eii@Base 3.4.2 + _ZN4geos9geomgraph5LabelC2Eiii@Base 3.4.2 + _ZN4geos9geomgraph5LabelC2Eiiii@Base 3.4.2 + _ZN4geos9geomgraph5LabelC2Ev@Base 3.4.2 + _ZN4geos9geomgraph5LabelaSERKS1_@Base 3.4.2 + _ZN4geos9geomgraph5index13MonotoneChainD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index13MonotoneChainD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index13MonotoneChainD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index14SweepLineEvent5printB5cxx11Ev@Base 3.5.1 + _ZN4geos9geomgraph5index14SweepLineEvent9compareToEPS2_@Base 3.4.2 + _ZN4geos9geomgraph5index14SweepLineEventC1EPvdPS2_PNS1_17SweepLineEventOBJE@Base 3.4.2 + _ZN4geos9geomgraph5index14SweepLineEventC2EPvdPS2_PNS1_17SweepLineEventOBJE@Base 3.4.2 + _ZN4geos9geomgraph5index14SweepLineEventD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index14SweepLineEventD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index14SweepLineEventD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegment20computeIntersectionsEPS2_PNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegment7getMaxXEv@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegment7getMinXEv@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegmentC1EPNS0_4EdgeEi@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegmentC2EPNS0_4EdgeEi@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegmentD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegmentD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index16SweepLineSegmentD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge14getCoordinatesEv@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge15getStartIndexesEv@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge17computeIntersectsERKS2_RNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge25computeIntersectsForChainEiRKS2_iRNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge25computeIntersectsForChainEiiRKS2_iiRNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge7getMaxXEi@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdge7getMinXEi@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdgeC1EPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdgeC2EPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdgeD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index17MonotoneChainEdgeD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index17SweepLineEventOBJD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index17SweepLineEventOBJD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index17SweepLineEventOBJD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector15hasIntersectionEv@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector15isBoundaryPointEPNS_9algorithm15LineIntersectorEPSt6vectorIPNS0_4NodeESaIS8_EE@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector15isBoundaryPointEPNS_9algorithm15LineIntersectorERSt6vectorIPS6_IPNS0_4NodeESaIS8_EESaISB_EE@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector16addIntersectionsEPNS0_4EdgeEiS4_i@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector16setBoundaryNodesEPSt6vectorIPNS0_4NodeESaIS5_EES8_@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector18isAdjacentSegmentsEii@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector20setIsDoneIfProperIntEb@Base 3.5.1 + _ZN4geos9geomgraph5index18SegmentIntersector21hasProperIntersectionEv@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector21isTrivialIntersectionEPNS0_4EdgeEiS4_i@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector26getProperIntersectionPointEv@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector29hasProperInteriorIntersectionEv@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersector9getIsDoneEv@Base 3.5.1 + _ZN4geos9geomgraph5index18SegmentIntersectorD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersectorD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index18SegmentIntersectorD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index20MonotoneChainIndexer12findChainEndEPKNS_4geom18CoordinateSequenceEi@Base 3.4.2 + _ZN4geos9geomgraph5index20MonotoneChainIndexer20getChainStartIndicesEPKNS_4geom18CoordinateSequenceERSt6vectorIiSaIiEE@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersector17computeIntersectsEPNS0_4EdgeES4_PNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EEPNS1_18SegmentIntersectorEb@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EES8_PNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorC1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorC2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index24SimpleEdgeSetIntersectorD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector13prepareEventsEv@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector15processOverlapsEiiPNS1_14SweepLineEventEPNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector20computeIntersectionsEPNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EEPNS1_18SegmentIntersectorEb@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EES8_PNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector3addEPNS0_4EdgeEPv@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EE@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EEPv@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorC1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorC2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index26SimpleSweepLineIntersectorD2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector13prepareEventsEv@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector15processOverlapsEiiPNS1_14SweepLineEventEPNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector20computeIntersectionsEPNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EEPNS1_18SegmentIntersectorEb@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector20computeIntersectionsEPSt6vectorIPNS0_4EdgeESaIS5_EES8_PNS1_18SegmentIntersectorE@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector3addEPNS0_4EdgeEPv@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EE@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersector3addEPSt6vectorIPNS0_4EdgeESaIS5_EEPv@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorC1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorC2Ev@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorD0Ev@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorD1Ev@Base 3.4.2 + _ZN4geos9geomgraph5index28SimpleMCSweepLineIntersectorD2Ev@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd11getQuadrantEv@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd12computeLabelERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd13getCoordinateEv@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd21getDirectedCoordinateEv@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd4initERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd5getDxEv@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd5getDyEv@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd7getNodeEv@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEnd7setNodeEPNS0_4NodeE@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC1EPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC1EPNS0_4EdgeERKNS_4geom10CoordinateES7_@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC1EPNS0_4EdgeERKNS_4geom10CoordinateES7_RKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC1Ev@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC2EPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC2EPNS0_4EdgeERKNS_4geom10CoordinateES7_@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC2EPNS0_4EdgeERKNS_4geom10CoordinateES7_RKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndC2Ev@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndD0Ev@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndD1Ev@Base 3.4.2 + _ZN4geos9geomgraph7EdgeEndD2Ev@Base 3.4.2 + _ZN4geos9geomgraph7NodeMap3addEPNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraph7NodeMap7addNodeEPNS0_4NodeE@Base 3.4.2 + _ZN4geos9geomgraph7NodeMap7addNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph7NodeMapC1ERKNS0_11NodeFactoryE@Base 3.4.2 + _ZN4geos9geomgraph7NodeMapC2ERKNS0_11NodeFactoryE@Base 3.4.2 + _ZN4geos9geomgraph7NodeMapD0Ev@Base 3.4.2 + _ZN4geos9geomgraph7NodeMapD1Ev@Base 3.4.2 + _ZN4geos9geomgraph7NodeMapD2Ev@Base 3.4.2 + _ZN4geos9geomgraph8EdgeList13findEdgeIndexEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeList13findEqualEdgeEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeList3addEPNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeList3getEi@Base 3.4.2 + _ZN4geos9geomgraph8EdgeList5printB5cxx11Ev@Base 3.5.1 + _ZN4geos9geomgraph8EdgeList6addAllERKSt6vectorIPNS0_4EdgeESaIS4_EE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeList9clearListEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeListD0Ev@Base 3.4.2 + _ZN4geos9geomgraph8EdgeListD1Ev@Base 3.4.2 + _ZN4geos9geomgraph8EdgeListD2Ev@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing10isIsolatedEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing10mergeLabelERKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing10mergeLabelERKNS0_5LabelEi@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing11computeRingEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing11setInResultEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing13computePointsEPNS0_12DirectedEdgeE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing13containsPointERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing13getLinearRingEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing16getMaxNodeDegreeEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing20computeMaxNodeDegreeEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing6isHoleEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing7addHoleEPS1_@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing7isShellEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing8getEdgesEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing8getLabelEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing8getShellEv@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing8setShellEPS1_@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing9addPointsEPNS0_4EdgeEbb@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRing9toPolygonEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRingC1EPNS0_12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRingC2EPNS0_12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRingD0Ev@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRingD1Ev@Base 3.4.2 + _ZN4geos9geomgraph8EdgeRingD2Ev@Base 3.4.2 + _ZN4geos9geomgraph8Position8oppositeEi@Base 3.4.2 + _ZN4geos9geomgraph8Quadrant10isNorthernEi@Base 3.4.2 + _ZN4geos9geomgraph8Quadrant10isOppositeEii@Base 3.4.2 + _ZN4geos9geomgraph8Quadrant13isInHalfPlaneEii@Base 3.4.2 + _ZN4geos9geomgraph8Quadrant15commonHalfPlaneEii@Base 3.4.2 + _ZN4geos9geomgraph8Quadrant8quadrantERKNS_4geom10CoordinateES5_@Base 3.4.2 + _ZN4geos9geomgraph8Quadrant8quadrantEdd@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_11EdgeEndStarE@Base 3.6.0 + _ZN4geos9geomgraphlsERSoRKNS0_16TopologyLocationE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_20EdgeIntersectionListE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_4EdgeE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_4NodeE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_5LabelE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_7EdgeEndE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_8EdgeListE@Base 3.4.2 + _ZN4geos9geomgraphlsERSoRKNS0_8EdgeRingE@Base 3.4.2 + _ZN4geos9linearref14LinearIterator15loadCurrentLineEv@Base 3.4.2 + _ZN4geos9linearref14LinearIterator21segmentEndVertexIndexERKNS0_14LinearLocationE@Base 3.4.2 + _ZN4geos9linearref14LinearIterator4nextEv@Base 3.4.2 + _ZN4geos9linearref14LinearIteratorC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref14LinearIteratorC1EPKNS_4geom8GeometryERKNS0_14LinearLocationE@Base 3.4.2 + _ZN4geos9linearref14LinearIteratorC1EPKNS_4geom8GeometryEjj@Base 3.4.2 + _ZN4geos9linearref14LinearIteratorC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref14LinearIteratorC2EPKNS_4geom8GeometryERKNS0_14LinearLocationE@Base 3.4.2 + _ZN4geos9linearref14LinearIteratorC2EPKNS_4geom8GeometryEjj@Base 3.4.2 + _ZN4geos9linearref14LinearLocation12snapToVertexEPKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9linearref14LinearLocation14getEndLocationEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref14LinearLocation21compareLocationValuesEjjdjjd@Base 3.4.2 + _ZN4geos9linearref14LinearLocation27pointAlongSegmentByFractionERKNS_4geom10CoordinateES5_d@Base 3.4.2 + _ZN4geos9linearref14LinearLocation5clampEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref14LinearLocation8setToEndEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref14LinearLocation9normalizeEv@Base 3.4.2 + _ZN4geos9linearref14LinearLocationC1Ejd@Base 3.4.2 + _ZN4geos9linearref14LinearLocationC1Ejjd@Base 3.4.2 + _ZN4geos9linearref14LinearLocationC2Ejd@Base 3.4.2 + _ZN4geos9linearref14LinearLocationC2Ejjd@Base 3.4.2 + _ZN4geos9linearref17LengthIndexedLineC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref17LengthIndexedLineC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref17LengthLocationMap9getLengthEPKNS_4geom8GeometryERKNS0_14LinearLocationE@Base 3.4.2 + _ZN4geos9linearref17LengthLocationMapC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref17LengthLocationMapC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref18LengthIndexOfPoint12indexOfAfterEPKNS_4geom8GeometryERKNS2_10CoordinateEd@Base 3.4.2 + _ZN4geos9linearref18LengthIndexOfPoint7indexOfEPKNS_4geom8GeometryERKNS2_10CoordinateE@Base 3.4.2 + _ZN4geos9linearref18LengthIndexOfPointC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref18LengthIndexOfPointC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref19LocationIndexOfLine9indicesOfEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9linearref19LocationIndexOfLineC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref19LocationIndexOfLineC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref20LocationIndexOfPoint12indexOfAfterEPKNS_4geom8GeometryERKNS2_10CoordinateEPKNS0_14LinearLocationE@Base 3.4.2 + _ZN4geos9linearref20LocationIndexOfPoint7indexOfEPKNS_4geom8GeometryERKNS2_10CoordinateE@Base 3.4.2 + _ZN4geos9linearref20LocationIndexOfPointC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref20LocationIndexOfPointC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocation11computeLineERKNS0_14LinearLocationES4_@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocation13computeLinearERKNS0_14LinearLocationES4_@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocation7extractEPKNS_4geom8GeometryERKNS0_14LinearLocationES8_@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocation7extractERKNS0_14LinearLocationES4_@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocation7reverseEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocationC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref21ExtractLineByLocationC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilder11getGeometryEv@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilder18setFixInvalidLinesEb@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilder21setIgnoreInvalidLinesEb@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilder3addERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilder3addERKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilder7endLineEv@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilderC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilderC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilderD1Ev@Base 3.4.2 + _ZN4geos9linearref21LinearGeometryBuilderD2Ev@Base 3.4.2 + _ZN4geos9linearreflsERSoRKNS0_14LinearLocationE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp11addEndpointERSt3mapIPKNS_4geom10CoordinateEPNS0_12EndpointInfoENS3_18CoordinateLessThenESaISt4pairIKS6_S8_EEES6_b@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp18isSimpleMultiPointERKNS_4geom10MultiPointE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp22isSimpleLinearGeometryEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp26hasNonEndpointIntersectionERNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp29hasClosedEndpointIntersectionERNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp8isSimpleEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp8isSimpleEPKNS_4geom10MultiPointE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp8isSimpleEPKNS_4geom15MultiLineStringE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOp8isSimpleEv@Base 3.4.2 + _ZN4geos9operation10IsSimpleOpC1ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOpC1ERKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOpC1Ev@Base 3.4.2 + _ZN4geos9operation10IsSimpleOpC2ERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOpC2ERKNS_4geom8GeometryERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation10IsSimpleOpC2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer10getDanglesEv@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer10polygonizeEv@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer11getCutEdgesEv@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer11getPolygonsEv@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer14findValidRingsERKSt6vectorIPNS1_8EdgeRingESaIS5_EERS7_RS3_IPNS_4geom10LineStringESaISD_EE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer15LineStringAdder9filter_roEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderC1EPS2_@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderC2EPS2_@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderD0Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderD1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer15LineStringAdderD2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer17assignHoleToShellEPNS1_8EdgeRingERSt6vectorIS4_SaIS4_EE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer18findShellsAndHolesERKSt6vectorIPNS1_8EdgeRingESaIS5_EE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer19assignHolesToShellsERKSt6vectorIPNS1_8EdgeRingESaIS5_EERS7_@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer19getInvalidRingLinesEv@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer3addEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer3addEPNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer3addEPSt6vectorIPKNS_4geom8GeometryESaIS7_EE@Base 3.4.2 + _ZN4geos9operation10polygonize11Polygonizer3addEPSt6vectorIPNS_4geom8GeometryESaIS6_EE@Base 3.4.2 + _ZN4geos9operation10polygonize11PolygonizerC1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11PolygonizerC2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11PolygonizerD1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize11PolygonizerD2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize14PolygonizeEdge7getLineEv@Base 3.4.2 + _ZN4geos9operation10polygonize14PolygonizeEdgeC1EPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation10polygonize14PolygonizeEdgeC2EPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation10polygonize14PolygonizeEdgeD0Ev@Base 3.4.2 + _ZN4geos9operation10polygonize14PolygonizeEdgeD1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize14PolygonizeEdgeD2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph12findEdgeRingEPNS1_22PolygonizeDirectedEdgeE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph12getEdgeRingsERSt6vectorIPNS1_8EdgeRingESaIS5_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph13deleteDanglesERSt6vectorIPKNS_4geom10LineStringESaIS7_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph14deleteAllEdgesEPNS_11planargraph4NodeE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph14deleteCutEdgesERSt6vectorIPKNS_4geom10LineStringESaIS7_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph18computeNextCWEdgesEPNS_11planargraph4NodeE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph18computeNextCWEdgesEv@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph18findDirEdgesInRingEPNS1_22PolygonizeDirectedEdgeERSt6vectorIPNS_11planargraph12DirectedEdgeESaIS8_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph19computeNextCCWEdgesEPNS_11planargraph4NodeEl@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph19getDegreeNonDeletedEPNS_11planargraph4NodeE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph20findLabeledEdgeRingsERSt6vectorIPNS_11planargraph12DirectedEdgeESaIS6_EERS3_IPNS1_22PolygonizeDirectedEdgeESaISB_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph21findIntersectionNodesEPNS1_22PolygonizeDirectedEdgeElRSt6vectorIPNS_11planargraph4NodeESaIS8_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph32convertMaximalToMinimalEdgeRingsERSt6vectorIPNS1_22PolygonizeDirectedEdgeESaIS5_EE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph5labelERSt6vectorIPNS_11planargraph12DirectedEdgeESaIS6_EEl@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph7addEdgeEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph7getNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraph9getDegreeEPNS_11planargraph4NodeEl@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraphC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraphC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraphD0Ev@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraphD1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize15PolygonizeGraphD2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdge7setNextEPS2_@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdge7setRingEPNS1_8EdgeRingE@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdge8setLabelEl@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeC1EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeC2EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeD0Ev@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeD1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize22PolygonizeDirectedEdgeD2Ev@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing10getPolygonEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing11ptNotInListEPKNS_4geom18CoordinateSequenceES6_@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing13getLineStringEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing14getCoordinatesEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing15getRingInternalEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing16getRingOwnershipEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing22findEdgeRingContainingEPS2_PSt6vectorIS3_SaIS3_EE@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing3addEPKNS_11planargraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing6isHoleEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing7addEdgeEPKNS_4geom18CoordinateSequenceEbPS4_@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing7addHoleEPNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing7isValidEv@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRing8isInListERKNS_4geom10CoordinateEPKNS3_18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRingC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRingC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRingD1Ev@Base 3.4.2 + _ZN4geos9operation10polygonize8EdgeRingD2Ev@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOp10clearEdgesERSt6vectorIPNS_4geom10LineStringESaIS6_EE@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOp13sharedPathsOpERKNS_4geom8GeometryES6_RSt6vectorIPNS3_10LineStringESaIS9_EESC_@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOp14getSharedPathsERSt6vectorIPNS_4geom10LineStringESaIS6_EES9_@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOp16checkLinealInputERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOp23findLinearIntersectionsERSt6vectorIPNS_4geom10LineStringESaIS6_EE@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOp9isForwardERKNS_4geom10LineStringERKNS3_8GeometryE@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOpC1ERKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation11sharedpaths13SharedPathsOpC2ERKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation12EndpointInfoC1ERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation12EndpointInfoC2ERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation12intersection13clip_to_edgesERdS2_ddRKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection14normalize_ringERSt6vectorINS_4geom10CoordinateESaIS4_EE@Base 3.5.0 + _ZN4geos9operation12intersection14reverse_pointsERSt6vectorINS_4geom10CoordinateESaIS4_EEii@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection10clip_pointEPKNS_4geom5PointERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection12clipBoundaryERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection12clipBoundaryEv@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection12clip_polygonEPKNS_4geom7PolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection15clip_linestringEPKNS_4geom10LineStringERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection15clip_multipointEPKNS_4geom10MultiPointERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection17clip_multipolygonEPKNS_4geom12MultiPolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection20clip_multilinestringEPKNS_4geom15MultiLineStringERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection21clip_linestring_partsEPKNS_4geom10LineStringERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection23clip_geometrycollectionEPKNS_4geom18GeometryCollectionERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection24clip_polygon_to_polygonsEPKNS_4geom7PolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection27clip_polygon_to_linestringsEPKNS_4geom7PolygonERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection4clipERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection4clipEv@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersection9clip_geomEPKNS_4geom8GeometryERNS1_28RectangleIntersectionBuilderERKNS1_9RectangleEb@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersectionC1ERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection21RectangleIntersectionC2ERKNS_4geom8GeometryERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder10close_ringERKNS1_9RectangleEPSt6vectorINS_4geom10CoordinateESaIS8_EE@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder12reverseLinesEv@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder14close_boundaryERKNS1_9RectangleEPSt6vectorINS_4geom10CoordinateESaIS8_EEdddd@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder17reconnectPolygonsERKNS1_9RectangleE@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder3addEPNS_4geom10LineStringE@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder3addEPNS_4geom5PointE@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder3addEPNS_4geom7PolygonE@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder5buildEv@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder5clearEv@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder7releaseERS2_@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilder9reconnectEv@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilderD1Ev@Base 3.5.0 + _ZN4geos9operation12intersection28RectangleIntersectionBuilderD2Ev@Base 3.5.0 + _ZN4geos9operation12intersection8distanceERKNS1_9RectangleERKSt6vectorINS_4geom10CoordinateESaIS7_EE@Base 3.5.0 + _ZN4geos9operation12intersection8distanceERKNS1_9RectangleERKSt6vectorINS_4geom10CoordinateESaIS7_EEPKNS6_10LineStringE@Base 3.5.0 + _ZN4geos9operation12intersection8distanceERKNS1_9RectangleEdddd@Base 3.5.0 + _ZN4geos9operation12intersection9RectangleC1Edddd@Base 3.5.0 + _ZN4geos9operation12intersection9RectangleC2Edddd@Base 3.5.0 + _ZN4geos9operation22GeometryGraphOperation23setComputationPrecisionEPKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationC1EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationC1EPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationC1EPKNS_4geom8GeometryES5_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationC2EPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationC2EPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationC2EPKNS_4geom8GeometryES5_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationD0Ev@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationD1Ev@Base 3.4.2 + _ZN4geos9operation22GeometryGraphOperationD2Ev@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester13getCoordinateEv@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom12MultiPolygonE@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom15MultiLineStringE@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom18GeometryCollectionE@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9operation5valid19RepeatedPointTester16hasRepeatedPointEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTester15getInvalidPointEv@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTester17hasDuplicateRingsEv@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTester20isNodeConsistentAreaEv@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTester30isNodeEdgeAreaLabelsConsistentEv@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTesterC1EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTesterC2EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTesterD1Ev@Base 3.4.2 + _ZN4geos9operation5valid20ConsistentAreaTesterD2Ev@Base 3.4.2 + _ZN4geos9operation5valid22SimpleNestedRingTester11isNonNestedEv@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester13getCoordinateEv@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester14buildEdgeRingsEPSt6vectorIPNS_9geomgraph7EdgeEndESaIS6_EERS3_IPNS4_8EdgeRingESaISB_EE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester17visitInteriorRingEPKNS_4geom10LineStringERNS_9geomgraph11PlanarGraphE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester18findDifferentPointEPKNS_4geom18CoordinateSequenceERKNS3_10CoordinateE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester19visitShellInteriorsEPKNS_4geom8GeometryERNS_9geomgraph11PlanarGraphE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester20isInteriorsConnectedEv@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester21hasUnvisitedShellEdgeEPSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester24setInteriorEdgesInResultERNS_9geomgraph11PlanarGraphE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTester24visitLinkedDirectedEdgesEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTesterC1ERNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTesterC2ERNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTesterD1Ev@Base 3.4.2 + _ZN4geos9operation5valid23ConnectedInteriorTesterD2Ev@Base 3.4.2 + _ZN4geos9operation5valid23IndexedNestedRingTester10buildIndexEv@Base 3.4.2 + _ZN4geos9operation5valid23IndexedNestedRingTester11isNonNestedEv@Base 3.4.2 + _ZN4geos9operation5valid23IndexedNestedRingTesterD1Ev@Base 3.4.2 + _ZN4geos9operation5valid23IndexedNestedRingTesterD2Ev@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationError10getMessageB5cxx11Ev@Base 3.5.1 + _ZN4geos9operation5valid23TopologyValidationError12getErrorTypeEv@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationError13getCoordinateEv@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationError6errMsgE@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationError8toStringB5cxx11Ev@Base 3.5.1 + _ZN4geos9operation5valid23TopologyValidationErrorC1Ei@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationErrorC1EiRKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationErrorC2Ei@Base 3.4.2 + _ZN4geos9operation5valid23TopologyValidationErrorC2EiRKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTester11isNonNestedEv@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTester13buildQuadtreeEv@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTester14getNestedPointEv@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTester3addEPKNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTesterC1EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTesterC2EPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTesterD1Ev@Base 3.4.2 + _ZN4geos9operation5valid24QuadtreeNestedRingTesterD2Ev@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester10buildIndexEv@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester11isNonNestedEv@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapAction7overlapEPNS_5index9sweepline17SweepLineIntervalES7_@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionC1EPS2_@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionC2EPS2_@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionD0Ev@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionD1Ev@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionD2Ev@Base 3.4.2 + _ZN4geos9operation5valid25SweeplineNestedRingTester8isInsideEPNS_4geom10LinearRingES5_@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom12MultiPolygonE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom18GeometryCollectionE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom5PointE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp10checkValidEv@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp13findPtNotNodeEPKNS_4geom18CoordinateSequenceEPKNS3_10LinearRingEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp15checkClosedRingEPKNS_4geom10LinearRingE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp16checkClosedRingsEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp17checkHolesInShellEPKNS_4geom7PolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp17checkTooFewPointsEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp18getValidationErrorEv@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp19checkConsistentAreaEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp19checkHolesNotNestedEPKNS_4geom7PolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp19checkShellNotNestedEPKNS_4geom10LinearRingEPKNS3_7PolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp20checkShellInsideHoleEPKNS_4geom10LinearRingES6_PNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp20checkShellsNotNestedEPKNS_4geom12MultiPolygonEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp23checkConnectedInteriorsERNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp23checkInvalidCoordinatesEPKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp23checkInvalidCoordinatesEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp27checkNoSelfIntersectingRingERNS_9geomgraph20EdgeIntersectionListE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp28checkNoSelfIntersectingRingsEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp7isValidERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp7isValidERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOp7isValidEv@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOpD0Ev@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOpD1Ev@Base 3.4.2 + _ZN4geos9operation5valid9IsValidOpD2Ev@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder10depthDeltaERKNS_9geomgraph5LabelE@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder14buildSubgraphsERKSt6vectorIPNS1_14BufferSubgraphESaIS5_EERNS0_7overlay14PolygonBuilderE@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder15createSubgraphsEPNS_9geomgraph11PlanarGraphERSt6vectorIPNS1_14BufferSubgraphESaIS8_EE@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder16insertUniqueEdgeEPNS_9geomgraph4EdgeE@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder17computeNodedEdgesERSt6vectorIPNS_6noding13SegmentStringESaIS6_EEPKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder21bufferLineSingleSidedEPKNS_4geom8GeometryEdb@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder6bufferEPKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilder8getNoderEPKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilderD1Ev@Base 3.4.2 + _ZN4geos9operation6buffer13BufferBuilderD2Ev@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph11getEnvelopeEv@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph12addReachableEPNS_9geomgraph4NodeE@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph12computeDepthEi@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph13computeDepthsEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph13copySymDepthsEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph15findResultEdgesEv@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph16computeNodeDepthEPNS_9geomgraph4NodeE@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph17clearVisitedEdgesEv@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph3addEPNS_9geomgraph4NodeEPSt6vectorIS5_SaIS5_EE@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph6createEPNS_9geomgraph4NodeE@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph8containsERSt3setIPNS_9geomgraph4NodeESt4lessIS6_ESaIS6_EES6_@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraph9compareToEPS2_@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraphC1Ev@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraphC2Ev@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraphD1Ev@Base 3.4.2 + _ZN4geos9operation6buffer14BufferSubgraphD2Ev@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParameters19DEFAULT_MITRE_LIMITE@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParameters19bufferDistanceErrorEi@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParameters19setQuadrantSegmentsEi@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC1Ei@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC1EiNS2_11EndCapStyleE@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC1EiNS2_11EndCapStyleENS2_9JoinStyleEd@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC1Ev@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC2Ei@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC2EiNS2_11EndCapStyleE@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC2EiNS2_11EndCapStyleENS2_9JoinStyleEd@Base 3.4.2 + _ZN4geos9operation6buffer16BufferParametersC2Ev@Base 3.4.2 + _ZN4geos9operation6buffer16BufferSubgraphGTEPNS1_14BufferSubgraphES3_@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder12getLineCurveEPKNS_4geom18CoordinateSequenceEdRSt6vectorIPS4_SaIS8_EE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder12getRingCurveEPKNS_4geom18CoordinateSequenceEidRSt6vectorIPS4_SaIS8_EE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder15SIMPLIFY_FACTORE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder17computePointCurveERKNS_4geom10CoordinateERNS1_22OffsetSegmentGeneratorE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder17simplifyToleranceEd@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder22computeLineBufferCurveERKNS_4geom18CoordinateSequenceERNS1_22OffsetSegmentGeneratorE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder22computeRingBufferCurveERKNS_4geom18CoordinateSequenceEiRNS1_22OffsetSegmentGeneratorE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder23getSingleSidedLineCurveEPKNS_4geom18CoordinateSequenceEdRSt6vectorIPS4_SaIS8_EEbb@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder29computeSingleSidedBufferCurveERKNS_4geom18CoordinateSequenceEbRNS1_22OffsetSegmentGeneratorE@Base 3.4.2 + _ZN4geos9operation6buffer18OffsetCurveBuilder9getSegGenEd@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinder16getRightmostSideEPNS_9geomgraph12DirectedEdgeEi@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinder23findRightmostEdgeAtNodeEv@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinder25findRightmostEdgeAtVertexEv@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinder25getRightmostSideOfSegmentEPNS_9geomgraph12DirectedEdgeEi@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinder27checkForRightmostCoordinateEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinder8findEdgeEPSt6vectorIPNS_9geomgraph12DirectedEdgeESaIS6_EE@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinderC1Ev@Base 3.4.2 + _ZN4geos9operation6buffer19RightmostEdgeFinderC2Ev@Base 3.4.2 + _ZN4geos9operation6buffer20SubgraphDepthLocater19findStabbedSegmentsERKNS_4geom10CoordinateEPNS_9geomgraph12DirectedEdgeERSt6vectorIPNS1_12DepthSegmentESaISC_EE@Base 3.4.2 + _ZN4geos9operation6buffer20SubgraphDepthLocater19findStabbedSegmentsERKNS_4geom10CoordinateEPSt6vectorIPNS_9geomgraph12DirectedEdgeESaISA_EERS7_IPNS1_12DepthSegmentESaISF_EE@Base 3.4.2 + _ZN4geos9operation6buffer20SubgraphDepthLocater19findStabbedSegmentsERKNS_4geom10CoordinateERSt6vectorIPNS1_12DepthSegmentESaIS9_EE@Base 3.4.2 + _ZN4geos9operation6buffer20SubgraphDepthLocater8getDepthERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder10addPolygonEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder13addCollectionEPKNS_4geom18GeometryCollectionE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder13addLineStringEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder14addPolygonRingEPKNS_4geom18CoordinateSequenceEdiii@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder18isErodedCompletelyEPKNS_4geom10LinearRingEd@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder26isTriangleErodedCompletelyEPKNS_4geom18CoordinateSequenceEd@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder3addERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder8addCurveEPNS_4geom18CoordinateSequenceEii@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder8addPointEPKNS_4geom5PointE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder9addCurvesERKSt6vectorIPNS_4geom18CoordinateSequenceESaIS6_EEii@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilder9getCurvesEv@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilderC1ERKNS_4geom8GeometryEdRNS1_18OffsetCurveBuilderE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilderC2ERKNS_4geom8GeometryEdRNS1_18OffsetCurveBuilderE@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilderD1Ev@Base 3.4.2 + _ZN4geos9operation6buffer21OffsetCurveSetBuilderD2Ev@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator12addBevelJoinERKNS_4geom11LineSegmentES6_@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator12addCollinearEb@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator12addMitreJoinERKNS_4geom10CoordinateERKNS3_11LineSegmentES9_d@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator12createCircleERKNS_4geom10CoordinateEd@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator12createSquareERKNS_4geom10CoordinateEd@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator13addInsideTurnEib@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator13addLineEndCapERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator14addNextSegmentERKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator14addOutsideTurnEib@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator15SIMPLIFY_FACTORE@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator16initSideSegmentsERKNS_4geom10CoordinateES6_i@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator19addLimitedMitreJoinERKNS_4geom11LineSegmentES6_dd@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator20computeOffsetSegmentERKNS_4geom11LineSegmentEidRS4_@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator2PIE@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator32OFFSET_SEGMENT_SEPARATION_FACTORE@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator33CURVE_VERTEX_SNAP_DISTANCE_FACTORE@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator39INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTORE@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator4initEd@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator9addFilletERKNS_4geom10CoordinateES6_S6_id@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGenerator9addFilletERKNS_4geom10CoordinateEddid@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGeneratorC1EPKNS_4geom14PrecisionModelERKNS1_16BufferParametersEd@Base 3.4.2 + _ZN4geos9operation6buffer22OffsetSegmentGeneratorC2EPKNS_4geom14PrecisionModelERKNS1_16BufferParametersEd@Base 3.4.2 + _ZN4geos9operation6buffer25BufferInputLineSimplifier24deleteShallowConcavitiesEv@Base 3.4.2 + _ZN4geos9operation6buffer25BufferInputLineSimplifier8simplifyERKNS_4geom18CoordinateSequenceEd@Base 3.4.2 + _ZN4geos9operation6buffer25BufferInputLineSimplifier8simplifyEd@Base 3.4.2 + _ZN4geos9operation6buffer25BufferInputLineSimplifierC1ERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9operation6buffer25BufferInputLineSimplifierC2ERKNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp15computeGeometryEv@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp17getResultGeometryEd@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp20bufferFixedPrecisionERKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp20precisionScaleFactorEPKNS_4geom8GeometryEdi@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp22bufferReducedPrecisionEi@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp22bufferReducedPrecisionEv@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp23bufferOriginalPrecisionEv@Base 3.4.2 + _ZN4geos9operation6buffer8BufferOp8bufferOpEPKNS_4geom8GeometryEdii@Base 3.4.2 + _ZN4geos9operation6bufferlsERSoRKNS1_14BufferSubgraphE@Base 3.4.2 + _ZN4geos9operation6relate10RelateNode17updateIMFromEdgesERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate10RelateNode9computeIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate10RelateNodeC1ERKNS_4geom10CoordinateEPNS_9geomgraph11EdgeEndStarE@Base 3.4.2 + _ZN4geos9operation6relate10RelateNodeC2ERKNS_4geom10CoordinateEPNS_9geomgraph11EdgeEndStarE@Base 3.4.2 + _ZN4geos9operation6relate10RelateNodeD0Ev@Base 3.4.2 + _ZN4geos9operation6relate10RelateNodeD1Ev@Base 3.4.2 + _ZN4geos9operation6relate10RelateNodeD2Ev@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle11getEdgeEndsEv@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle12computeLabelERKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle14computeLabelOnEiRKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle16computeLabelSideEii@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle17computeLabelSidesEi@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle6insertEPNS_9geomgraph7EdgeEndE@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundle8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundleC1EPNS_9geomgraph7EdgeEndE@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundleC2EPNS_9geomgraph7EdgeEndE@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundleD0Ev@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundleD1Ev@Base 3.4.2 + _ZN4geos9operation6relate13EdgeEndBundleD2Ev@Base 3.4.2 + _ZN4geos9operation6relate14EdgeEndBuilder15computeEdgeEndsEPNS_9geomgraph4EdgeEPSt6vectorIPNS3_7EdgeEndESaIS8_EE@Base 3.4.2 + _ZN4geos9operation6relate14EdgeEndBuilder15computeEdgeEndsEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EE@Base 3.4.2 + _ZN4geos9operation6relate14EdgeEndBuilder20createEdgeEndForNextEPNS_9geomgraph4EdgeEPSt6vectorIPNS3_7EdgeEndESaIS8_EEPNS3_16EdgeIntersectionESD_@Base 3.4.2 + _ZN4geos9operation6relate14EdgeEndBuilder20createEdgeEndForPrevEPNS_9geomgraph4EdgeEPSt6vectorIPNS3_7EdgeEndESaIS8_EEPNS3_16EdgeIntersectionESD_@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer14insertEdgeEndsEPSt6vectorIPNS_9geomgraph7EdgeEndESaIS6_EE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer14labelNodeEdgesEv@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer17computeDisjointIMEPNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer17labelIsolatedEdgeEPNS_9geomgraph4EdgeEiPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer17labelIsolatedNodeEPNS_9geomgraph4NodeEi@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer18copyNodesAndLabelsEi@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer18labelIsolatedEdgesEii@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer18labelIsolatedNodesEv@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer22labelIntersectionNodesEi@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer24computeIntersectionNodesEi@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer27computeProperIntersectionIMEPNS_9geomgraph5index18SegmentIntersectorEPNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputer9computeIMEv@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputerC1EPSt6vectorIPNS_9geomgraph13GeometryGraphESaIS6_EE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputerC2EPSt6vectorIPNS_9geomgraph13GeometryGraphESaIS6_EE@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputerD1Ev@Base 3.4.2 + _ZN4geos9operation6relate14RelateComputerD2Ev@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraph10getNodeMapEv@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraph14insertEdgeEndsEPSt6vectorIPNS_9geomgraph7EdgeEndESaIS6_EE@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraph18copyNodesAndLabelsEPNS_9geomgraph13GeometryGraphEi@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraph24computeIntersectionNodesEPNS_9geomgraph13GeometryGraphEi@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraph5buildEPNS_9geomgraph13GeometryGraphE@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraphC1Ev@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraphC2Ev@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraphD0Ev@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraphD1Ev@Base 3.4.2 + _ZN4geos9operation6relate15RelateNodeGraphD2Ev@Base 3.4.2 + _ZN4geos9operation6relate17EdgeEndBundleStar6insertEPNS_9geomgraph7EdgeEndE@Base 3.4.2 + _ZN4geos9operation6relate17EdgeEndBundleStar8updateIMERNS_4geom18IntersectionMatrixE@Base 3.4.2 + _ZN4geos9operation6relate17EdgeEndBundleStarD0Ev@Base 3.4.2 + _ZN4geos9operation6relate17EdgeEndBundleStarD1Ev@Base 3.4.2 + _ZN4geos9operation6relate17EdgeEndBundleStarD2Ev@Base 3.4.2 + _ZN4geos9operation6relate17RelateNodeFactory8instanceEv@Base 3.4.2 + _ZN4geos9operation6relate17RelateNodeFactoryD0Ev@Base 3.4.2 + _ZN4geos9operation6relate17RelateNodeFactoryD1Ev@Base 3.4.2 + _ZN4geos9operation6relate17RelateNodeFactoryD2Ev@Base 3.4.2 + _ZN4geos9operation6relate8RelateOp21getIntersectionMatrixEv@Base 3.4.2 + _ZN4geos9operation6relate8RelateOp6relateEPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation6relate8RelateOp6relateEPKNS_4geom8GeometryES6_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpC1EPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpC1EPKNS_4geom8GeometryES6_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpC2EPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpC2EPKNS_4geom8GeometryES6_RKNS_9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpD0Ev@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpD1Ev@Base 3.4.2 + _ZN4geos9operation6relate8RelateOpD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder10buildLinesENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder10propagateZEPNS_4geom18CoordinateSequenceE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder12collectLinesENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder15collectLineEdgeEPNS_9geomgraph12DirectedEdgeENS1_9OverlayOp6OpCodeEPSt6vectorIPNS3_4EdgeESaISA_EE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder17labelIsolatedLineEPNS_9geomgraph4EdgeEi@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder18labelIsolatedLinesEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder20findCoveredLineEdgesEv@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder24collectBoundaryTouchEdgeEPNS_9geomgraph12DirectedEdgeENS1_9OverlayOp6OpCodeEPSt6vectorIPNS3_4EdgeESaISA_EE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilder5buildENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilderC1EPNS1_9OverlayOpEPKNS_4geom15GeometryFactoryEPNS_9algorithm12PointLocatorE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilderC2EPNS1_9OverlayOpEPKNS_4geom15GeometryFactoryEPNS_9algorithm12PointLocatorE@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilderD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay11LineBuilderD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay12EdgeSetNoder13getNodedEdgesEv@Base 3.4.2 + _ZN4geos9operation7overlay12EdgeSetNoder8addEdgesEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EE@Base 3.4.2 + _ZN4geos9operation7overlay12PointBuilder24filterCoveredNodeToPointEPKNS_9geomgraph4NodeE@Base 3.4.2 + _ZN4geos9operation7overlay12PointBuilder28extractNonCoveredResultNodesENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay12PointBuilder5buildENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder11getPolygonsEv@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder13containsPointERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder14placeFreeHolesERSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EES9_@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder15computePolygonsERSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder17placePolygonHolesEPNS_9geomgraph8EdgeRingEPSt6vectorIPNS1_15MinimalEdgeRingESaIS8_EE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder18sortShellsAndHolesERSt6vectorIPNS1_15MaximalEdgeRingESaIS5_EERS3_IPNS_9geomgraph8EdgeRingESaISB_EESE_@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder21buildMaximalEdgeRingsEPKSt6vectorIPNS_9geomgraph12DirectedEdgeESaIS6_EERS3_IPNS1_15MaximalEdgeRingESaISC_EE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder21buildMinimalEdgeRingsERSt6vectorIPNS1_15MaximalEdgeRingESaIS5_EERS3_IPNS_9geomgraph8EdgeRingESaISB_EESE_S8_@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder22findEdgeRingContainingEPNS_9geomgraph8EdgeRingERSt6vectorIS5_SaIS5_EE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder3addEPKSt6vectorIPNS_9geomgraph12DirectedEdgeESaIS6_EEPKS3_IPNS4_4NodeESaISC_EE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder3addEPNS_9geomgraph11PlanarGraphE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilder9findShellEPSt6vectorIPNS1_15MinimalEdgeRingESaIS5_EE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilderC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilderC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilderD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay14PolygonBuilderD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrix3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrix3addERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrix7getCellERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrixC1ERKNS_4geom8EnvelopeEjj@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrixC2ERKNS_4geom8EnvelopeEjj@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrixD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay15ElevationMatrixD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRing11setEdgeRingEPNS_9geomgraph12DirectedEdgeEPNS3_8EdgeRingE@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRing17buildMinimalRingsERSt6vectorIPNS1_15MinimalEdgeRingESaIS5_EE@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRing17buildMinimalRingsERSt6vectorIPNS_9geomgraph8EdgeRingESaIS6_EE@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRing17buildMinimalRingsEv@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRing36linkDirectedEdgesForMinimalEdgeRingsEv@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRing7getNextEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRingC1EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRingC2EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRingD0Ev@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRingD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay15MaximalEdgeRingD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRing11setEdgeRingEPNS_9geomgraph12DirectedEdgeEPNS3_8EdgeRingE@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRing7getNextEPNS_9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRingC1EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRingC2EPNS_9geomgraph12DirectedEdgeEPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRingD0Ev@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRingD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay15MinimalEdgeRingD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay18OverlayNodeFactory8instanceEv@Base 3.4.2 + _ZN4geos9operation7overlay18OverlayNodeFactoryD0Ev@Base 3.4.2 + _ZN4geos9operation7overlay18OverlayNodeFactoryD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay18OverlayNodeFactoryD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay19ElevationMatrixCell3addERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay19ElevationMatrixCell3addEd@Base 3.4.2 + _ZN4geos9operation7overlay19ElevationMatrixCellC1Ev@Base 3.4.2 + _ZN4geos9operation7overlay19ElevationMatrixCellC2Ev@Base 3.4.2 + _ZN4geos9operation7overlay19ElevationMatrixCellD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay19ElevationMatrixCellD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay21ElevationMatrixFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay21ElevationMatrixFilterC1ERNS1_15ElevationMatrixE@Base 3.4.2 + _ZN4geos9operation7overlay21ElevationMatrixFilterC2ERNS1_15ElevationMatrixE@Base 3.4.2 + _ZN4geos9operation7overlay21ElevationMatrixFilterD0Ev@Base 3.4.2 + _ZN4geos9operation7overlay21ElevationMatrixFilterD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay21ElevationMatrixFilterD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay4snap13SnapOverlayOp13prepareResultERNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay4snap13SnapOverlayOp16removeCommonBitsERKNS_4geom8GeometryES7_RNS4_11GeomPtrPairE@Base 3.4.2 + _ZN4geos9operation7overlay4snap13SnapOverlayOp17getResultGeometryENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay4snap13SnapOverlayOp20computeSnapToleranceEv@Base 3.4.2 + _ZN4geos9operation7overlay4snap13SnapOverlayOp4snapERNS_4geom11GeomPtrPairE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper10snapToSelfERKNS_4geom8GeometryEdb@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper10snapToSelfEdb@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper19snapPrecisionFactorE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper24extractTargetCoordinatesERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper27computeOverlaySnapToleranceERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper27computeOverlaySnapToleranceERKNS_4geom8GeometryES7_@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper29computeSizeBasedSnapToleranceERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper4snapERKNS_4geom8GeometryES7_dRNS4_11GeomPtrPairE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15GeometrySnapper6snapToERKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9operation7overlay4snap15SnapTransformer20transformCoordinatesEPKNS_4geom18CoordinateSequenceEPKNS4_8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay4snap15SnapTransformerD0Ev@Base 3.4.2 + _ZN4geos9operation7overlay4snap15SnapTransformerD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay4snap15SnapTransformerD2Ev@Base 3.4.2 + _ZN4geos9operation7overlay4snap17LineStringSnapper12snapSegmentsERNS_4geom14CoordinateListERKSt6vectorIPKNS4_10CoordinateESaISA_EE@Base 3.4.2 + _ZN4geos9operation7overlay4snap17LineStringSnapper12snapVerticesERNS_4geom14CoordinateListERKSt6vectorIPKNS4_10CoordinateESaISA_EE@Base 3.4.2 + _ZN4geos9operation7overlay4snap17LineStringSnapper16findVertexToSnapERKNS_4geom10CoordinateESt14_List_iteratorIS5_ES9_@Base 3.4.2 + _ZN4geos9operation7overlay4snap17LineStringSnapper17findSegmentToSnapERKNS_4geom10CoordinateESt14_List_iteratorIS5_ES9_@Base 3.4.2 + _ZN4geos9operation7overlay4snap17LineStringSnapper17findSnapForVertexERKNS_4geom10CoordinateERKSt6vectorIPS6_SaIS9_EE@Base 3.4.2 + _ZN4geos9operation7overlay4snap17LineStringSnapper6snapToERKSt6vectorIPKNS_4geom10CoordinateESaIS8_EE@Base 3.4.2 + _ZN4geos9operation7overlay4snap21SnapIfNeededOverlayOp17getResultGeometryENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay8validate17FuzzyPointLocator11getLineWorkERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay8validate17FuzzyPointLocator11getLocationERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay8validate17FuzzyPointLocator15extractLineWorkERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay8validate17FuzzyPointLocatorC1ERKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9operation7overlay8validate17FuzzyPointLocatorC2ERKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9operation7overlay8validate20OffsetPointGenerator13extractPointsEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation7overlay8validate20OffsetPointGenerator14computeOffsetsERKNS_4geom10CoordinateES7_@Base 3.4.2 + _ZN4geos9operation7overlay8validate20OffsetPointGenerator9getPointsEv@Base 3.4.2 + _ZN4geos9operation7overlay8validate20OffsetPointGeneratorC1ERKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9operation7overlay8validate20OffsetPointGeneratorC2ERKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator10addTestPtsERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator11addVerticesERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator13isValidResultENS1_9OverlayOp6OpCodeERSt6vectorINS_4geom8Location5ValueESaIS9_EE@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator32computeBoundaryDistanceToleranceERKNS_4geom8GeometryES7_@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator7isValidENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator7isValidERKNS_4geom8GeometryES7_NS1_9OverlayOp6OpCodeES7_@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator9testValidENS1_9OverlayOp6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidator9testValidENS1_9OverlayOp6OpCodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidatorC1ERKNS_4geom8GeometryES7_S7_@Base 3.4.2 + _ZN4geos9operation7overlay8validate22OverlayResultValidatorC2ERKNS_4geom8GeometryES7_S7_@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp10copyPointsEiPKNS_4geom8EnvelopeE@Base 3.5.0 + _ZN4geos9operation7overlay9OverlayOp11getAverageZEPKNS_4geom7PolygonE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp11getAverageZEi@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp12isCoveredByAERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp12isResultOfOpERKNS_9geomgraph5LabelENS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp12isResultOfOpEiiNS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp13isCoveredByLAERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp14computeOverlayENS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp14mergeSymLabelsEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp15computeGeometryEPSt6vectorIPNS_4geom5PointESaIS6_EEPS3_IPNS4_10LineStringESaISB_EEPS3_IPNS4_7PolygonESaISG_EE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp16computeLabellingEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp16insertUniqueEdgeEPNS_9geomgraph4EdgeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp17getResultGeometryENS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp17insertUniqueEdgesEPSt6vectorIPNS_9geomgraph4EdgeESaIS6_EEPKNS_4geom8EnvelopeE@Base 3.5.0 + _ZN4geos9operation7overlay9OverlayOp19findResultAreaEdgesENS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp19labelIncompleteNodeEPNS_9geomgraph4NodeEi@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp19updateNodeLabellingEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp20labelIncompleteNodesEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp21replaceCollapsedEdgesEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp23computeLabelsFromDepthsEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp25checkObviouslyWrongResultENS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp26cancelDuplicateResultEdgesEv@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp9isCoveredERKNS_4geom10CoordinateEPSt6vectorIPNS3_10LineStringESaIS9_EE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp9isCoveredERKNS_4geom10CoordinateEPSt6vectorIPNS3_7PolygonESaIS9_EE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp9isCoveredERKNS_4geom10CoordinateEPSt6vectorIPNS3_8GeometryESaIS9_EE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOp9overlayOpEPKNS_4geom8GeometryES6_NS2_6OpCodeE@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOpC1EPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOpC2EPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOpD0Ev@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOpD1Ev@Base 3.4.2 + _ZN4geos9operation7overlay9OverlayOpD2Ev@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp13closestPointsEPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp13closestPointsEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp13computeInsideEPNS1_16GeometryLocationEPKNS_4geom7PolygonEPSt6vectorIS4_SaIS4_EE@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp13computeInsideEPSt6vectorIPNS1_16GeometryLocationESaIS5_EERKS3_IPKNS_4geom7PolygonESaISC_EES8_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp13nearestPointsEPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp13nearestPointsEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp16isWithinDistanceERKNS_4geom8GeometryES6_d@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp16nearestLocationsEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp17updateMinDistanceERSt6vectorIPNS1_16GeometryLocationESaIS5_EEb@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp18computeMinDistanceEPKNS_4geom10LineStringEPKNS3_5PointERSt6vectorIPNS1_16GeometryLocationESaISC_EE@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp18computeMinDistanceEPKNS_4geom10LineStringES6_RSt6vectorIPNS1_16GeometryLocationESaIS9_EE@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp18computeMinDistanceEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp20computeFacetDistanceEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp23computeMinDistanceLinesERKSt6vectorIPKNS_4geom10LineStringESaIS7_EESB_RS3_IPNS1_16GeometryLocationESaISD_EE@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp24computeMinDistancePointsERKSt6vectorIPKNS_4geom5PointESaIS7_EESB_RS3_IPNS1_16GeometryLocationESaISD_EE@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp26computeContainmentDistanceEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp29computeMinDistanceLinesPointsERKSt6vectorIPKNS_4geom10LineStringESaIS7_EERKS3_IPKNS4_5PointESaISE_EERS3_IPNS1_16GeometryLocationESaISK_EE@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp8distanceEPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp8distanceERKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOp8distanceEv@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpC1EPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpC1ERKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpC1ERKNS_4geom8GeometryES6_d@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpC2EPKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpC2ERKNS_4geom8GeometryES6_@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpC2ERKNS_4geom8GeometryES6_d@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpD1Ev@Base 3.4.2 + _ZN4geos9operation8distance10DistanceOpD2Ev@Base 3.4.2 + _ZN4geos9operation8distance13FacetSequence15computeEnvelopeEv@Base 3.6.0 + (subst)_ZN4geos9operation8distance13FacetSequenceC1EPKNS_4geom18CoordinateSequenceE{size_t}{size_t}@Base 3.6.0 + (subst)_ZN4geos9operation8distance13FacetSequenceC2EPKNS_4geom18CoordinateSequenceE{size_t}{size_t}@Base 3.6.0 + _ZN4geos9operation8distance16GeometryLocation12isInsideAreaEv@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocation13getCoordinateEv@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocation15getSegmentIndexEv@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocation20getGeometryComponentEv@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocationC1EPKNS_4geom8GeometryERKNS3_10CoordinateE@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocationC1EPKNS_4geom8GeometryEiRKNS3_10CoordinateE@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocationC2EPKNS_4geom8GeometryERKNS3_10CoordinateE@Base 3.4.2 + _ZN4geos9operation8distance16GeometryLocationC2EPKNS_4geom8GeometryEiRKNS3_10CoordinateE@Base 3.4.2 + _ZN4geos9operation8distance20IndexedFacetDistance8distanceEPKNS_4geom8GeometryES6_@Base 3.7.0 + _ZN4geos9operation8distance20IndexedFacetDistanceD1Ev@Base 3.7.0 + _ZN4geos9operation8distance20IndexedFacetDistanceD2Ev@Base 3.7.0 + _ZN4geos9operation8distance24FacetSequenceTreeBuilder17addFacetSequencesEPKNS_4geom18CoordinateSequenceERSt6vectorIPNS1_13FacetSequenceESaIS9_EE@Base 3.6.0 + _ZN4geos9operation8distance24FacetSequenceTreeBuilder21computeFacetSequencesEPKNS_4geom8GeometryE@Base 3.6.0 + _ZN4geos9operation8distance24FacetSequenceTreeBuilder5buildEPKNS_4geom8GeometryE@Base 3.6.0 + _ZN4geos9operation8distance27ConnectedElementPointFilter14getCoordinatesEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation8distance27ConnectedElementPointFilter9filter_roEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation8distance27ConnectedElementPointFilterD0Ev@Base 3.4.2 + _ZN4geos9operation8distance27ConnectedElementPointFilterD1Ev@Base 3.4.2 + _ZN4geos9operation8distance27ConnectedElementPointFilterD2Ev@Base 3.4.2 + _ZN4geos9operation8distance30ConnectedElementLocationFilter12getLocationsEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation8distance30ConnectedElementLocationFilter9filter_roEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation8distance30ConnectedElementLocationFilter9filter_rwEPNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation8distance30ConnectedElementLocationFilterD0Ev@Base 3.4.2 + _ZN4geos9operation8distance30ConnectedElementLocationFilterD1Ev@Base 3.4.2 + _ZN4geos9operation8distance30ConnectedElementLocationFilterD2Ev@Base 3.4.2 + _ZN4geos9operation8distance7Deleter9visitItemEPv@Base 3.7.0 + _ZN4geos9operation8distance7DeleterD0Ev@Base 3.7.0 + _ZN4geos9operation8distance7DeleterD1Ev@Base 3.7.0 + _ZN4geos9operation8distance7DeleterD2Ev@Base 3.7.0 + _ZN4geos9operation8distance7deleterE@Base 3.7.0 + _ZN4geos9operation8geounion12UnaryUnionOp13unionWithNullESt10unique_ptrINS_4geom8GeometryESt14default_deleteIS5_EES8_@Base 3.7.0 + _ZN4geos9operation8geounion12UnaryUnionOp5UnionEv@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion11binaryUnionEPNS1_18GeometryListHolderE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos9operation8geounion13CascadedUnion11binaryUnionEPNS1_18GeometryListHolderEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos9operation8geounion13CascadedUnion11binaryUnionEPNS1_18GeometryListHolderEmm@Base 3.7.0 + _ZN4geos9operation8geounion13CascadedUnion11unionActualEPNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion14unionOptimizedEPNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion17extractByEnvelopeERKNS_4geom8EnvelopeEPNS3_8GeometryERSt6vectorIS8_SaIS8_EE@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion18reduceToGeometriesEPNS_5index7strtree9ItemsListE@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion30unionUsingEnvelopeIntersectionEPNS_4geom8GeometryES5_RKNS3_8EnvelopeE@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion5UnionEPSt6vectorIPNS_4geom8GeometryESaIS6_EE@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion5UnionEv@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion9unionSafeEPNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation8geounion13CascadedUnion9unionTreeEPNS_5index7strtree9ItemsListE@Base 3.4.2 + _ZN4geos9operation8geounion18GeometryListHolder10deleteItemEPNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation8geounion18PointGeometryUnion5UnionERKNS_4geom6PuntalERKNS3_8GeometryE@Base 3.4.2 + _ZN4geos9operation8geounion18PointGeometryUnionC1ERKNS_4geom6PuntalERKNS3_8GeometryE@Base 3.4.2 + _ZN4geos9operation8geounion18PointGeometryUnionC2ERKNS_4geom6PuntalERKNS3_8GeometryE@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion11binaryUnionEPNS1_18GeometryListHolderE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZN4geos9operation8geounion20CascadedPolygonUnion11binaryUnionEPNS1_18GeometryListHolderEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZN4geos9operation8geounion20CascadedPolygonUnion11binaryUnionEPNS1_18GeometryListHolderEmm@Base 3.7.0 + _ZN4geos9operation8geounion20CascadedPolygonUnion11unionActualEPNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion14unionOptimizedEPNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion17extractByEnvelopeERKNS_4geom8EnvelopeEPNS3_8GeometryERSt6vectorIS8_SaIS8_EE@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion17extractByEnvelopeERKNS_4geom8EnvelopeEPNS3_8GeometryERSt6vectorIS8_SaIS8_EESC_@Base 3.6.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion17extractByEnvelopeERKNS_4geom8EnvelopeERSt6vectorIPNS3_8GeometryESaIS9_EESC_SC_@Base 3.6.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion18reduceToGeometriesEPNS_5index7strtree9ItemsListE@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion18restrictToPolygonsESt10unique_ptrINS_4geom8GeometryESt14default_deleteIS5_EE@Base 3.7.0 + _ZN4geos9operation8geounion20CascadedPolygonUnion30unionUsingEnvelopeIntersectionEPNS_4geom8GeometryES5_RKNS3_8EnvelopeE@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion5UnionEPKNS_4geom12MultiPolygonE@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion5UnionEPSt6vectorIPNS_4geom7PolygonESaIS6_EE@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion5UnionEv@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion9unionSafeEPNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9operation8geounion20CascadedPolygonUnion9unionTreeEPNS_5index7strtree9ItemsListE@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeString12toLineStringEv@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeString14getCoordinatesEv@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeString3addEPNS1_21LineMergeDirectedEdgeE@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeStringC1EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeStringC2EPKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeStringD1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge10EdgeStringD2Ev@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger20getMergedLineStringsEv@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger26buildEdgeStringsStartingAtEPNS_11planargraph4NodeE@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger27buildEdgeStringStartingWithEPNS1_21LineMergeDirectedEdgeE@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger32buildEdgeStringsForIsolatedLoopsEv@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger34buildEdgeStringsForNonDegree2NodesEv@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger35buildEdgeStringsForUnprocessedNodesEv@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger36buildEdgeStringsForObviousStartNodesEv@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger3addEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger3addEPSt6vectorIPNS_4geom8GeometryESaIS6_EE@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMerger5mergeEv@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMergerC1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMergerC2Ev@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMergerD1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge10LineMergerD2Ev@Base 3.4.2 + _ZN4geos9operation9linemerge13LineMergeEdgeC1EPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineMergeEdgeC2EPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineMergeEdgeD0Ev@Base 3.4.2 + _ZN4geos9operation9linemerge13LineMergeEdgeD1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge13LineMergeEdgeD2Ev@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer11hasSequenceERNS_11planargraph8SubgraphE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer11isSequencedEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer12findSequenceB5cxx11ERNS_11planargraph8SubgraphE@Base 3.5.1 + _ZN4geos9operation9linemerge13LineSequencer13findSequencesB5cxx11Ev@Base 3.5.1 + _ZN4geos9operation9linemerge13LineSequencer15computeSequenceEv@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer17addReverseSubpathEPKNS_11planargraph12DirectedEdgeERNSt7__cxx114listIPS4_SaIS9_EEESt14_List_iteratorIS9_Eb@Base 3.5.1 + _ZN4geos9operation9linemerge13LineSequencer20findLowestDegreeNodeERKNS_11planargraph8SubgraphE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer22buildSequencedGeometryERKSt6vectorIPNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS8_EEESaISB_EE@Base 3.5.1 + _ZN4geos9operation9linemerge13LineSequencer27findUnvisitedBestOrientedDEEPKNS_11planargraph4NodeE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer6delAllERSt6vectorIPNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS8_EEESaISB_EE@Base 3.5.1 + _ZN4geos9operation9linemerge13LineSequencer6orientEPNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS7_EEE@Base 3.5.1 + _ZN4geos9operation9linemerge13LineSequencer7addLineEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer7reverseEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9linemerge13LineSequencer7reverseERNSt7__cxx114listIPNS_11planargraph12DirectedEdgeESaIS7_EEE@Base 3.5.1 + _ZN4geos9operation9linemerge14LineMergeGraph7addEdgeEPKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9linemerge14LineMergeGraph7getNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation9linemerge14LineMergeGraphD0Ev@Base 3.4.2 + _ZN4geos9operation9linemerge14LineMergeGraphD1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge14LineMergeGraphD2Ev@Base 3.4.2 + _ZN4geos9operation9linemerge21LineMergeDirectedEdge7getNextEv@Base 3.4.2 + _ZN4geos9operation9linemerge21LineMergeDirectedEdgeC1EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos9operation9linemerge21LineMergeDirectedEdgeC2EPNS_11planargraph4NodeES5_RKNS_4geom10CoordinateEb@Base 3.4.2 + _ZN4geos9operation9linemerge21LineMergeDirectedEdgeD0Ev@Base 3.4.2 + _ZN4geos9operation9linemerge21LineMergeDirectedEdgeD1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge21LineMergeDirectedEdgeD2Ev@Base 3.4.2 + _ZN4geos9operation9linemerge25LMGeometryComponentFilterD0Ev@Base 3.4.2 + _ZN4geos9operation9linemerge25LMGeometryComponentFilterD1Ev@Base 3.4.2 + _ZN4geos9operation9linemerge25LMGeometryComponentFilterD2Ev@Base 3.4.2 + _ZN4geos9operation9predicate17RectangleContains21isContainedInBoundaryERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9predicate17RectangleContains26isPointContainedInBoundaryERKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9operation9predicate17RectangleContains26isPointContainedInBoundaryERKNS_4geom5PointE@Base 3.4.2 + _ZN4geos9operation9predicate17RectangleContains31isLineStringContainedInBoundaryERKNS_4geom10LineStringE@Base 3.4.2 + _ZN4geos9operation9predicate17RectangleContains32isLineSegmentContainedInBoundaryERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZN4geos9operation9predicate17RectangleContains8containsERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9predicate19RectangleIntersects10intersectsERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9predicate20ContainsPointVisitor5visitERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9predicate20ContainsPointVisitor6isDoneEv@Base 3.4.2 + _ZN4geos9operation9predicate20ContainsPointVisitorD0Ev@Base 3.4.2 + _ZN4geos9operation9predicate20ContainsPointVisitorD1Ev@Base 3.4.2 + _ZN4geos9operation9predicate20ContainsPointVisitorD2Ev@Base 3.4.2 + _ZN4geos9operation9predicate21LineIntersectsVisitor5visitERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9predicate21LineIntersectsVisitor6isDoneEv@Base 3.4.2 + _ZN4geos9operation9predicate21LineIntersectsVisitorD0Ev@Base 3.4.2 + _ZN4geos9operation9predicate21LineIntersectsVisitorD1Ev@Base 3.4.2 + _ZN4geos9operation9predicate21LineIntersectsVisitorD2Ev@Base 3.4.2 + _ZN4geos9operation9predicate25EnvelopeIntersectsVisitor5visitERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9operation9predicate25EnvelopeIntersectsVisitor6isDoneEv@Base 3.4.2 + _ZN4geos9operation9predicate25EnvelopeIntersectsVisitorD0Ev@Base 3.4.2 + _ZN4geos9operation9predicate25EnvelopeIntersectsVisitorD1Ev@Base 3.4.2 + _ZN4geos9operation9predicate25EnvelopeIntersectsVisitorD2Ev@Base 3.4.2 + _ZN4geos9operation9predicate25SegmentIntersectionTester15hasIntersectionERKNS_4geom10LineStringES6_@Base 3.4.2 + _ZN4geos9operation9predicate25SegmentIntersectionTester30hasIntersectionWithLineStringsERKNS_4geom10LineStringERKSt6vectorIPS5_SaIS8_EE@Base 3.4.2 + _ZN4geos9operation9predicate25SegmentIntersectionTester33hasIntersectionWithEnvelopeFilterERKNS_4geom10LineStringES6_@Base 3.4.2 + _ZN4geos9precision10CommonBits11signExpBitsEx@Base 3.5.0 + _ZN4geos9precision10CommonBits13zeroLowerBitsExi@Base 3.5.0 + _ZN4geos9precision10CommonBits28numCommonMostSigMantissaBitsExx@Base 3.5.0 + _ZN4geos9precision10CommonBits3addEd@Base 3.4.2 + _ZN4geos9precision10CommonBits6getBitExi@Base 3.5.0 + _ZN4geos9precision10CommonBits9getCommonEv@Base 3.4.2 + _ZN4geos9precision10CommonBitsC1Ev@Base 3.4.2 + _ZN4geos9precision10CommonBitsC2Ev@Base 3.4.2 + _ZN4geos9precision10Translater9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9precision10TranslaterD0Ev@Base 3.4.2 + _ZN4geos9precision10TranslaterD1Ev@Base 3.4.2 + _ZN4geos9precision10TranslaterD2Ev@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp10differenceEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp12intersectionEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp13symDifferenceEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp16removeCommonBitsEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp16removeCommonBitsEPKNS_4geom8GeometryES5_RSt10unique_ptrIS3_St14default_deleteIS3_EESA_@Base 3.7.0 + _ZN4geos9precision12CommonBitsOp22computeResultPrecisionEPNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp5UnionEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision12CommonBitsOp6bufferEPKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9precision12CommonBitsOpC1Eb@Base 3.4.2 + _ZN4geos9precision12CommonBitsOpC1Ev@Base 3.4.2 + _ZN4geos9precision12CommonBitsOpC2Eb@Base 3.4.2 + _ZN4geos9precision12CommonBitsOpC2Ev@Base 3.4.2 + _ZN4geos9precision16MinimumClearance11getDistanceEv@Base 3.6.0 + _ZN4geos9precision16MinimumClearance7computeEv@Base 3.6.0 + _ZN4geos9precision16MinimumClearance7getLineEv@Base 3.6.0 + _ZN4geos9precision16MinimumClearanceC1EPKNS_4geom8GeometryE@Base 3.6.0 + _ZN4geos9precision16MinimumClearanceC2EPKNS_4geom8GeometryE@Base 3.6.0 + _ZN4geos9precision17CommonBitsRemover13addCommonBitsEPNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemover16removeCommonBitsEPNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemover19getCommonCoordinateEv@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemover3addEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemoverC1Ev@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemoverC2Ev@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemoverD1Ev@Base 3.4.2 + _ZN4geos9precision17CommonBitsRemoverD2Ev@Base 3.4.2 + _ZN4geos9precision19EnhancedPrecisionOp10differenceEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision19EnhancedPrecisionOp12intersectionEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision19EnhancedPrecisionOp13symDifferenceEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision19EnhancedPrecisionOp5UnionEPKNS_4geom8GeometryES5_@Base 3.4.2 + _ZN4geos9precision19EnhancedPrecisionOp6bufferEPKNS_4geom8GeometryEd@Base 3.4.2 + _ZN4geos9precision22CommonCoordinateFilter9filter_roEPKNS_4geom10CoordinateE@Base 3.4.2 + _ZN4geos9precision22CommonCoordinateFilterD0Ev@Base 3.4.2 + _ZN4geos9precision22CommonCoordinateFilterD1Ev@Base 3.4.2 + _ZN4geos9precision22CommonCoordinateFilterD2Ev@Base 3.4.2 + _ZN4geos9precision24GeometryPrecisionReducer13createFactoryERKNS_4geom15GeometryFactoryERKNS2_14PrecisionModelE@Base 3.4.2 + _ZN4geos9precision24GeometryPrecisionReducer15reducePointwiseERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision24GeometryPrecisionReducer20fixPolygonalTopologyERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision24GeometryPrecisionReducer6reduceERKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision24GeometryPrecisionReducerC1ERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9precision24GeometryPrecisionReducerC2ERKNS_4geom15GeometryFactoryE@Base 3.4.2 + _ZN4geos9precision30SimpleGeometryPrecisionReducer17getPrecisionModelEv@Base 3.4.2 + _ZN4geos9precision30SimpleGeometryPrecisionReducer18getRemoveCollapsedEv@Base 3.4.2 + _ZN4geos9precision30SimpleGeometryPrecisionReducer28setRemoveCollapsedComponentsEb@Base 3.4.2 + _ZN4geos9precision30SimpleGeometryPrecisionReducer6reduceEPKNS_4geom8GeometryE@Base 3.4.2 + _ZN4geos9precision30SimpleGeometryPrecisionReducerC1EPKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos9precision30SimpleGeometryPrecisionReducerC2EPKNS_4geom14PrecisionModelE@Base 3.4.2 + _ZN4geos9precision35PrecisionReducerCoordinateOperation4editEPKNS_4geom18CoordinateSequenceEPKNS2_8GeometryE@Base 3.4.2 + _ZN4geos9precision35PrecisionReducerCoordinateOperationD0Ev@Base 3.4.2 + _ZN4geos9precision35PrecisionReducerCoordinateOperationD1Ev@Base 3.4.2 + _ZN4geos9precision35PrecisionReducerCoordinateOperationD2Ev@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge11getFromNodeEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge11getQuadrantEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge13getCoordinateEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge14getDirectionPtEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge16compareDirectionEPKS1_@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge16getEdgeDirectionEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge5printB5cxx11Ev@Base 3.5.1 + _ZNK4geos11planargraph12DirectedEdge6getSymEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge7getEdgeEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge8getAngleEv@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge9compareToEPKS1_@Base 3.4.2 + _ZNK4geos11planargraph12DirectedEdge9getToNodeEv@Base 3.4.2 + _ZNK4geos11planargraph14GraphComponent8isMarkedEv@Base 3.4.2 + _ZNK4geos11planargraph14GraphComponent9isVisitedEv@Base 3.4.2 + _ZNK4geos11planargraph16DirectedEdgeStar13getCoordinateEv@Base 3.4.2 + _ZNK4geos11planargraph16DirectedEdgeStar3endEv@Base 3.4.2 + _ZNK4geos11planargraph16DirectedEdgeStar5beginEv@Base 3.4.2 + _ZNK4geos11planargraph16DirectedEdgeStar8getIndexEi@Base 3.4.2 + _ZNK4geos11planargraph16DirectedEdgeStar9sortEdgesEv@Base 3.4.2 + _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision11isFrameEdgeERKNS1_8QuadEdgeE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision13isFrameVertexERKNS1_6VertexE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision14isVertexOfEdgeERKNS1_8QuadEdgeERKNS1_6VertexE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision14locateFromEdgeERKNS1_6VertexERKNS1_8QuadEdgeE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision17isFrameBorderEdgeERKNS1_8QuadEdgeE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge19QuadEdgeSubdivision8isOnEdgeERKNS1_8QuadEdgeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge6Vertex10isInCircleERKS2_S4_S4_@Base 3.4.2 + _ZNK4geos11triangulate8quadedge6Vertex12circleCenterERKS2_S4_@Base 3.4.2 + _ZNK4geos11triangulate8quadedge6Vertex17interpolateZValueERKS2_S4_S4_@Base 3.4.2 + _ZNK4geos11triangulate8quadedge6Vertex6leftOfERKNS1_8QuadEdgeE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge6Vertex7rightOfERKNS1_8QuadEdgeE@Base 3.4.2 + _ZNK4geos11triangulate8quadedge8QuadEdge10getPrimaryEv@Base 3.4.2 + _ZNK4geos11triangulate8quadedge8QuadEdge13toLineSegmentEv@Base 3.4.2 + _ZNK4geos11triangulate8quadedge8QuadEdge14equalsOrientedERKS2_@Base 3.4.2 + _ZNK4geos11triangulate8quadedge8QuadEdge17equalsNonOrientedERKS2_@Base 3.4.2 + _ZNK4geos2io9WKBWriter12getByteOrderEv@Base 3.4.2 + _ZNK4geos2io9WKBWriter14getIncludeSRIDEv@Base 3.4.2 + _ZNK4geos2io9WKBWriter18getOutputDimensionEv@Base 3.4.2 + _ZNK4geos4geom10Coordinate6equalsERKS1_@Base 3.4.2 + _ZNK4geos4geom10Coordinate6isNullEv@Base 3.4.2 + _ZNK4geos4geom10Coordinate8distanceERKS1_@Base 3.4.2 + _ZNK4geos4geom10Coordinate8equals2DERKS1_@Base 3.4.2 + _ZNK4geos4geom10Coordinate8equals3DERKS1_@Base 3.4.2 + _ZNK4geos4geom10Coordinate8hashCodeEv@Base 3.4.2 + _ZNK4geos4geom10Coordinate8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom10Coordinate9compareToERKS1_@Base 3.4.2 + _ZNK4geos4geom10LineString11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom10LineString11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom10LineString11getEndPointEv@Base 3.4.2 + _ZNK4geos4geom10LineString12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom10LineString12getNumPointsEv@Base 3.4.2 + _ZNK4geos4geom10LineString12isCoordinateERNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom10LineString13getCoordinateEv@Base 3.4.2 + _ZNK4geos4geom10LineString13getStartPointEv@Base 3.4.2 + _ZNK4geos4geom10LineString14getCoordinateNEi@Base 3.4.2 + _ZNK4geos4geom10LineString14getCoordinatesEv@Base 3.4.2 + _ZNK4geos4geom10LineString15getGeometryTypeB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom10LineString16getCoordinatesROEv@Base 3.4.2 + _ZNK4geos4geom10LineString17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom10LineString18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom10LineString20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom10LineString22getCoordinateDimensionEv@Base 3.4.2 + _ZNK4geos4geom10LineString23computeEnvelopeInternalEv@Base 3.4.2 + _ZNK4geos4geom10LineString5cloneEv@Base 3.4.2 + _ZNK4geos4geom10LineString6isRingEv@Base 3.4.2 + _ZNK4geos4geom10LineString7isEmptyEv@Base 3.4.2 + _ZNK4geos4geom10LineString7reverseEv@Base 3.4.2 + _ZNK4geos4geom10LineString8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 + _ZNK4geos4geom10LineString8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 + _ZNK4geos4geom10LineString8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZNK4geos4geom10LineString8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZNK4geos4geom10LineString8isClosedEv@Base 3.4.2 + _ZNK4geos4geom10LineString9getLengthEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom10LineString9getPointNEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom10LineString9getPointNEm@Base 3.7.0 + _ZNK4geos4geom10LinearRing15getGeometryTypeB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom10LinearRing17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom10LinearRing20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom10LinearRing5cloneEv@Base 3.4.2 + _ZNK4geos4geom10LinearRing7reverseEv@Base 3.4.2 + _ZNK4geos4geom10LinearRing8isClosedEv@Base 3.4.2 + _ZNK4geos4geom10LinearRing8isSimpleEv@Base 3.4.2 + _ZNK4geos4geom10MultiPoint11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom10MultiPoint11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom10MultiPoint12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom10MultiPoint14getCoordinateNEi@Base 3.4.2 + _ZNK4geos4geom10MultiPoint15getGeometryTypeB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom10MultiPoint17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom10MultiPoint20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom10MultiPoint5cloneEv@Base 3.4.2 + _ZNK4geos4geom10MultiPoint7reverseEv@Base 3.7.0 + _ZNK4geos4geom11LineSegment10equalsTopoERKS1_@Base 3.4.2 + _ZNK4geos4geom11LineSegment10isVerticalEv@Base 3.4.2 + _ZNK4geos4geom11LineSegment10pointAlongEdRNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment10toGeometryERKNS0_15GeometryFactoryE@Base 3.4.2 + _ZNK4geos4geom11LineSegment12closestPointERKNS0_10CoordinateERS2_@Base 3.4.2 + _ZNK4geos4geom11LineSegment12intersectionERKS1_RNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment12isHorizontalEv@Base 3.4.2 + _ZNK4geos4geom11LineSegment15segmentFractionERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment16lineIntersectionERKS1_RNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment16orientationIndexEPKS1_@Base 3.4.2 + _ZNK4geos4geom11LineSegment16orientationIndexERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment16orientationIndexERKS1_@Base 3.4.2 + _ZNK4geos4geom11LineSegment16pointAlongOffsetEddRNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment16projectionFactorERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment21distancePerpendicularERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment5angleEv@Base 3.4.2 + _ZNK4geos4geom11LineSegment7projectERKNS0_10CoordinateERS2_@Base 3.4.2 + _ZNK4geos4geom11LineSegment7projectERKS1_RS1_@Base 3.4.2 + _ZNK4geos4geom11LineSegment8distanceERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment8distanceERKS1_@Base 3.4.2 + _ZNK4geos4geom11LineSegment8midPointERNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom11LineSegment9compareToERKS1_@Base 3.4.2 + _ZNK4geos4geom11LineSegment9getLengthEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom11LineSegmentixEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom11LineSegmentixEm@Base 3.7.0 + _ZNK4geos4geom12MultiPolygon11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom12MultiPolygon11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom12MultiPolygon12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom12MultiPolygon15getGeometryTypeB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom12MultiPolygon17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom12MultiPolygon20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom12MultiPolygon5cloneEv@Base 3.4.2 + _ZNK4geos4geom12MultiPolygon7reverseEv@Base 3.7.0 + _ZNK4geos4geom12MultiPolygon8isSimpleEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel10getOffsetXEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel10getOffsetYEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel10isFloatingEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel11makePreciseEPNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel11makePreciseERNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel11makePreciseEd@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel27getMaximumSignificantDigitsEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel7getTypeEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel8getScaleEv@Base 3.4.2 + _ZNK4geos4geom14PrecisionModel8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom14PrecisionModel9compareToEPKS1_@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory10toGeometryEPKNS0_8EnvelopeE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory11createPointEPNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory11createPointERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory11createPointERKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory11createPointEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory13buildGeometryEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory13buildGeometryERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory13createPolygonEPNS0_10LinearRingEPSt6vectorIPNS0_8GeometryESaIS6_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory13createPolygonERKNS0_10LinearRingERKSt6vectorIPNS0_8GeometryESaIS7_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory13createPolygonEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory14createGeometryEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory15destroyGeometryEPNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLineStringEPNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLineStringERKNS0_10LineStringE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLineStringERKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLineStringESt10unique_ptrINS0_18CoordinateSequenceESt14default_deleteIS3_EE@Base 3.7.0 + _ZNK4geos4geom15GeometryFactory16createLineStringEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLinearRingEPNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLinearRingERKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createLinearRingESt10unique_ptrINS0_18CoordinateSequenceESt14default_deleteIS3_EE@Base 3.7.0 + _ZNK4geos4geom15GeometryFactory16createLinearRingEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createMultiPointEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createMultiPointERKNS0_18CoordinateSequenceE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createMultiPointERKSt6vectorINS0_10CoordinateESaIS3_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createMultiPointERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory16createMultiPointEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory17getPrecisionModelEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory18createMultiPolygonEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory18createMultiPolygonERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory18createMultiPolygonEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory19createEmptyGeometryEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory21createMultiLineStringEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory21createMultiLineStringERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory21createMultiLineStringEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory24createGeometryCollectionEPSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory24createGeometryCollectionERKSt6vectorIPNS0_8GeometryESaIS4_EE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory24createGeometryCollectionEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory28createPointFromInternalCoordEPKNS0_10CoordinateEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory28getCoordinateSequenceFactoryEv@Base 3.4.2 + _ZNK4geos4geom15GeometryFactory6addRefEv@Base 3.6.0 + _ZNK4geos4geom15GeometryFactory7dropRefEv@Base 3.6.0 + _ZNK4geos4geom15GeometryFactory7getSRIDEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom15MultiLineString11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString15getGeometryTypeB5cxx11Ev@Base 3.4.2 + _ZNK4geos4geom15MultiLineString17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString5cloneEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString7reverseEv@Base 3.4.2 + _ZNK4geos4geom15MultiLineString8isClosedEv@Base 3.4.2 + _ZNK4geos4geom16CoordinateFilter9filter_rwEPNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom18CoordinateLessThenclEPKNS0_10CoordinateES4_@Base 3.4.2 + _ZNK4geos4geom18CoordinateLessThenclERKNS0_10CoordinateES4_@Base 3.4.2 + _ZNK4geos4geom18CoordinateSequence13minCoordinateEv@Base 3.4.2 + _ZNK4geos4geom18CoordinateSequence14expandEnvelopeERNS0_8EnvelopeE@Base 3.4.2 + _ZNK4geos4geom18CoordinateSequence17hasRepeatedPointsEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom18CoordinateSequence4getXEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom18CoordinateSequence4getXEm@Base 3.7.0 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom18CoordinateSequence4getYEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom18CoordinateSequence4getYEm@Base 3.7.0 + _ZNK4geos4geom18GeometryCollection11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection12getDimensionEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom18GeometryCollection12getGeometryNEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom18GeometryCollection12getGeometryNEm@Base 3.7.0 + _ZNK4geos4geom18GeometryCollection12getNumPointsEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection13getCoordinateEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection14getCoordinatesEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection15getGeometryTypeB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom18GeometryCollection16getNumGeometriesEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection22getCoordinateDimensionEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection23computeEnvelopeInternalEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection3endEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection5beginEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection5cloneEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection7getAreaEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection7isEmptyEv@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection7reverseEv@Base 3.7.0 + _ZNK4geos4geom18GeometryCollection8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZNK4geos4geom18GeometryCollection9getLengthEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix10isContainsEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix10isDisjointEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix10isOverlapsEii@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix11isCoveredByEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix12isIntersectsEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix3getEii@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix7matchesERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZNK4geos4geom18IntersectionMatrix8isCoversEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix8isEqualsEii@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix8isWithinEv@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom18IntersectionMatrix9isCrossesEii@Base 3.4.2 + _ZNK4geos4geom18IntersectionMatrix9isTouchesEii@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom23CoordinateArraySequence11getOrdinateEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom23CoordinateArraySequence11getOrdinateEmm@Base 3.7.0 + _ZNK4geos4geom23CoordinateArraySequence12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom23CoordinateArraySequence14expandEnvelopeERNS0_8EnvelopeE@Base 3.4.2 + _ZNK4geos4geom23CoordinateArraySequence5cloneEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEj@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEjRNS0_10CoordinateE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEm@Base 3.7.0 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom23CoordinateArraySequence5getAtEmRNS0_10CoordinateE@Base 3.7.0 + _ZNK4geos4geom23CoordinateArraySequence7getSizeEv@Base 3.4.2 + _ZNK4geos4geom23CoordinateArraySequence7isEmptyEv@Base 3.4.2 + _ZNK4geos4geom23CoordinateArraySequence8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 + _ZNK4geos4geom23CoordinateArraySequence8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom23CoordinateArraySequence8toVectorERSt6vectorINS0_10CoordinateESaIS3_EE@Base 3.4.2 + _ZNK4geos4geom23CoordinateArraySequence8toVectorEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEPSt6vectorINS0_10CoordinateESaIS3_EEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEPSt6vectorINS0_10CoordinateESaIS3_EEm@Base 3.7.0 + _ZNK4geos4geom30CoordinateArraySequenceFactory6createERKNS0_18CoordinateSequenceE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEjj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom30CoordinateArraySequenceFactory6createEmm@Base 3.7.0 + _ZNK4geos4geom30CoordinateArraySequenceFactory6createEv@Base 3.5.0 + _ZNK4geos4geom4prep13PreparedPoint10intersectsEPKNS0_8GeometryE@Base 3.5.0 + _ZNK4geos4geom4prep15PreparedPolygon10intersectsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep15PreparedPolygon15getPointLocatorEv@Base 3.4.2 + _ZNK4geos4geom4prep15PreparedPolygon16containsProperlyEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep15PreparedPolygon21getIntersectionFinderEv@Base 3.4.2 + _ZNK4geos4geom4prep15PreparedPolygon6coversEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep15PreparedPolygon8containsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep18PreparedLineString10intersectsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry10intersectsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry11getGeometryEv@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry14envelopeCoversEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry16containsProperlyEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry18envelopesIntersectEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry26isAnyTargetComponentInTestEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry6coversEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry6withinEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry7crossesEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry7touchesEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry8containsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry8disjointEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry8overlapsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep21BasicPreparedGeometry9coveredByEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep23PreparedGeometryFactory6createEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep24PreparedPolygonPredicate26isAnyTestComponentInTargetEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep24PreparedPolygonPredicate27isAllTestComponentsInTargetEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep24PreparedPolygonPredicate30isAnyTargetComponentInAreaTestEPKNS0_8GeometryEPKSt6vectorIPKNS0_10CoordinateESaIS9_EE@Base 3.4.2 + _ZNK4geos4geom4prep24PreparedPolygonPredicate34isAnyTestComponentInTargetInteriorEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep24PreparedPolygonPredicate35isAllTestComponentsInTargetInteriorEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep28PreparedLineStringIntersects10intersectsEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4prep28PreparedLineStringIntersects22isAnyTestPointInTargetEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom4util15SineStarFactory14createSineStarEv@Base 3.4.2 + _ZNK4geos4geom5Point11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom5Point11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom5Point12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom5Point12getNumPointsEv@Base 3.4.2 + _ZNK4geos4geom5Point13getCoordinateEv@Base 3.4.2 + _ZNK4geos4geom5Point14getCoordinatesEv@Base 3.4.2 + _ZNK4geos4geom5Point15getGeometryTypeB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom5Point16getCoordinatesROEv@Base 3.4.2 + _ZNK4geos4geom5Point17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom5Point18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom5Point20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom5Point22getCoordinateDimensionEv@Base 3.4.2 + _ZNK4geos4geom5Point23computeEnvelopeInternalEv@Base 3.4.2 + _ZNK4geos4geom5Point4getXEv@Base 3.4.2 + _ZNK4geos4geom5Point4getYEv@Base 3.4.2 + _ZNK4geos4geom5Point4getZEv@Base 3.7.0 + _ZNK4geos4geom5Point5cloneEv@Base 3.4.2 + _ZNK4geos4geom5Point7isEmptyEv@Base 3.4.2 + _ZNK4geos4geom5Point7reverseEv@Base 3.7.0 + _ZNK4geos4geom5Point8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 + _ZNK4geos4geom5Point8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 + _ZNK4geos4geom5Point8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZNK4geos4geom5Point8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZNK4geos4geom5Point8isSimpleEv@Base 3.4.2 + _ZNK4geos4geom7Polygon10convexHullEv@Base 3.4.2 + _ZNK4geos4geom7Polygon11equalsExactEPKNS0_8GeometryEd@Base 3.4.2 + _ZNK4geos4geom7Polygon11getBoundaryEv@Base 3.4.2 + _ZNK4geos4geom7Polygon11isRectangleEv@Base 3.4.2 + _ZNK4geos4geom7Polygon12getDimensionEv@Base 3.4.2 + _ZNK4geos4geom7Polygon12getNumPointsEv@Base 3.4.2 + _ZNK4geos4geom7Polygon13getCoordinateEv@Base 3.4.2 + _ZNK4geos4geom7Polygon14getCoordinatesEv@Base 3.4.2 + _ZNK4geos4geom7Polygon15getExteriorRingEv@Base 3.4.2 + _ZNK4geos4geom7Polygon15getGeometryTypeB5cxx11Ev@Base 3.5.1 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom7Polygon16getInteriorRingNEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom7Polygon16getInteriorRingNEm@Base 3.7.0 + _ZNK4geos4geom7Polygon17getGeometryTypeIdEv@Base 3.4.2 + _ZNK4geos4geom7Polygon18compareToSameClassEPKNS0_8GeometryE@Base 3.4.2 + _ZNK4geos4geom7Polygon18getNumInteriorRingEv@Base 3.4.2 + _ZNK4geos4geom7Polygon20getBoundaryDimensionEv@Base 3.4.2 + _ZNK4geos4geom7Polygon22getCoordinateDimensionEv@Base 3.4.2 + _ZNK4geos4geom7Polygon23computeEnvelopeInternalEv@Base 3.4.2 + _ZNK4geos4geom7Polygon5cloneEv@Base 3.4.2 + _ZNK4geos4geom7Polygon7getAreaEv@Base 3.4.2 + _ZNK4geos4geom7Polygon7isEmptyEv@Base 3.4.2 + _ZNK4geos4geom7Polygon7reverseEv@Base 3.7.0 + _ZNK4geos4geom7Polygon8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 + _ZNK4geos4geom7Polygon8apply_roEPNS0_16CoordinateFilterE@Base 3.4.2 + _ZNK4geos4geom7Polygon8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZNK4geos4geom7Polygon8apply_roERNS0_24CoordinateSequenceFilterE@Base 3.4.2 + _ZNK4geos4geom7Polygon8isSimpleEv@Base 3.4.2 + _ZNK4geos4geom7Polygon9getLengthEv@Base 3.4.2 + _ZNK4geos4geom8Envelope10intersectsEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Envelope10intersectsERKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom8Envelope10intersectsERKS1_@Base 3.4.2 + _ZNK4geos4geom8Envelope10intersectsEdd@Base 3.4.2 + _ZNK4geos4geom8Envelope12intersectionERKS1_RS1_@Base 3.4.2 + _ZNK4geos4geom8Envelope6centreERNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom8Envelope6coversEPKNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom8Envelope6coversERKS1_@Base 3.4.2 + _ZNK4geos4geom8Envelope6coversEdd@Base 3.4.2 + _ZNK4geos4geom8Envelope6equalsEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Envelope6isNullEv@Base 3.4.2 + _ZNK4geos4geom8Envelope7getMaxXEv@Base 3.4.2 + _ZNK4geos4geom8Envelope7getMaxYEv@Base 3.4.2 + _ZNK4geos4geom8Envelope7getMinXEv@Base 3.4.2 + _ZNK4geos4geom8Envelope7getMinYEv@Base 3.4.2 + _ZNK4geos4geom8Envelope8distanceEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Envelope8getWidthEv@Base 3.4.2 + _ZNK4geos4geom8Envelope8hashCodeEv@Base 3.4.2 + _ZNK4geos4geom8Envelope8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom8Envelope9getHeightEv@Base 3.4.2 + _ZNK4geos4geom8Geometry10convexHullEv@Base 3.4.2 + _ZNK4geos4geom8Geometry10differenceEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry10intersectsEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry11getCentroidERNS0_10CoordinateE@Base 3.4.2 + _ZNK4geos4geom8Geometry11getCentroidEv@Base 3.4.2 + _ZNK4geos4geom8Geometry11getEnvelopeEv@Base 3.4.2 + _ZNK4geos4geom8Geometry11isRectangleEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos4geom8Geometry12getGeometryNEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos4geom8Geometry12getGeometryNEm@Base 3.7.0 + _ZNK4geos4geom8Geometry12intersectionEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry13symDifferenceEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry16getInteriorPointEv@Base 3.4.2 + _ZNK4geos4geom8Geometry16getNumGeometriesEv@Base 3.4.2 + _ZNK4geos4geom8Geometry16isWithinDistanceEPKS1_d@Base 3.4.2 + _ZNK4geos4geom8Geometry17getClassSortIndexEv@Base 3.4.2 + _ZNK4geos4geom8Geometry17getPrecisionModelEv@Base 3.4.2 + _ZNK4geos4geom8Geometry17isEquivalentClassEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry19getEnvelopeInternalEv@Base 3.4.2 + _ZNK4geos4geom8Geometry5UnionEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry5UnionEv@Base 3.4.2 + _ZNK4geos4geom8Geometry5equalERKNS0_10CoordinateES4_d@Base 3.4.2 + _ZNK4geos4geom8Geometry6bufferEd@Base 3.4.2 + _ZNK4geos4geom8Geometry6bufferEdi@Base 3.4.2 + _ZNK4geos4geom8Geometry6bufferEdii@Base 3.4.2 + _ZNK4geos4geom8Geometry6coversEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry6equalsEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry6relateEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry6relateEPKS1_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.5.1 + _ZNK4geos4geom8Geometry6toTextB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom8Geometry6withinEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry7compareESt6vectorINS0_10CoordinateESaIS3_EES5_@Base 3.4.2 + _ZNK4geos4geom8Geometry7compareESt6vectorIPS1_SaIS3_EES5_@Base 3.4.2 + _ZNK4geos4geom8Geometry7crossesEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry7getAreaEv@Base 3.4.2 + _ZNK4geos4geom8Geometry7getSRIDEv@Base 3.4.2 + _ZNK4geos4geom8Geometry7isValidEv@Base 3.4.2 + _ZNK4geos4geom8Geometry7touchesEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry8apply_roEPNS0_14GeometryFilterE@Base 3.4.2 + _ZNK4geos4geom8Geometry8apply_roEPNS0_23GeometryComponentFilterE@Base 3.4.2 + _ZNK4geos4geom8Geometry8containsEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry8disjointEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry8distanceEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry8isSimpleEv@Base 3.4.2 + _ZNK4geos4geom8Geometry8overlapsEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos4geom8Geometry9compareToEPKS1_@Base 3.4.2 + _ZNK4geos4geom8Geometry9getLengthEv@Base 3.4.2 + _ZNK4geos4geom8Triangle3detEdddd@Base 3.5.0 + _ZNK4geos4util21GeometricShapeFactory10Dimensions11getEnvelopeEv@Base 3.4.2 + _ZNK4geos4util21GeometricShapeFactory5coordEdd@Base 3.4.2 + _ZNK4geos4util7Profile13getNumTimingsEv@Base 3.4.2 + _ZNK4geos4util7Profile6getAvgEv@Base 3.4.2 + _ZNK4geos4util7Profile6getMaxEv@Base 3.4.2 + _ZNK4geos4util7Profile6getMinEv@Base 3.4.2 + _ZNK4geos4util7Profile6getTotEv@Base 3.4.2 + _ZNK4geos5index13intervalrtree21IntervalRTreeLeafNode5queryEddPNS0_11ItemVisitorE@Base 3.4.2 + _ZNK4geos5index13intervalrtree23IntervalRTreeBranchNode5queryEddPNS0_11ItemVisitorE@Base 3.4.2 + _ZNK4geos5index5chain13MonotoneChain11getEnvelopeEv@Base 3.4.2 + _ZNK4geos5index5chain13MonotoneChain14getCoordinatesEv@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos5index5chain13MonotoneChain14getLineSegmentEjRNS_4geom11LineSegmentE@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos5index5chain13MonotoneChain14getLineSegmentEmRNS_4geom11LineSegmentE@Base 3.7.0 + _ZNK4geos5index7bintree8Interval6getMaxEv@Base 3.4.2 + _ZNK4geos5index7bintree8Interval6getMinEv@Base 3.4.2 + _ZNK4geos5index7bintree8Interval8containsEPKS2_@Base 3.4.2 + _ZNK4geos5index7bintree8Interval8containsEd@Base 3.4.2 + _ZNK4geos5index7bintree8Interval8containsEdd@Base 3.4.2 + _ZNK4geos5index7bintree8Interval8getWidthEv@Base 3.4.2 + _ZNK4geos5index7bintree8Interval8overlapsEPKS2_@Base 3.4.2 + _ZNK4geos5index7bintree8Interval8overlapsEdd@Base 3.4.2 + _ZNK4geos5index7strtree12AbstractNode9getBoundsEv@Base 3.4.2 + _ZNK4geos5index7strtree13BoundablePair11getDistanceEv@Base 3.6.0 + _ZNK4geos5index7strtree13BoundablePair12getBoundableEi@Base 3.6.0 + _ZNK4geos5index7strtree13BoundablePair8distanceEv@Base 3.6.0 + _ZNK4geos5index7strtree13BoundablePair8isLeavesEv@Base 3.6.0 + _ZNK4geos5index7strtree13ItemBoundable7getItemEv@Base 3.4.2 + _ZNK4geos5index7strtree13ItemBoundable9getBoundsEv@Base 3.4.2 + _ZNK4geos5index7strtree15SIRAbstractNode13computeBoundsEv@Base 3.4.2 + _ZNK4geos5index7strtree15STRAbstractNode13computeBoundsEv@Base 3.4.2 + _ZNK4geos5index7strtree8Interval10intersectsEPKS2_@Base 3.5.0 + _ZNK4geos5index7strtree8Interval6equalsEPKS2_@Base 3.5.0 + _ZNK4geos5index8quadtree10DoubleBits11getExponentEv@Base 3.4.2 + _ZNK4geos5index8quadtree10DoubleBits14biasedExponentEv@Base 3.4.2 + _ZNK4geos5index8quadtree10DoubleBits21numCommonMantissaBitsERKS2_@Base 3.4.2 + _ZNK4geos5index8quadtree10DoubleBits6getBitEi@Base 3.4.2 + _ZNK4geos5index8quadtree10DoubleBits8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos5index8quadtree10DoubleBits9getDoubleEv@Base 3.4.2 + _ZNK4geos5index8quadtree3Key11getEnvelopeEv@Base 3.4.2 + _ZNK4geos5index8quadtree3Key8getLevelEv@Base 3.4.2 + _ZNK4geos5index8quadtree3Key8getPointEv@Base 3.4.2 + _ZNK4geos5index8quadtree3Key9getCentreEv@Base 3.4.2 + _ZNK4geos5index8quadtree4Node13isSearchMatchERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZNK4geos5index8quadtree4Node8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos5index8quadtree4Root13isSearchMatchERKNS_4geom8EnvelopeE@Base 3.4.2 + _ZNK4geos5index8quadtree8NodeBase11addAllItemsERSt6vectorIPvSaIS4_EE@Base 3.4.2 + _ZNK4geos5index8quadtree8NodeBase12getNodeCountEv@Base 3.4.2 + _ZNK4geos5index8quadtree8NodeBase26addAllItemsFromOverlappingERKNS_4geom8EnvelopeERSt6vectorIPvSaIS8_EE@Base 3.4.2 + _ZNK4geos5index8quadtree8NodeBase4sizeEv@Base 3.4.2 + _ZNK4geos5index8quadtree8NodeBase5depthEv@Base 3.4.2 + _ZNK4geos5index8quadtree8NodeBase8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos5index8quadtree8Quadtree8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos5index9sweepline14SweepLineEvent9compareToEPKS2_@Base 3.4.2 + _ZNK4geos5index9sweepline22SweepLineEventLessThenclEPKNS1_14SweepLineEventES5_@Base 3.4.2 + _ZNK4geos6noding11ScaledNoder18getNodedSubstringsEv@Base 3.4.2 + _ZNK4geos6noding11ScaledNoder5scaleERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZNK4geos6noding11ScaledNoder6Scaler9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos6noding11ScaledNoder7rescaleERSt6vectorIPNS0_13SegmentStringESaIS4_EE@Base 3.4.2 + _ZNK4geos6noding11ScaledNoder8ReScaler9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos6noding11SegmentNode10isEndPointEj@Base 3.4.2 + _ZNK4geos6noding11SimpleNoder18getNodedSubstringsEv@Base 3.4.2 + _ZNK4geos6noding12MCIndexNoder18getNodedSubstringsEv@Base 3.4.2 + _ZNK4geos6noding13IteratedNoder18getNodedSubstringsEv@Base 3.4.2 + _ZNK4geos6noding13SegmentString5printERSo@Base 3.4.2 + _ZNK4geos6noding15NodingValidator13checkCollapseERKNS_4geom10CoordinateES5_S5_@Base 3.4.2 + _ZNK4geos6noding15NodingValidator14checkCollapsesERKNS0_13SegmentStringE@Base 3.4.2 + _ZNK4geos6noding15NodingValidator14checkCollapsesEv@Base 3.4.2 + _ZNK4geos6noding15NodingValidator23hasInteriorIntersectionERKNS_9algorithm15LineIntersectorERKNS_4geom10CoordinateES9_@Base 3.4.2 + _ZNK4geos6noding15NodingValidator29checkEndPtVertexIntersectionsERKNS_4geom10CoordinateERKSt6vectorIPNS0_13SegmentStringESaIS8_EE@Base 3.4.2 + _ZNK4geos6noding15NodingValidator29checkEndPtVertexIntersectionsEv@Base 3.4.2 + _ZNK4geos6noding17IntersectionAdder6isDoneEv@Base 3.4.2 + _ZNK4geos6noding18BasicSegmentString13getCoordinateEj@Base 3.4.2 + _ZNK4geos6noding18BasicSegmentString14getCoordinatesEv@Base 3.4.2 + _ZNK4geos6noding18BasicSegmentString16getSegmentOctantEj@Base 3.4.2 + _ZNK4geos6noding18BasicSegmentString4sizeEv@Base 3.4.2 + _ZNK4geos6noding18BasicSegmentString5printERSo@Base 3.4.2 + _ZNK4geos6noding18BasicSegmentString8isClosedEv@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString11getNodeListEv@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString13getCoordinateEj@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString14getCoordinatesEv@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString16getSegmentOctantEj@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString4sizeEv@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString5printERSo@Base 3.4.2 + _ZNK4geos6noding18NodedSegmentString8isClosedEv@Base 3.4.2 + _ZNK4geos6noding18SegmentIntersector6isDoneEv@Base 3.4.2 + _ZNK4geos6noding19FastNodingValidator15getErrorMessageB5cxx11Ev@Base 3.5.1 + _ZNK4geos6noding23IntersectionFinderAdder6isDoneEv@Base 3.4.2 + _ZNK4geos6noding23OrientedCoordinateArray9compareToERKS1_@Base 3.4.2 + _ZNK4geos6noding27SegmentIntersectionDetector6isDoneEv@Base 3.4.2 + _ZNK4geos6noding32SingleInteriorIntersectionFinder6isDoneEv@Base 3.4.2 + _ZNK4geos6noding9snapround17SimpleSnapRounder18getNodedSubstringsEv@Base 3.4.2 + _ZNK4geos6noding9snapround18MCIndexSnapRounder18getNodedSubstringsEv@Base 3.4.2 + _ZNK4geos6noding9snapround8HotPixel10copyScaledERKNS_4geom10CoordinateERS4_@Base 3.4.2 + _ZNK4geos6noding9snapround8HotPixel10intersectsERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZNK4geos6noding9snapround8HotPixel15getSafeEnvelopeEv@Base 3.4.2 + _ZNK4geos6noding9snapround8HotPixel16intersectsScaledERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZNK4geos6noding9snapround8HotPixel25intersectsToleranceSquareERKNS_4geom10CoordinateES6_@Base 3.4.2 + _ZNK4geos6noding9snapround8HotPixel5scaleEd@Base 3.4.2 + _ZNK4geos8simplify16LineSegmentIndex5queryEPKNS_4geom11LineSegmentE@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos8simplify16TaggedLineString10getSegmentEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos8simplify16TaggedLineString10getSegmentEm@Base 3.7.0 + _ZNK4geos8simplify16TaggedLineString11getSegmentsEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString12asLineStringEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString12asLinearRingEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString13getResultSizeEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString14getMinimumSizeEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString20getParentCoordinatesEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString20getResultCoordinatesEv@Base 3.4.2 + _ZNK4geos8simplify16TaggedLineString9getParentEv@Base 3.4.2 + _ZNK4geos8simplify17TaggedLineSegment8getIndexEv@Base 3.4.2 + _ZNK4geos8simplify17TaggedLineSegment9getParentEv@Base 3.4.2 + _ZNK4geos8simplify26TaggedLineStringSimplifier23hasInteriorIntersectionERKNS_4geom11LineSegmentES5_@Base 3.4.2 + _ZNK4geos9algorithm11HCoordinate13getCoordinateERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm11HCoordinate4getXEv@Base 3.4.2 + _ZNK4geos9algorithm11HCoordinate4getYEv@Base 3.4.2 + _ZNK4geos9algorithm12CentroidArea11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm12CentroidArea11getCentroidEv@Base 3.4.2 + _ZNK4geos9algorithm12CentroidLine11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm12CentroidLine11getCentroidEv@Base 3.4.2 + _ZNK4geos9algorithm13CentroidPoint11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm13CentroidPoint11getCentroidEv@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector12intersectionERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector14isIntersectionERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector15getEdgeDistanceEii@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector18smallestInAbsValueEdddd@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector20isInSegmentEnvelopesERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector20normalizeToEnvCentreERNS_4geom10CoordinateES4_S4_S4_S4_@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector27safeHCoordinateIntersectionERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector29intersectionWithNormalizationERKNS_4geom10CoordinateES5_S5_S5_RS3_@Base 3.4.2 + _ZNK4geos9algorithm15LineIntersector8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos9algorithm17InteriorPointArea16getInteriorPointERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm17InteriorPointLine16getInteriorPointERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm18InteriorPointPoint16getInteriorPointERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm8Centroid11getCentroidERNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter17isGeometryChangedEv@Base 3.4.2 + _ZNK4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilter6isDoneEv@Base 3.4.2 + _ZNK4geos9geomgraph11EdgeEndStar13getCoordinateEv@Base 3.6.0 + _ZNK4geos9geomgraph11EdgeEndStar3endEv@Base 3.6.0 + _ZNK4geos9geomgraph11EdgeEndStar5beginEv@Base 3.6.0 + _ZNK4geos9geomgraph11EdgeEndStar5printB5cxx11Ev@Base 3.6.0 + _ZNK4geos9geomgraph11NodeFactory10createNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9geomgraph12DirectedEdge13getDepthDeltaEv@Base 3.6.2 + _ZNK4geos9geomgraph12DirectedEdge5printB5cxx11Ev@Base 3.6.2 + _ZNK4geos9geomgraph14GraphComponent10isInResultEv@Base 3.4.2 + _ZNK4geos9geomgraph14GraphComponent12isCoveredSetEv@Base 3.4.2 + _ZNK4geos9geomgraph14GraphComponent9isCoveredEv@Base 3.4.2 + _ZNK4geos9geomgraph14GraphComponent9isVisitedEv@Base 3.4.2 + _ZNK4geos9geomgraph16DirectedEdgeStar5printB5cxx11Ev@Base 3.6.2 + _ZNK4geos9geomgraph16TopologyLocation12getLocationsEv@Base 3.4.2 + _ZNK4geos9geomgraph16TopologyLocation13isEqualOnSideERKS1_i@Base 3.4.2 + _ZNK4geos9geomgraph16TopologyLocation17allPositionsEqualEi@Base 3.4.2 + (arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNK4geos9geomgraph16TopologyLocation3getEj@Base 3.4.2 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNK4geos9geomgraph16TopologyLocation3getEm@Base 3.7.0 + _ZNK4geos9geomgraph16TopologyLocation6isAreaEv@Base 3.4.2 + _ZNK4geos9geomgraph16TopologyLocation6isLineEv@Base 3.4.2 + _ZNK4geos9geomgraph16TopologyLocation6isNullEv@Base 3.4.2 + _ZNK4geos9geomgraph16TopologyLocation8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos9geomgraph16TopologyLocation9isAnyNullEv@Base 3.4.2 + _ZNK4geos9geomgraph20EdgeIntersectionList14isIntersectionERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9geomgraph20EdgeIntersectionList5printB5cxx11Ev@Base 3.5.1 + _ZNK4geos9geomgraph20EdgeIntersectionList7isEmptyEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge10isIsolatedEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge11isCollapsedEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge12getNumPointsEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge12printReverseB5cxx11Ev@Base 3.5.1 + _ZNK4geos9geomgraph4Edge13getCoordinateEi@Base 3.4.2 + _ZNK4geos9geomgraph4Edge13getCoordinateEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge13getDepthDeltaEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge14getCoordinatesEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge16isPointwiseEqualEPKS1_@Base 3.4.2 + _ZNK4geos9geomgraph4Edge22getMaximumSegmentIndexEv@Base 3.4.2 + _ZNK4geos9geomgraph4Edge5printB5cxx11Ev@Base 3.5.1 + _ZNK4geos9geomgraph4Edge6equalsEPKS1_@Base 3.4.2 + _ZNK4geos9geomgraph4Edge6equalsERKS1_@Base 3.4.2 + _ZNK4geos9geomgraph4Edge8isClosedEv@Base 3.4.2 + _ZNK4geos9geomgraph4Node10isIsolatedEv@Base 3.4.2 + _ZNK4geos9geomgraph4Node13getCoordinateEv@Base 3.4.2 + _ZNK4geos9geomgraph4Node22isIncidentEdgeInResultEv@Base 3.4.2 + _ZNK4geos9geomgraph4Node4getZEv@Base 3.4.2 + _ZNK4geos9geomgraph5Depth11getLocationEii@Base 3.4.2 + _ZNK4geos9geomgraph5Depth6isNullEi@Base 3.4.2 + _ZNK4geos9geomgraph5Depth6isNullEii@Base 3.4.2 + _ZNK4geos9geomgraph5Depth6isNullEv@Base 3.4.2 + _ZNK4geos9geomgraph5Depth8getDeltaEi@Base 3.4.2 + _ZNK4geos9geomgraph5Depth8getDepthEii@Base 3.4.2 + _ZNK4geos9geomgraph5Depth8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos9geomgraph5Label11getLocationEi@Base 3.4.2 + _ZNK4geos9geomgraph5Label11getLocationEii@Base 3.4.2 + _ZNK4geos9geomgraph5Label13isEqualOnSideERKS1_i@Base 3.4.2 + _ZNK4geos9geomgraph5Label16getGeometryCountEv@Base 3.4.2 + _ZNK4geos9geomgraph5Label17allPositionsEqualEii@Base 3.4.2 + _ZNK4geos9geomgraph5Label6isAreaEi@Base 3.4.2 + _ZNK4geos9geomgraph5Label6isAreaEv@Base 3.4.2 + _ZNK4geos9geomgraph5Label6isLineEi@Base 3.4.2 + _ZNK4geos9geomgraph5Label6isNullEi@Base 3.4.2 + _ZNK4geos9geomgraph5Label6isNullEv@Base 3.4.2 + _ZNK4geos9geomgraph5Label8toStringB5cxx11Ev@Base 3.5.1 + _ZNK4geos9geomgraph5Label9isAnyNullEi@Base 3.4.2 + _ZNK4geos9geomgraph7EdgeEnd16compareDirectionEPKS1_@Base 3.4.2 + _ZNK4geos9geomgraph7EdgeEnd5printB5cxx11Ev@Base 3.6.0 + _ZNK4geos9geomgraph7EdgeEnd9compareToEPKS1_@Base 3.4.2 + _ZNK4geos9geomgraph7NodeMap16getBoundaryNodesEiRSt6vectorIPNS0_4NodeESaIS4_EE@Base 3.4.2 + _ZNK4geos9geomgraph7NodeMap4findERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9geomgraph7NodeMap5printB5cxx11Ev@Base 3.5.1 + _ZNK4geos9linearref14LinearIterator11isEndOfLineEv@Base 3.4.2 + _ZNK4geos9linearref14LinearIterator13getSegmentEndEv@Base 3.4.2 + _ZNK4geos9linearref14LinearIterator14getVertexIndexEv@Base 3.4.2 + _ZNK4geos9linearref14LinearIterator15getSegmentStartEv@Base 3.4.2 + _ZNK4geos9linearref14LinearIterator17getComponentIndexEv@Base 3.4.2 + _ZNK4geos9linearref14LinearIterator7getLineEv@Base 3.4.2 + _ZNK4geos9linearref14LinearIterator7hasNextEv@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation10getSegmentEPKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation10isEndpointERKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation13getCoordinateEPKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation15getSegmentIndexEv@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation15isOnSameSegmentERKS1_@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation16getSegmentLengthEPKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation17getComponentIndexEv@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation18getSegmentFractionEv@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation21compareLocationValuesEjjd@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation7isValidEPKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation8isVertexEv@Base 3.4.2 + _ZNK4geos9linearref14LinearLocation9compareToERKS1_@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine10clampIndexEd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine10locationOfEd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine10locationOfEdb@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine11extractLineEdd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine11getEndIndexEv@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine12extractPointEd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine12extractPointEdd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine12indexOfAfterERKNS_4geom10CoordinateEd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine12isValidIndexEd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine13getStartIndexEv@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine13positiveIndexEd@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine7indexOfERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine7projectERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9linearref17LengthIndexedLine9indicesOfEPKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref17LengthLocationMap11getLocationEd@Base 3.4.2 + _ZNK4geos9linearref17LengthLocationMap11getLocationEdb@Base 3.4.2 + _ZNK4geos9linearref17LengthLocationMap13resolveHigherERKNS0_14LinearLocationE@Base 3.4.2 + _ZNK4geos9linearref17LengthLocationMap18getLocationForwardEd@Base 3.4.2 + _ZNK4geos9linearref17LengthLocationMap9getLengthERKNS0_14LinearLocationE@Base 3.4.2 + _ZNK4geos9linearref18LengthIndexOfPoint12indexOfAfterERKNS_4geom10CoordinateEd@Base 3.4.2 + _ZNK4geos9linearref18LengthIndexOfPoint16indexOfFromStartERKNS_4geom10CoordinateEd@Base 3.4.2 + _ZNK4geos9linearref18LengthIndexOfPoint21segmentNearestMeasureEPKNS_4geom11LineSegmentERKNS2_10CoordinateEd@Base 3.4.2 + _ZNK4geos9linearref18LengthIndexOfPoint7indexOfERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9linearref19LocationIndexOfLine9indicesOfEPKNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9linearref20LocationIndexOfPoint12indexOfAfterERKNS_4geom10CoordinateEPKNS0_14LinearLocationE@Base 3.4.2 + _ZNK4geos9linearref20LocationIndexOfPoint16indexOfFromStartERKNS_4geom10CoordinateEPKNS0_14LinearLocationE@Base 3.4.2 + _ZNK4geos9linearref20LocationIndexOfPoint7indexOfERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9linearref21LinearGeometryBuilder17getLastCoordinateEv@Base 3.4.2 + _ZNK4geos9operation10polygonize22PolygonizeDirectedEdge7getNextEv@Base 3.4.2 + _ZNK4geos9operation10polygonize22PolygonizeDirectedEdge8getLabelEv@Base 3.4.2 + _ZNK4geos9operation10polygonize22PolygonizeDirectedEdge8isInRingEv@Base 3.4.2 + _ZNK4geos9operation12intersection28RectangleIntersectionBuilder5emptyEv@Base 3.5.0 + _ZNK4geos9operation12intersection9Rectangle12toLinearRingERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZNK4geos9operation12intersection9Rectangle9toPolygonERKNS_4geom15GeometryFactoryE@Base 3.5.0 + _ZNK4geos9operation22GeometryGraphOperation14getArgGeometryEj@Base 3.4.2 + _ZNK4geos9operation6buffer13BufferBuilder25createEmptyResultGeometryEv@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier11isDeletableEiiid@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier12collapseLineEv@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier16isShallowSampledERKNS_4geom10CoordinateES6_iid@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier18isShallowConcavityERKNS_4geom10CoordinateES6_S6_d@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier23findNextNonDeletedIndexEj@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier9isConcaveERKNS_4geom10CoordinateES6_S6_@Base 3.4.2 + _ZNK4geos9operation6buffer25BufferInputLineSimplifier9isShallowERKNS_4geom10CoordinateES6_S6_d@Base 3.4.2 + _ZNK4geos9operation6relate13EdgeEndBundle5printB5cxx11Ev@Base 3.7.0 + _ZNK4geos9operation6relate17RelateNodeFactory10createNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9operation7overlay15ElevationMatrix15getAvgElevationEv@Base 3.4.2 + _ZNK4geos9operation7overlay15ElevationMatrix5printB5cxx11Ev@Base 3.5.1 + _ZNK4geos9operation7overlay15ElevationMatrix7elevateEPNS_4geom8GeometryE@Base 3.4.2 + _ZNK4geos9operation7overlay15ElevationMatrix7getCellERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9operation7overlay18OverlayNodeFactory10createNodeERKNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9operation7overlay19ElevationMatrixCell5printB5cxx11Ev@Base 3.5.1 + _ZNK4geos9operation7overlay19ElevationMatrixCell6getAvgEv@Base 3.4.2 + _ZNK4geos9operation7overlay19ElevationMatrixCell8getTotalEv@Base 3.4.2 + _ZNK4geos9operation7overlay21ElevationMatrixFilter9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9operation7overlay9OverlayOp6mergeZEPNS_9geomgraph4NodeEPKNS_4geom10LineStringE@Base 3.4.2 + _ZNK4geos9operation7overlay9OverlayOp6mergeZEPNS_9geomgraph4NodeEPKNS_4geom7PolygonE@Base 3.4.2 + _ZNK4geos9operation8distance13FacetSequence11getEnvelopeEv@Base 3.6.0 + (subst)_ZNK4geos9operation8distance13FacetSequence13getCoordinateE{size_t}@Base 3.6.0 + _ZNK4geos9operation8distance13FacetSequence23computeLineLineDistanceERKS2_@Base 3.6.0 + _ZNK4geos9operation8distance13FacetSequence24computePointLineDistanceERKNS_4geom10CoordinateERKS2_@Base 3.6.0 + _ZNK4geos9operation8distance13FacetSequence4sizeEv@Base 3.6.0 + _ZNK4geos9operation8distance13FacetSequence7isPointEv@Base 3.6.0 + _ZNK4geos9operation8distance13FacetSequence8distanceERKS2_@Base 3.7.0 + _ZNK4geos9operation8distance20IndexedFacetDistance11getDistanceEPKNS_4geom8GeometryE@Base 3.7.0 + _ZNK4geos9operation8geounion18PointGeometryUnion5UnionEv@Base 3.4.2 + _ZNK4geos9operation9linemerge13LineMergeEdge7getLineEv@Base 3.4.2 + _ZNK4geos9precision10Translater9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 + _ZNK4geos9precision22CommonCoordinateFilter9filter_rwEPNS_4geom10CoordinateE@Base 3.4.2 + (optional=templinst)_ZNKSt5ctypeIcE8do_widenEc@Base 3.4.2 + (optional=templinst)_ZNSt11_Deque_baseIPN4geos11planargraph4NodeESaIS3_EED1Ev@Base 3.4.2 + (optional=templinst)_ZNSt11_Deque_baseIPN4geos11planargraph4NodeESaIS3_EED2Ev@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_initialize_mapEj@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_initialize_mapEm@Base 3.4.2 + (optional=templinst)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EED1Ev@Base 3.4.2 + (optional=templinst)_ZNSt11_Deque_baseIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EED2Ev@Base 3.4.2 + _ZNSt5dequeIPN4geos11planargraph4NodeESaIS3_EE16_M_push_back_auxIJRKS3_EEEvDpOT_@Base 3.7.0 + _ZNSt5dequeIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE16_M_push_back_auxIJRKS4_EEEvDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt5dequeIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE16_M_push_back_auxIJS4_EEEvDpOT_@Base 3.7.0 + (subst)_ZNSt5dequeIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_reallocate_mapE{size_t}b@Base 3.7.0 + _ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE12emplace_backIJS2_EEEvDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE13_M_assign_auxIN9__gnu_cxx17__normal_iteratorIPKS2_S4_EEEEvT_SB_St20forward_iterator_tag@Base 3.6.2 + (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE13_M_assign_auxISt20_List_const_iteratorIS2_EEEvT_S8_St20forward_iterator_tag@Base 3.4.2 + (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPKS2_S4_EEEEvNS7_IPS2_S4_EET_SD_St20forward_iterator_tag@Base 3.4.2 + (optional=templinst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS2_S4_EEEEvS9_T_SA_St20forward_iterator_tag@Base 3.4.2 + (arch=!ia64|subst)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE17_M_default_appendE{size_t}@Base 3.7.0 + _ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE17_M_realloc_insertIJRKS2_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S4_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!amd64)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE17_M_realloc_insertIJS2_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S4_EEDpOT_@Base 3.7.1 + (optional=templinst|arch=hppa ia64 mips mips64el mipsel riscv64 sparc64)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE6insertEN9__gnu_cxx17__normal_iteratorIPKS2_S4_EERS7_@Base 3.7.0 + (optional=templinst|arch=!alpha !amd64 !arm64 !hppa !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64 !x32)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE7reserveEj@Base 3.4.2 + (optional=templinst|arch=alpha ppc64 ppc64el s390x)_ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EE7reserveEm@Base 3.5.0 + _ZNSt6vectorIN4geos4geom10CoordinateESaIS2_EEaSERKS4_@Base 3.7.0 + _ZNSt6vectorIN4geos5index7strtree13ItemsListItemESaIS3_EE12emplace_backIJS3_EEEvDpOT_@Base 3.7.0 + _ZNSt6vectorIN4geos5index7strtree13ItemsListItemESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIN4geos9algorithm8distance17PointPairDistanceESaIS3_EED1Ev@Base 3.7.0 + _ZNSt6vectorIN4geos9algorithm8distance17PointPairDistanceESaIS3_EED2Ev@Base 3.7.0 + _ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_M_realloc_insertIJS5_EEEvN9__gnu_cxx17__normal_iteratorIPS5_S7_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED1Ev@Base 3.4.2 + (optional=templinst)_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev@Base 3.4.2 + _ZNSt6vectorIPKN4geos11planargraph12DirectedEdgeESaIS4_EE12emplace_backIJS4_EEEvDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos11planargraph12DirectedEdgeESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos11planargraph12DirectedEdgeESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE13_M_assign_auxISt23_Rb_tree_const_iteratorIS4_EEEvT_SA_St20forward_iterator_tag@Base 3.4.2 + (subst)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE17_M_default_appendE{size_t}@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom10LineStringESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom10LineStringESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom10LinearRingESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom5PointESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos4geom7PolygonESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos5index13intervalrtree17IntervalRTreeNodeESaIS5_EE17_M_realloc_insertIJRKS5_EEEvN9__gnu_cxx17__normal_iteratorIPS5_S7_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPKN4geos6noding13SegmentStringESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos11planargraph12DirectedEdgeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!alpha !hurd-i386 !i386 !mips !mipsel !powerpc !powerpcspe !ppc64 !s390x)_ZNSt6vectorIPN4geos11planargraph12DirectedEdgeESaIS3_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS3_S5_EE@Base 3.4.2 + _ZNSt6vectorIPN4geos11planargraph4EdgeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!alpha !hurd-i386 !i386 !mips !mipsel !powerpc !powerpcspe !ppc64 !s390x)_ZNSt6vectorIPN4geos11planargraph4EdgeESaIS3_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS3_S5_EE@Base 3.4.2 + _ZNSt6vectorIPN4geos11planargraph4NodeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos11planargraph8SubgraphESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos11triangulate8quadedge8QuadEdgeESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom10CoordinateESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom10LineStringESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom10LineStringESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom11LineSegmentESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom18CoordinateSequenceESaIS3_EE12emplace_backIJS3_EEEvDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom18CoordinateSequenceESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom18CoordinateSequenceESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom5PointESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom7PolygonESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom8EnvelopeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE12emplace_backIJS3_EEEvDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS1_10LineStringES_ISA_SaISA_EEEEEEvNS8_IPS3_S5_EET_SH_St20forward_iterator_tag@Base 3.4.2 + (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS1_5PointES_ISA_SaISA_EEEEEEvNS8_IPS3_S5_EET_SH_St20forward_iterator_tag@Base 3.4.2 + (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS1_7PolygonES_ISA_SaISA_EEEEEEvNS8_IPS3_S5_EET_SH_St20forward_iterator_tag@Base 3.4.2 + (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS3_S5_EEEEvSA_T_SB_St20forward_iterator_tag@Base 3.4.2 + _ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEj@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEm@Base 3.4.2 + _ZNSt6vectorIPN4geos5index5chain13MonotoneChainESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZNSt6vectorIPN4geos5index5chain13MonotoneChainESaIS4_EE7reserveEj@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZNSt6vectorIPN4geos5index5chain13MonotoneChainESaIS4_EE7reserveEm@Base 3.4.2 + _ZNSt6vectorIPN4geos5index7bintree8IntervalESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos5index7strtree12AbstractNodeESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos5index7strtree13BoundablePairESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos5index7strtree13BoundablePairESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE12emplace_backIJS4_EEEvDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS4_S6_EEEEvSB_T_SC_St20forward_iterator_tag@Base 3.4.2 + _ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!alpha !hurd-i386 !i386 !mips !mipsel !powerpc !powerpcspe !ppc64 !s390x)_ZNSt6vectorIPN4geos5index7strtree9BoundableESaIS4_EE8_M_eraseEN9__gnu_cxx17__normal_iteratorIPS4_S6_EE@Base 3.4.2 + _ZNSt6vectorIPN4geos5index9sweepline14SweepLineEventESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos5index9sweepline14SweepLineEventESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos6noding13SegmentStringESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos6noding13SegmentStringESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos8simplify17TaggedLineSegmentESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9geomgraph12DirectedEdgeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=armel armhf)_ZNSt6vectorIPN4geos9geomgraph4EdgeESaIS3_EE12emplace_backIJS3_EEEvDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph4EdgeESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS3_S5_EEEEvSA_T_SB_St20forward_iterator_tag@Base 3.4.2 + _ZNSt6vectorIPN4geos9geomgraph4EdgeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (arch=!armel !armhf)_ZNSt6vectorIPN4geos9geomgraph4EdgeESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9geomgraph4NodeESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9geomgraph5LabelESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph5index14SweepLineEventESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph5index14SweepLineEventESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9geomgraph7EdgeEndESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos9geomgraph8EdgeRingESaIS3_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPPNS0_9operation7overlay15MinimalEdgeRingES_ISC_SaISC_EEEEEEvNS8_IPS3_S5_EET_SJ_St20forward_iterator_tag@Base 3.4.2 + _ZNSt6vectorIPN4geos9geomgraph8EdgeRingESaIS3_EE17_M_realloc_insertIJRKS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9geomgraph8EdgeRingESaIS3_EE17_M_realloc_insertIJS3_EEEvN9__gnu_cxx17__normal_iteratorIPS3_S5_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation10polygonize22PolygonizeDirectedEdgeESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation10polygonize8EdgeRingESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation6buffer12DepthSegmentESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation6buffer14BufferSubgraphESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation7overlay15MaximalEdgeRingESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation7overlay15MinimalEdgeRingESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation8distance13FacetSequenceESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation8distance16GeometryLocationESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation9linemerge10EdgeStringESaIS4_EE17_M_realloc_insertIJS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos9operation9linemerge21LineMergeDirectedEdgeESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPNSt7__cxx114listIPN4geos11planargraph12DirectedEdgeESaIS5_EEESaIS8_EE17_M_realloc_insertIJRKS8_EEEvN9__gnu_cxx17__normal_iteratorIPS8_SA_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPvSaIS0_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPKS0_S2_EEEEvNS5_IPS0_S2_EET_SB_St20forward_iterator_tag@Base 3.4.2 + (optional=templinst)_ZNSt6vectorIPvSaIS0_EE15_M_range_insertIN9__gnu_cxx17__normal_iteratorIPS0_S2_EEEEvS7_T_S8_St20forward_iterator_tag@Base 3.4.2 + _ZNSt6vectorIPvSaIS0_EE17_M_realloc_insertIJS0_EEEvN9__gnu_cxx17__normal_iteratorIPS0_S2_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorISt10unique_ptrIN4geos5index7strtree8IntervalESt14default_deleteIS4_EESaIS7_EE17_M_realloc_insertIJS7_EEEvN9__gnu_cxx17__normal_iteratorIPS7_S9_EEDpOT_@Base 3.7.1 + (subst)_ZNSt6vectorIdSaIdEE17_M_default_appendE{size_t}@Base 3.7.0 + _ZNSt6vectorIdSaIdEE17_M_realloc_insertIJRKdEEEvN9__gnu_cxx17__normal_iteratorIPdS1_EEDpOT_@Base 3.7.0 + (optional=templinst|arch=!ia64|subst)_ZNSt6vectorIiSaIiEE14_M_fill_assignE{size_t}RKi@Base 3.7.0 + (optional=templinst|arch=!ia64|subst)_ZNSt6vectorIiSaIiEE17_M_default_appendE{size_t}@Base 3.7.0 + _ZNSt6vectorIiSaIiEE17_M_realloc_insertIJRKiEEEvN9__gnu_cxx17__normal_iteratorIPiS1_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIiSaIiEEaSERKS1_@Base 3.4.2 + (subst)_ZNSt6vectorI{size_t}SaI{size_t}EE17_M_realloc_insertIJRK{size_t}EEEvN9__gnu_cxx17__normal_iteratorIP{size_t}S1_EEDpOT_@Base 3.7.0 + (subst)_ZNSt6vectorI{size_t}SaI{size_t}EE17_M_realloc_insertIJ{size_t}EEEvN9__gnu_cxx17__normal_iteratorIP{size_t}S1_EEDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag@Base 3.7.0 + (optional=templinst)_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag@Base 3.7.0 + (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev@Base 3.4.2 + (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev@Base 3.4.2 + (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev@Base 3.4.2 + (arch=amd64 arm64 hppa ia64 mips64el riscv64 sparc64 x32)_ZNSt7__cxx114listIN4geos4geom10CoordinateESaIS3_EE6insertESt20_List_const_iteratorIS3_ERKS3_@Base 3.7.0 + _ZNSt8_Rb_treeIN4geos11triangulate8quadedge6VertexES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueIRKS3_EESt4pairISt17_Rb_tree_iteratorIS3_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIN4geos11triangulate8quadedge6VertexES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE4findERKS3_@Base 3.5.0 + (optional=templinst)_ZNSt8_Rb_treeIN4geos11triangulate8quadedge6VertexES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.5.0 + (optional=templinst)_ZNSt8_Rb_treeIN4geos4geom10CoordinateES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueIRKS2_EESt4pairISt17_Rb_tree_iteratorIS2_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIN4geos4geom10CoordinateES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E@Base 3.4.2 + (optional=templinst|arch=amd64 arm64 hppa kfreebsd-amd64 m68k sh4 x32)_ZNSt8_Rb_treeIN4geos4geom10CoordinateESt4pairIKS2_PNS0_11planargraph4NodeEESt10_Select1stIS8_ENS1_18CoordinateLessThenESaIS8_EE11equal_rangeERS4_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIN4geos4geom10CoordinateESt4pairIKS2_PNS0_11planargraph4NodeEESt10_Select1stIS8_ENS1_18CoordinateLessThenESaIS8_EE17_M_emplace_uniqueIJS3_IS2_S7_EEEES3_ISt17_Rb_tree_iteratorIS8_EbEDpOT_@Base 3.7.1 + (optional=templinst)_ZNSt8_Rb_treeIN4geos4geom10CoordinateESt4pairIKS2_PNS0_11planargraph4NodeEESt10_Select1stIS8_ENS1_18CoordinateLessThenESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E@Base 3.4.2 + (optional=templinst|arch=amd64 arm64 hppa ia64 mips64el riscv64 sh4 sparc64 x32)_ZNSt8_Rb_treeIN4geos6noding23OrientedCoordinateArrayES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueIRKS2_EESt4pairISt17_Rb_tree_iteratorIS2_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIN4geos6noding23OrientedCoordinateArrayES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_PN4geos4util7ProfileEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE17_M_emplace_uniqueIJS6_IS5_SB_EEEES6_ISt17_Rb_tree_iteratorISC_EbEDpOT_@Base 3.7.1 + (optional=templinst)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_PN4geos4util7ProfileEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE4findERS7_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_PN4geos4util7ProfileEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE8_M_eraseEPSt13_Rb_tree_nodeISC_E@Base 3.4.2 + (optional=templinst|arch=!hurd-i386 !i386 !m68k !mips !mipsel !powerpc !powerpcspe)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE16_M_insert_uniqueIRKS4_EESt4pairISt17_Rb_tree_iteratorIS4_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE24_M_get_insert_unique_posERKS4_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 hppa ia64 kfreebsd-amd64 m68k mips64el ppc64 ppc64el riscv64 s390x sh4 sparc64 x32)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS4_ERKS4_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE4findERKS4_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 + (optional=templinst|arch=armel armhf)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE14_M_lower_boundEPSt13_Rb_tree_nodeISA_EPSt18_Rb_tree_node_baseRS6_@Base 3.5.1 + (optional=templinst|arch=armel armhf hurd-i386 i386 mips mipsel powerpc powerpcspe)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS6_EESK_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE24_M_get_insert_unique_posERS6_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 hppa ia64 kfreebsd-amd64 m68k mips64el ppc64 ppc64el riscv64 s390x sh4 sparc64 x32)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorISA_ERS6_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateESt4pairIKS4_PNS0_9operation12EndpointInfoEESt10_Select1stISA_ENS1_18CoordinateLessThenESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE16_M_insert_uniqueIRKS4_EESt4pairISt17_Rb_tree_iteratorIS4_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 + _ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE14_M_insert_nodeEPSt18_Rb_tree_node_baseSI_PSt13_Rb_tree_nodeISA_E@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE24_M_get_insert_unique_posERS6_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorISA_ERS6_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10LineStringESt4pairIKS4_PNS0_9geomgraph4EdgeEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom8GeometryESt4pairIKS4_PNS0_8simplify16TaggedLineStringEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE17_M_emplace_uniqueIJS5_IS4_S9_EEEES5_ISt17_Rb_tree_iteratorISA_EbEDpOT_@Base 3.7.1 + (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom8GeometryESt4pairIKS4_PNS0_8simplify16TaggedLineStringEESt10_Select1stISA_ESt4lessIS4_ESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E@Base 3.4.2 + _ZNSt8_Rb_treeIPN4geos11planargraph4EdgeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueIRKS3_EESt4pairISt17_Rb_tree_iteratorIS3_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos11planargraph4EdgeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 + _ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE16_M_insert_uniqueIRKS4_EESt4pairISt17_Rb_tree_iteratorIS4_EbEOT_@Base 3.7.0 + (optional=templinst|arch=amd64 arm64 hppa sh4 x32)_ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE16_M_insert_uniqueIS4_EESt4pairISt17_Rb_tree_iteratorIS4_EbEOT_@Base 3.7.0 + _ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE24_M_get_insert_unique_posERKS4_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE4findERKS4_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos11triangulate8quadedge8QuadEdgeES4_St9_IdentityIS4_ESt4lessIS4_ESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS5_EESJ_IJEEEEESt17_Rb_tree_iteratorIS9_ESt23_Rb_tree_const_iteratorIS9_EDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE24_M_get_insert_unique_posERS5_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 hppa ia64 kfreebsd-amd64 m68k mips64el ppc64 ppc64el riscv64 s390x sh4 sparc64 x32)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS9_ERS5_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos4geom10CoordinateESt4pairIKS3_PNS0_9geomgraph4NodeEESt10_Select1stIS9_ENS1_18CoordinateLessThenESaIS9_EE8_M_eraseEPSt13_Rb_tree_nodeIS9_E@Base 3.4.2 + (optional=templinst|arch=amd64 arm64 hppa sh4 x32)_ZNSt8_Rb_treeIPN4geos6noding11SegmentNodeES3_St9_IdentityIS3_ENS1_13SegmentNodeLTESaIS3_EE16_M_insert_uniqueIRKS3_EESt4pairISt17_Rb_tree_iteratorIS3_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos6noding11SegmentNodeES3_St9_IdentityIS3_ENS1_13SegmentNodeLTESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 + _ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS5_EESK_IJEEEEESt17_Rb_tree_iteratorIS9_ESt23_Rb_tree_const_iteratorIS9_EDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE24_M_get_insert_unique_posERS5_@Base 3.4.2 + (optional=templinst|arch=amd64 arm64 hppa ia64 kfreebsd-amd64 m68k mips64el ppc64el riscv64 sh4 sparc64 x32)_ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS9_ERS5_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos6noding23OrientedCoordinateArrayESt4pairIKS3_PNS0_9geomgraph4EdgeEESt10_Select1stIS9_ENS6_8EdgeList6OcaCmpESaIS9_EE8_M_eraseEPSt13_Rb_tree_nodeIS9_E@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph16EdgeIntersectionES3_St9_IdentityIS3_ENS1_24EdgeIntersectionLessThenESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 + _ZNSt8_Rb_treeIPN4geos9geomgraph4NodeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueIRKS3_EESt4pairISt17_Rb_tree_iteratorIS3_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph4NodeES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 + _ZNSt8_Rb_treeIPN4geos9geomgraph7EdgeEndES3_St9_IdentityIS3_ENS1_9EdgeEndLTESaIS3_EE16_M_insert_uniqueIRKS3_EESt4pairISt17_Rb_tree_iteratorIS3_EbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph7EdgeEndES3_St9_IdentityIS3_ENS1_9EdgeEndLTESaIS3_EE4findERKS3_@Base 3.4.2 + (optional=templinst)_ZNSt8_Rb_treeIPN4geos9geomgraph7EdgeEndES3_St9_IdentityIS3_ENS1_9EdgeEndLTESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E@Base 3.4.2 + _ZNSt8_Rb_treeIddSt9_IdentityIdESt4lessIdESaIdEE16_M_insert_uniqueIRKdEESt4pairISt17_Rb_tree_iteratorIdEbEOT_@Base 3.7.0 + (optional=templinst)_ZNSt8_Rb_treeIddSt9_IdentityIdESt4lessIdESaIdEE8_M_eraseEPSt13_Rb_tree_nodeIdE@Base 3.4.2 + (optional=templinst|arch=armel armhf hppa hurd-i386 i386 m68k mips mipsel powerpc powerpcspe sh4 x32)_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree13BoundablePairESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops14_Iter_comp_valINS5_25BoundablePairQueueCompareEEEEvT_T0_SH_T1_RT2_@Base 3.6.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree13BoundablePairESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops14_Iter_comp_valINS5_25BoundablePairQueueCompareEEEEvT_T0_SH_T1_RT2_@Base 3.6.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEEiS4_NS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_T0_SF_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEElS4_NS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_T0_SF_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEEiS7_NS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_T0_SJ_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEElS7_NS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_T0_SJ_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEEiS5_NS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEElS5_NS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEEiS5_NS0_5__ops15_Iter_less_iterEEvT_T0_SE_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEElS5_NS0_5__ops15_Iter_less_iterEEvT_T0_SE_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEEiS5_NS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_T0_SG_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEElS5_NS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_T0_SG_T1_T2_@Base 3.4.2 + (optional=templinst|subst)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree13BoundablePairESt6vectorIS6_SaIS6_EEEE{ssize_t}S6_NS0_5__ops15_Iter_comp_iterINS5_25BoundablePairQueueCompareEEEEvT_T0_SH_T1_T2_@Base 3.6.0 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_T0_SH_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEEiS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEElS6_NS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_T0_SI_T1_T2_@Base 3.4.2 + (optional=templinst|arch=!alpha !mips !mipsel !ppc64 !ppc64el !s390x !sh4)_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_SE_T0_@Base 3.6.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEENS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_SI_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_SG_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_less_iterEEvT_SD_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_SF_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_@Base 3.4.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_SG_T0_@Base 3.6.2 + (optional=templinst)_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEENS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEEiNS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEElNS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_SI_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPKN4geos5index13intervalrtree17IntervalRTreeNodeESt6vectorIS7_SaIS7_EEEElNS0_5__ops15_Iter_comp_iterIPFbS7_S7_EEEEvT_SI_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph12DirectedEdgeESt6vectorIS5_SaIS5_EEEElNS0_5__ops15_Iter_comp_iterIPFbS5_S5_EEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|subst)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEE{ssize_t}NS0_5__ops15_Iter_less_iterEEvT_SD_T0_T1_@Base 3.7.0 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEEiNS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_SF_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEElNS0_5__ops15_Iter_comp_iterINS3_19GeometryGreaterThenEEEEvT_SF_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index7strtree9BoundableESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterINS4_22SweepLineEventLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer12DepthSegmentESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterINS4_20DepthSegmentLessThenEEEEvT_SG_T0_T1_@Base 3.4.2 + (optional=templinst|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEEiNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 + (optional=templinst|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN4geos9operation6buffer14BufferSubgraphESt6vectorIS6_SaIS6_EEEElNS0_5__ops15_Iter_comp_iterIPFbS6_S6_EEEEvT_SH_T0_T1_@Base 3.4.2 + (optional=templinst)_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN4geos11planargraph4EdgeESt6vectorIS5_SaIS5_EEEENS0_5__ops15_Iter_less_iterEEvT_SD_T0_@Base 3.7.0 + (optional=templinst|arch=!alpha !armel !armhf !hurd-i386 !i386 !m68k !mips !mipsel !powerpc !powerpcspe !ppc64 !ppc64el !s390x !sh4)_ZSt22__move_median_to_firstIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops15_Iter_comp_iterINS3_18CoordinateLessThenEEEEvT_SE_SE_SE_T0_@Base 3.4.2 + (optional=templinst)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops14_Val_comp_iterINS3_18CoordinateLessThenEEEEvT_T0_@Base 3.6.2 + (optional=templinst)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN4geos4geom8GeometryESt6vectorIS5_SaIS5_EEEENS0_5__ops14_Val_comp_iterINS3_19GeometryGreaterThenEEEEvT_T0_@Base 3.4.2 + (optional=templinst)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN4geos5index9sweepline14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops14_Val_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_@Base 3.4.2 + (optional=templinst|arch=armel armhf hurd-i386 i386 m68k mips mipsel powerpc powerpcspe)_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN4geos9geomgraph5index14SweepLineEventESt6vectorIS6_SaIS6_EEEENS0_5__ops14_Val_comp_iterINS4_22SweepLineEventLessThenEEEEvT_T0_@Base 3.7.0 + (optional=templinst|arch=kfreebsd-i386 m68k)_ZSt8__uniqueIN9__gnu_cxx17__normal_iteratorIPN4geos4geom10CoordinateESt6vectorIS4_SaIS4_EEEENS0_5__ops19_Iter_equal_to_iterEET_SC_SC_T0_@Base 3.5.0 + (optional=templinst|arch=armel armhf m68k)_ZSt9__find_ifIN9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEENS0_5__ops16_Iter_equals_valIKdEEET_SB_SB_T0_St26random_access_iterator_tag@Base 3.4.2 + _ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_S9_@Base 3.7.0 + (optional=templinst)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_@Base 3.4.2 + (optional=templinst)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_@Base 3.4.2 + _ZTIN4geos11planargraph11PlanarGraphE@Base 3.4.2 + _ZTIN4geos11planargraph12DirectedEdgeE@Base 3.4.2 + _ZTIN4geos11planargraph14GraphComponentE@Base 3.4.2 + _ZTIN4geos11planargraph16DirectedEdgeStarE@Base 3.4.2 + _ZTIN4geos11planargraph4EdgeE@Base 3.4.2 + _ZTIN4geos11planargraph4NodeE@Base 3.4.2 + _ZTIN4geos11planargraph7NodeMapE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge15QuadEdgeLocatorE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge15TriangleVisitorE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorE@Base 3.5.0 + _ZTIN4geos11triangulate8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge22LocateFailureExceptionE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge6VertexE@Base 3.4.2 + _ZTIN4geos11triangulate8quadedge8QuadEdgeE@Base 3.4.2 + _ZTIN4geos2io14ParseExceptionE@Base 3.4.2 + _ZTIN4geos2io9WKBWriterE@Base 3.4.2 + _ZTIN4geos4geom10LineStringE@Base 3.4.2 + _ZTIN4geos4geom10LinearRingE@Base 3.4.2 + _ZTIN4geos4geom10MultiPointE@Base 3.4.2 + _ZTIN4geos4geom11LineSegmentE@Base 3.4.2 + _ZTIN4geos4geom12MultiPolygonE@Base 3.4.2 + _ZTIN4geos4geom14GeometryFilterE@Base 3.4.2 + _ZTIN4geos4geom15GeometryFactoryE@Base 3.4.2 + _ZTIN4geos4geom15MultiLineStringE@Base 3.4.2 + _ZTIN4geos4geom16CoordinateFilterE@Base 3.4.2 + _ZTIN4geos4geom18CoordinateSequenceE@Base 3.4.2 + _ZTIN4geos4geom18GeometryCollectionE@Base 3.4.2 + _ZTIN4geos4geom23CoordinateArraySequenceE@Base 3.4.2 + _ZTIN4geos4geom23GeometryComponentFilterE@Base 3.4.2 + _ZTIN4geos4geom24CoordinateSequenceFilterE@Base 3.4.2 + _ZTIN4geos4geom25CoordinateSequenceFactoryE@Base 3.4.2 + _ZTIN4geos4geom30CoordinateArraySequenceFactoryE@Base 3.4.2 + _ZTIN4geos4geom4prep13PreparedPointE@Base 3.4.2 + _ZTIN4geos4geom4prep15PreparedPolygonE@Base 3.4.2 + _ZTIN4geos4geom4prep16PreparedGeometryE@Base 3.4.2 + _ZTIN4geos4geom4prep18PreparedLineStringE@Base 3.4.2 + _ZTIN4geos4geom4prep21BasicPreparedGeometryE@Base 3.4.2 + _ZTIN4geos4geom4prep21PreparedPolygonCoversE@Base 3.4.2 + _ZTIN4geos4geom4prep23PreparedPolygonContainsE@Base 3.4.2 + _ZTIN4geos4geom4prep24PreparedPolygonPredicateE@Base 3.4.2 + _ZTIN4geos4geom4prep25PreparedPolygonIntersectsE@Base 3.4.2 + _ZTIN4geos4geom4prep31AbstractPreparedPolygonContainsE@Base 3.4.2 + _ZTIN4geos4geom4prep31PreparedPolygonContainsProperlyE@Base 3.4.2 + _ZTIN4geos4geom4util14PointExtracterE@Base 3.4.2 + _ZTIN4geos4geom4util16PolygonExtracterE@Base 3.4.2 + _ZTIN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTIN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTIN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTIN4geos4geom4util19CoordinateOperationE@Base 3.4.2 + _ZTIN4geos4geom4util19GeometryTransformerE@Base 3.4.2 + _ZTIN4geos4geom4util23GeometryEditorOperationE@Base 3.4.2 + _ZTIN4geos4geom4util24LinearComponentExtracterE@Base 3.4.2 + _ZTIN4geos4geom4util28ComponentCoordinateExtracterE@Base 3.4.2 + _ZTIN4geos4geom4util29ShortCircuitedGeometryVisitorE@Base 3.4.2 + _ZTIN4geos4geom5PointE@Base 3.4.2 + _ZTIN4geos4geom6LinealE@Base 3.4.2 + _ZTIN4geos4geom6PuntalE@Base 3.4.2 + _ZTIN4geos4geom7PolygonE@Base 3.4.2 + _ZTIN4geos4geom8Geometry21GeometryChangedFilterE@Base 3.4.2 + _ZTIN4geos4geom8GeometryE@Base 3.4.2 + _ZTIN4geos4geom9PolygonalE@Base 3.4.2 + _ZTIN4geos4util13GEOSExceptionE@Base 3.4.2 + _ZTIN4geos4util17TopologyExceptionE@Base 3.4.2 + _ZTIN4geos4util20InterruptedExceptionE@Base 3.4.2 + _ZTIN4geos4util21GeometricShapeFactoryE@Base 3.4.2 + _ZTIN4geos4util21IllegalStateExceptionE@Base 3.4.2 + _ZTIN4geos4util24AssertionFailedExceptionE@Base 3.4.2 + _ZTIN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 + _ZTIN4geos4util27UniqueCoordinateArrayFilterE@Base 3.4.2 + _ZTIN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 + _ZTIN4geos5index11ItemVisitorE@Base 3.4.2 + _ZTIN4geos5index12SpatialIndexE@Base 3.4.2 + _ZTIN4geos5index13intervalrtree17IntervalRTreeNodeE@Base 3.4.2 + _ZTIN4geos5index13intervalrtree21IntervalRTreeLeafNodeE@Base 3.4.2 + _ZTIN4geos5index13intervalrtree23IntervalRTreeBranchNodeE@Base 3.4.2 + _ZTIN4geos5index5chain25MonotoneChainSelectActionE@Base 3.4.2 + _ZTIN4geos5index5chain26MonotoneChainOverlapActionE@Base 3.4.2 + _ZTIN4geos5index7bintree4NodeE@Base 3.4.2 + _ZTIN4geos5index7bintree4RootE@Base 3.4.2 + _ZTIN4geos5index7bintree8NodeBaseE@Base 3.4.2 + _ZTIN4geos5index7strtree12AbstractNodeE@Base 3.4.2 + _ZTIN4geos5index7strtree12ItemDistanceE@Base 3.6.0 + _ZTIN4geos5index7strtree13ItemBoundableE@Base 3.4.2 + _ZTIN4geos5index7strtree15AbstractSTRtree12IntersectsOpE@Base 3.4.2 + _ZTIN4geos5index7strtree15AbstractSTRtreeE@Base 3.4.2 + _ZTIN4geos5index7strtree15SIRAbstractNodeE@Base 3.4.2 + _ZTIN4geos5index7strtree15STRAbstractNodeE@Base 3.4.2 + _ZTIN4geos5index7strtree20GeometryItemDistanceE@Base 3.6.0 + _ZTIN4geos5index7strtree7SIRtree15SIRIntersectsOpE@Base 3.4.2 + _ZTIN4geos5index7strtree7SIRtreeE@Base 3.4.2 + _ZTIN4geos5index7strtree7STRtree15STRIntersectsOpE@Base 3.4.2 + _ZTIN4geos5index7strtree7STRtreeE@Base 3.4.2 + _ZTIN4geos5index7strtree9BoundableE@Base 3.4.2 + _ZTIN4geos5index8quadtree4NodeE@Base 3.4.2 + _ZTIN4geos5index8quadtree4RootE@Base 3.4.2 + _ZTIN4geos5index8quadtree8NodeBaseE@Base 3.4.2 + _ZTIN4geos5index8quadtree8QuadtreeE@Base 3.4.2 + _ZTIN4geos5index9sweepline22SweepLineOverlapActionE@Base 3.4.2 + _ZTIN4geos6noding11ScaledNoder6ScalerE@Base 3.4.2 + _ZTIN4geos6noding11ScaledNoder8ReScalerE@Base 3.4.2 + _ZTIN4geos6noding11ScaledNoderE@Base 3.4.2 + _ZTIN4geos6noding11SimpleNoderE@Base 3.4.2 + _ZTIN4geos6noding12MCIndexNoder20SegmentOverlapActionE@Base 3.4.2 + _ZTIN4geos6noding12MCIndexNoderE@Base 3.4.2 + _ZTIN4geos6noding13IteratedNoderE@Base 3.4.2 + _ZTIN4geos6noding13SegmentStringE@Base 3.4.2 + _ZTIN4geos6noding15SegmentNodeListE@Base 3.4.2 + _ZTIN4geos6noding15SinglePassNoderE@Base 3.4.2 + _ZTIN4geos6noding17IntersectionAdderE@Base 3.4.2 + _ZTIN4geos6noding18BasicSegmentStringE@Base 3.4.2 + _ZTIN4geos6noding18NodedSegmentStringE@Base 3.4.2 + _ZTIN4geos6noding18SegmentIntersectorE@Base 3.4.2 + _ZTIN4geos6noding20NodableSegmentStringE@Base 3.4.2 + _ZTIN4geos6noding23IntersectionFinderAdderE@Base 3.4.2 + _ZTIN4geos6noding27SegmentIntersectionDetectorE@Base 3.4.2 + _ZTIN4geos6noding27SegmentSetMutualIntersectorE@Base 3.4.2 + _ZTIN4geos6noding32SingleInteriorIntersectionFinderE@Base 3.4.2 + _ZTIN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionE@Base 3.4.2 + _ZTIN4geos6noding34MCIndexSegmentSetMutualIntersectorE@Base 3.4.2 + _ZTIN4geos6noding5NoderE@Base 3.4.2 + _ZTIN4geos6noding9snapround17SimpleSnapRounderE@Base 3.4.2 + _ZTIN4geos6noding9snapround18HotPixelSnapActionE@Base 3.4.2 + _ZTIN4geos6noding9snapround18MCIndexSnapRounderE@Base 3.4.2 + _ZTIN4geos6noding9snapround26MCIndexPointSnapperVisitorE@Base 3.4.2 + _ZTIN4geos8simplify13DPTransformerE@Base 3.4.2 + _ZTIN4geos8simplify17TaggedLineSegmentE@Base 3.4.2 + _ZTIN4geos8simplify18LineSegmentVisitorE@Base 3.4.2 + _ZTIN4geos9algorithm11PointInRingE@Base 3.4.2 + _ZTIN4geos9algorithm13MCPointInRing10MCSelecterE@Base 3.4.2 + _ZTIN4geos9algorithm13MCPointInRingE@Base 3.4.2 + _ZTIN4geos9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZTIN4geos9algorithm17SimplePointInRingE@Base 3.4.2 + _ZTIN4geos9algorithm18SIRtreePointInRingE@Base 3.4.2 + _ZTIN4geos9algorithm25NotRepresentableExceptionE@Base 3.4.2 + _ZTIN4geos9algorithm6locate22PointOnGeometryLocatorE@Base 3.4.2 + _ZTIN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorE@Base 3.4.2 + _ZTIN4geos9algorithm6locate25IndexedPointInAreaLocatorE@Base 3.4.2 + _ZTIN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterE@Base 3.4.2 + _ZTIN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterE@Base 3.4.2 + _ZTIN4geos9geomgraph11EdgeEndStarE@Base 3.4.2 + _ZTIN4geos9geomgraph11NodeFactoryE@Base 3.4.2 + _ZTIN4geos9geomgraph11PlanarGraphE@Base 3.4.2 + _ZTIN4geos9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZTIN4geos9geomgraph13GeometryGraphE@Base 3.4.2 + _ZTIN4geos9geomgraph14GraphComponentE@Base 3.4.2 + _ZTIN4geos9geomgraph16DirectedEdgeStarE@Base 3.4.2 + _ZTIN4geos9geomgraph4EdgeE@Base 3.4.2 + _ZTIN4geos9geomgraph4NodeE@Base 3.4.2 + _ZTIN4geos9geomgraph5DepthE@Base 3.4.2 + _ZTIN4geos9geomgraph5index13MonotoneChainE@Base 3.4.2 + _ZTIN4geos9geomgraph5index14SweepLineEventE@Base 3.4.2 + _ZTIN4geos9geomgraph5index16SweepLineSegmentE@Base 3.4.2 + _ZTIN4geos9geomgraph5index17SweepLineEventOBJE@Base 3.4.2 + _ZTIN4geos9geomgraph5index18EdgeSetIntersectorE@Base 3.4.2 + _ZTIN4geos9geomgraph5index18SegmentIntersectorE@Base 3.4.2 + _ZTIN4geos9geomgraph5index24SimpleEdgeSetIntersectorE@Base 3.4.2 + _ZTIN4geos9geomgraph5index26SimpleSweepLineIntersectorE@Base 3.4.2 + _ZTIN4geos9geomgraph5index28SimpleMCSweepLineIntersectorE@Base 3.4.2 + _ZTIN4geos9geomgraph7EdgeEndE@Base 3.4.2 + _ZTIN4geos9geomgraph7NodeMapE@Base 3.4.2 + _ZTIN4geos9geomgraph8EdgeListE@Base 3.4.2 + _ZTIN4geos9geomgraph8EdgeRingE@Base 3.4.2 + _ZTIN4geos9operation10polygonize11Polygonizer15LineStringAdderE@Base 3.4.2 + _ZTIN4geos9operation10polygonize14PolygonizeEdgeE@Base 3.4.2 + _ZTIN4geos9operation10polygonize15PolygonizeGraphE@Base 3.4.2 + _ZTIN4geos9operation10polygonize22PolygonizeDirectedEdgeE@Base 3.4.2 + _ZTIN4geos9operation22GeometryGraphOperationE@Base 3.4.2 + _ZTIN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionE@Base 3.4.2 + _ZTIN4geos9operation5valid9IsValidOpE@Base 3.4.2 + _ZTIN4geos9operation6relate10RelateNodeE@Base 3.4.2 + _ZTIN4geos9operation6relate13EdgeEndBundleE@Base 3.4.2 + _ZTIN4geos9operation6relate15RelateNodeGraphE@Base 3.4.2 + _ZTIN4geos9operation6relate17EdgeEndBundleStarE@Base 3.4.2 + _ZTIN4geos9operation6relate17RelateNodeFactoryE@Base 3.4.2 + _ZTIN4geos9operation6relate8RelateOpE@Base 3.4.2 + _ZTIN4geos9operation7overlay15MaximalEdgeRingE@Base 3.4.2 + _ZTIN4geos9operation7overlay15MinimalEdgeRingE@Base 3.4.2 + _ZTIN4geos9operation7overlay18OverlayNodeFactoryE@Base 3.4.2 + _ZTIN4geos9operation7overlay21ElevationMatrixFilterE@Base 3.4.2 + _ZTIN4geos9operation7overlay4snap15SnapTransformerE@Base 3.4.2 + _ZTIN4geos9operation7overlay9OverlayOpE@Base 3.4.2 + _ZTIN4geos9operation8distance27ConnectedElementPointFilterE@Base 3.4.2 + _ZTIN4geos9operation8distance30ConnectedElementLocationFilterE@Base 3.4.2 + _ZTIN4geos9operation8distance7DeleterE@Base 3.7.0 + _ZTIN4geos9operation9linemerge13LineMergeEdgeE@Base 3.4.2 + _ZTIN4geos9operation9linemerge14LineMergeGraphE@Base 3.4.2 + _ZTIN4geos9operation9linemerge21LineMergeDirectedEdgeE@Base 3.4.2 + _ZTIN4geos9operation9predicate20ContainsPointVisitorE@Base 3.4.2 + _ZTIN4geos9operation9predicate21LineIntersectsVisitorE@Base 3.4.2 + _ZTIN4geos9operation9predicate25EnvelopeIntersectsVisitorE@Base 3.4.2 + _ZTIN4geos9precision10TranslaterE@Base 3.4.2 + _ZTIN4geos9precision22CommonCoordinateFilterE@Base 3.4.2 + _ZTIN4geos9precision35PrecisionReducerCoordinateOperationE@Base 3.4.2 + _ZTIPN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 + _ZTIPN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 + _ZTSN4geos11planargraph11PlanarGraphE@Base 3.4.2 + _ZTSN4geos11planargraph12DirectedEdgeE@Base 3.4.2 + _ZTSN4geos11planargraph14GraphComponentE@Base 3.4.2 + _ZTSN4geos11planargraph16DirectedEdgeStarE@Base 3.4.2 + _ZTSN4geos11planargraph4EdgeE@Base 3.4.2 + _ZTSN4geos11planargraph4NodeE@Base 3.4.2 + _ZTSN4geos11planargraph7NodeMapE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge15QuadEdgeLocatorE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge15TriangleVisitorE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorE@Base 3.5.0 + _ZTSN4geos11triangulate8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge22LocateFailureExceptionE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge6VertexE@Base 3.4.2 + _ZTSN4geos11triangulate8quadedge8QuadEdgeE@Base 3.4.2 + _ZTSN4geos2io14ParseExceptionE@Base 3.4.2 + _ZTSN4geos2io9WKBWriterE@Base 3.4.2 + _ZTSN4geos4geom10LineStringE@Base 3.4.2 + _ZTSN4geos4geom10LinearRingE@Base 3.4.2 + _ZTSN4geos4geom10MultiPointE@Base 3.4.2 + _ZTSN4geos4geom11LineSegmentE@Base 3.4.2 + _ZTSN4geos4geom12MultiPolygonE@Base 3.4.2 + _ZTSN4geos4geom14GeometryFilterE@Base 3.4.2 + _ZTSN4geos4geom15GeometryFactoryE@Base 3.4.2 + _ZTSN4geos4geom15MultiLineStringE@Base 3.4.2 + _ZTSN4geos4geom16CoordinateFilterE@Base 3.4.2 + _ZTSN4geos4geom18CoordinateSequenceE@Base 3.4.2 + _ZTSN4geos4geom18GeometryCollectionE@Base 3.4.2 + _ZTSN4geos4geom23CoordinateArraySequenceE@Base 3.4.2 + _ZTSN4geos4geom23GeometryComponentFilterE@Base 3.4.2 + _ZTSN4geos4geom24CoordinateSequenceFilterE@Base 3.4.2 + _ZTSN4geos4geom25CoordinateSequenceFactoryE@Base 3.4.2 + _ZTSN4geos4geom30CoordinateArraySequenceFactoryE@Base 3.4.2 + _ZTSN4geos4geom4prep13PreparedPointE@Base 3.4.2 + _ZTSN4geos4geom4prep15PreparedPolygonE@Base 3.4.2 + _ZTSN4geos4geom4prep16PreparedGeometryE@Base 3.4.2 + _ZTSN4geos4geom4prep18PreparedLineStringE@Base 3.4.2 + _ZTSN4geos4geom4prep21BasicPreparedGeometryE@Base 3.4.2 + _ZTSN4geos4geom4prep21PreparedPolygonCoversE@Base 3.4.2 + _ZTSN4geos4geom4prep23PreparedPolygonContainsE@Base 3.4.2 + _ZTSN4geos4geom4prep24PreparedPolygonPredicateE@Base 3.4.2 + _ZTSN4geos4geom4prep25PreparedPolygonIntersectsE@Base 3.4.2 + _ZTSN4geos4geom4prep31AbstractPreparedPolygonContainsE@Base 3.4.2 + _ZTSN4geos4geom4prep31PreparedPolygonContainsProperlyE@Base 3.4.2 + _ZTSN4geos4geom4util14PointExtracterE@Base 3.4.2 + _ZTSN4geos4geom4util16PolygonExtracterE@Base 3.4.2 + _ZTSN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTSN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTSN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTSN4geos4geom4util19CoordinateOperationE@Base 3.4.2 + _ZTSN4geos4geom4util19GeometryTransformerE@Base 3.4.2 + _ZTSN4geos4geom4util23GeometryEditorOperationE@Base 3.4.2 + _ZTSN4geos4geom4util24LinearComponentExtracterE@Base 3.4.2 + _ZTSN4geos4geom4util28ComponentCoordinateExtracterE@Base 3.4.2 + _ZTSN4geos4geom4util29ShortCircuitedGeometryVisitorE@Base 3.4.2 + _ZTSN4geos4geom5PointE@Base 3.4.2 + _ZTSN4geos4geom6LinealE@Base 3.4.2 + _ZTSN4geos4geom6PuntalE@Base 3.4.2 + _ZTSN4geos4geom7PolygonE@Base 3.4.2 + _ZTSN4geos4geom8Geometry21GeometryChangedFilterE@Base 3.4.2 + _ZTSN4geos4geom8GeometryE@Base 3.4.2 + _ZTSN4geos4geom9PolygonalE@Base 3.4.2 + _ZTSN4geos4util13GEOSExceptionE@Base 3.4.2 + _ZTSN4geos4util17TopologyExceptionE@Base 3.4.2 + _ZTSN4geos4util20InterruptedExceptionE@Base 3.4.2 + _ZTSN4geos4util21GeometricShapeFactoryE@Base 3.4.2 + _ZTSN4geos4util21IllegalStateExceptionE@Base 3.4.2 + _ZTSN4geos4util24AssertionFailedExceptionE@Base 3.4.2 + _ZTSN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 + _ZTSN4geos4util27UniqueCoordinateArrayFilterE@Base 3.4.2 + _ZTSN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 + _ZTSN4geos5index11ItemVisitorE@Base 3.4.2 + _ZTSN4geos5index12SpatialIndexE@Base 3.4.2 + _ZTSN4geos5index13intervalrtree17IntervalRTreeNodeE@Base 3.4.2 + _ZTSN4geos5index13intervalrtree21IntervalRTreeLeafNodeE@Base 3.4.2 + _ZTSN4geos5index13intervalrtree23IntervalRTreeBranchNodeE@Base 3.4.2 + _ZTSN4geos5index5chain25MonotoneChainSelectActionE@Base 3.4.2 + _ZTSN4geos5index5chain26MonotoneChainOverlapActionE@Base 3.4.2 + _ZTSN4geos5index7bintree4NodeE@Base 3.4.2 + _ZTSN4geos5index7bintree4RootE@Base 3.4.2 + _ZTSN4geos5index7bintree8NodeBaseE@Base 3.4.2 + _ZTSN4geos5index7strtree12AbstractNodeE@Base 3.4.2 + _ZTSN4geos5index7strtree12ItemDistanceE@Base 3.6.0 + _ZTSN4geos5index7strtree13ItemBoundableE@Base 3.4.2 + _ZTSN4geos5index7strtree15AbstractSTRtree12IntersectsOpE@Base 3.4.2 + _ZTSN4geos5index7strtree15AbstractSTRtreeE@Base 3.4.2 + _ZTSN4geos5index7strtree15SIRAbstractNodeE@Base 3.4.2 + _ZTSN4geos5index7strtree15STRAbstractNodeE@Base 3.4.2 + _ZTSN4geos5index7strtree20GeometryItemDistanceE@Base 3.6.0 + _ZTSN4geos5index7strtree7SIRtree15SIRIntersectsOpE@Base 3.4.2 + _ZTSN4geos5index7strtree7SIRtreeE@Base 3.4.2 + _ZTSN4geos5index7strtree7STRtree15STRIntersectsOpE@Base 3.4.2 + _ZTSN4geos5index7strtree7STRtreeE@Base 3.4.2 + _ZTSN4geos5index7strtree9BoundableE@Base 3.4.2 + _ZTSN4geos5index8quadtree4NodeE@Base 3.4.2 + _ZTSN4geos5index8quadtree4RootE@Base 3.4.2 + _ZTSN4geos5index8quadtree8NodeBaseE@Base 3.4.2 + _ZTSN4geos5index8quadtree8QuadtreeE@Base 3.4.2 + _ZTSN4geos5index9sweepline22SweepLineOverlapActionE@Base 3.4.2 + _ZTSN4geos6noding11ScaledNoder6ScalerE@Base 3.4.2 + _ZTSN4geos6noding11ScaledNoder8ReScalerE@Base 3.4.2 + _ZTSN4geos6noding11ScaledNoderE@Base 3.4.2 + _ZTSN4geos6noding11SimpleNoderE@Base 3.4.2 + _ZTSN4geos6noding12MCIndexNoder20SegmentOverlapActionE@Base 3.4.2 + _ZTSN4geos6noding12MCIndexNoderE@Base 3.4.2 + _ZTSN4geos6noding13IteratedNoderE@Base 3.4.2 + _ZTSN4geos6noding13SegmentStringE@Base 3.4.2 + _ZTSN4geos6noding15SegmentNodeListE@Base 3.4.2 + _ZTSN4geos6noding15SinglePassNoderE@Base 3.4.2 + _ZTSN4geos6noding17IntersectionAdderE@Base 3.4.2 + _ZTSN4geos6noding18BasicSegmentStringE@Base 3.4.2 + _ZTSN4geos6noding18NodedSegmentStringE@Base 3.4.2 + _ZTSN4geos6noding18SegmentIntersectorE@Base 3.4.2 + _ZTSN4geos6noding20NodableSegmentStringE@Base 3.4.2 + _ZTSN4geos6noding23IntersectionFinderAdderE@Base 3.4.2 + _ZTSN4geos6noding27SegmentIntersectionDetectorE@Base 3.4.2 + _ZTSN4geos6noding27SegmentSetMutualIntersectorE@Base 3.4.2 + _ZTSN4geos6noding32SingleInteriorIntersectionFinderE@Base 3.4.2 + _ZTSN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionE@Base 3.4.2 + _ZTSN4geos6noding34MCIndexSegmentSetMutualIntersectorE@Base 3.4.2 + _ZTSN4geos6noding5NoderE@Base 3.4.2 + _ZTSN4geos6noding9snapround17SimpleSnapRounderE@Base 3.4.2 + _ZTSN4geos6noding9snapround18HotPixelSnapActionE@Base 3.4.2 + _ZTSN4geos6noding9snapround18MCIndexSnapRounderE@Base 3.4.2 + _ZTSN4geos6noding9snapround26MCIndexPointSnapperVisitorE@Base 3.4.2 + _ZTSN4geos8simplify13DPTransformerE@Base 3.4.2 + _ZTSN4geos8simplify17TaggedLineSegmentE@Base 3.4.2 + _ZTSN4geos8simplify18LineSegmentVisitorE@Base 3.4.2 + _ZTSN4geos9algorithm11PointInRingE@Base 3.4.2 + _ZTSN4geos9algorithm13MCPointInRing10MCSelecterE@Base 3.4.2 + _ZTSN4geos9algorithm13MCPointInRingE@Base 3.4.2 + _ZTSN4geos9algorithm16BoundaryNodeRuleE@Base 3.4.2 + _ZTSN4geos9algorithm17SimplePointInRingE@Base 3.4.2 + _ZTSN4geos9algorithm18SIRtreePointInRingE@Base 3.4.2 + _ZTSN4geos9algorithm25NotRepresentableExceptionE@Base 3.4.2 + _ZTSN4geos9algorithm6locate22PointOnGeometryLocatorE@Base 3.4.2 + _ZTSN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorE@Base 3.4.2 + _ZTSN4geos9algorithm6locate25IndexedPointInAreaLocatorE@Base 3.4.2 + _ZTSN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterE@Base 3.4.2 + _ZTSN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterE@Base 3.4.2 + _ZTSN4geos9geomgraph11EdgeEndStarE@Base 3.4.2 + _ZTSN4geos9geomgraph11NodeFactoryE@Base 3.4.2 + _ZTSN4geos9geomgraph11PlanarGraphE@Base 3.4.2 + _ZTSN4geos9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZTSN4geos9geomgraph13GeometryGraphE@Base 3.4.2 + _ZTSN4geos9geomgraph14GraphComponentE@Base 3.4.2 + _ZTSN4geos9geomgraph16DirectedEdgeStarE@Base 3.4.2 + _ZTSN4geos9geomgraph4EdgeE@Base 3.4.2 + _ZTSN4geos9geomgraph4NodeE@Base 3.4.2 + _ZTSN4geos9geomgraph5DepthE@Base 3.4.2 + _ZTSN4geos9geomgraph5index13MonotoneChainE@Base 3.4.2 + _ZTSN4geos9geomgraph5index14SweepLineEventE@Base 3.4.2 + _ZTSN4geos9geomgraph5index16SweepLineSegmentE@Base 3.4.2 + _ZTSN4geos9geomgraph5index17SweepLineEventOBJE@Base 3.4.2 + _ZTSN4geos9geomgraph5index18EdgeSetIntersectorE@Base 3.4.2 + _ZTSN4geos9geomgraph5index18SegmentIntersectorE@Base 3.4.2 + _ZTSN4geos9geomgraph5index24SimpleEdgeSetIntersectorE@Base 3.4.2 + _ZTSN4geos9geomgraph5index26SimpleSweepLineIntersectorE@Base 3.4.2 + _ZTSN4geos9geomgraph5index28SimpleMCSweepLineIntersectorE@Base 3.4.2 + _ZTSN4geos9geomgraph7EdgeEndE@Base 3.4.2 + _ZTSN4geos9geomgraph7NodeMapE@Base 3.4.2 + _ZTSN4geos9geomgraph8EdgeListE@Base 3.4.2 + _ZTSN4geos9geomgraph8EdgeRingE@Base 3.4.2 + _ZTSN4geos9operation10polygonize11Polygonizer15LineStringAdderE@Base 3.4.2 + _ZTSN4geos9operation10polygonize14PolygonizeEdgeE@Base 3.4.2 + _ZTSN4geos9operation10polygonize15PolygonizeGraphE@Base 3.4.2 + _ZTSN4geos9operation10polygonize22PolygonizeDirectedEdgeE@Base 3.4.2 + _ZTSN4geos9operation22GeometryGraphOperationE@Base 3.4.2 + _ZTSN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionE@Base 3.4.2 + _ZTSN4geos9operation5valid9IsValidOpE@Base 3.4.2 + _ZTSN4geos9operation6relate10RelateNodeE@Base 3.4.2 + _ZTSN4geos9operation6relate13EdgeEndBundleE@Base 3.4.2 + _ZTSN4geos9operation6relate15RelateNodeGraphE@Base 3.4.2 + _ZTSN4geos9operation6relate17EdgeEndBundleStarE@Base 3.4.2 + _ZTSN4geos9operation6relate17RelateNodeFactoryE@Base 3.4.2 + _ZTSN4geos9operation6relate8RelateOpE@Base 3.4.2 + _ZTSN4geos9operation7overlay15MaximalEdgeRingE@Base 3.4.2 + _ZTSN4geos9operation7overlay15MinimalEdgeRingE@Base 3.4.2 + _ZTSN4geos9operation7overlay18OverlayNodeFactoryE@Base 3.4.2 + _ZTSN4geos9operation7overlay21ElevationMatrixFilterE@Base 3.4.2 + _ZTSN4geos9operation7overlay4snap15SnapTransformerE@Base 3.4.2 + _ZTSN4geos9operation7overlay9OverlayOpE@Base 3.4.2 + _ZTSN4geos9operation8distance27ConnectedElementPointFilterE@Base 3.4.2 + _ZTSN4geos9operation8distance30ConnectedElementLocationFilterE@Base 3.4.2 + _ZTSN4geos9operation8distance7DeleterE@Base 3.7.0 + _ZTSN4geos9operation9linemerge13LineMergeEdgeE@Base 3.4.2 + _ZTSN4geos9operation9linemerge14LineMergeGraphE@Base 3.4.2 + _ZTSN4geos9operation9linemerge21LineMergeDirectedEdgeE@Base 3.4.2 + _ZTSN4geos9operation9predicate20ContainsPointVisitorE@Base 3.4.2 + _ZTSN4geos9operation9predicate21LineIntersectsVisitorE@Base 3.4.2 + _ZTSN4geos9operation9predicate25EnvelopeIntersectsVisitorE@Base 3.4.2 + _ZTSN4geos9precision10TranslaterE@Base 3.4.2 + _ZTSN4geos9precision22CommonCoordinateFilterE@Base 3.4.2 + _ZTSN4geos9precision35PrecisionReducerCoordinateOperationE@Base 3.4.2 + _ZTSPN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 + _ZTSPN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 + _ZTTN4geos4geom10LineStringE@Base 3.4.2 + _ZTTN4geos4geom10LinearRingE@Base 3.4.2 + _ZTTN4geos4geom10MultiPointE@Base 3.4.2 + _ZTTN4geos4geom12MultiPolygonE@Base 3.4.2 + _ZTTN4geos4geom15MultiLineStringE@Base 3.4.2 + _ZTTN4geos4geom18GeometryCollectionE@Base 3.4.2 + _ZTTN4geos4geom5PointE@Base 3.4.2 + _ZTTN4geos4geom7PolygonE@Base 3.4.2 + _ZTVN4geos11planargraph11PlanarGraphE@Base 3.4.2 + _ZTVN4geos11planargraph12DirectedEdgeE@Base 3.4.2 + _ZTVN4geos11planargraph16DirectedEdgeStarE@Base 3.4.2 + _ZTVN4geos11planargraph4EdgeE@Base 3.4.2 + _ZTVN4geos11planargraph4NodeE@Base 3.4.2 + _ZTVN4geos11planargraph7NodeMapE@Base 3.4.2 + _ZTVN4geos11triangulate8quadedge19QuadEdgeSubdivision26TriangleCoordinatesVisitorE@Base 3.4.2 + _ZTVN4geos11triangulate8quadedge19QuadEdgeSubdivision27TriangleCircumcentreVisitorE@Base 3.5.0 + _ZTVN4geos11triangulate8quadedge19QuadEdgeSubdivisionE@Base 3.4.2 + _ZTVN4geos11triangulate8quadedge22LocateFailureExceptionE@Base 3.4.2 + _ZTVN4geos11triangulate8quadedge24LastFoundQuadEdgeLocatorE@Base 3.4.2 + _ZTVN4geos11triangulate8quadedge6VertexE@Base 3.4.2 + _ZTVN4geos11triangulate8quadedge8QuadEdgeE@Base 3.4.2 + _ZTVN4geos2io14ParseExceptionE@Base 3.4.2 + _ZTVN4geos2io9WKBWriterE@Base 3.4.2 + _ZTVN4geos4geom10LineStringE@Base 3.4.2 + _ZTVN4geos4geom10LinearRingE@Base 3.4.2 + _ZTVN4geos4geom10MultiPointE@Base 3.4.2 + _ZTVN4geos4geom11LineSegmentE@Base 3.4.2 + _ZTVN4geos4geom12MultiPolygonE@Base 3.4.2 + _ZTVN4geos4geom15GeometryFactoryE@Base 3.4.2 + _ZTVN4geos4geom15MultiLineStringE@Base 3.4.2 + _ZTVN4geos4geom18CoordinateSequenceE@Base 3.4.2 + _ZTVN4geos4geom18GeometryCollectionE@Base 3.4.2 + _ZTVN4geos4geom23CoordinateArraySequenceE@Base 3.4.2 + _ZTVN4geos4geom23GeometryComponentFilterE@Base 3.4.2 + _ZTVN4geos4geom25CoordinateSequenceFactoryE@Base 3.4.2 + _ZTVN4geos4geom30CoordinateArraySequenceFactoryE@Base 3.4.2 + _ZTVN4geos4geom4prep13PreparedPointE@Base 3.4.2 + _ZTVN4geos4geom4prep15PreparedPolygonE@Base 3.4.2 + _ZTVN4geos4geom4prep18PreparedLineStringE@Base 3.4.2 + _ZTVN4geos4geom4prep21BasicPreparedGeometryE@Base 3.4.2 + _ZTVN4geos4geom4prep21PreparedPolygonCoversE@Base 3.4.2 + _ZTVN4geos4geom4prep23PreparedPolygonContainsE@Base 3.4.2 + _ZTVN4geos4geom4prep25PreparedPolygonIntersectsE@Base 3.4.2 + _ZTVN4geos4geom4prep31PreparedPolygonContainsProperlyE@Base 3.4.2 + _ZTVN4geos4geom4util14PointExtracterE@Base 3.4.2 + _ZTVN4geos4geom4util16PolygonExtracterE@Base 3.4.2 + _ZTVN4geos4geom4util17GeometryExtracter9ExtracterINS0_10LineStringESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTVN4geos4geom4util17GeometryExtracter9ExtracterINS0_5PointESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTVN4geos4geom4util17GeometryExtracter9ExtracterINS0_7PolygonESt6vectorIPKS4_SaIS7_EEEE@Base 3.4.2 + _ZTVN4geos4geom4util19CoordinateOperationE@Base 3.4.2 + _ZTVN4geos4geom4util19GeometryTransformerE@Base 3.4.2 + _ZTVN4geos4geom4util24LinearComponentExtracterE@Base 3.4.2 + _ZTVN4geos4geom4util28ComponentCoordinateExtracterE@Base 3.4.2 + _ZTVN4geos4geom5PointE@Base 3.4.2 + _ZTVN4geos4geom7PolygonE@Base 3.4.2 + _ZTVN4geos4geom8Geometry21GeometryChangedFilterE@Base 3.4.2 + _ZTVN4geos4geom8GeometryE@Base 3.4.2 + _ZTVN4geos4util13GEOSExceptionE@Base 3.4.2 + _ZTVN4geos4util17TopologyExceptionE@Base 3.4.2 + _ZTVN4geos4util20InterruptedExceptionE@Base 3.4.2 + _ZTVN4geos4util21GeometricShapeFactoryE@Base 3.4.2 + _ZTVN4geos4util21IllegalStateExceptionE@Base 3.4.2 + _ZTVN4geos4util24AssertionFailedExceptionE@Base 3.4.2 + _ZTVN4geos4util24IllegalArgumentExceptionE@Base 3.4.2 + _ZTVN4geos4util27UniqueCoordinateArrayFilterE@Base 3.4.2 + _ZTVN4geos4util29UnsupportedOperationExceptionE@Base 3.4.2 + _ZTVN4geos5index13intervalrtree21IntervalRTreeLeafNodeE@Base 3.4.2 + _ZTVN4geos5index13intervalrtree23IntervalRTreeBranchNodeE@Base 3.4.2 + _ZTVN4geos5index5chain25MonotoneChainSelectActionE@Base 3.4.2 + _ZTVN4geos5index5chain26MonotoneChainOverlapActionE@Base 3.4.2 + _ZTVN4geos5index7bintree4NodeE@Base 3.4.2 + _ZTVN4geos5index7bintree4RootE@Base 3.4.2 + _ZTVN4geos5index7bintree8NodeBaseE@Base 3.4.2 + _ZTVN4geos5index7strtree12AbstractNodeE@Base 3.4.2 + _ZTVN4geos5index7strtree13ItemBoundableE@Base 3.4.2 + _ZTVN4geos5index7strtree15AbstractSTRtreeE@Base 3.4.2 + _ZTVN4geos5index7strtree15SIRAbstractNodeE@Base 3.4.2 + _ZTVN4geos5index7strtree15STRAbstractNodeE@Base 3.4.2 + _ZTVN4geos5index7strtree20GeometryItemDistanceE@Base 3.6.0 + _ZTVN4geos5index7strtree7SIRtree15SIRIntersectsOpE@Base 3.4.2 + _ZTVN4geos5index7strtree7SIRtreeE@Base 3.4.2 + _ZTVN4geos5index7strtree7STRtree15STRIntersectsOpE@Base 3.4.2 + _ZTVN4geos5index7strtree7STRtreeE@Base 3.4.2 + _ZTVN4geos5index8quadtree4NodeE@Base 3.4.2 + _ZTVN4geos5index8quadtree4RootE@Base 3.4.2 + _ZTVN4geos5index8quadtree8NodeBaseE@Base 3.4.2 + _ZTVN4geos5index8quadtree8QuadtreeE@Base 3.4.2 + _ZTVN4geos6noding11ScaledNoder6ScalerE@Base 3.4.2 + _ZTVN4geos6noding11ScaledNoder8ReScalerE@Base 3.4.2 + _ZTVN4geos6noding11ScaledNoderE@Base 3.4.2 + _ZTVN4geos6noding11SimpleNoderE@Base 3.4.2 + _ZTVN4geos6noding12MCIndexNoder20SegmentOverlapActionE@Base 3.4.2 + _ZTVN4geos6noding12MCIndexNoderE@Base 3.4.2 + _ZTVN4geos6noding13IteratedNoderE@Base 3.4.2 + _ZTVN4geos6noding13SegmentStringE@Base 3.4.2 + _ZTVN4geos6noding15SegmentNodeListE@Base 3.4.2 + _ZTVN4geos6noding17IntersectionAdderE@Base 3.4.2 + _ZTVN4geos6noding18BasicSegmentStringE@Base 3.4.2 + _ZTVN4geos6noding18NodedSegmentStringE@Base 3.4.2 + _ZTVN4geos6noding23IntersectionFinderAdderE@Base 3.4.2 + _ZTVN4geos6noding27SegmentIntersectionDetectorE@Base 3.4.2 + _ZTVN4geos6noding32SingleInteriorIntersectionFinderE@Base 3.4.2 + _ZTVN4geos6noding34MCIndexSegmentSetMutualIntersector20SegmentOverlapActionE@Base 3.4.2 + _ZTVN4geos6noding34MCIndexSegmentSetMutualIntersectorE@Base 3.4.2 + _ZTVN4geos6noding9snapround17SimpleSnapRounderE@Base 3.4.2 + _ZTVN4geos6noding9snapround18HotPixelSnapActionE@Base 3.4.2 + _ZTVN4geos6noding9snapround18MCIndexSnapRounderE@Base 3.4.2 + _ZTVN4geos6noding9snapround26MCIndexPointSnapperVisitorE@Base 3.4.2 + _ZTVN4geos8simplify13DPTransformerE@Base 3.4.2 + _ZTVN4geos8simplify17TaggedLineSegmentE@Base 3.4.2 + _ZTVN4geos8simplify18LineSegmentVisitorE@Base 3.4.2 + _ZTVN4geos9algorithm13MCPointInRing10MCSelecterE@Base 3.4.2 + _ZTVN4geos9algorithm13MCPointInRingE@Base 3.4.2 + _ZTVN4geos9algorithm17SimplePointInRingE@Base 3.4.2 + _ZTVN4geos9algorithm18SIRtreePointInRingE@Base 3.4.2 + _ZTVN4geos9algorithm25NotRepresentableExceptionE@Base 3.4.2 + _ZTVN4geos9algorithm6locate25IndexedPointInAreaLocator14SegmentVisitorE@Base 3.4.2 + _ZTVN4geos9algorithm6locate25IndexedPointInAreaLocatorE@Base 3.4.2 + _ZTVN4geos9algorithm8distance25DiscreteHausdorffDistance22MaxPointDistanceFilterE@Base 3.4.2 + _ZTVN4geos9algorithm8distance25DiscreteHausdorffDistance36MaxDensifiedByFractionDistanceFilterE@Base 3.4.2 + _ZTVN4geos9geomgraph11EdgeEndStarE@Base 3.4.2 + _ZTVN4geos9geomgraph11NodeFactoryE@Base 3.4.2 + _ZTVN4geos9geomgraph11PlanarGraphE@Base 3.4.2 + _ZTVN4geos9geomgraph12DirectedEdgeE@Base 3.4.2 + _ZTVN4geos9geomgraph13GeometryGraphE@Base 3.4.2 + _ZTVN4geos9geomgraph14GraphComponentE@Base 3.4.2 + _ZTVN4geos9geomgraph16DirectedEdgeStarE@Base 3.4.2 + _ZTVN4geos9geomgraph4EdgeE@Base 3.4.2 + _ZTVN4geos9geomgraph4NodeE@Base 3.4.2 + _ZTVN4geos9geomgraph5DepthE@Base 3.4.2 + _ZTVN4geos9geomgraph5index13MonotoneChainE@Base 3.4.2 + _ZTVN4geos9geomgraph5index14SweepLineEventE@Base 3.4.2 + _ZTVN4geos9geomgraph5index16SweepLineSegmentE@Base 3.4.2 + _ZTVN4geos9geomgraph5index18SegmentIntersectorE@Base 3.4.2 + _ZTVN4geos9geomgraph5index24SimpleEdgeSetIntersectorE@Base 3.4.2 + _ZTVN4geos9geomgraph5index26SimpleSweepLineIntersectorE@Base 3.4.2 + _ZTVN4geos9geomgraph5index28SimpleMCSweepLineIntersectorE@Base 3.4.2 + _ZTVN4geos9geomgraph7EdgeEndE@Base 3.4.2 + _ZTVN4geos9geomgraph7NodeMapE@Base 3.4.2 + _ZTVN4geos9geomgraph8EdgeListE@Base 3.4.2 + _ZTVN4geos9geomgraph8EdgeRingE@Base 3.4.2 + _ZTVN4geos9operation10polygonize11Polygonizer15LineStringAdderE@Base 3.4.2 + _ZTVN4geos9operation10polygonize14PolygonizeEdgeE@Base 3.4.2 + _ZTVN4geos9operation10polygonize15PolygonizeGraphE@Base 3.4.2 + _ZTVN4geos9operation10polygonize22PolygonizeDirectedEdgeE@Base 3.4.2 + _ZTVN4geos9operation22GeometryGraphOperationE@Base 3.4.2 + _ZTVN4geos9operation5valid25SweeplineNestedRingTester13OverlapActionE@Base 3.4.2 + _ZTVN4geos9operation5valid9IsValidOpE@Base 3.4.2 + _ZTVN4geos9operation6relate10RelateNodeE@Base 3.4.2 + _ZTVN4geos9operation6relate13EdgeEndBundleE@Base 3.4.2 + _ZTVN4geos9operation6relate15RelateNodeGraphE@Base 3.4.2 + _ZTVN4geos9operation6relate17EdgeEndBundleStarE@Base 3.4.2 + _ZTVN4geos9operation6relate17RelateNodeFactoryE@Base 3.4.2 + _ZTVN4geos9operation6relate8RelateOpE@Base 3.4.2 + _ZTVN4geos9operation7overlay15MaximalEdgeRingE@Base 3.4.2 + _ZTVN4geos9operation7overlay15MinimalEdgeRingE@Base 3.4.2 + _ZTVN4geos9operation7overlay18OverlayNodeFactoryE@Base 3.4.2 + _ZTVN4geos9operation7overlay21ElevationMatrixFilterE@Base 3.4.2 + _ZTVN4geos9operation7overlay4snap15SnapTransformerE@Base 3.4.2 + _ZTVN4geos9operation7overlay9OverlayOpE@Base 3.4.2 + _ZTVN4geos9operation8distance27ConnectedElementPointFilterE@Base 3.4.2 + _ZTVN4geos9operation8distance30ConnectedElementLocationFilterE@Base 3.4.2 + _ZTVN4geos9operation8distance7DeleterE@Base 3.7.0 + _ZTVN4geos9operation9linemerge13LineMergeEdgeE@Base 3.4.2 + _ZTVN4geos9operation9linemerge14LineMergeGraphE@Base 3.4.2 + _ZTVN4geos9operation9linemerge21LineMergeDirectedEdgeE@Base 3.4.2 + _ZTVN4geos9operation9predicate20ContainsPointVisitorE@Base 3.4.2 + _ZTVN4geos9operation9predicate21LineIntersectsVisitorE@Base 3.4.2 + _ZTVN4geos9operation9predicate25EnvelopeIntersectsVisitorE@Base 3.4.2 + _ZTVN4geos9precision10TranslaterE@Base 3.4.2 + _ZTVN4geos9precision22CommonCoordinateFilterE@Base 3.4.2 + _ZTVN4geos9precision35PrecisionReducerCoordinateOperationE@Base 3.4.2 + _ZZ19getMachineByteOrdervE12endian_check@Base 3.4.2 + (c++)"non-virtual thunk to geos::geom::MultiLineString::~MultiLineString()@Base" 3.4.2 + (c++)"non-virtual thunk to geos::geom::MultiPoint::~MultiPoint()@Base" 3.4.2 + (c++)"non-virtual thunk to geos::geom::MultiPolygon::~MultiPolygon()@Base" 3.4.2 + (c++)"non-virtual thunk to geos::index::strtree::STRtree::insert(geos::geom::Envelope const*, void*)@Base" 3.4.2 + (c++)"non-virtual thunk to geos::index::strtree::STRtree::query(geos::geom::Envelope const*, geos::index::ItemVisitor&)@Base" 3.4.2 + (c++)"non-virtual thunk to geos::index::strtree::STRtree::query(geos::geom::Envelope const*, std::vector >&)@Base" 3.4.2 + (c++)"non-virtual thunk to geos::index::strtree::STRtree::remove(geos::geom::Envelope const*, void*)@Base" 3.4.2 + (c++)"non-virtual thunk to geos::index::strtree::STRtree::~STRtree()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::computeEnvelopeInternal() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getArea() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getCoordinate() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getCoordinateDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getCoordinates() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getDimension() const@Base" 3.4.2 + (c++|arch=!alpha !amd64 !arm64 !ia64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !riscv64 !s390x !sparc64)"virtual thunk to geos::geom::GeometryCollection::getGeometryN(unsigned int) const@Base" 3.4.2 + (c++|arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el ppc64 ppc64el riscv64 s390x sparc64)"virtual thunk to geos::geom::GeometryCollection::getGeometryN(unsigned long) const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::GeometryCollection::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getLength() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getNumGeometries() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::getNumPoints() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::isEmpty() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::normalize()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::GeometryCollection::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::GeometryCollection::~GeometryCollection()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::computeEnvelopeInternal() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getCoordinate() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getCoordinateDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getCoordinates() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::LineString::getLength() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::getNumPoints() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::isEmpty() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::normalize()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LineString::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::LineString::~LineString()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LinearRing::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LinearRing::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LinearRing::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LinearRing::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::LinearRing::isSimple() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::LinearRing::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::LinearRing::~LinearRing()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::getDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiLineString::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::MultiLineString::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::MultiLineString::~MultiLineString()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::getDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPoint::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::MultiPoint::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::MultiPoint::~MultiPoint()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::getDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::isSimple() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::MultiPolygon::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::MultiPolygon::~MultiPolygon()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::computeEnvelopeInternal() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getCoordinate() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getCoordinateDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getCoordinates() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::Point::getNumPoints() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::isEmpty() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::isSimple() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::normalize()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Point::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::Point::~Point()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::CoordinateFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::CoordinateSequenceFilter&) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::GeometryComponentFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_ro(geos::geom::GeometryFilter*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::CoordinateFilter const*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::CoordinateSequenceFilter&)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::GeometryComponentFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::apply_rw(geos::geom::GeometryFilter*)@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::clone() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::compareToSameClass(geos::geom::Geometry const*) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::computeEnvelopeInternal() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::convexHull() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::equalsExact(geos::geom::Geometry const*, double) const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getArea() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getBoundary() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getBoundaryDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getCoordinate() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getCoordinateDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getCoordinates() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getDimension() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getGeometryTypeId() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getGeometryType[abi:cxx11]() const@Base" 3.6.2 + (c++)"virtual thunk to geos::geom::Polygon::getLength() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::getNumPoints() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::isEmpty() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::isRectangle() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::isSimple() const@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::normalize()@Base" 3.4.2 + (c++)"virtual thunk to geos::geom::Polygon::reverse() const@Base" 3.7.0 + (c++)"virtual thunk to geos::geom::Polygon::~Polygon()@Base" 3.4.2 diff -Nru geos-3.6.2/debian/libgeos-c1v5.symbols geos-3.7.1/debian/libgeos-c1v5.symbols --- geos-3.6.2/debian/libgeos-c1v5.symbols 2017-12-28 08:40:20.000000000 +0000 +++ geos-3.7.1/debian/libgeos-c1v5.symbols 2018-12-05 19:00:02.000000000 +0000 @@ -1,5 +1,6 @@ -# SymbolsHelper-Confirmed: 3.6.2 amd64 +# SymbolsHelper-Confirmed: 3.7.1 amd64 hppa i386 m68k powerpc powerpcspe sh4 libgeos_c.so.1 #PACKAGE# #MINVER# +* Build-Depends-Package: libgeos-dev GEOSArea@Base 3.4.2 GEOSArea_r@Base 3.4.2 GEOSBoundary@Base 3.4.2 @@ -52,6 +53,8 @@ GEOSCoordSeq_getY_r@Base 3.4.2 GEOSCoordSeq_getZ@Base 3.4.2 GEOSCoordSeq_getZ_r@Base 3.4.2 + GEOSCoordSeq_isCCW@Base 3.7.0 + GEOSCoordSeq_isCCW_r@Base 3.7.0 GEOSCoordSeq_setOrdinate@Base 3.4.2 GEOSCoordSeq_setOrdinate_r@Base 3.4.2 GEOSCoordSeq_setX@Base 3.4.2 @@ -73,6 +76,8 @@ GEOSDisjoint@Base 3.4.2 GEOSDisjoint_r@Base 3.4.2 GEOSDistance@Base 3.4.2 + GEOSDistanceIndexed@Base 3.7.0 + GEOSDistanceIndexed_r@Base 3.7.0 GEOSDistance_r@Base 3.4.2 GEOSEnvelope@Base 3.4.2 GEOSEnvelope_r@Base 3.4.2 @@ -80,6 +85,10 @@ GEOSEqualsExact@Base 3.4.2 GEOSEqualsExact_r@Base 3.4.2 GEOSEquals_r@Base 3.4.2 + GEOSFrechetDistance@Base 3.7.0 + GEOSFrechetDistanceDensify@Base 3.7.0 + GEOSFrechetDistanceDensify_r@Base 3.7.0 + GEOSFrechetDistance_r@Base 3.7.0 GEOSFree@Base 3.4.2 GEOSFree_r@Base 3.4.2 GEOSGeomFromHEX_buf@Base 3.4.2 @@ -102,6 +111,8 @@ GEOSGeomGetX_r@Base 3.4.2 GEOSGeomGetY@Base 3.4.2 GEOSGeomGetY_r@Base 3.4.2 + GEOSGeomGetZ@Base 3.7.0 + GEOSGeomGetZ_r@Base 3.7.0 GEOSGeomToHEX_buf@Base 3.4.2 GEOSGeomToHEX_buf_r@Base 3.4.2 GEOSGeomToWKB_buf@Base 3.4.2 @@ -146,6 +157,14 @@ GEOSGeom_getPrecision_r@Base 3.6.0 GEOSGeom_getUserData@Base 3.6.0 GEOSGeom_getUserData_r@Base 3.6.0 + GEOSGeom_getXMax@Base 3.7.0 + GEOSGeom_getXMax_r@Base 3.7.0 + GEOSGeom_getXMin@Base 3.7.0 + GEOSGeom_getXMin_r@Base 3.7.0 + GEOSGeom_getYMax@Base 3.7.0 + GEOSGeom_getYMax_r@Base 3.7.0 + GEOSGeom_getYMin@Base 3.7.0 + GEOSGeom_getYMin_r@Base 3.7.0 GEOSGeom_setPrecision@Base 3.6.0 GEOSGeom_setPrecision_r@Base 3.6.0 GEOSGeom_setUserData@Base 3.6.0 @@ -248,6 +267,8 @@ GEOSRelatePatternMatch_r@Base 3.4.2 GEOSRelatePattern_r@Base 3.4.2 GEOSRelate_r@Base 3.4.2 + GEOSReverse@Base 3.7.0 + GEOSReverse_r@Base 3.7.0 GEOSSTRtree_create@Base 3.4.2 GEOSSTRtree_create_r@Base 3.4.2 GEOSSTRtree_destroy@Base 3.4.2 @@ -264,6 +285,8 @@ GEOSSTRtree_query_r@Base 3.4.2 GEOSSTRtree_remove@Base 3.4.2 GEOSSTRtree_remove_r@Base 3.4.2 + GEOSSegmentIntersection@Base 3.7.0 + GEOSSegmentIntersection_r@Base 3.7.0 GEOSSetSRID@Base 3.4.2 GEOSSetSRID_r@Base 3.4.2 GEOSSharedPaths@Base 3.4.2 @@ -410,17 +433,15 @@ _ZNK4geos2io9WKBWriter18getOutputDimensionEv@Base 3.4.2 _ZNK4geos4geom16CoordinateFilter9filter_rwEPNS0_10CoordinateE@Base 3.4.2 _ZNK4geos4geom8Geometry7getSRIDEv@Base 3.4.2 - _ZNK4geos4util13GEOSException4whatEv@Base 3.4.2 - (optional=templinst)_ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_@Base 3.6.2 - (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_@Base 3.6.2 - (optional=templinst|arch=!alpha !amd64 !arm64 !kfreebsd-amd64 !mips64el !ppc64 !ppc64el !s390x !sparc64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEj@Base 3.4.2 - (optional=templinst|arch=alpha amd64 arm64 kfreebsd-amd64 mips64el ppc64 ppc64el s390x sparc64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEm@Base 3.4.2 + _ZNSt6vectorIPKN4geos4geom10CoordinateESaIS4_EE17_M_realloc_insertIJRKS4_EEEvN9__gnu_cxx17__normal_iteratorIPS4_S6_EEDpOT_@Base 3.7.0 + _ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE12emplace_backIJS3_EEEvDpOT_@Base 3.7.0 + (optional=templinst)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEj@Base 3.7.1 + (optional=templinst|arch=amd64)_ZNSt6vectorIPN4geos4geom8GeometryESaIS3_EE7reserveEm@Base 3.7.1 + (optional=templinst)_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag@Base 3.7.0 (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev@Base 3.4.2 (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev@Base 3.4.2 (optional=templinst)_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev@Base 3.4.2 (optional=templinst)_ZNSt8_Rb_treeIPKN4geos4geom10CoordinateES4_St9_IdentityIS4_ENS1_18CoordinateLessThenESaIS4_EE8_M_eraseEPSt13_Rb_tree_nodeIS4_E@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos4geom8GeometryESaIS4_EEED1Ev@Base 3.4.2 - (optional=templinst)_ZNSt8auto_ptrISt6vectorIPN4geos4geom8GeometryESaIS4_EEED2Ev@Base 3.4.2 _ZTI16CAPI_ItemVisitor@Base 3.4.2 _ZTI6membuf@Base 3.4.2 (arch=!armel !armhf)_ZTIN4geos4geom11LineSegmentE@Base 3.5.0 diff -Nru geos-3.6.2/debian/libgeos-doc.links geos-3.7.1/debian/libgeos-doc.links --- geos-3.6.2/debian/libgeos-doc.links 2017-11-28 17:48:01.000000000 +0000 +++ geos-3.7.1/debian/libgeos-doc.links 2018-08-27 16:58:55.000000000 +0000 @@ -1,2 +1 @@ usr/share/doc/libgeos-doc/html/index.html usr/share/doc/libgeos-doc/index.html -usr/share/javascript/jquery/jquery.js usr/share/doc/libgeos-doc/html/jquery.js diff -Nru geos-3.6.2/debian/patches/disable-docygen-html-timestamp geos-3.7.1/debian/patches/disable-docygen-html-timestamp --- geos-3.6.2/debian/patches/disable-docygen-html-timestamp 2017-11-28 17:48:01.000000000 +0000 +++ geos-3.7.1/debian/patches/disable-docygen-html-timestamp 1970-01-01 00:00:00.000000000 +0000 @@ -1,34 +0,0 @@ -Description: Disable HTML timestamps in Doxygen to allow reproducible builds. -Author: Bas Couwenberg -Forwarded: https://trac.osgeo.org/geos/ticket/742 - ---- a/doc/Doxyfile.in -+++ b/doc/Doxyfile.in -@@ -472,6 +472,12 @@ HTML_FOOTER = - - HTML_STYLESHEET = - -+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -+# page will contain the date and time when the page was generated. Setting -+# this to NO can help when comparing the output of multiple runs. -+ -+HTML_TIMESTAMP = NO -+ - # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, - # files or namespaces will be aligned in HTML using tables. If set to - # NO a bullet list will be used. ---- a/doc/Doxyfile -+++ b/doc/Doxyfile -@@ -472,6 +472,12 @@ HTML_FOOTER = - - HTML_STYLESHEET = - -+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -+# page will contain the date and time when the page was generated. Setting -+# this to NO can help when comparing the output of multiple runs. -+ -+HTML_TIMESTAMP = NO -+ - # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, - # files or namespaces will be aligned in HTML using tables. If set to - # NO a bullet list will be used. diff -Nru geos-3.6.2/debian/patches/geos-config geos-3.7.1/debian/patches/geos-config --- geos-3.6.2/debian/patches/geos-config 2017-11-28 17:48:01.000000000 +0000 +++ geos-3.7.1/debian/patches/geos-config 1970-01-01 00:00:00.000000000 +0000 @@ -1,15 +0,0 @@ -Description: Fix library paths. -Author: Francesco Paolo Lovergine -Forwarded: https://trac.osgeo.org/geos/ticket/742 - ---- a/tools/geos-config.in -+++ b/tools/geos-config.in -@@ -43,7 +43,7 @@ case $1 in - --libs) - # TODO: make an alias for --clibs - # see http://trac.osgeo.org/geos/ticket/497 -- echo -L${libdir} -lgeos -+ echo -L${libdir} -lgeos-@VERSION@ - ;; - --clibs) - echo -L${libdir} -lgeos_c diff -Nru geos-3.6.2/debian/patches/libruby geos-3.7.1/debian/patches/libruby --- geos-3.6.2/debian/patches/libruby 2017-12-28 08:40:34.000000000 +0000 +++ geos-3.7.1/debian/patches/libruby 2018-12-05 18:55:38.000000000 +0000 @@ -5,9 +5,9 @@ --- a/configure +++ b/configure -@@ -18658,7 +18658,7 @@ fi +@@ -19329,7 +19329,7 @@ fi - RUBY_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["libdir"] || Config::CONFIG["libdir"]'` + RUBY_ARCH_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["archlibdir"] || Config::CONFIG["archlibdir"]'` - RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["sitearchdir"] || Config::CONFIG["sitearchdir"]'` + RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["vendorarchdir"] || Config::CONFIG["vendorarchdir"]'` @@ -16,8 +16,8 @@ --- a/macros/ruby.m4 +++ b/macros/ruby.m4 -@@ -35,7 +35,7 @@ AC_DEFUN([AC_RUBY_DEVEL], - RUBY_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["libdir"]] || Config::CONFIG[["libdir"]]'` +@@ -41,7 +41,7 @@ AC_DEFUN([AC_RUBY_DEVEL], + RUBY_ARCH_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["archlibdir"]] || Config::CONFIG[["archlibdir"]]'` dnl Get Ruby extensions directory - RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["sitearchdir"]] || Config::CONFIG[["sitearchdir"]]'` diff -Nru geos-3.6.2/debian/patches/ruby2 geos-3.7.1/debian/patches/ruby2 --- geos-3.6.2/debian/patches/ruby2 2017-12-28 08:40:52.000000000 +0000 +++ geos-3.7.1/debian/patches/ruby2 1970-01-01 00:00:00.000000000 +0000 @@ -1,117 +0,0 @@ -Description: Update include and libraries paths for Ruby 2.x -Author: Bas Couwenberg -Forwarded: https://trac.osgeo.org/geos/ticket/742 - ---- a/configure -+++ b/configure -@@ -18652,12 +18652,16 @@ fi - - RUBY_BIN_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["bindir"] || Config::CONFIG["bindir"]'` - -- RUBY_SITE_ARCH=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["sitearch"] || Config::CONFIG["sitearch"]'` -+ RUBY_SITE_ARCH=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["sitearch"] || Config::CONFIG["sitearch"]'` - - RUBY_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["rubyhdrdir"] || Config::CONFIG["archdir"]'` - -+ RUBY_ARCH_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["rubyarchhdrdir"] || Config::CONFIG["archdir"]'` -+ - RUBY_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["libdir"] || Config::CONFIG["libdir"]'` - -+ RUBY_ARCH_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["archlibdir"] || Config::CONFIG["archlibdir"]'` -+ - RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["vendorarchdir"] || Config::CONFIG["vendorarchdir"]'` - - RUBY_SO_NAME=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG["RUBY_SO_NAME"] || Config::CONFIG["RUBY_SO_NAME"]'` ---- a/macros/ruby.m4 -+++ b/macros/ruby.m4 -@@ -25,15 +25,21 @@ AC_DEFUN([AC_RUBY_DEVEL], - dnl Get Ruby bin directory - RUBY_BIN_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["bindir"]] || Config::CONFIG[["bindir"]]'` - -- dnl Get Ruby site arch -+ dnl Get Ruby site arch - RUBY_SITE_ARCH=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["sitearch"]] || Config::CONFIG[["sitearch"]]'` - - dnl Get Ruby include directory - RUBY_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["rubyhdrdir"]] || Config::CONFIG[["archdir"]]'` - -+ dnl Get Ruby config.h include directory -+ RUBY_ARCH_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["rubyarchhdrdir"]] || Config::CONFIG[["archdir"]]'` -+ - dnl Get Ruby lib directory - RUBY_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["libdir"]] || Config::CONFIG[["libdir"]]'` - -+ dnl Get Ruby arch lib directory -+ RUBY_ARCH_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["archlibdir"]] || Config::CONFIG[["archlibdir"]]'` -+ - dnl Get Ruby extensions directory - RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["vendorarchdir"]] || Config::CONFIG[["vendorarchdir"]]'` - -@@ -48,7 +54,9 @@ AC_DEFUN([AC_RUBY_DEVEL], - AC_MSG_NOTICE([Ruby bin directory is '$RUBY_BIN_DIR']) - AC_MSG_NOTICE([Ruby site arch is '$RUBY_SITE_ARCH']) - AC_MSG_NOTICE([Ruby include directory is '$RUBY_INCLUDE_DIR']) -+ AC_MSG_NOTICE([Ruby config.h include directory is '$RUBY_ARCH_INCLUDE_DIR']) - AC_MSG_NOTICE([Ruby library directory is '$RUBY_LIB_DIR']) -+ AC_MSG_NOTICE([Ruby architecture library directory is '$RUBY_ARCH_LIB_DIR']) - AC_MSG_NOTICE([Ruby extension directory is '$RUBY_EXTENSION_DIR']) - AC_MSG_NOTICE([Ruby library is '$RUBY_SO_NAME']) - AC_MSG_NOTICE([Ruby import library is '$RUBY_SHARED_LIB']) -@@ -57,7 +65,9 @@ AC_DEFUN([AC_RUBY_DEVEL], - AC_SUBST([RUBY_BIN_DIR]) - AC_SUBST([RUBY_SITE_ARCH]) - AC_SUBST([RUBY_INCLUDE_DIR]) -+ AC_SUBST([RUBY_ARCH_INCLUDE_DIR]) - AC_SUBST([RUBY_LIB_DIR]) -+ AC_SUBST([RUBY_ARCH_LIB_DIR]) - AC_SUBST([RUBY_EXTENSION_DIR]) - AC_SUBST([RUBY_SO_NAME]) - AC_SUBST([RUBY_SHARED_LIB]) ---- a/swig/ruby/Makefile.am -+++ b/swig/ruby/Makefile.am -@@ -17,18 +17,18 @@ BUILT_SOURCES = geos_wrap.cxx - rubyextensiondirdir = $(RUBY_EXTENSION_DIR) - - # Setup includes --AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) -+AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) -I$(RUBY_ARCH_INCLUDE_DIR) - - # Build Ruby module as shared library - rubyextensiondir_LTLIBRARIES = geos.la - geos_la_SOURCES = geos_wrap.cxx --geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la $(RUBY_SO_NAME) -+geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la -l$(RUBY_SO_NAME) - - # Only need to grab the capi header files - geos_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir)/capi - - # Specify -module and -avoid-version so we can create a file called geos.dll/so which is what Ruby wants --geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) -+geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) -L$(RUBY_ARCH_LIB_DIR) - - if ENABLE_SWIG - ---- a/swig/ruby/Makefile.in -+++ b/swig/ruby/Makefile.in -@@ -444,18 +444,18 @@ MAINTAINERCLEANFILES = geos_wrap.cxx - @ENABLE_RUBY_TRUE@rubyextensiondirdir = $(RUBY_EXTENSION_DIR) - - # Setup includes --@ENABLE_RUBY_TRUE@AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) -+@ENABLE_RUBY_TRUE@AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) -I$(RUBY_ARCH_INCLUDE_DIR) - - # Build Ruby module as shared library - @ENABLE_RUBY_TRUE@rubyextensiondir_LTLIBRARIES = geos.la - @ENABLE_RUBY_TRUE@geos_la_SOURCES = geos_wrap.cxx --@ENABLE_RUBY_TRUE@geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la $(RUBY_SO_NAME) -+@ENABLE_RUBY_TRUE@geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la -l$(RUBY_SO_NAME) - - # Only need to grab the capi header files - @ENABLE_RUBY_TRUE@geos_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir)/capi - - # Specify -module and -avoid-version so we can create a file called geos.dll/so which is what Ruby wants --@ENABLE_RUBY_TRUE@geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) -+@ENABLE_RUBY_TRUE@geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) -L$(RUBY_ARCH_LIB_DIR) - all: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) all-recursive - diff -Nru geos-3.6.2/debian/patches/series geos-3.7.1/debian/patches/series --- geos-3.6.2/debian/patches/series 2017-12-28 08:41:04.000000000 +0000 +++ geos-3.7.1/debian/patches/series 2018-09-11 05:30:31.000000000 +0000 @@ -1,5 +1 @@ -geos-config libruby -ruby2 -disable-docygen-html-timestamp -spelling-errors.patch diff -Nru geos-3.6.2/debian/patches/spelling-errors.patch geos-3.7.1/debian/patches/spelling-errors.patch --- geos-3.6.2/debian/patches/spelling-errors.patch 2017-12-28 08:32:35.000000000 +0000 +++ geos-3.7.1/debian/patches/spelling-errors.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ -Description: Fix spelling errors. - Unknow -> Unknown -Author: Bas Couwenberg -Forwarded: https://trac.osgeo.org/geos/ticket/773 - ---- a/capi/geos_ts_c.cpp -+++ b/capi/geos_ts_c.cpp -@@ -6800,7 +6800,7 @@ GEOSVoronoiDiagram_r(GEOSContextHandle_t - } - catch(...) - { -- handle->ERROR_MESSAGE("Unknow exception thrown"); -+ handle->ERROR_MESSAGE("Unknown exception thrown"); - } - - return NULL; ---- a/tests/xmltester/tinyxml/tinyxml.h -+++ b/tests/xmltester/tinyxml/tinyxml.h -@@ -147,7 +147,7 @@ public: - virtual bool Visit( const TiXmlText& /*text*/ ) { return true; } - /// Visit a comment node - virtual bool Visit( const TiXmlComment& /*comment*/ ) { return true; } -- /// Visit an unknow node -+ /// Visit an unknown node - virtual bool Visit( const TiXmlUnknown& /*unknown*/ ) { return true; } - }; - diff -Nru geos-3.6.2/debian/rules geos-3.7.1/debian/rules --- geos-3.6.2/debian/rules 2017-12-28 08:52:35.000000000 +0000 +++ geos-3.7.1/debian/rules 2018-09-11 05:30:31.000000000 +0000 @@ -18,35 +18,24 @@ # testrunner fails on some architectures DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) -# Guessing geos version, which is required for C++ binding support -VER_MAJOR=$(shell grep ^VERSION_MAJOR configure.*|cut -d= -f2) -VER_MINOR=$(shell grep ^VERSION_MINOR configure.*|cut -d= -f2) -VER_PATCH=$(shell grep ^VERSION_PATCH configure.*|cut -d= -f2|cut -dr -f1) -VER=$(VER_MAJOR).$(VER_MINOR).$(VER_PATCH) +include /usr/share/dpkg/pkg-info.mk -ifeq (..,$(VER)) -$(error configure.ac/configure.in not found or version cannot be guessed) -else -$(info Guessed geos version is $(VER)) -endif +UPSTREAM_VERSION = $(shell echo $(DEB_VERSION_UPSTREAM) | sed -e 's/\+.*//') -CXX = g++ -fpermissive +export DEB_CXXFLAGS_MAINT_PREPEND=-fpermissive # catch both armel and armhf ifneq (,$(findstring arm-linux-gnueabi,$(DEB_HOST_GNU_TYPE))) CONFFLAGS += --disable-inline endif -debian/control: - @sed -e 's/@VERSION@/$(VER)/' debian/control.in >$@ - %: dh $@ --with autoreconf,pkgkde_symbolshelper --parallel override_dh_clean: dh_clean debian/libgeos++-dev.install -override_dh_auto_configure: debian/control +override_dh_auto_configure: dh_auto_configure -- \ --host=$(DEB_HOST_GNU_TYPE) \ --build=$(DEB_BUILD_GNU_TYPE) \ @@ -54,7 +43,6 @@ --mandir=\$${prefix}/share/man \ --infodir=\$${prefix}/share/info \ $(CONFFLAGS) \ - CXX="$(CXX)" \ $(shell dpkg-buildflags --export=configure) override_dh_auto_build-arch: @@ -65,7 +53,7 @@ override_dh_auto_test: # Ignore test failures on problematic architectures only -ifneq (,$(findstring $(DEB_BUILD_ARCH),"arm64 armel armhf mips mips64el mipsel ppc64el s390x powerpc ppc64")) +ifneq (,$(filter $(DEB_BUILD_ARCH),arm64 armel armhf mips mips64el mipsel ppc64el s390x ia64 powerpc ppc64 riscv64)) dh_auto_test || echo "Ignoring test failures" else dh_auto_test @@ -101,9 +89,6 @@ install -m 644 doc/example.cpp debian/libgeos-doc/usr/share/doc/libgeos-doc/examples install -m 644 debian/Makefile.example debian/libgeos-doc/usr/share/doc/libgeos-doc/examples/Makefile - # Remove embedded jquery.js in favor of libjs-jquery - rm -f debian/libgeos-doc/usr/share/doc/libgeos-doc/html/jquery.js - override_dh_installman: dh_installman -plibgeos-dev debian/geos-config.1 @@ -111,5 +96,4 @@ dh_strip --dbgsym-migration='libgeos-dbg (<< 3.5.1-4~)' override_dh_makeshlibs: - dh_makeshlibs -- -v$(VER) -c0 - + dh_makeshlibs -- -v$(UPSTREAM_VERSION) -c0 diff -Nru geos-3.6.2/debian/source/lintian-overrides geos-3.7.1/debian/source/lintian-overrides --- geos-3.6.2/debian/source/lintian-overrides 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/debian/source/lintian-overrides 2018-09-11 05:30:32.000000000 +0000 @@ -0,0 +1,3 @@ +# Not worth the effort +testsuite-autopkgtest-missing + diff -Nru geos-3.6.2/debian/source.lintian-overrides geos-3.7.1/debian/source.lintian-overrides --- geos-3.6.2/debian/source.lintian-overrides 2017-11-28 20:21:38.000000000 +0000 +++ geos-3.7.1/debian/source.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 @@ -1,3 +0,0 @@ -# download.osgeo.org is not available via HTTPS -geos source: debian-watch-uses-insecure-uri * - diff -Nru geos-3.6.2/debian/tests/control geos-3.7.1/debian/tests/control --- geos-3.6.2/debian/tests/control 2017-11-28 19:47:47.000000000 +0000 +++ geos-3.7.1/debian/tests/control 1970-01-01 00:00:00.000000000 +0000 @@ -1,3 +0,0 @@ -# Test installability -Depends: @ -Test-Command: /bin/true diff -Nru geos-3.6.2/debian/upstream/metadata geos-3.7.1/debian/upstream/metadata --- geos-3.6.2/debian/upstream/metadata 2017-11-28 17:48:01.000000000 +0000 +++ geos-3.7.1/debian/upstream/metadata 2018-09-11 05:30:32.000000000 +0000 @@ -4,5 +4,5 @@ Contact: GEOS Developers Name: GEOS Registration: https://www.osgeo.org/cgi-bin/ldap_create_user.py -Repository: https://svn.osgeo.org/geos/ -Repository-Browse: https://trac.osgeo.org/geos/browser +Repository: https://git.osgeo.org/gitea/geos/geos.git +Repository-Browse: https://git.osgeo.org/gitea/geos/geos diff -Nru geos-3.6.2/debian/watch geos-3.7.1/debian/watch --- geos-3.6.2/debian/watch 2017-12-28 08:51:18.000000000 +0000 +++ geos-3.7.1/debian/watch 2018-08-27 16:58:55.000000000 +0000 @@ -2,5 +2,5 @@ opts=\ dversionmangle=s/\+(debian|dfsg|ds|deb)\d*$//,\ uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\d*)$/$1~$2/;s/RC/rc/ \ -http://download.osgeo.org/geos \ +https://download.osgeo.org/geos \ (?:|.*/)geos-(?:[_\-]v?|)(\d\S*)\.(?:tar\.xz|txz|tar\.bz2|tbz2|tar\.gz|tgz) diff -Nru geos-3.6.2/depcomp geos-3.7.1/depcomp --- geos-3.6.2/depcomp 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/depcomp 2018-11-29 23:05:16.000000000 +0000 @@ -1,9 +1,9 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2013-05-30.07; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -783,9 +783,9 @@ # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru geos-3.6.2/doc/Doxyfile geos-3.7.1/doc/Doxyfile --- geos-3.6.2/doc/Doxyfile 2017-07-25 09:27:33.000000000 +0000 +++ geos-3.7.1/doc/Doxyfile 2018-11-29 23:05:39.000000000 +0000 @@ -23,7 +23,7 @@ # This could be handy for archiving the generated documentation or # if some version control system is used. -PROJECT_NUMBER = 3.6.2 +PROJECT_NUMBER = 3.7.1 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. @@ -472,6 +472,12 @@ HTML_STYLESHEET = +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting +# this to NO can help when comparing the output of multiple runs. + +HTML_TIMESTAMP = NO + # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. diff -Nru geos-3.6.2/doc/Doxyfile.in geos-3.7.1/doc/Doxyfile.in --- geos-3.6.2/doc/Doxyfile.in 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/doc/Doxyfile.in 2018-11-09 23:03:28.000000000 +0000 @@ -472,6 +472,12 @@ HTML_STYLESHEET = +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting +# this to NO can help when comparing the output of multiple runs. + +HTML_TIMESTAMP = NO + # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. diff -Nru geos-3.6.2/doc/example.cpp geos-3.7.1/doc/example.cpp --- geos-3.6.2/doc/example.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/doc/example.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************* @@ -18,7 +18,7 @@ * architectural design choices. * * --strk; - * + * * DEBUGGING TIPS: * use -D__USE_MALLOC at compile time for gcc 2.91, 2.95, 3.0 and 3.1 * and GLIBCXX_FORCE_NEW or GLIBCPP_FORCE_NEW at run time with gcc 3.2.2+ @@ -84,7 +84,7 @@ // but that would be boring because you'd need to specify // a PrecisionModel and a SRID everytime: those infos are // cached inside a GeometryFactory object. -GeometryFactory::unique_ptr global_factory; +GeometryFactory::Ptr global_factory; //#define DEBUG_STREAM_STATE 1 @@ -118,7 +118,7 @@ " good:"<normalize(); @@ -227,7 +227,7 @@ // This function will create a LinearString // geometry with the shape of the letter U // having top-left corner at given coordinates -// and 'side' height and width +// and 'side' height and width LineString * create_ushaped_linestring(double xoffset, double yoffset, double side) { @@ -239,7 +239,7 @@ cl->add(Coordinate(xoffset+side, yoffset+side)); cl->add(Coordinate(xoffset+side, yoffset)); - // Now that we have a CoordinateSequence we can create + // Now that we have a CoordinateSequence we can create // the linestring. // The newly created LineString will take ownership // of the CoordinateSequence. @@ -248,13 +248,13 @@ // This is what you do if you want the new LineString // to make a copy of your CoordinateSequence: // LineString *ls = global_factory->createLineString(*cl); - + return ls; // our LineString } // This function will create a LinearRing -// geometry rapresenting a square with the given origin -// and side +// geometry rapresenting a square with the given origin +// and side LinearRing * create_square_linearring(double xoffset, double yoffset, double side) { @@ -267,7 +267,7 @@ cl->add(Coordinate(xoffset+side, yoffset)); cl->add(Coordinate(xoffset, yoffset)); - // Now that we have a CoordinateSequence we can create + // Now that we have a CoordinateSequence we can create // the linearring. // The newly created LinearRing will take ownership // of the CoordinateSequence. @@ -276,23 +276,23 @@ // This is what you do if you want the new LinearRing // to make a copy of your CoordinateSequence: // LinearRing *lr = global_factory->createLinearRing(*cl); - + return lr; // our LinearRing } // This function will create a Polygon -// geometry rapresenting a square with the given origin +// geometry rapresenting a square with the given origin // and side and with a central hole 1/3 sided. Polygon * create_square_polygon(double xoffset, double yoffset, double side) { - // We need a LinearRing for the polygon shell + // We need a LinearRing for the polygon shell LinearRing *outer = create_square_linearring(xoffset,yoffset,side); - // And another for the hole + // And another for the hole LinearRing *inner = create_square_linearring(xoffset+(side/3), yoffset+(side/3),(side/3)); - + // If we need to specify any hole, we do it using // a vector of Geometry pointers (I don't know why // not LinearRings) @@ -378,7 +378,7 @@ // // This function uses GeometricShapeFactory to render // an arc having lower-left corner at given coordinates, -// given sizes and given angles. +// given sizes and given angles. // LineString * create_arc(double llX, double llY, double width, double height, double startang, double endang) @@ -392,7 +392,7 @@ return shapefactory.createArc(startang, endang); } -auto_ptr +unique_ptr create_sinestar(double cx, double cy, double size, int nArms, double armLenRat) { geos::geom::util::SineStarFactory fact(global_factory.get()); @@ -409,7 +409,7 @@ { vector *geoms = new vector; vector *newgeoms; - + // Define a precision model using 0,0 as the reference origin // and 2.0 as coordinates scale. PrecisionModel *pm = new PrecisionModel(2.0, 0, 0); @@ -460,7 +460,7 @@ ///////////////////////////////////////////// // CENTROID ///////////////////////////////////////////// - + // Find centroid of each base geometry newgeoms = new vector; for (unsigned int i=0; isize(); i++) { @@ -477,11 +477,11 @@ delete (*newgeoms)[i]; } delete newgeoms; - + ///////////////////////////////////////////// // BUFFER ///////////////////////////////////////////// - + newgeoms = new vector; for (unsigned int i=0; isize(); i++) { Geometry *g = (*geoms)[i]; @@ -501,11 +501,11 @@ delete (*newgeoms)[i]; } delete newgeoms; - + ///////////////////////////////////////////// // CONVEX HULL ///////////////////////////////////////////// - + // Make convex hulls of geometries newgeoms = new vector; for (unsigned int i=0; isize(); i++) { @@ -564,7 +564,7 @@ } cout<size(); i++) { @@ -766,7 +766,7 @@ string pattern = "212101212"; if ( g1->relate(g2, pattern) ) cout<<" 1\t"; else cout<<" 0\t"; - + // get the intersectionMatrix itself im=g1->relate(g2); delete im; // delete afterwards @@ -920,12 +920,12 @@ delete (*newgeoms)[i]; } delete newgeoms; - + ///////////////////////////////////////////// // INTERSECTION ///////////////////////////////////////////// - + // Compute intersection of adhiacent geometries newgeoms = new vector; for (unsigned int i=0; isize()-1; i++) { @@ -958,7 +958,7 @@ ///////////////////////////////////////////// // DIFFERENCE ///////////////////////////////////////////// - + // Compute difference of adhiacent geometries newgeoms = new vector; for (unsigned int i=0; isize()-1; i++) { @@ -987,11 +987,11 @@ delete (*newgeoms)[i]; } delete newgeoms; - + ///////////////////////////////////////////// // SYMMETRIC DIFFERENCE ///////////////////////////////////////////// - + // Compute symmetric difference of adhiacent geometries newgeoms = new vector; for (unsigned int i=0; isize()-1; i++) { @@ -1024,7 +1024,7 @@ #endif // COMBINATIONS #if LINEMERGE - + ///////////////////////////////////////////// // LINEMERGE ///////////////////////////////////////////// @@ -1038,7 +1038,7 @@ cout<size(); i++) { delete (*newgeoms)[i]; @@ -1062,7 +1062,7 @@ cout<size(); i++) { delete (*newgeoms)[i]; @@ -1075,7 +1075,7 @@ // CLEANUP ///////////////////////////////////////////// - // Delete base geometries + // Delete base geometries for (unsigned int i=0; isize(); i++) { delete (*geoms)[i]; } @@ -1091,7 +1091,7 @@ do_all(); } // All exception thrown by GEOS are subclasses of this - // one, so this is a catch-all + // one, so this is a catch-all catch (const GEOSException& exc) { cerr <<"GEOS Exception: "<$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -496,7 +509,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -566,7 +582,7 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/example.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -612,7 +628,7 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/example.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -633,16 +649,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-local clean-noinstPROGRAMS cscopelist-am \ - ctags ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-local clean-noinstPROGRAMS \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/.editorconfig geos-3.7.1/.editorconfig --- geos-3.6.2/.editorconfig 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/.editorconfig 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,62 @@ +# http://editorconfig.org + +# top-most EditorConfig file +root = true + +# every file needs these +[*] +charset = utf-8 +end_of_line = lf +trim_trailing_whitespace = true +insert_final_newline = true + +# C++ files want tab indentation +[*.{h,cpp}] +indent_style = tab +indent_size = 2 + +# Makefiles want tab indentation +[Makefile.am] +indent_style = tab +indent_size = 2 + +# YML files want space indentation +[*.yml] +indent_style = space +indent_size = 2 + +# appveyor.yml is meant for windows (mloskot said) +[appveyor.yml] +end_of_line = crlf + +# Visual-C files want carriage returns too +[*.{vc,opt}] +end_of_line = crlf + +# CMake configuration files +[CMakeLists.txt] +indent_style = space +indent_size = 2 + +# CMake modules +[*.cmake] +indent_style = space +indent_size = 2 + +# operation/union directories were found to be using spaces +[src/operation/union/*.cpp] +indent_style = space +indent_size = 2 +[include/geos/operation/union/*.{h,inl}] +indent_style = space +indent_size = 2 + +# XMLTester.cpp wants 2-space indent +[tests/xmltester/XMLTester.cpp] +indent_style = space +indent_size = 4 + +# Stackwalker.cpp wants 4-space indent +[tests/xmltester/Stackwalker.cpp] +indent_style = space +indent_size = 2 diff -Nru geos-3.6.2/geos_revision.h geos-3.7.1/geos_revision.h --- geos-3.6.2/geos_revision.h 2017-07-25 09:27:34.000000000 +0000 +++ geos-3.7.1/geos_revision.h 2018-11-29 23:34:53.000000000 +0000 @@ -1 +1 @@ -#define GEOS_REVISION "4d2925d6" +#define GEOS_REVISION "27a5e771" diff -Nru geos-3.6.2/include/config.h.in geos-3.7.1/include/config.h.in --- geos-3.6.2/include/config.h.in 2017-07-14 09:50:37.000000000 +0000 +++ geos-3.7.1/include/config.h.in 2018-11-06 22:44:36.000000000 +0000 @@ -18,6 +18,9 @@ */ #undef HAVE_ALLOCA_H +/* define if the compiler supports basic C++11 syntax */ +#undef HAVE_CXX11 + /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H @@ -146,6 +149,9 @@ /* Define to 1 if your declares `struct tm'. */ #undef TM_IN_SYS_TIME +/* We know */ +#undef USE_UNSTABLE_GEOS_CPP_API + /* Define to empty if `const' does not conform to ANSI C. */ #undef const diff -Nru geos-3.6.2/include/geos/algorithm/Angle.h geos-3.7.1/include/geos/algorithm/Angle.h --- geos-3.6.2/include/geos/algorithm/Angle.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/Angle.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2011 Sandro Santilli + * Copyright (C) 2009-2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -47,10 +47,10 @@ /// Constant representing counterclockwise orientation static const int COUNTERCLOCKWISE = CGAlgorithms::COUNTERCLOCKWISE; - /// Constant representing clockwise orientation + /// Constant representing clockwise orientation static const int CLOCKWISE = CGAlgorithms::CLOCKWISE; - /// Constant representing no orientation + /// Constant representing no orientation static const int NONE = CGAlgorithms::COLLINEAR; /// Converts from radians to degrees. @@ -93,7 +93,7 @@ /// Tests whether the angle between p0-p1-p2 is acute. // /// An angle is acute if it is less than 90 degrees. - /// + /// /// Note: this implementation is not precise (determistic) for /// angles very close to 90 degrees. /// @@ -108,7 +108,7 @@ /// Tests whether the angle between p0-p1-p2 is obtuse. // /// An angle is obtuse if it is greater than 90 degrees. - /// + /// /// Note: this implementation is not precise (determistic) for /// angles very close to 90 degrees. /// diff -Nru geos-3.6.2/include/geos/algorithm/BoundaryNodeRule.h geos-3.7.1/include/geos/algorithm/BoundaryNodeRule.h --- geos-3.6.2/include/geos/algorithm/BoundaryNodeRule.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/BoundaryNodeRule.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/algorithm/CentralEndpointIntersector.h geos-3.7.1/include/geos/algorithm/CentralEndpointIntersector.h --- geos-3.6.2/include/geos/algorithm/CentralEndpointIntersector.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/CentralEndpointIntersector.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -46,14 +46,14 @@ * * This is effective in cases where the segments are nearly parallel * and should intersect at an endpoint. - * It is also a reasonable strategy for cases where the + * It is also a reasonable strategy for cases where the * endpoint of one segment lies on or almost on the interior of another one. * Taking the most central endpoint ensures that the computed intersection * point lies in the envelope of the segments. - * Also, by always returning one of the input points, this should result + * Also, by always returning one of the input points, this should result * in reducing segment fragmentation. - * Intended to be used as a last resort for - * computing ill-conditioned intersection situations which + * Intended to be used as a last resort for + * computing ill-conditioned intersection situations which * cause other methods to fail. * * @author Martin Davis @@ -61,7 +61,7 @@ */ class GEOS_DLL CentralEndpointIntersector { -public: +public: static const geom::Coordinate& getIntersection(const geom::Coordinate& p00, const geom::Coordinate& p01, const geom::Coordinate& p10, @@ -123,7 +123,7 @@ /** * Determines a point closest to the given point. - * + * * @param p the point to compare against * @param p1 a potential result point * @param p2 a potential result point diff -Nru geos-3.6.2/include/geos/algorithm/CentroidArea.h geos-3.7.1/include/geos/algorithm/CentroidArea.h --- geos-3.6.2/include/geos/algorithm/CentroidArea.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/CentroidArea.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -49,7 +49,7 @@ * The algorithm has been extended to handle holes and multi-polygons. * See http://www.faqs.org/faqs/graphics/algorithms-faq/ * for further details of the basic approach. - * + * * The code has also be extended to handle degenerate (zero-area) polygons. * In this case, the centroid of the line segments in the polygon * will be returned. @@ -100,8 +100,8 @@ // temporary variable to hold centroid of triangle geom::Coordinate triangleCent3; - /// Partial area sum - double areasum2; + /// Partial area sum + double areasum2; /// partial centroid sum geom::Coordinate cg3; @@ -117,7 +117,7 @@ void addShell(const geom::CoordinateSequence *pts); void addHole(const geom::CoordinateSequence *pts); - + void addTriangle(const geom::Coordinate &p0, const geom::Coordinate &p1, const geom::Coordinate &p2,bool isPositiveArea); diff -Nru geos-3.6.2/include/geos/algorithm/Centroid.h geos-3.7.1/include/geos/algorithm/Centroid.h --- geos-3.6.2/include/geos/algorithm/Centroid.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/Centroid.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2013 Sandro Santilli + * Copyright (C) 2013 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -21,7 +21,7 @@ #include #include // for composition -#include // for std::auto_ptr +#include // for std::unique_ptr // Forward declarations namespace geos { @@ -97,7 +97,7 @@ private: - std::auto_ptr areaBasePt; + std::unique_ptr areaBasePt; geom::Coordinate triangleCent3; geom::Coordinate cg3; geom::Coordinate lineCentSum; @@ -105,14 +105,14 @@ double areasum2; double totalLength; int ptCount; - + /** * Adds a Geometry to the centroid total. * * @param geom the geometry to add */ void add(const geom::Geometry& geom); - + void setBasePoint(const geom::Coordinate& basePt); void add(const geom::Polygon& poly); diff -Nru geos-3.6.2/include/geos/algorithm/CentroidLine.h geos-3.7.1/include/geos/algorithm/CentroidLine.h --- geos-3.6.2/include/geos/algorithm/CentroidLine.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/CentroidLine.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/algorithm/CentroidPoint.h geos-3.7.1/include/geos/algorithm/CentroidPoint.h --- geos-3.6.2/include/geos/algorithm/CentroidPoint.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/CentroidPoint.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/algorithm/CGAlgorithms.h geos-3.7.1/include/geos/algorithm/CGAlgorithms.h --- geos-3.6.2/include/geos/algorithm/CGAlgorithms.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/CGAlgorithms.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -68,7 +68,7 @@ * The ring may be oriented in either direction. * A point lying exactly on the ring boundary is considered * to be inside the ring. - * + * * This algorithm does not first check the * point against the envelope of the ring. * @@ -90,7 +90,7 @@ * on the boundary, or in the exterior of a ring. * * The ring may be oriented in either direction. - * + * * This method does not first check the point against * the envelope of the ring. * @@ -119,7 +119,7 @@ /** \brief * Computes whether a ring defined by an array of Coordinate is * oriented counter-clockwise. - * + * * - The list of points is assumed to have the first and last * points equal. * - This will handle coordinate lists which contain repeated points. diff -Nru geos-3.6.2/include/geos/algorithm/ConvexHull.h geos-3.7.1/include/geos/algorithm/ConvexHull.h --- geos-3.6.2/include/geos/algorithm/ConvexHull.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/ConvexHull.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -49,7 +49,7 @@ * * The convex hull is the smallest convex Geometry that contains all the * points in the input Geometry. - * + * * Uses the Graham Scan algorithm. * * Last port: algorithm/ConvexHull.java rev. 1.26 (JTS-1.7) @@ -111,7 +111,7 @@ * ordering about point o. First checks radial ordering. * If points are collinear, the comparison is based * on their distance to the origin. - * + * * p < q iff * * - ang(o-p) < ang(o-q) (e.g. o-p-q is CCW) @@ -167,7 +167,7 @@ * Returns a Geometry that represents the convex hull of * the input geometry. * The returned geometry contains the minimal number of points - * needed to represent the convex hull. + * needed to represent the convex hull. * In particular, no more than two consecutive points * will be collinear. * diff -Nru geos-3.6.2/include/geos/algorithm/ConvexHull.inl geos-3.7.1/include/geos/algorithm/ConvexHull.inl --- geos-3.6.2/include/geos/algorithm/ConvexHull.inl 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/ConvexHull.inl 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,7 +27,7 @@ namespace geos { namespace algorithm { // geos::algorithm -INLINE +INLINE ConvexHull::ConvexHull(const geom::Geometry *newGeometry) : geomFactory(newGeometry->getFactory()) @@ -35,7 +35,7 @@ extractCoordinates(newGeometry); } -INLINE +INLINE ConvexHull::~ConvexHull() { } diff -Nru geos-3.6.2/include/geos/algorithm/distance/DiscreteFrechetDistance.h geos-3.7.1/include/geos/algorithm/distance/DiscreteFrechetDistance.h --- geos-3.6.2/include/geos/algorithm/distance/DiscreteFrechetDistance.h 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/distance/DiscreteFrechetDistance.h 2018-11-29 22:42:00.000000000 +0000 @@ -0,0 +1,184 @@ +/********************************************************************** + * + * GEOS - Geometry Engine Open Source + * http://geos.osgeo.org + * + * Copyright (C) 2016 Shinichi SUGIYAMA (shin.sugi@gmail.com) + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU Lesser General Public Licence as published + * by the Free Software Foundation. + * See the COPYING file for more information. + * + ********************************************************************** + * + * Last port: original work + * + * Developed by Shinichi SUGIYAMA (shin.sugi@gmail.com) + * based on http://www.kr.tuwien.ac.at/staff/eiter/et-archive/cdtr9464.pdf + * + **********************************************************************/ + +#ifndef GEOS_ALGORITHM_DISTANCE_DISCRETEFRECHETDISTANCE_H +#define GEOS_ALGORITHM_DISTANCE_DISCRETEFRECHETDISTANCE_H + +#include +#include // for composition +#include // for composition +#include // for inlines +#include // for inlines +#include // for inlines +#include // for inheritance +#include // for inheritance + +#include +#include + +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class +#endif + +namespace geos { + namespace algorithm { + //class RayCrossingCounter; + } + namespace geom { + class Geometry; + class Coordinate; + //class CoordinateSequence; + } + namespace index { + namespace intervalrtree { + //class SortedPackedIntervalRTree; + } + } +} + +namespace geos { +namespace algorithm { // geos::algorithm +namespace distance { // geos::algorithm::distance + +/** \brief + * An algorithm for computing a distance metric + * which is an approximation to the Frechet Distance + * based on a discretization of the input {@link Geometry}. + * + * The algorithm computes the Frechet distance restricted to discrete points + * for one of the geometries. + * The points can be either the vertices of the geometries (the default), + * or the geometries with line segments densified by a given fraction. + * Also determines two points of the Geometries which are separated by the + * computed distance. + * + * This algorithm is an approximation to the standard Frechet distance. + * Specifically, + *
+ *    for all geometries a, b:    DFD(a, b) >= FD(a, b)
+ * 
+ * The approximation can be made as close as needed by densifying the + * input geometries. + * In the limit, this value will approach the true Frechet distance: + *
+ *    DFD(A, B, densifyFactor) -> FD(A, B) as densifyFactor -> 0.0
+ * 
+ * The default approximation is exact or close enough for a large subset of + * useful cases. + * + * The difference between DFD and FD is bounded + * by the length of the longest edge of the polygonal curves. + * + * Fréchet distance sweep continuously along their respective curves + * and the direction of curves is significant. + * This makes a better measure of similarity than Hausdorff distance. + * + * An example showing how different DHD and DFD are: + *
+ *   A  = LINESTRING (0 0, 50 200, 100 0, 150 200, 200 0)
+ *   B  = LINESTRING (0 200, 200 150, 0 100, 200 50, 0 0)
+ *   B' = LINESTRING (0 0, 200 50, 0 100, 200 150, 0 200)
+ *
+ *   DHD(A, B)  = DHD(A, B') = 48.5071250072666
+ *   DFD(A, B)  = 200
+ *   DFD(A, B') = 282.842712474619
+ * 
+ */ +class GEOS_DLL DiscreteFrechetDistance +{ +public: + + static double distance(const geom::Geometry& g0, + const geom::Geometry& g1); + + static double distance(const geom::Geometry& g0, + const geom::Geometry& g1, double densifyFrac); + + DiscreteFrechetDistance(const geom::Geometry& g0, + const geom::Geometry& g1) + : + g0(g0), + g1(g1), + ptDist(), + densifyFrac(0.0) + {} + + /** + * Sets the fraction by which to densify each segment. + * Each segment will be (virtually) split into a number of equal-length + * subsegments, whose fraction of the total length is closest + * to the given fraction. + * + * @param dFrac + */ + void setDensifyFraction(double dFrac) + { + if ( dFrac > 1.0 || dFrac <= 0.0 ) + { + throw util::IllegalArgumentException( + "Fraction is not in range (0.0 - 1.0]"); + } + + densifyFrac = dFrac; + } + + double distance() + { + compute(g0, g1); + return ptDist.getDistance(); + } + + const std::vector getCoordinates() const + { + return ptDist.getCoordinates(); + } + +private: + geom::Coordinate getSegementAt(const geom::CoordinateSequence& seq, size_t index); + + PointPairDistance& getFrecheDistance(std::vector< std::vector >& ca, size_t i, size_t j, const geom::CoordinateSequence& p, const geom::CoordinateSequence& q); + + void compute(const geom::Geometry& discreteGeom, const geom::Geometry& geom); + + const geom::Geometry& g0; + + const geom::Geometry& g1; + + PointPairDistance ptDist; + + /// Value of 0.0 indicates that no densification should take place + double densifyFrac; // = 0.0; + + // Declare type as noncopyable + DiscreteFrechetDistance(const DiscreteFrechetDistance& other) = delete; + DiscreteFrechetDistance& operator=(const DiscreteFrechetDistance& rhs) = delete; +}; + +} // geos::algorithm::distance +} // geos::algorithm +} // geos + +#ifdef _MSC_VER +#pragma warning(pop) +#endif + +#endif // GEOS_ALGORITHM_DISTANCE_DISCRETEFRECHETDISTANCE_H diff -Nru geos-3.6.2/include/geos/algorithm/distance/DiscreteHausdorffDistance.h geos-3.7.1/include/geos/algorithm/distance/DiscreteHausdorffDistance.h --- geos-3.6.2/include/geos/algorithm/distance/DiscreteHausdorffDistance.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/distance/DiscreteHausdorffDistance.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,8 +42,8 @@ } namespace geom { class Geometry; - class Coordinate; - //class CoordinateSequence; + class Coordinate; + //class CoordinateSequence; } namespace index { namespace intervalrtree { @@ -67,7 +67,7 @@ * or the geometries with line segments densified by a given fraction. * Also determines two points of the Geometries which are separated by the * computed distance. - * + * * This algorithm is an approximation to the standard Hausdorff distance. * Specifically, *
@@ -82,12 +82,12 @@
  * The default approximation is exact or close enough for a large subset of
  * useful cases.
  * Examples of these are:
- * 
+ *
  * - computing distance between Linestrings that are roughly parallel to
  *   each other, and roughly equal in length.  This occurs in matching
  *   linear networks.
  * - Testing similarity of geometries.
- * 
+ *
  * An example where the default approximation is not close is:
  * 
  *   A = LINESTRING (0 0, 100 0, 10 100, 10 100)
@@ -160,7 +160,7 @@
 			geom(geom)
 		{}
 
-		void filter_ro(const geom::Coordinate* pt)
+		void filter_ro(const geom::Coordinate* pt) override
 		{
 			minPtDist.initialize();
 			DistanceToPoint::computeDistance(geom, *pt,
@@ -198,11 +198,11 @@
 		}
 
 		void filter_ro(const geom::CoordinateSequence& seq,
-		               std::size_t index);
+		               std::size_t index) override;
 
-		bool isGeometryChanged() const { return false; }
+		bool isGeometryChanged() const override { return false; }
 
-		bool isDone() const { return false; }
+		bool isDone() const override { return false; }
 
 		const PointPairDistance& getMaxPointDistance() const {
 			return maxPtDist;
@@ -242,8 +242,8 @@
     double densifyFrac; // = 0.0;
 
     // Declare type as noncopyable
-    DiscreteHausdorffDistance(const DiscreteHausdorffDistance& other);
-    DiscreteHausdorffDistance& operator=(const DiscreteHausdorffDistance& rhs);
+    DiscreteHausdorffDistance(const DiscreteHausdorffDistance& other) = delete;
+    DiscreteHausdorffDistance& operator=(const DiscreteHausdorffDistance& rhs) = delete;
 };
 
 } // geos::algorithm::distance
diff -Nru geos-3.6.2/include/geos/algorithm/distance/DistanceToPoint.h geos-3.7.1/include/geos/algorithm/distance/DistanceToPoint.h
--- geos-3.6.2/include/geos/algorithm/distance/DistanceToPoint.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/distance/DistanceToPoint.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,11 +3,11 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009  Sandro Santilli 
+ * Copyright (C) 2009  Sandro Santilli 
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -29,9 +29,9 @@
 	}
 	namespace geom {
 		class Geometry;
-		class Coordinate; 
-		class LineString; 
-		class Polygon; 
+		class Coordinate;
+		class LineString;
+		class Polygon;
 	}
 }
 
diff -Nru geos-3.6.2/include/geos/algorithm/distance/Makefile.am geos-3.7.1/include/geos/algorithm/distance/Makefile.am
--- geos-3.6.2/include/geos/algorithm/distance/Makefile.am	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/distance/Makefile.am	2018-10-19 22:32:06.000000000 +0000
@@ -9,5 +9,6 @@
 
 geos_HEADERS = \
     DiscreteHausdorffDistance.h \
+    DiscreteFrechetDistance.h \
     DistanceToPoint.h \
     PointPairDistance.h
diff -Nru geos-3.6.2/include/geos/algorithm/distance/Makefile.in geos-3.7.1/include/geos/algorithm/distance/Makefile.in
--- geos-3.6.2/include/geos/algorithm/distance/Makefile.in	2017-07-25 09:27:28.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/distance/Makefile.in	2018-11-29 23:05:17.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -93,6 +93,9 @@
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \
 	$(top_srcdir)/macros/ac_python_devel.m4 \
+	$(top_srcdir)/macros/ax_check_compile_flag.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \
 	$(top_srcdir)/macros/libtool.m4 \
 	$(top_srcdir)/macros/ltoptions.m4 \
 	$(top_srcdir)/macros/ltsugar.m4 \
@@ -171,7 +174,7 @@
   $(RECURSIVE_CLEAN_TARGETS) \
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
-	distdir
+	distdir distdir-am
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
@@ -260,6 +263,7 @@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
 INLINE_FLAGS = @INLINE_FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -308,6 +312,8 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RUBY = @RUBY@
+RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@
+RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@
 RUBY_BIN_DIR = @RUBY_BIN_DIR@
 RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@
 RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@
@@ -328,6 +334,7 @@
 VERSION_MAJOR = @VERSION_MAJOR@
 VERSION_MINOR = @VERSION_MINOR@
 VERSION_PATCH = @VERSION_PATCH@
+VERSION_RELEASE = @VERSION_RELEASE@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
@@ -377,7 +384,6 @@
 psdir = @psdir@
 pyexecdir = @pyexecdir@
 pythondir = @pythondir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -399,6 +405,7 @@
 geosdir = $(includedir)/geos/algorithm/distance
 geos_HEADERS = \
     DiscreteHausdorffDistance.h \
+    DiscreteFrechetDistance.h \
     DistanceToPoint.h \
     PointPairDistance.h
 
@@ -422,8 +429,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -561,7 +568,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru geos-3.6.2/include/geos/algorithm/distance/PointPairDistance.h geos-3.7.1/include/geos/algorithm/distance/PointPairDistance.h
--- geos-3.6.2/include/geos/algorithm/distance/PointPairDistance.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/distance/PointPairDistance.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,11 +3,11 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009  Sandro Santilli 
+ * Copyright (C) 2009  Sandro Santilli 
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -108,6 +108,11 @@
 			initialize(p0, p1, dist);
 	}
 
+	bool getIsNull()
+	{
+		return isNull;
+	}
+
 private:
 
 	/**
diff -Nru geos-3.6.2/include/geos/algorithm/HCoordinate.h geos-3.7.1/include/geos/algorithm/HCoordinate.h
--- geos-3.6.2/include/geos/algorithm/HCoordinate.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/HCoordinate.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011      Sandro Santilli 
+ * Copyright (C) 2011      Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -50,7 +50,7 @@
 	/** \brief
 	 * Computes the (approximate) intersection point between two line
 	 * segments using homogeneous coordinates.
-	 * 
+	 *
 	 * Note that this algorithm is
 	 * not numerically stable; i.e. it can produce intersection points which
 	 * lie outside the envelope of the line segments themselves.  In order
diff -Nru geos-3.6.2/include/geos/algorithm/InteriorPointArea.h geos-3.7.1/include/geos/algorithm/InteriorPointArea.h
--- geos-3.6.2/include/geos/algorithm/InteriorPointArea.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/InteriorPointArea.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2013 Sandro Santilli 
+ * Copyright (C) 2013 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
diff -Nru geos-3.6.2/include/geos/algorithm/InteriorPointLine.h geos-3.7.1/include/geos/algorithm/InteriorPointLine.h
--- geos-3.6.2/include/geos/algorithm/InteriorPointLine.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/InteriorPointLine.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -39,7 +39,7 @@
  * Computes a point in the interior of an linear geometry.
  *
  * 

Algorithm

- * + * * - Find an interior vertex which is closest to * the centroid of the linestring. * - If there is no interior vertex, find the endpoint which is @@ -69,7 +69,7 @@ void addInterior(const geom::Geometry *geom); void addInterior(const geom::CoordinateSequence *pts); - + void addEndpoints(const geom::Geometry *geom); void addEndpoints(const geom::CoordinateSequence *pts); diff -Nru geos-3.6.2/include/geos/algorithm/InteriorPointPoint.h geos-3.7.1/include/geos/algorithm/InteriorPointPoint.h --- geos-3.6.2/include/geos/algorithm/InteriorPointPoint.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/InteriorPointPoint.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/algorithm/LineIntersector.h geos-3.7.1/include/geos/algorithm/LineIntersector.h --- geos-3.6.2/include/geos/algorithm/LineIntersector.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/LineIntersector.h 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -47,7 +47,7 @@ * */ class GEOS_DLL LineIntersector { -public: +public: /// \brief /// Return a Z value being the interpolation of Z from p0 and p1 at @@ -63,12 +63,12 @@ /// It relies on the fact that either the x or the y ordinates of the /// points in the edge are unique, depending on whether the edge is longer in /// the horizontal or vertical direction. - /// + /// /// NOTE: This function may produce incorrect distances /// for inputs where p is not precisely on p1-p2 /// (E.g. p = (139,9) p1 = (139,10), p2 = (280,1) produces distanct /// 0.0, which is incorrect. - /// + /// /// My hypothesis is that the function is safe to use for points which are the /// result of rounding points which lie on the line, /// but not safe to use for truncated points. @@ -77,7 +77,7 @@ static double nonRobustComputeEdgeDistance(const geom::Coordinate& p,const geom::Coordinate& p1,const geom::Coordinate& p2); - LineIntersector(const geom::PrecisionModel* initialPrecisionModel=NULL) + LineIntersector(const geom::PrecisionModel* initialPrecisionModel=nullptr) : precisionModel(initialPrecisionModel), result(0), @@ -162,7 +162,7 @@ /// int getIntersectionNum() const { return result; } - + /// Returns the intIndex'th intersection point // /// @param intIndex is 0 or 1 @@ -193,12 +193,12 @@ /** \brief * Tests whether an intersection is proper. - * + * * The intersection between two line segments is considered proper if * they intersect in a single point in the interior of both segments * (e.g. the intersection is a single point and is not equal to any of the * endpoints). - * + * * The intersection between a point and a line segment is considered proper * if the point lies in the interior of the segment (e.g. is not equal to * either of the endpoints). @@ -355,7 +355,7 @@ const geom::Coordinate& q1, const geom::Coordinate& q2, geom::Coordinate& intPt) const; - + }; } // namespace geos::algorithm diff -Nru geos-3.6.2/include/geos/algorithm/locate/IndexedPointInAreaLocator.h geos-3.7.1/include/geos/algorithm/locate/IndexedPointInAreaLocator.h --- geos-3.6.2/include/geos/algorithm/locate/IndexedPointInAreaLocator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/locate/IndexedPointInAreaLocator.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -27,8 +27,8 @@ } namespace geom { class Geometry; - class Coordinate; - class CoordinateSequence; + class Coordinate; + class CoordinateSequence; class LineSegment; } namespace index { @@ -48,11 +48,11 @@ * * This algorithm is suitable for use in cases where * many points will be tested against a given area. - * + * * @author Martin Davis * */ -class IndexedPointInAreaLocator : public PointOnGeometryLocator +class IndexedPointInAreaLocator : public PointOnGeometryLocator { private: class IntervalIndexedGeometry @@ -80,14 +80,14 @@ algorithm::RayCrossingCounter * counter; public: - SegmentVisitor( algorithm::RayCrossingCounter * counter) + SegmentVisitor( algorithm::RayCrossingCounter * counter) : counter( counter) { } - - ~SegmentVisitor() + + ~SegmentVisitor() override { } - void visitItem( void * item); + void visitItem( void * item) override; }; @@ -97,8 +97,8 @@ void buildIndex( const geom::Geometry & g); // Declare type as noncopyable - IndexedPointInAreaLocator(const IndexedPointInAreaLocator& other); - IndexedPointInAreaLocator& operator=(const IndexedPointInAreaLocator& rhs); + IndexedPointInAreaLocator(const IndexedPointInAreaLocator& other) = delete; + IndexedPointInAreaLocator& operator=(const IndexedPointInAreaLocator& rhs) = delete; public: /** @@ -107,15 +107,15 @@ */ IndexedPointInAreaLocator( const geom::Geometry & g); - ~IndexedPointInAreaLocator(); - + ~IndexedPointInAreaLocator() override; + /** * Determines the {@link Location} of a point in an areal {@link Geometry}. - * + * * @param p the point to test - * @return the location of the point in the geometry + * @return the location of the point in the geometry */ - int locate( const geom::Coordinate * /*const*/ p); + int locate( const geom::Coordinate * /*const*/ p) override; }; diff -Nru geos-3.6.2/include/geos/algorithm/locate/Makefile.in geos-3.7.1/include/geos/algorithm/locate/Makefile.in --- geos-3.6.2/include/geos/algorithm/locate/Makefile.in 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/locate/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -422,8 +428,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -561,7 +567,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/algorithm/locate/PointOnGeometryLocator.h geos-3.7.1/include/geos/algorithm/locate/PointOnGeometryLocator.h --- geos-3.6.2/include/geos/algorithm/locate/PointOnGeometryLocator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/locate/PointOnGeometryLocator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -18,7 +18,7 @@ namespace geos { namespace geom { - class Coordinate; + class Coordinate; } } @@ -29,7 +29,7 @@ /** \brief * An interface for classes which determine the {@link Location} of * points in {@link Polygon} or {@link MultiPolygon} geometries. - * + * * @author Martin Davis */ class PointOnGeometryLocator @@ -37,14 +37,14 @@ private: protected: public: - virtual ~PointOnGeometryLocator() + virtual ~PointOnGeometryLocator() { } /** * Determines the {@link Location} of a point in an areal {@link Geometry}. - * + * * @param p the point to test - * @return the location of the point in the geometry + * @return the location of the point in the geometry */ virtual int locate( const geom::Coordinate * /*const*/ p) =0; }; diff -Nru geos-3.6.2/include/geos/algorithm/locate/SimplePointInAreaLocator.h geos-3.7.1/include/geos/algorithm/locate/SimplePointInAreaLocator.h --- geos-3.6.2/include/geos/algorithm/locate/SimplePointInAreaLocator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/locate/SimplePointInAreaLocator.h 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -38,7 +38,7 @@ * * This algorithm is suitable for use in cases where * only one or a few points will be tested against a given area. - * + * * The algorithm used is only guaranteed to return correct results * for points which are not on the boundary of the Geometry. * @@ -55,11 +55,11 @@ static bool containsPointInPolygon(const geom::Coordinate& p, const geom::Polygon *poly); - SimplePointInAreaLocator( const geom::Geometry * g) + SimplePointInAreaLocator( const geom::Geometry * g) : g( g) { } - int locate( const geom::Coordinate * p) + int locate( const geom::Coordinate * p) override { return locate( *p, g); } diff -Nru geos-3.6.2/include/geos/algorithm/Makefile.in geos-3.7.1/include/geos/algorithm/Makefile.in --- geos-3.6.2/include/geos/algorithm/Makefile.in 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -446,8 +452,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -585,7 +591,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/algorithm/MCPointInRing.h geos-3.7.1/include/geos/algorithm/MCPointInRing.h --- geos-3.6.2/include/geos/algorithm/MCPointInRing.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/MCPointInRing.h 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -50,8 +50,8 @@ class GEOS_DLL MCPointInRing: public PointInRing { public: MCPointInRing(const geom::LinearRing *newRing); - ~MCPointInRing(); - bool isInside(const geom::Coordinate& pt); + ~MCPointInRing() override; + bool isInside(const geom::Coordinate& pt) override; void testLineSegment(const geom::Coordinate& p, const geom::LineSegment& seg); @@ -63,7 +63,7 @@ MCPointInRing *parent; public: MCSelecter(const geom::Coordinate& newP, MCPointInRing *prt); - void select(const geom::LineSegment& ls); + void select(const geom::LineSegment& ls) override; }; private: diff -Nru geos-3.6.2/include/geos/algorithm/MinimumDiameter.h geos-3.7.1/include/geos/algorithm/MinimumDiameter.h --- geos-3.6.2/include/geos/algorithm/MinimumDiameter.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/MinimumDiameter.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/algorithm/NotRepresentableException.h geos-3.7.1/include/geos/algorithm/NotRepresentableException.h --- geos-3.6.2/include/geos/algorithm/NotRepresentableException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/NotRepresentableException.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -36,7 +36,7 @@ public: NotRepresentableException(); NotRepresentableException(std::string msg); - ~NotRepresentableException() throw() {} + ~NotRepresentableException() throw() override {} }; } // namespace geos::algorithm diff -Nru geos-3.6.2/include/geos/algorithm/PointInRing.h geos-3.7.1/include/geos/algorithm/PointInRing.h --- geos-3.6.2/include/geos/algorithm/PointInRing.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/PointInRing.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/algorithm/PointLocator.h geos-3.7.1/include/geos/algorithm/PointLocator.h --- geos-3.6.2/include/geos/algorithm/PointLocator.h 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/PointLocator.h 2018-11-09 23:03:28.000000000 +0000 @@ -8,12 +8,12 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** * - * Last port: algorithm/PointLocator.java r320 (JTS-1.12) + * Last port: algorithm/PointLocator.java 95fbe34b (JTS-1.15.2-SNAPSHOT) * **********************************************************************/ @@ -51,9 +51,8 @@ * Notes: * - instances of this class are not reentrant. * - LinearRing objects do not enclose any area - * points inside the ring are still in the EXTERIOR of the ring. + * (points inside the ring are still in the EXTERIOR of the ring.) * - * Last port: algorithm/PointLocator.java rev. 1.26 (JTS-1.7+) */ class GEOS_DLL PointLocator { public: @@ -62,11 +61,9 @@ /** * Computes the topological relationship (Location) of a single point - * to a Geometry. - * It handles both single-element - * and multi-element Geometries. - * The algorithm for multi-part Geometries - * takes into account the boundaryDetermination rule. + * to a Geometry. It handles both single-element and multi-element Geometries. + * The algorithm for multi-part Geometriestakes into account the SFS + * Boundary Determination rule. * * @return the Location of the point relative to the input Geometry */ diff -Nru geos-3.6.2/include/geos/algorithm/RayCrossingCounter.h geos-3.7.1/include/geos/algorithm/RayCrossingCounter.h --- geos-3.6.2/include/geos/algorithm/RayCrossingCounter.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/RayCrossingCounter.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -44,46 +44,46 @@ * The class determines the situation where the point lies exactly on a segment. * When being used for Point-In-Polygon determination, this case allows short-circuiting * the evaluation. - * + * * This class handles polygonal geometries with any number of shells and holes. * The orientation of the shell and hole rings is unimportant. - * In order to compute a correct location for a given polygonal geometry, + * In order to compute a correct location for a given polygonal geometry, * it is essential that all segments are counted which *
    - *
  • touch the ray + *
  • touch the ray *
  • lie in in any ring which may contain the point *
* The only exception is when the point-on-segment situation is detected, in which * case no further processing is required. - * The implication of the above rule is that segments + * The implication of the above rule is that segments * which can be a priori determined to not touch the ray - * (i.e. by a test of their bounding box or Y-extent) + * (i.e. by a test of their bounding box or Y-extent) * do not need to be counted. This allows for optimization by indexing. - * + * * @author Martin Davis * */ -class GEOS_DLL RayCrossingCounter +class GEOS_DLL RayCrossingCounter { private: const geom::Coordinate& point; - + int crossingCount; - + // true if the test point lies on an input segment bool isPointOnSegment; // Declare type as noncopyable - RayCrossingCounter(const RayCrossingCounter& other); - RayCrossingCounter& operator=(const RayCrossingCounter& rhs); + RayCrossingCounter(const RayCrossingCounter& other) = delete; + RayCrossingCounter& operator=(const RayCrossingCounter& rhs) = delete; public: /** * Determines the {@link Location} of a point in a ring. * This method is an exemplar of how to use this class. - * + * * @param p the point to test - * @param ring an array of Coordinates forming a ring + * @param ring an array of Coordinates forming a ring * @return the location of the point in the ring */ static int locatePointInRing(const geom::Coordinate& p, @@ -114,50 +114,50 @@ crossingCount( 0), isPointOnSegment( false) { } - + /** * Counts a segment - * + * * @param p1 an endpoint of the segment * @param p2 another endpoint of the segment */ void countSegment(const geom::Coordinate& p1, const geom::Coordinate& p2); - + /** * Reports whether the point lies exactly on one of the supplied segments. * This method may be called at any time as segments are processed. - * If the result of this method is true, + * If the result of this method is true, * no further segments need be supplied, since the result * will never change again. - * + * * @return true if the point lies exactly on a segment */ - bool isOnSegment() - { - return isPointOnSegment; + bool isOnSegment() + { + return isPointOnSegment; } - + /** - * Gets the {@link Location} of the point relative to + * Gets the {@link Location} of the point relative to * the ring, polygon * or multipolygon from which the processed segments were provided. *

- * This method only determines the correct location - * if all relevant segments must have been processed. - * + * This method only determines the correct location + * if all relevant segments must have been processed. + * * @return the Location of the point */ int getLocation(); - + /** - * Tests whether the point lies in or on + * Tests whether the point lies in or on * the ring, polygon * or multipolygon from which the processed segments were provided. *

- * This method only determines the correct location - * if all relevant segments must have been processed. - * + * This method only determines the correct location + * if all relevant segments must have been processed. + * * @return true if the point lies in or on the supplied polygon */ bool isPointInPolygon(); diff -Nru geos-3.6.2/include/geos/algorithm/RobustDeterminant.h geos-3.7.1/include/geos/algorithm/RobustDeterminant.h --- geos-3.6.2/include/geos/algorithm/RobustDeterminant.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/algorithm/RobustDeterminant.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -30,7 +30,7 @@ * sign of a 2x2 determinant for double precision values robustly. * * It is a direct translation of code developed by Olivier Devillers. - * + * * The original code carries the following copyright notice: * *

diff -Nru geos-3.6.2/include/geos/algorithm/SimplePointInRing.h geos-3.7.1/include/geos/algorithm/SimplePointInRing.h
--- geos-3.6.2/include/geos/algorithm/SimplePointInRing.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/SimplePointInRing.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -34,8 +34,8 @@
 class GEOS_DLL SimplePointInRing: public PointInRing {
 public:
 	SimplePointInRing(geom::LinearRing *ring);
-	virtual ~SimplePointInRing();
-	bool isInside(const geom::Coordinate& pt);
+	~SimplePointInRing() override;
+	bool isInside(const geom::Coordinate& pt) override;
 private:
 	const geom::CoordinateSequence* pts;
 };
diff -Nru geos-3.6.2/include/geos/algorithm/SIRtreePointInRing.h geos-3.7.1/include/geos/algorithm/SIRtreePointInRing.h
--- geos-3.6.2/include/geos/algorithm/SIRtreePointInRing.h	2016-04-23 14:13:04.000000000 +0000
+++ geos-3.7.1/include/geos/algorithm/SIRtreePointInRing.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -49,8 +49,8 @@
 			geom::LineSegment *seg);
 public:
 	SIRtreePointInRing(geom::LinearRing *newRing);
-	~SIRtreePointInRing();
-	bool isInside(const geom::Coordinate& pt);
+	~SIRtreePointInRing() override;
+	bool isInside(const geom::Coordinate& pt) override;
 };
 
 } // namespace geos::algorithm
diff -Nru geos-3.6.2/include/geos/geom/BinaryOp.h geos-3.7.1/include/geos/geom/BinaryOp.h
--- geos-3.6.2/include/geos/geom/BinaryOp.h	2017-01-18 08:18:55.000000000 +0000
+++ geos-3.7.1/include/geos/geom/BinaryOp.h	2018-11-09 23:03:28.000000000 +0000
@@ -3,12 +3,12 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2013 Sandro Santilli 
+ * Copyright (C) 2013 Sandro Santilli 
  * Copyright (C) 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -19,7 +19,7 @@
  *
  * This file provides a single templated function, taking two
  * const Geometry pointers, applying a binary operator to them
- * and returning a result Geometry in an auto_ptr<>.
+ * and returning a result Geometry in an unique_ptr<>.
  *
  * The binary operator is expected to take two const Geometry pointers
  * and return a newly allocated Geometry pointer, possibly throwing
@@ -69,9 +69,10 @@
 #include 
 #include 
 
-#include  // for auto_ptr
+#include  // for unique_ptr
 
 //#define GEOS_DEBUG_BINARYOP 1
+#define GEOS_DEBUG_BINARYOP_PRINT_INVALID 1
 
 #ifdef GEOS_DEBUG_BINARYOP
 # include 
@@ -88,6 +89,12 @@
 #endif
 
 /*
+ * Check validity of operation between original geometries
+ */
+#define GEOS_CHECK_ORIGINAL_RESULT_VALIDITY 0
+
+
+/*
  * Define this to use PrecisionReduction policy
  * in an attempt at by-passing binary operation
  * robustness problems (handles TopologyExceptions)
@@ -97,11 +104,22 @@
 #endif
 
 /*
+ * Check validity of operation performed
+ * by precision reduction policy.
+ *
+ * Precision reduction policy reduces precision of inputs
+ * and restores it in the result. The restore phase may
+ * introduce invalidities.
+ *
+ */
+#define GEOS_CHECK_PRECISION_REDUCTION_VALIDITY 0
+
+/*
  * Define this to use TopologyPreserving simplification policy
  * in an attempt at by-passing binary operation
  * robustness problems (handles TopologyExceptions)
  */
-#ifndef USE_TP_SIMPLIFY_POLICY 
+#ifndef USE_TP_SIMPLIFY_POLICY
 //# define USE_TP_SIMPLIFY_POLICY 1
 #endif
 
@@ -134,6 +152,18 @@
 # define USE_SNAPPING_POLICY 1
 #endif
 
+/* Remove common bits before snapping */
+#ifndef CBR_BEFORE_SNAPPING
+# define CBR_BEFORE_SNAPPING 1
+#endif
+
+
+/*
+ * Check validity of result from SnapOp
+ */
+#define GEOS_CHECK_SNAPPINGOP_VALIDITY 0
+
+
 namespace geos {
 namespace geom { // geos::geom
 
@@ -163,7 +193,14 @@
         << err->toString()
         << " (" << std::setprecision(20)
         << err->getCoordinate() << ")"
-        << std::endl;
+        << std::endl
+#ifdef GEOS_DEBUG_BINARYOP_PRINT_INVALID
+        << "" << std::endl
+        << g.toString()
+        << std::endl
+        << "" << std::endl
+#endif
+        ;
 #endif
       if ( doThrow ) {
         throw geos::util::TopologyException(
@@ -171,19 +208,19 @@
                 err->getCoordinate());
       }
       return false;
-    } 
+    }
   }
 	return true;
 }
 
 /*
  * Attempt to fix noding of multilines and
- * self-intersection of multipolygons 
+ * self-intersection of multipolygons
  *
  * May return the input untouched.
  */
-inline std::auto_ptr
-fix_self_intersections(std::auto_ptr g, const std::string& label)
+inline std::unique_ptr
+fix_self_intersections(std::unique_ptr g, const std::string& label)
 {
   ::geos::ignore_unused_variable_warning(label);
 #ifdef GEOS_DEBUG_BINARYOP
@@ -232,12 +269,10 @@
 /// removal.
 ///
 template 
-std::auto_ptr
+std::unique_ptr
 SnapOp(const Geometry* g0, const Geometry *g1, BinOp _Op)
 {
-	typedef std::auto_ptr GeomPtr;
-
-#define CBR_BEFORE_SNAPPING 1
+	typedef std::unique_ptr GeomPtr;
 
 	//using geos::precision::GeometrySnapper;
 	using geos::operation::overlay::snap::GeometrySnapper;
@@ -304,10 +339,10 @@
 }
 
 template 
-std::auto_ptr
+std::unique_ptr
 BinaryOp(const Geometry* g0, const Geometry *g1, BinOp _Op)
 {
-	typedef std::auto_ptr GeomPtr;
+	typedef std::unique_ptr GeomPtr;
 
 	GeomPtr ret;
 	geos::util::TopologyException origException;
@@ -320,6 +355,14 @@
 		std::cerr << "Trying with original input." << std::endl;
 #endif
 		ret.reset(_Op(g0, g1));
+
+#if GEOS_CHECK_ORIGINAL_RESULT_VALIDITY
+		check_valid(*ret, "Overlay result between original inputs", true, true);
+#endif
+
+#if GEOS_DEBUG_BINARYOP
+		std::cerr << "Attempt with original input succeeded" << std::endl;
+#endif
 		return ret;
 	}
 	catch (const geos::util::TopologyException& ex)
@@ -329,26 +372,19 @@
 		std::cerr << "Original exception: " << ex.what() << std::endl;
 #endif
 	}
-
-  check_valid(*g0, "Input geom 0", true, true);
-  check_valid(*g1, "Input geom 1", true, true);
-
-#if GEOS_DEBUG_BINARYOP
-  // Should we just give up here ?
-  check_valid(*g0, "Input geom 0");
-  check_valid(*g1, "Input geom 1");
-#endif
-
 #endif // USE_ORIGINAL_INPUT
 
-#ifdef USE_COMMONBITS_POLICY
+	check_valid(*g0, "Input geom 0", true, true);
+	check_valid(*g1, "Input geom 1", true, true);
+
+#if USE_COMMONBITS_POLICY
 	// Try removing common bits (possibly obsoleted by snapping below)
 	//
-	// NOTE: this policy was _later_ implemented 
+	// NOTE: this policy was _later_ implemented
 	//       in JTS as EnhancedPrecisionOp
 	// TODO: consider using the now-ported EnhancedPrecisionOp
 	//       here too
-	// 
+	//
 	try
 	{
 		GeomPtr rG0;
@@ -376,26 +412,15 @@
 		check_valid(*ret, "CBR: result (before common-bits addition)");
 #endif
 
-		cbr.addCommonBits( ret.get() ); 
+		cbr.addCommonBits( ret.get() );
 
+#if GEOS_CHECK_COMMONBITS_VALIDITY
 		check_valid(*ret, "CBR: result (after common-bits addition)", true);
+#endif
 
-#if GEOS_CHECK_COMMONBITS_VALIDITY
-		// check that result is a valid geometry after the
-		// reshift to orginal precision (see EnhancedPrecisionOp)
-		using operation::valid::IsValidOp;
-		using operation::valid::TopologyValidationError;
-		IsValidOp ivo(ret.get());
-		if ( ! ivo.isValid() )
-		{
-			TopologyValidationError* e = ivo.getValidationError();
-			throw geos::util::TopologyException(
-				"Result of overlay became invalid "
-				"after re-addin common bits of operand "
-				"coordinates: " + e->toString(),
-			        e->getCoordinate());
-		}
-#endif // GEOS_CHECK_COMMONBITS_VALIDITY
+#if GEOS_DEBUG_BINARYOP
+		std::cerr << "Attempt with CBR succeeded" << std::endl;
+#endif
 
 		return ret;
 	}
@@ -423,11 +448,14 @@
 
 	try {
 		ret = SnapOp(g0, g1, _Op);
+#if GEOS_CHECK_SNAPPINGOP_VALIDITY
+		check_valid(*ret, "SNAP: result", true, true);
+#endif
 #if GEOS_DEBUG_BINARYOP
-	std::cerr << "SnapOp succeeded" << std::endl;
+		std::cerr << "SnapOp succeeded" << std::endl;
 #endif
 		return ret;
-		
+
 	}
 	catch (const geos::util::TopologyException& ex)
 	{
@@ -446,15 +474,15 @@
 	// Try reducing precision
 	try
 	{
-		long unsigned int g0scale = 
+		long unsigned int g0scale =
             static_cast(g0->getFactory()->getPrecisionModel()->getScale());
-		long unsigned int g1scale = 
+		long unsigned int g1scale =
             static_cast(g1->getFactory()->getPrecisionModel()->getScale());
 
 #if GEOS_DEBUG_BINARYOP
 		std::cerr << "Original input scales are: "
               << g0scale
-              << " and " 
+              << " and "
               << g1scale
               << std::endl;
 #endif
@@ -462,14 +490,14 @@
 		double maxScale = 1e16;
 
     // Don't use a scale bigger than the input one
-    if ( g0scale && g0scale < maxScale ) maxScale = g0scale;
-    if ( g1scale && g1scale < maxScale ) maxScale = g1scale;
+    if ( g0scale && static_cast(g0scale) < maxScale ) maxScale = static_cast(g0scale);
+    if ( g1scale && static_cast(g1scale) < maxScale ) maxScale = static_cast(g1scale);
 
 
 		for (double scale=maxScale; scale >= 1; scale /= 10)
 		{
 			PrecisionModel pm(scale);
-			GeometryFactory::unique_ptr gf = GeometryFactory::create(&pm);
+			GeometryFactory::Ptr gf = GeometryFactory::create(&pm);
 #if GEOS_DEBUG_BINARYOP
 			std::cerr << "Trying with scale " << scale << std::endl;
 #endif
@@ -478,6 +506,11 @@
 			GeomPtr rG0( reducer.reduce(*g0) );
 			GeomPtr rG1( reducer.reduce(*g1) );
 
+#if GEOS_DEBUG_BINARYOP
+			check_valid(*rG0, "PR: geom 0 (after precision reduction)");
+			check_valid(*rG1, "PR: geom 1 (after precision reduction)");
+#endif
+
 			try
 			{
 				ret.reset( _Op(rG0.get(), rG1.get()) );
@@ -488,15 +521,23 @@
         else {
           ret.reset( g1->getFactory()->createGeometry(ret.get()) );
         }
+
+#if GEOS_CHECK_PRECISION_REDUCTION_VALIDITY
+				check_valid(*ret, "PR: result (after restore of original precision)", true);
+#endif
+
+#if GEOS_DEBUG_BINARYOP
+				std::cerr << "Attempt with scale " << scale << " succeeded" << std::endl;
+#endif
 				return ret;
 			}
 			catch (const geos::util::TopologyException& ex)
 			{
-				if ( scale == 1 ) throw ex;
 #if GEOS_DEBUG_BINARYOP
 				std::cerr << "Reduced with scale (" << scale << "): "
 				          << ex.what() << std::endl;
 #endif
+				if ( scale == 1 ) throw ex;
 			}
 
 		}
@@ -507,7 +548,7 @@
 #if GEOS_DEBUG_BINARYOP
 		std::cerr << "Reduced: " << ex.what() << std::endl;
 #endif
-        ::geos::ignore_unused_variable_warning(ex);
+		::geos::ignore_unused_variable_warning(ex);
 	}
 
 #endif
@@ -518,7 +559,7 @@
 
 
 // {
-#if USE_TP_SIMPLIFY_POLICY 
+#if USE_TP_SIMPLIFY_POLICY
 
 	// Try simplifying
 	try
@@ -566,6 +607,17 @@
 #endif
 // USE_TP_SIMPLIFY_POLICY }
 
+#if GEOS_DEBUG_BINARYOP
+	std::cerr << "No attempts worked to union " << std::endl;
+	std::cerr << "Input geometries:" << std::endl
+	          << "" << std::endl
+					  << g0->toString() << std::endl
+						<< "" << std::endl
+	          << "" << std::endl
+					  << g1->toString() << std::endl
+						<< "" << std::endl;
+#endif
+
 	throw origException;
 }
 
diff -Nru geos-3.6.2/include/geos/geom/CoordinateArraySequenceFactory.h geos-3.7.1/include/geos/geom/CoordinateArraySequenceFactory.h
--- geos-3.6.2/include/geos/geom/CoordinateArraySequenceFactory.h	2016-04-23 14:13:04.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateArraySequenceFactory.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -25,7 +25,7 @@
 
 // Forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Coordinate;
 	}
 }
@@ -43,14 +43,14 @@
 class GEOS_DLL CoordinateArraySequenceFactory: public CoordinateSequenceFactory {
 
 public:
-	CoordinateSequence *create() const;
+	CoordinateSequence *create() const override;
 
-	CoordinateSequence *create(std::vector *coords, std::size_t dims=0) const;
+	CoordinateSequence *create(std::vector *coords, std::size_t dims=0) const override;
 
    	/** @see CoordinateSequenceFactory::create(std::size_t, int) */
-	CoordinateSequence *create(std::size_t size, std::size_t dimension=0) const;
+	CoordinateSequence *create(std::size_t size, std::size_t dimension=0) const override;
 
-	CoordinateSequence *create(const CoordinateSequence &coordSeq) const;
+	CoordinateSequence *create(const CoordinateSequence &coordSeq) const override;
 
 	/** \brief
 	 * Returns the singleton instance of CoordinateArraySequenceFactory
Binary files /tmp/tmpGWMCid/igu2BCG1p2/geos-3.6.2/include/geos/geom/._CoordinateArraySequenceFactory.inl and /tmp/tmpGWMCid/s2wujFDz6y/geos-3.7.1/include/geos/geom/._CoordinateArraySequenceFactory.inl differ
diff -Nru geos-3.6.2/include/geos/geom/CoordinateArraySequence.h geos-3.7.1/include/geos/geom/CoordinateArraySequence.h
--- geos-3.6.2/include/geos/geom/CoordinateArraySequence.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateArraySequence.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -24,7 +24,7 @@
 
 // Forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Coordinate;
 	}
 }
@@ -41,22 +41,22 @@
 
 	CoordinateArraySequence(const CoordinateSequence &cl);
 
-	CoordinateSequence *clone() const;
+	CoordinateSequence *clone() const override;
 
 	//const Coordinate& getCoordinate(int pos) const;
-	const Coordinate& getAt(std::size_t pos) const;
+	const Coordinate& getAt(std::size_t pos) const override;
 
 	/// Copy Coordinate at position i to Coordinate c
-	virtual void getAt(std::size_t i, Coordinate& c) const;
+	void getAt(std::size_t i, Coordinate& c) const override;
 
 	//int size() const;
-	size_t getSize() const;
+	size_t getSize() const override;
 
 	// @deprecated
-	const std::vector* toVector() const;
+	const std::vector* toVector() const override;
 
 	// See dox in CoordinateSequence.h
-	void toVector(std::vector&) const;
+	void toVector(std::vector&) const override;
 
 	/// Construct an empty sequence
 	CoordinateArraySequence();
@@ -64,22 +64,22 @@
 	/// Construct sequence taking ownership of given Coordinate vector
 	CoordinateArraySequence(std::vector *coords,
                                 std::size_t dimension = 0);
-        
+
 	/// Construct sequence allocating space for n coordinates
 	CoordinateArraySequence(std::size_t n, std::size_t dimension = 0);
 
-	~CoordinateArraySequence();
+	~CoordinateArraySequence() override;
 
-	bool isEmpty() const { return empty(); }
+	bool isEmpty() const override { return empty(); }
 
 	bool empty() const { return vect->empty(); }
 
 	/// Reset this CoordinateArraySequence to the empty state
 	void clear() { vect->clear(); }
 
-	void add(const Coordinate& c);
+	void add(const Coordinate& c) override;
 
-	virtual void add(const Coordinate& c, bool allowRepeated);
+	void add(const Coordinate& c, bool allowRepeated) override;
 
 	/** \brief
 	 * Inserts the specified coordinate at the specified position in
@@ -92,31 +92,31 @@
 	 *
 	 * NOTE: this is a CoordinateList interface in JTS
 	 */
-	virtual void add(std::size_t i, const Coordinate& coord, bool allowRepeated);
+	void add(std::size_t i, const Coordinate& coord, bool allowRepeated) override;
 
-	void setAt(const Coordinate& c, std::size_t pos);
+	void setAt(const Coordinate& c, std::size_t pos) override;
 
-	void deleteAt(std::size_t pos);
+	void deleteAt(std::size_t pos) override;
 
-	std::string toString() const;
+	std::string toString() const override;
 
-	void setPoints(const std::vector &v);
+	void setPoints(const std::vector &v) override;
 
 	double getOrdinate(std::size_t index,
-			size_t ordinateIndex) const;
+			size_t ordinateIndex) const override;
 
 	void setOrdinate(std::size_t index, std::size_t ordinateIndex,
-			double value);
+			double value) override;
 
-	void expandEnvelope(Envelope &env) const;
+	void expandEnvelope(Envelope &env) const override;
 
-    std::size_t getDimension() const;
+    std::size_t getDimension() const override;
 
-	void apply_rw(const CoordinateFilter *filter); 
+	void apply_rw(const CoordinateFilter *filter) override;
 
-	void apply_ro(CoordinateFilter *filter) const; 
+	void apply_ro(CoordinateFilter *filter) const override;
 
-	virtual CoordinateSequence& removeRepeatedPoints();
+	CoordinateSequence& removeRepeatedPoints() override;
 
 private:
 	std::vector *vect;
diff -Nru geos-3.6.2/include/geos/geom/CoordinateFilter.h geos-3.7.1/include/geos/geom/CoordinateFilter.h
--- geos-3.6.2/include/geos/geom/CoordinateFilter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateFilter.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geom/CoordinateList.h geos-3.7.1/include/geos/geom/CoordinateList.h
--- geos-3.6.2/include/geos/geom/CoordinateList.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateList.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,12 +3,12 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2010 Sandro Santilli 
+ * Copyright (C) 2010 Sandro Santilli 
  * Copyright (C) 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -21,11 +21,11 @@
 #define GEOS_GEOM_COORDINATELIST_H
 
 #include 
-#include  
+#include 
 
 #include 
 #include  // for operator<<
-#include  // for auto_ptr 
+#include  // for unique_ptr
 
 #ifdef _MSC_VER
 #pragma warning(push)
@@ -34,7 +34,7 @@
 
 // Forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		//class Coordinate;
 	}
 }
@@ -123,7 +123,7 @@
 	 *
 	 * @return an iterator to the newly installed coordinate
 	 *         (or previous, if equal and repeated are not allowed)
-	 * 
+	 *
 	 * NOTE: when allowRepeated is false _next_ point is not checked
 	 *       this matches JTS behavior
 	 */
@@ -151,20 +151,20 @@
 		return coords.erase(first, last);
 	}
 
-	std::auto_ptr toCoordinateArray() const
+	std::unique_ptr toCoordinateArray() const
 	{
-		std::auto_ptr ret(new Coordinate::Vect);
+		std::unique_ptr ret(new Coordinate::Vect);
 		ret->assign(coords.begin(), coords.end());
 		return ret;
 	}
 	void closeRing()
-	{   
+	{
 		if(!coords.empty() && ! (*(coords.begin())).equals(*(coords.rbegin())))
-		{   
+		{
 			const Coordinate &c = *(coords.begin());
 			coords.insert(coords.end(),c);
-		}   
-	}   
+		}
+	}
 
 
 private:
diff -Nru geos-3.6.2/include/geos/geom/CoordinateSequenceFactory.h geos-3.7.1/include/geos/geom/CoordinateSequenceFactory.h
--- geos-3.6.2/include/geos/geom/CoordinateSequenceFactory.h	2016-04-23 14:13:04.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateSequenceFactory.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -28,7 +28,7 @@
 
 // Forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class CoordinateSequence;
 		class Coordinate;
 	}
diff -Nru geos-3.6.2/include/geos/geom/CoordinateSequenceFilter.h geos-3.7.1/include/geos/geom/CoordinateSequenceFilter.h
--- geos-3.6.2/include/geos/geom/CoordinateSequenceFilter.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateSequenceFilter.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,11 +3,11 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009  Sandro Santilli 
+ * Copyright (C) 2009  Sandro Santilli 
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -96,7 +96,7 @@
    * has modified the coordinates of the geometry.
    * If so, {@link Geometry#geometryChanged} will be executed
    * after this filter has finished being executed.
-   * 
+   *
    * Most filters can simply return a constant value reflecting
    * whether they are able to change the coordinates.
    *
diff -Nru geos-3.6.2/include/geos/geom/CoordinateSequence.h geos-3.7.1/include/geos/geom/CoordinateSequence.h
--- geos-3.6.2/include/geos/geom/CoordinateSequence.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/CoordinateSequence.h	2018-11-29 22:42:00.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -23,11 +23,11 @@
 
 #include 
 #include  // ostream
-#include  // for auto_ptr typedef
+#include  // for unique_ptr typedef
 
 // Forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Envelope;
 		class CoordinateFilter;
 		class Coordinate;
@@ -48,13 +48,13 @@
  * may want to experiment with another implementation, such as an array of Xs
  * and an array of Ys. or you might want to use your own coordinate class, one
  * that supports extra attributes like M-values.
- * 
+ *
  * You can do this by implementing the CoordinateSequence and
  * CoordinateSequenceFactory interfaces. You would then create a
  * GeometryFactory parameterized by your CoordinateSequenceFactory, and use
  * this GeometryFactory to create new Geometries. All of these new Geometries
  * will use your CoordinateSequence implementation.
- * 
+ *
  */
 class GEOS_DLL CoordinateSequence {
 
@@ -66,7 +66,7 @@
 
 public:
 
-	typedef std::auto_ptr AutoPtr;
+	typedef std::unique_ptr Ptr;
 
 	virtual ~CoordinateSequence() {}
 
@@ -122,7 +122,7 @@
 	 * because the array needs to be built from scratch.
 	 *
 	 * This method is a port of the toCoordinateArray() method of JTS.
-	 * It is not much used as memory management requires us to 
+	 * It is not much used as memory management requires us to
 	 * know wheter we should or not delete the returned object
 	 * in a consistent way. Our options are: use shared_ptr
 	 * or always keep ownerhips of an eventual newly created vector.
@@ -141,7 +141,7 @@
 	virtual	void toVector(std::vector& coords) const=0;
 
 	/**
-	 * \brief Add an array of coordinates 
+	 * \brief Add an array of coordinates
 	 * @param vc The coordinates
 	 * @param allowRepeated if set to false, repeated coordinates
 	 * 	are collapsed
@@ -153,7 +153,7 @@
 	//void add(CoordinateSequence *cl,bool allowRepeated,bool direction);
 
 	/** \brief
-	 *  Add an array of coordinates 
+	 *  Add an array of coordinates
 	 *
 	 *  @param cl The coordinates
 	 *
@@ -212,8 +212,8 @@
 
 	/// Substitute Coordinate list with a copy of the given vector
 	virtual	void setPoints(const std::vector &v)=0;
-	
-	/// Returns true if contains any two consecutive points 
+
+	/// Returns true if contains any two consecutive points
 	bool hasRepeatedPoints() const;
 
 	/// Returns lower-left Coordinate in list
@@ -239,7 +239,7 @@
 
 	/** \brief
 	 *  Returns true if given CoordinateSequence contains
-	 *  any two consecutive Coordinate 
+	 *  any two consecutive Coordinate
 	 */
 	static bool hasRepeatedPoints(const CoordinateSequence *cl);
 
@@ -268,7 +268,7 @@
 	/**
 	 * \brief
 	 * Returns true if the two arrays are identical, both null,
-	 * or pointwise equal 
+	 * or pointwise equal
 	 */
 	static bool equals(const CoordinateSequence *cl1,
 			const CoordinateSequence *cl2);
@@ -369,7 +369,7 @@
 	 *       actually, define iterators on Geometry
 	 */
 	template 
-	void applyCoordinateFilter(T& f) 
+	void applyCoordinateFilter(T& f)
 	{
 		Coordinate c;
 		for(std::size_t i=0, n=size(); i
 #include 
+#include  // for operator<<
 #include 
 
 namespace geos {
 namespace geom { // geos::geom
 
+class Envelope;
+
+/// Output operator
+GEOS_DLL std::ostream& operator<< (std::ostream& os, const Envelope& o);
+
 class Coordinate;
 
 /**
@@ -41,7 +47,7 @@
  *
  * It is often used to represent the bounding box of a Geometry,
  * e.g. the minimum and maximum x and y values of the Coordinates.
- *  
+ *
  * Note that Envelopes support infinite or half-infinite regions, by using
  * the values of Double_POSITIVE_INFINITY and
  * Double_NEGATIVE_INFINITY.
@@ -54,7 +60,9 @@
 
 public:
 
-	typedef std::auto_ptr AutoPtr;
+	friend std::ostream& operator<< (std::ostream& os, const Envelope& o);
+
+	typedef std::unique_ptr Ptr;
 
 	/** \brief
 	 * Creates a null Envelope.
@@ -95,7 +103,7 @@
 	Envelope& operator=(const Envelope& e);
 
 	/** \brief
-	 *  Create an Envelope from an Envelope 
+	 *  Create an Envelope from an Envelope
 	 *  string representation produced by Envelope.toString()
 	 */
 	Envelope(const std::string &str);
@@ -262,7 +270,7 @@
 	 * Expands this envelope by a given distance in all directions.
 	 * Both positive and negative distances are supported.
 	 *
-	 * @param deltaX the distance to expand the envelope along 
+	 * @param deltaX the distance to expand the envelope along
 	 *               the X axis
 	 * @param deltaY the distance to expand the envelope along
 	 *               the Y axis
@@ -310,7 +318,7 @@
 	/** \brief
 	 * Tests if the Envelope other lies wholely
 	 * inside this Envelope (inclusive of the boundary).
-	 * 
+	 *
 	 * Note that this is not the same definition as the SFS
 	 * contains, which would exclude the envelope boundary.
 	 *
@@ -420,7 +428,7 @@
 	 *
 	 * @param  other the Envelope to check
 	 * @return true if this Envelope covers the
-	 * other 
+	 * other
 	 */
 	bool covers(const Envelope& other) const;
 
@@ -467,7 +475,7 @@
 	 * Splits a string into parts based on the supplied delimiters.
 	 *
 	 * This is a generic function that really belongs in a utility
-	 * file somewhere 
+	 * file somewhere
 	 */
 	std::vector split(const std::string &str,
 			const std::string &delimiters = " ");
diff -Nru geos-3.6.2/include/geos/geom/GeometryCollection.h geos-3.7.1/include/geos/geom/GeometryCollection.h
--- geos-3.6.2/include/geos/geom/GeometryCollection.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/GeometryCollection.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -23,14 +23,14 @@
 #include 
 #include  // for inheritance
 //#include 
-#include  // for proper use of auto_ptr<>
+#include  // for proper use of unique_ptr<>
 #include  // for Dimension::DimensionType
 
 #include 
 
 #include 
 #include 
-#include  // for auto_ptr
+#include  // for unique_ptr
 
 // Forward declarations
 namespace geos {
@@ -49,7 +49,7 @@
  *
  * \brief Represents a collection of heterogeneous Geometry objects.
  *
- * Collections of Geometry of the same type are 
+ * Collections of Geometry of the same type are
  * represented by GeometryCollection subclasses MultiPoint,
  * MultiLineString, MultiPolygon.
  */
@@ -72,28 +72,28 @@
 	 *
 	 * @return a clone of this instance
 	 */
-	virtual Geometry *clone() const {
+	Geometry *clone() const override {
 		return new GeometryCollection(*this);
 	}
 
-	virtual ~GeometryCollection();
+	~GeometryCollection() override;
 
 	/**
 	 * \brief
 	 * Collects all coordinates of all subgeometries into a
 	 * CoordinateSequence.
-	 * 
+	 *
 	 * Note that the returned coordinates are copies, so
 	 * you want be able to use them to modify the geometries
 	 * in place. Also you'll need to delete the CoordinateSequence
 	 * when finished using it.
-	 * 
+	 *
 	 * @return the collected coordinates
 	 *
 	 */
-	virtual CoordinateSequence* getCoordinates() const;
+	CoordinateSequence* getCoordinates() const override;
 
-	virtual bool isEmpty() const;
+	bool isEmpty() const override;
 
 	/**
 	 * \brief
@@ -102,60 +102,69 @@
 	 *
 	 * @see Dimension::DimensionType
 	 */
-	virtual Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/// Returns coordinate dimension.
-	virtual int getCoordinateDimension() const;
+	int getCoordinateDimension() const override;
 
-	virtual Geometry* getBoundary() const;
+	Geometry* getBoundary() const override;
 
 	/**
 	 * \brief
 	 * Returns the maximum boundary dimension of geometries in
 	 * this collection.
 	 */
-	virtual int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
-	virtual std::size_t getNumPoints() const;
+	std::size_t getNumPoints() const override;
 
-	virtual std::string getGeometryType() const;
+	std::string getGeometryType() const override;
 
-	virtual GeometryTypeId getGeometryTypeId() const;
+	GeometryTypeId getGeometryTypeId() const override;
 
-	virtual bool equalsExact(const Geometry *other,
-			double tolerance=0) const;
+	bool equalsExact(const Geometry *other,
+			double tolerance=0) const override;
 
-	virtual void apply_ro(CoordinateFilter *filter) const;
+	void apply_ro(CoordinateFilter *filter) const override;
 
-	virtual void apply_rw(const CoordinateFilter *filter);
+	void apply_rw(const CoordinateFilter *filter) override;
 
-	virtual void apply_ro(GeometryFilter *filter) const;
+	void apply_ro(GeometryFilter *filter) const override;
 
-	virtual void apply_rw(GeometryFilter *filter);
+	void apply_rw(GeometryFilter *filter) override;
 
-	virtual void apply_ro(GeometryComponentFilter *filter) const;
+	void apply_ro(GeometryComponentFilter *filter) const override;
 
-	virtual void apply_rw(GeometryComponentFilter *filter);
+	void apply_rw(GeometryComponentFilter *filter) override;
 
-	virtual void apply_rw(CoordinateSequenceFilter& filter);
+	void apply_rw(CoordinateSequenceFilter& filter) override;
 
-	virtual void apply_ro(CoordinateSequenceFilter& filter) const;
+	void apply_ro(CoordinateSequenceFilter& filter) const override;
 
-	virtual void normalize();
+	void normalize() override;
 
-	virtual const Coordinate* getCoordinate() const;
+	const Coordinate* getCoordinate() const override;
 
 	/// Returns the total area of this collection
-	virtual double getArea() const;
+	double getArea() const override;
 
 	/// Returns the total length of this collection
-	virtual double getLength() const;
+	double getLength() const override;
 
 	/// Returns the number of geometries in this collection
-	virtual std::size_t getNumGeometries() const;
+	std::size_t getNumGeometries() const override;
 
 	/// Returns a pointer to the nth Geometry int this collection
-	virtual const Geometry* getGeometryN(std::size_t n) const;
+	const Geometry* getGeometryN(std::size_t n) const override;
+
+	/**
+     * Creates a GeometryCollection with
+     * every component reversed.
+     * The order of the components in the collection are not reversed.
+     *
+     * @return a GeometryCollection in the reverse order
+     */
+	Geometry* reverse() const override;
 
 protected:
 
@@ -190,9 +199,9 @@
 
 	std::vector* geometries;
 
-	Envelope::AutoPtr computeEnvelopeInternal() const;
+	Envelope::Ptr computeEnvelopeInternal() const override;
 
-	int compareToSameClass(const Geometry *gc) const;
+	int compareToSameClass(const Geometry *gc) const override;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/GeometryComponentFilter.h geos-3.7.1/include/geos/geom/GeometryComponentFilter.h
--- geos-3.6.2/include/geos/geom/GeometryComponentFilter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/GeometryComponentFilter.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geom/GeometryFactory.h geos-3.7.1/include/geos/geom/GeometryFactory.h
--- geos-3.6.2/include/geos/geom/GeometryFactory.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/GeometryFactory.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,12 +3,12 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -33,7 +33,7 @@
 #include 
 
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class CoordinateSequenceFactory;
 		class Coordinate;
 		class CoordinateSequence;
@@ -65,35 +65,26 @@
  * It is assumed that input Coordinates meet the given precision.
  */
 class GEOS_DLL GeometryFactory {
+private:
+
+	struct GeometryFactoryDeleter
+	{
+		void operator()(GeometryFactory* p) const
+		{
+			p->destroy();
+		}
+	};
+
 public:
 
-  // TODO: typedef std::unique_ptr
-  class unique_ptr {
-    mutable GeometryFactory *_f;
-  public:
-    // Copying an auto_unique_ptr transfers ownership
-    unique_ptr(const unique_ptr& o): _f(o.release()) {};
-    GeometryFactory* release() const { GeometryFactory *f = _f; _f=0; return f; }
-    void reset(GeometryFactory* f) { if ( _f ) _f->destroy(); _f = f; }
-    // assigning an auto_unique_ptr transfers ownership
-    unique_ptr& operator=(const unique_ptr& o) {
-      reset( o.release() );
-      return *this;
-    }
-    GeometryFactory* get() const { return _f; }
-    GeometryFactory* operator->() const { return _f; }
-    GeometryFactory& operator*() { return *_f; };
-    unique_ptr(): _f(0) {}
-    unique_ptr(GeometryFactory* f): _f(f) {}
-    ~unique_ptr() { reset(0); }
-  };
+	using Ptr = std::unique_ptr;
 
 	/**
-	 * \brief 
+	 * \brief
 	 * Constructs a GeometryFactory that generates Geometries having a
 	 * floating PrecisionModel and a spatial-reference ID of 0.
 	 */
-	static GeometryFactory::unique_ptr create();
+	static GeometryFactory::Ptr create();
 
 	/**
 	 * \brief
@@ -107,7 +98,7 @@
 	 *     and must be available for the whole lifetime
 	 *     of the GeometryFactory
 	 */
-	static GeometryFactory::unique_ptr create(const PrecisionModel *pm, int newSRID,
+	static GeometryFactory::Ptr create(const PrecisionModel *pm, int newSRID,
 		CoordinateSequenceFactory *nCoordinateSequenceFactory);
 
 	/**
@@ -116,7 +107,7 @@
 	 * given CoordinateSequence implementation, a double-precision floating
 	 * PrecisionModel and a spatial-reference ID of 0.
 	 */
-	static GeometryFactory::unique_ptr create(CoordinateSequenceFactory *nCoordinateSequenceFactory);
+	static GeometryFactory::Ptr create(CoordinateSequenceFactory *nCoordinateSequenceFactory);
 
 	/**
 	 * \brief
@@ -126,7 +117,7 @@
 	 *
 	 * @param pm the PrecisionModel to use
 	 */
-	static GeometryFactory::unique_ptr create(const PrecisionModel *pm);
+	static GeometryFactory::Ptr create(const PrecisionModel *pm);
 
 	/**
 	 * \brief
@@ -137,17 +128,17 @@
 	 * @param pm the PrecisionModel to use, will be copied internally
 	 * @param newSRID the SRID to use
 	 */
-	static GeometryFactory::unique_ptr create(const PrecisionModel* pm, int newSRID);
+	static GeometryFactory::Ptr create(const PrecisionModel* pm, int newSRID);
 
 	/**
 	 * \brief Copy constructor
 	 *
 	 * @param gf the GeometryFactory to clone from
 	 */
-	static GeometryFactory::unique_ptr create(const GeometryFactory &gf);
+	static GeometryFactory::Ptr create(const GeometryFactory &gf);
 
 	/**
-	 * \brief 
+	 * \brief
 	 * Return a pointer to the default GeometryFactory.
 	 * This is a global shared object instantiated
 	 * using default constructor.
@@ -197,7 +188,7 @@
 	GeometryCollection* createGeometryCollection(
 			const std::vector &newGeoms) const;
 
-	/// Construct an EMPTY MultiLineString 
+	/// Construct an EMPTY MultiLineString
 	MultiLineString* createMultiLineString() const;
 
 	/// Construct a MultiLineString taking ownership of given arguments
@@ -208,7 +199,7 @@
 	MultiLineString* createMultiLineString(
 			const std::vector &fromLines) const;
 
-	/// Construct an EMPTY MultiPolygon 
+	/// Construct an EMPTY MultiPolygon
 	MultiPolygon* createMultiPolygon() const;
 
 	/// Construct a MultiPolygon taking ownership of given arguments
@@ -218,14 +209,14 @@
 	MultiPolygon* createMultiPolygon(
 			const std::vector &fromPolys) const;
 
-	/// Construct an EMPTY LinearRing 
+	/// Construct an EMPTY LinearRing
 	LinearRing* createLinearRing() const;
 
 	/// Construct a LinearRing taking ownership of given arguments
 	LinearRing* createLinearRing(CoordinateSequence* newCoords) const;
 
-	std::auto_ptr createLinearRing(
-			std::auto_ptr newCoords) const;
+	std::unique_ptr createLinearRing(
+			std::unique_ptr newCoords) const;
 
 	/// Construct a LinearRing with a deep-copy of given arguments
 	LinearRing* createLinearRing(
@@ -253,7 +244,7 @@
 	MultiPoint* createMultiPoint(
 			const std::vector &fromCoords) const;
 
-	/// Construct an EMPTY Polygon 
+	/// Construct an EMPTY Polygon
 	Polygon* createPolygon() const;
 
 	/// Construct a Polygon taking ownership of given arguments
@@ -264,17 +255,17 @@
 	Polygon* createPolygon(const LinearRing &shell,
 			const std::vector &holes) const;
 
-	/// Construct an EMPTY LineString 
+	/// Construct an EMPTY LineString
 	LineString* createLineString() const;
 
 	/// Copy a LineString
-	std::auto_ptr createLineString(const LineString& ls) const;
+	std::unique_ptr createLineString(const LineString& ls) const;
 
 	/// Construct a LineString taking ownership of given argument
 	LineString* createLineString(CoordinateSequence* coordinates) const;
 
-	std::auto_ptr createLineString(
-			std::auto_ptr coordinates) const;
+	std::unique_ptr createLineString(
+			std::unique_ptr coordinates) const;
 
 	/// Construct a LineString with a deep-copy of given argument
 	LineString* createLineString(
@@ -309,7 +300,7 @@
 	 *	class that can contain the elements of geomList.
 	 *
 	 * NOTE: the returned Geometry will take ownership of the
-	 * 	given vector AND its elements 
+	 * 	given vector AND its elements
 	 */
 	Geometry* buildGeometry(std::vector *geoms) const;
 
@@ -322,7 +313,7 @@
   /// @param toofar end iterator
   ///
   template 
-	std::auto_ptr buildGeometry(T from, T toofar) const
+	std::unique_ptr buildGeometry(T from, T toofar) const
   {
     bool isHeterogeneous = false;
     size_t count = 0;
@@ -341,12 +332,12 @@
 
     // for the empty geometry, return an empty GeometryCollection
     if ( count == 0 ) {
-      return std::auto_ptr( createGeometryCollection() );
+      return std::unique_ptr( createGeometryCollection() );
     }
 
     // for the single geometry, return a clone
     if ( count == 1 ) {
-      return std::auto_ptr( (*from)->clone() );
+      return std::unique_ptr( (*from)->clone() );
     }
 
     // Now we know it is a collection
@@ -360,35 +351,35 @@
       const Geometry* g = *i;
       fromGeoms.push_back(const_cast(g));
     }
-    
+
 
     // for an heterogeneous ...
     if ( isHeterogeneous ) {
-      return std::auto_ptr( createGeometryCollection(fromGeoms) );
+      return std::unique_ptr( createGeometryCollection(fromGeoms) );
     }
 
     // At this point we know the collection is not hetereogenous.
     if ( dynamic_cast(*from) ) {
-      return std::auto_ptr( createMultiPolygon(fromGeoms) );
+      return std::unique_ptr( createMultiPolygon(fromGeoms) );
     } else if ( dynamic_cast(*from) ) {
-      return std::auto_ptr( createMultiLineString(fromGeoms) );
+      return std::unique_ptr( createMultiLineString(fromGeoms) );
     } else if ( dynamic_cast(*from) ) {
-      return std::auto_ptr( createMultiPoint(fromGeoms) );
+      return std::unique_ptr( createMultiPoint(fromGeoms) );
     }
     // FIXME: Why not to throw an exception? --mloskot
     assert(0); // buildGeomtry encountered an unkwnon geometry type
-    return std::auto_ptr(); // nullptr
+    return std::unique_ptr(); // nullptr
   }
 
 	/** \brief
 	 * This function does the same thing of the omonimouse function
-	 * taking vector pointer instead of reference. 
+	 * taking vector pointer instead of reference.
 	 *
 	 * The difference is that this version will copy needed data
 	 * leaving ownership to the caller.
 	 */
 	Geometry* buildGeometry(const std::vector &geoms) const;
-	
+
 	int getSRID() const;
 
 	/// \brief
@@ -413,7 +404,7 @@
 protected:
 
 	/**
-	 * \brief 
+	 * \brief
 	 * Constructs a GeometryFactory that generates Geometries having a
 	 * floating PrecisionModel and a spatial-reference ID of 0.
 	 */
diff -Nru geos-3.6.2/include/geos/geom/GeometryFilter.h geos-3.7.1/include/geos/geom/GeometryFilter.h
--- geos-3.6.2/include/geos/geom/GeometryFilter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/GeometryFilter.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geom/Geometry.h geos-3.7.1/include/geos/geom/Geometry.h
--- geos-3.6.2/include/geos/geom/Geometry.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Geometry.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009 2011 Sandro Santilli 
+ * Copyright (C) 2009 2011 Sandro Santilli 
  * Copyright (C) 2005 2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
@@ -21,6 +21,16 @@
 #ifndef GEOS_GEOM_GEOMETRY_H
 #define GEOS_GEOM_GEOMETRY_H
 
+#ifndef USE_UNSTABLE_GEOS_CPP_API
+#ifndef _MSC_VER
+# warning "The GEOS C++ API is unstable, please use the C API instead"
+# warning "HINT: #include geos_c.h"
+#else
+#pragma message("The GEOS C++ API is unstable, please use the C API instead")
+#pragma message("HINT: #include geos_c.h")
+#endif
+#endif
+
 #include 
 #include 
 #include 
@@ -171,13 +181,13 @@
 	friend class GeometryFactory;
 
 	/// A vector of const Geometry pointers
-	typedef std::vector ConstVect;
+	using ConstVect = std::vector;
 
 	/// A vector of non-const Geometry pointers
-	typedef std::vector NonConstVect;
+	using NonConstVect = std::vector;
 
-	/// An auto_ptr of Geometry
-	typedef std::auto_ptr AutoPtr;
+	/// An unique_ptr of Geometry
+	using Ptr = std::unique_ptr ;
 
 	/// Make a deep-copy of this Geometry
 	virtual Geometry* clone() const=0;
@@ -574,6 +584,14 @@
 	/// all the points in the Geometry.
 	virtual Geometry* convexHull() const;
 
+	/**
+     * Computes a new geometry which has all component coordinate sequences
+     * in reverse order (opposite orientation) to this one.
+     *
+     * @return a reversed geometry
+     */
+	virtual Geometry* reverse() const=0;
+
 	/** \brief
 	 * Returns a Geometry representing the points shared by
 	 * this Geometry and other.
@@ -614,7 +632,7 @@
    *
    * @see UnaryUnionOp
    */
-  AutoPtr Union() const;
+  Ptr Union() const;
 		// throw(IllegalArgumentException *, TopologyException *);
 
 	/**
@@ -641,8 +659,8 @@
 	virtual Geometry* symDifference(const Geometry *other) const;
 
 	/** \brief
-	 * Returns true if the two Geometrys are exactly equal,
-	 * up to a specified tolerance.
+	 * Returns true iff the two Geometrys are of the same type and their
+	 * vertices corresponding by index are equal up to a specified tolerance.
 	 */
 	virtual bool equalsExact(const Geometry *other, double tolerance=0)
 		const=0; //Abstract
@@ -765,7 +783,7 @@
 protected:
 
 	/// The bounding box of this Geometry
-	mutable std::auto_ptr envelope;
+	mutable std::unique_ptr envelope;
 
 	/// Returns true if the array contains any non-empty Geometrys.
 	static bool hasNonEmptyElements(const std::vector* geometries);
@@ -794,7 +812,7 @@
 
 	//virtual void checkEqualPrecisionModel(Geometry *other);
 
-	virtual Envelope::AutoPtr computeEnvelopeInternal() const=0; //Abstract
+	virtual Envelope::Ptr computeEnvelopeInternal() const=0; //Abstract
 
 	virtual int compareToSameClass(const Geometry *geom) const=0; //Abstract
 
@@ -835,7 +853,7 @@
 	class GEOS_DLL GeometryChangedFilter : public GeometryComponentFilter
 	{
 	public:
-		void filter_rw(Geometry* geom);
+		void filter_rw(Geometry* geom) override;
 	};
 
 	static GeometryChangedFilter geometryChangedFilter;
@@ -870,11 +888,11 @@
  */
 std::string jtsport();
 
-// We use this instead of std::pair> because C++11
+// We use this instead of std::pair> because C++11
 // forbids that construct:
 // http://lwg.github.com/issues/lwg-closed.html#2068
 struct GeomPtrPair {
-	typedef std::auto_ptr GeomPtr;
+	typedef std::unique_ptr GeomPtr;
 	GeomPtr first;
 	GeomPtr second;
 };
diff -Nru geos-3.6.2/include/geos/geom/GeometryList.h geos-3.7.1/include/geos/geom/GeometryList.h
--- geos-3.6.2/include/geos/geom/GeometryList.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/GeometryList.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,83 +0,0 @@
-/**********************************************************************
- *
- * GEOS - Geometry Engine Open Source
- * http://geos.osgeo.org
- *
- * Copyright (C) 2006 Refractions Research Inc.
- *
- * This is free software; you can redistribute and/or modify it under
- * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
- * See the COPYING file for more information.
- *
- **********************************************************************
- *
- * Last port: ORIGINAL WORK
- *
- **********************************************************************/
-
-#ifndef GEOS_GEOM_GEOMETRYLIST_H
-#define GEOS_GEOM_GEOMETRYLIST_H
-
-#include 
-#include  // for auto_ptr
-
-#include  // for auto_ptr
-#include  
-
-#ifdef _MSC_VER
-#pragma warning(push)
-#pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
-#endif
-
-namespace geos {
-namespace geom { // geos.geom
-
-
-/** \brief
- * Manager of Geometry pointers. Owns the Geometries.
- */
-class GEOS_DLL GeometryList {
-
-public:
-
-	/// auto_ptr needs to access private destructor
-	friend class std::auto_ptr;
-
-	typedef std::vector::size_type size_type;
-
-	/// Only way to manage a GeometryList is trough
-	/// this an auto_ptr<>. @see create()
-	typedef std::auto_ptr AutoPtr;
-
-	/// Create an empty GeometryList 
-	static GeometryList::AutoPtr create();
-
-	/// Add a geometry to the list (takes ownership)
-	void add(Geometry::AutoPtr geom);
-
-	/// Return number of geometries in this list
-	size_type size() const;
-
-	/// Returned object lifetime is bound to GeometryList lifetime
-	Geometry* operator[] (size_type);
-
-	/// Returned object lifetime is bound to GeometryList lifetime
-	const Geometry* operator[] (size_type) const;
-
-private:
-
-	std::vector geoms;
-
-	GeometryList();
-	~GeometryList();
-};
-
-} // namespace geos.geom
-} // namespace geos
-
-#ifdef _MSC_VER
-#pragma warning(pop)
-#endif
-
-#endif // GEOS_GEOM_GEOMETRYLIST_H
diff -Nru geos-3.6.2/include/geos/geom/IntersectionMatrix.h geos-3.7.1/include/geos/geom/IntersectionMatrix.h
--- geos-3.6.2/include/geos/geom/IntersectionMatrix.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/IntersectionMatrix.h	2018-11-29 22:42:00.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -30,22 +30,22 @@
 /** \brief
  * Implementation of Dimensionally Extended Nine-Intersection Model
  * (DE-9IM) matrix.
- * 
+ *
  * Dimensionally Extended Nine-Intersection Model (DE-9IM) matrix.
  * This class can used to represent both computed DE-9IM's (like 212FF1FF2)
  * as well as patterns for matching them (like T*T******).
- * 
+ *
  * Methods are provided to:
  *
  *  - set and query the elements of the matrix in a convenient fashion
  *  - convert to and from the standard string representation
  *    (specified in SFS Section 2.1.13.2).
  *  - test to see if a matrix matches a given pattern string.
- * 
+ *
  * For a description of the DE-9IM, see the
  * OpenGIS Simple
  * Features Specification for SQL.
- * 
+ *
  * \todo Suggestion: add equal and not-equal operator to this class.
  */
 class GEOS_DLL IntersectionMatrix {
@@ -64,7 +64,7 @@
 	 * Overriden constructor.
 	 *
 	 * Creates an IntersectionMatrix with the given dimension symbols.
-	 * 
+	 *
 	 * @param elements - reference to string containing pattern
 	 *                   of dimension values for elements.
 	 */
@@ -74,15 +74,15 @@
 	 * Copy constructor.
 	 *
 	 * Creates an IntersectionMatrix with the same elements as other.
-	 * 
+	 *
 	 * \todo Add assignment operator to make this class fully copyable.
 	 */
 	IntersectionMatrix(const IntersectionMatrix &other);
 
 	/** \brief
-	 * Returns whether the elements of this IntersectionMatrix 
+	 * Returns whether the elements of this IntersectionMatrix
 	 * satisfies the required dimension symbols.
-	 * 
+	 *
 	 * @param requiredDimensionSymbols - nine dimension symbols with
 	 *        which to compare the elements of this IntersectionMatrix.
 	 *        Possible values are {T, F, * , 0, 1, 2}.
@@ -93,13 +93,13 @@
 
 	/** \brief
 	 * Tests if given dimension value satisfies the dimension symbol.
-	 * 
+	 *
 	 * @param actualDimensionValue - valid dimension value stored in
-	 *        the IntersectionMatrix. 
+	 *        the IntersectionMatrix.
 	 *        Possible values are {TRUE, FALSE, DONTCARE, 0, 1, 2}.
 	 * @param requiredDimensionSymbol - a character used in the string
 	 *        representation of an IntersectionMatrix.
-	 *        Possible values are {T, F, * , 0, 1, 2}. 
+	 *        Possible values are {T, F, * , 0, 1, 2}.
 	 * @return true if the dimension symbol encompasses the
 	 *         dimension value.
 	 */
@@ -109,7 +109,7 @@
 	/** \brief
 	 * Returns true if each of the actual dimension symbols satisfies
 	 * the corresponding required dimension symbol.
-	 * 
+	 *
 	 * @param actualDimensionSymbols - nine dimension symbols to validate.
 	 *        Possible values are {T, F, * , 0, 1, 2}.
 	 * @param requiredDimensionSymbols - nine dimension symbols to
@@ -126,16 +126,16 @@
 	 *
 	 * Addition is defined by taking the maximum dimension value
 	 * of each position in the summand matrices.
-	 * 
+	 *
 	 * @param other - the matrix to add.
-	 * 
+	 *
 	 * \todo Why the 'other' matrix is not passed by const-reference?
 	 */
 	void add(IntersectionMatrix* other);
 
 	/** \brief
 	 * Changes the value of one of this IntersectionMatrixs elements.
-	 * 
+	 *
 	 * @param row - the row of this IntersectionMatrix, indicating
 	 *        the interior, boundary or exterior of the first Geometry.
 	 * @param column - the column of this IntersectionMatrix,
@@ -148,7 +148,7 @@
 	/** \brief
 	 * Changes the elements of this IntersectionMatrix to the dimension
 	 * symbols in dimensionSymbols.
-	 * 
+	 *
 	 * @param dimensionSymbols - nine dimension symbols to which to
 	 *        set this IntersectionMatrix elements.
 	 *        Possible values are {T, F, * , 0, 1, 2}.
@@ -158,7 +158,7 @@
 	/** \brief
 	 * Changes the specified element to minimumDimensionValue if the
 	 * element is less.
-	 * 
+	 *
 	 * @param row - the row of this IntersectionMatrix, indicating
 	 *        the interior, boundary or exterior of the first Geometry.
 	 * @param column -  the column of this IntersectionMatrix, indicating
@@ -173,7 +173,7 @@
 	 * If row >= 0 and column >= 0, changes the specified element
 	 * to minimumDimensionValue if the element is less.
 	 * Does nothing if row <0 or column < 0.
-	 * 
+	 *
 	 * @param row -
 	 *        the row of this IntersectionMatrix,
 	 *        indicating the interior, boundary or exterior of the
@@ -194,7 +194,7 @@
 	/** \brief
 	 * For each element in this IntersectionMatrix, changes the element to
 	 * the corresponding minimum dimension symbol if the element is less.
-	 * 
+	 *
 	 * @param minimumDimensionSymbols -
 	 *        nine dimension symbols with which
 	 *        to compare the elements of this IntersectionMatrix.
@@ -205,7 +205,7 @@
 
 	/** \brief
 	 * Changes the elements of this IntersectionMatrix to dimensionValue.
-	 * 
+	 *
 	 * @param dimensionValue -
 	 *        the dimension value to which to set this
 	 *        IntersectionMatrix elements. Possible values {TRUE,
@@ -215,7 +215,7 @@
 
 	/** \brief
 	 * Returns the value of one of this IntersectionMatrixs elements.
-	 * 
+	 *
 	 * @param row -
 	 *        the row of this IntersectionMatrix, indicating the
 	 *        interior, boundary or exterior of the first Geometry.
@@ -230,7 +230,7 @@
 
 	/** \brief
 	 * Returns true if this IntersectionMatrix is FF*FF****.
-	 * 
+	 *
 	 * @return true if the two Geometrys related by this
 	 *         IntersectionMatrix are disjoint.
 	 */
@@ -238,7 +238,7 @@
 
 	/** \brief
 	 * Returns true if isDisjoint returns false.
-	 * 
+	 *
 	 * @return true if the two Geometrys related by this
 	 *         IntersectionMatrix intersect.
 	 */
@@ -247,7 +247,7 @@
 	/** \brief
 	 * Returns true if this IntersectionMatrix is FT*******, F**T*****
 	 * or F***T****.
-	 * 
+	 *
 	 * @param dimensionOfGeometryA - the dimension of the first Geometry.
 	 *
 	 * @param dimensionOfGeometryB - the dimension of the second Geometry.
@@ -264,14 +264,14 @@
 	 * - T*T****** (for a point and a curve, a point and an area or
 	 *   a line and an area)
 	 * - 0******** (for two curves)
-	 * 
+	 *
 	 * @param dimensionOfGeometryA - he dimension of the first Geometry.
 	 *
 	 * @param dimensionOfGeometryB - the dimension of the second Geometry.
 	 *
 	 * @return true if the two Geometry's related by this
 	 *         IntersectionMatrix cross.
-	 * 
+	 *
 	 * For this function to return true, the Geometrys must be a point
 	 * and a curve; a point and a surface; two curves; or a curve and
 	 * a surface.
@@ -281,21 +281,21 @@
 
 	/** \brief
 	 * Returns true if this IntersectionMatrix is T*F**F***.
-	 * 
+	 *
 	 * @return true if the first Geometry is within the second.
 	 */
 	bool isWithin() const;
 
 	/** \brief
 	 * Returns true if this IntersectionMatrix is T*****FF*.
-	 * 
+	 *
 	 * @return true if the first Geometry contains the second.
 	 */
 	bool isContains() const;
 
 	/** \brief
 	 * Returns true if this IntersectionMatrix is T*F**FFF*.
-	 * 
+	 *
 	 * @param dimensionOfGeometryA - he dimension of the first Geometry.
 	 * @param dimensionOfGeometryB - the dimension of the second Geometry.
 	 * @return true if the two Geometry's related by this
@@ -309,11 +309,11 @@
 	 * Returns true if this IntersectionMatrix is:
 	 * - T*T***T** (for two points or two surfaces)
 	 * - 1*T***T** (for two curves)
-	 * 
+	 *
 	 * @param dimensionOfGeometryA - he dimension of the first Geometry.
 	 * @param dimensionOfGeometryB - the dimension of the second Geometry.
 	 * @return true if the two Geometry's related by this
-	 *         IntersectionMatrix overlap.  
+	 *         IntersectionMatrix overlap.
 	 *
 	 * For this function to return true, the Geometrys must be two points,
 	 * two curves or two surfaces.
@@ -331,12 +331,12 @@
 	 */
 	bool isCovers() const;
 
-	    
+
 	/** \brief
 	 * Returns true if this IntersectionMatrix is T*F**F***
    	 * *TF**F*** or **FT*F***
 	 * or **F*TF***
-	 * 
+	 *
 	 * @return true if the first Geometry is covered by
 	 * the second
 	 */
@@ -344,9 +344,9 @@
 
 	/** \brief
 	 * Transposes this IntersectionMatrix.
-	 * 
+	 *
 	 * @return this IntersectionMatrix as a convenience.
-	 * 
+	 *
 	 * \todo It returns 'this' pointer so why not to return const-pointer?
 	 * \todo May be it would be better to return copy of transposed matrix?
 	 */
@@ -355,7 +355,7 @@
 	/** \brief
 	 * Returns a nine-character String representation of this
 	 * IntersectionMatrix.
-	 * 
+	 *
 	 * @return the nine dimension symbols of this IntersectionMatrix
 	 * in row-major order.
 	 */
@@ -366,10 +366,10 @@
 	static const int firstDim; // = 3;
 
 	static const int secondDim; // = 3;
-			
+
 	// Internal buffer for 3x3 matrix.
 	int matrix[3][3];
-	
+
 }; // class IntersectionMatrix
 
 GEOS_DLL std::ostream& operator<< (std::ostream&os, const IntersectionMatrix& im);
diff -Nru geos-3.6.2/include/geos/geom/Lineal.h geos-3.7.1/include/geos/geom/Lineal.h
--- geos-3.6.2/include/geos/geom/Lineal.h	2017-04-04 09:13:52.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Lineal.h	2018-10-19 22:32:06.000000000 +0000
@@ -1,13 +1,13 @@
-/**********************************************************************
+/**********************************************************************
  *
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011  Sandro Santilli 
+ * Copyright (C) 2011  Sandro Santilli 
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -37,7 +37,7 @@
 class GEOS_DLL Lineal : public virtual Geometry
 {
 protected:
-  Lineal(): Geometry(0) {}
+  Lineal(): Geometry(nullptr) {}
 };
 
 } // namespace geos::geom
diff -Nru geos-3.6.2/include/geos/geom/LinearRing.h geos-3.7.1/include/geos/geom/LinearRing.h
--- geos-3.6.2/include/geos/geom/LinearRing.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/LinearRing.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -40,7 +40,7 @@
 namespace geom { // geos::geom
 
 /**
- * \brief 
+ * \brief
  * Models an OGC SFS LinearRing.
  *
  * A LinearRing is a LineString which is both closed and simple.
@@ -48,7 +48,7 @@
  * the first and last coordinate in the ring must be equal,
  * and the interior of the ring must not self-intersect.
  * Either orientation of the ring is allowed.
- * 
+ *
  * A ring must have either 0 or 4 or more points.
  * The first and last points must be equal (in 2D).
  * If these conditions are not met, the constructors throw
@@ -82,12 +82,12 @@
 			const GeometryFactory *newFactory);
 
 	/// Hopefully cleaner version of the above
-	LinearRing(CoordinateSequence::AutoPtr points,
+	LinearRing(CoordinateSequence::Ptr points,
 			const GeometryFactory *newFactory);
 
-	virtual Geometry *clone() const { return new LinearRing(*this); }
+	Geometry *clone() const override { return new LinearRing(*this); }
 
-	virtual ~LinearRing();
+	~LinearRing() override;
 
 	/** \brief
 	 * Returns Dimension.FALSE, since by definition
@@ -95,7 +95,7 @@
 	 *
 	 * @return Dimension::False
 	 */
-	int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
 	/** \brief
 	 * Returns true, since by definition LinearRings
@@ -105,17 +105,17 @@
 	 *
 	 * @see Geometry::isSimple
 	 */
-	bool isSimple() const;
+	bool isSimple() const override;
 
-	bool isClosed() const;
+	bool isClosed() const override;
 
-	std::string getGeometryType() const;
+	std::string getGeometryType() const override;
 
-	virtual GeometryTypeId getGeometryTypeId() const;
+	GeometryTypeId getGeometryTypeId() const override;
 
 	void setPoints(CoordinateSequence* cl);
 
-  	Geometry* reverse() const;
+  	Geometry* reverse() const override;
 
 private:
 
diff -Nru geos-3.6.2/include/geos/geom/LineSegment.h geos-3.7.1/include/geos/geom/LineSegment.h
--- geos-3.6.2/include/geos/geom/LineSegment.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/LineSegment.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009 2011 Sandro Santilli 
+ * Copyright (C) 2009 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -27,7 +27,7 @@
 #include 
 
 #include  // for ostream
-#include  // for auto_ptr
+#include  // for unique_ptr
 
 // Forward declarations
 namespace geos {
@@ -45,7 +45,7 @@
  * Represents a line segment defined by two Coordinate.
  * Provides methods to compute various geometric properties
  * and relationships of line segments.
- * 
+ *
  * This class is designed to be easily mutable (to the extent of
  * having its contained points public).
  * This supports a common pattern of reusing a single LineSegment
@@ -211,7 +211,7 @@
 	 *         (positive is to the left, negative is to the right)
 	 *
 	 * @param ret will be set to the point at that distance and offset
-	 * 
+	 *
 	 * @throws IllegalStateException if the segment has zero length
 	 */
 	void pointAlongOffset(double segmentLengthFraction,
@@ -220,8 +220,8 @@
 
 	/** \brief
 	 * Compute the projection factor for the projection of the point p
-	 * onto this LineSegment. 
-	 * 
+	 * onto this LineSegment.
+	 *
 	 * The projection factor is the constant r
 	 * by which the vector for this segment must be multiplied to
 	 * equal the vector for the projection of p on the line
@@ -244,7 +244,7 @@
 	 * If the point is beyond either ends of the line segment,
 	 * the closest fractional value (0.0 or 1.0)
 	 * is returned.
-	 * 
+	 *
 	 * Essentially, this is the {@link #projectionFactor} clamped to
 	 * the range [0.0, 1.0].
 	 *
@@ -257,7 +257,7 @@
 	/** \brief
 	 * Compute the projection of a point onto the line determined
 	 * by this line segment.
-	 * 
+	 *
 	 * Note that the projected point
 	 * may lie outside the line segment.  If this is the case,
 	 * the projection factor will lie outside the range [0.0, 1.0].
@@ -266,12 +266,12 @@
 
 	/** \brief
 	 * Project a line segment onto this line segment and return the resulting
-	 * line segment. 
+	 * line segment.
 	 *
 	 * The returned line segment will be a subset of
 	 * the target line line segment.  This subset may be null, if
 	 * the segments are oriented in such a way that there is no projection.
-	 * 
+	 *
 	 * Note that the returned line may have zero length (i.e. the same endpoints).
 	 * This can happen for instance if the lines are perpendicular to one another.
 	 *
@@ -329,7 +329,7 @@
 	 * if there is one.
 	 * There may be 0, 1 or many intersection points between two segments.
 	 * If there are 0, null is returned. If there is 1 or more, a single
-	 * one is returned (chosen at the discretion of the algorithm). 
+	 * one is returned (chosen at the discretion of the algorithm).
 	 * If more information is required about the details of the
 	 * intersection, the LineIntersector class should be used.
 	 *
@@ -364,7 +364,7 @@
 	 * @param gf the geometery factory to use
 	 * @return a LineString with the same geometry as this segment
 	 */
-	std::auto_ptr toGeometry(const GeometryFactory& gf) const;
+	std::unique_ptr toGeometry(const GeometryFactory& gf) const;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/LineSegment.inl geos-3.7.1/include/geos/geom/LineSegment.inl
--- geos-3.6.2/include/geos/geom/LineSegment.inl	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/LineSegment.inl	2018-10-19 22:32:06.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009 2011 Sandro Santilli 
+ * Copyright (C) 2009 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
diff -Nru geos-3.6.2/include/geos/geom/LineString.h geos-3.7.1/include/geos/geom/LineString.h
--- geos-3.6.2/include/geos/geom/LineString.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/LineString.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  * Copyright (C) 2005 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -25,13 +25,13 @@
 #include  // do we need this ?
 #include  // for inheritance
 #include  // for inheritance
-#include  // for proper use of auto_ptr<>
-#include  // for proper use of auto_ptr<>
+#include  // for proper use of unique_ptr<>
+#include  // for proper use of unique_ptr<>
 #include  // for Dimension::DimensionType
 
 #include 
 #include 
-#include  // for auto_ptr
+#include  // for unique_ptr
 
 #include 
 
@@ -62,7 +62,7 @@
  *  The line segments in the line may intersect each other (in other words,
  *  the linestring may "curl back" in itself and self-intersect).
  *  Linestrings with exactly two identical points are invalid.
- *  
+ *
  *  A linestring must have either 0 or 2 or more points.
  *  If these conditions are not met, the constructors throw
  *  an {@link IllegalArgumentException}.
@@ -76,7 +76,7 @@
 	/// A vector of const LineString pointers
 	typedef std::vector ConstVect;
 
-	virtual ~LineString();
+	~LineString() override;
 
 	/**
 	 * \brief
@@ -85,9 +85,9 @@
 	 *
 	 * @return A clone of this instance
 	 */
-	virtual Geometry *clone() const;
+	Geometry *clone() const override;
 
-	virtual CoordinateSequence* getCoordinates() const;
+	CoordinateSequence* getCoordinates() const override;
 
 	/// Returns a read-only pointer to internal CoordinateSequence
 	const CoordinateSequence* getCoordinatesRO() const;
@@ -95,28 +95,28 @@
 	virtual const Coordinate& getCoordinateN(int n) const;
 
 	/// Returns line dimension (1)
-	virtual Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/**
 	 * \brief
 	 * Returns Dimension::False for a closed LineString,
 	 * 0 otherwise (LineString boundary is a MultiPoint)
 	 */
-	virtual int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
 	/// Returns coordinate dimension.
-	virtual int getCoordinateDimension() const;
+	int getCoordinateDimension() const override;
 
 	/**
 	 * \brief
 	 * Returns a MultiPoint.
 	 * Empty for closed LineString, a Point for each vertex otherwise.
 	 */
-	virtual Geometry* getBoundary() const;
+	Geometry* getBoundary() const override;
 
-	virtual bool isEmpty() const;
+	bool isEmpty() const override;
 
-	virtual std::size_t getNumPoints() const;
+	std::size_t getNumPoints() const override;
 
 	virtual Point* getPointN(std::size_t n) const;
 
@@ -136,46 +136,46 @@
 
 	virtual bool isRing() const;
 
-	virtual std::string getGeometryType() const;
+	std::string getGeometryType() const override;
 
-	virtual GeometryTypeId getGeometryTypeId() const;
+	GeometryTypeId getGeometryTypeId() const override;
 
 	virtual bool isCoordinate(Coordinate& pt) const;
 
-	virtual bool equalsExact(const Geometry *other, double tolerance=0)
-		const;
+	bool equalsExact(const Geometry *other, double tolerance=0)
+		const override;
 
-	virtual void apply_rw(const CoordinateFilter *filter);
+	void apply_rw(const CoordinateFilter *filter) override;
 
-	virtual void apply_ro(CoordinateFilter *filter) const;
+	void apply_ro(CoordinateFilter *filter) const override;
 
-	virtual void apply_rw(GeometryFilter *filter);
+	void apply_rw(GeometryFilter *filter) override;
 
-	virtual void apply_ro(GeometryFilter *filter) const;
+	void apply_ro(GeometryFilter *filter) const override;
 
-	virtual void apply_rw(GeometryComponentFilter *filter);
+	void apply_rw(GeometryComponentFilter *filter) override;
 
-	virtual void apply_ro(GeometryComponentFilter *filter) const;
+	void apply_ro(GeometryComponentFilter *filter) const override;
 
-	void apply_rw(CoordinateSequenceFilter& filter);
+	void apply_rw(CoordinateSequenceFilter& filter) override;
 
-	void apply_ro(CoordinateSequenceFilter& filter) const;
+	void apply_ro(CoordinateSequenceFilter& filter) const override;
 
 	/** \brief
-	 * Normalizes a LineString. 
+	 * Normalizes a LineString.
 	 *
 	 * A normalized linestring
 	 * has the first point which is not equal to its reflected point
 	 * less than the reflected point.
 	 */
-	virtual void normalize();
+	void normalize() override;
 
 	//was protected
-	virtual int compareToSameClass(const Geometry *ls) const;
+	int compareToSameClass(const Geometry *ls) const override;
 
-	virtual const Coordinate* getCoordinate() const;
+	const Coordinate* getCoordinate() const override;
 
-	virtual double getLength() const;
+	double getLength() const override;
 
 	/**
 	 * Creates a LineString whose coordinates are in the reverse
@@ -183,7 +183,7 @@
 	 *
 	 * @return a LineString with coordinates in the reverse order
 	 */
-  	Geometry* reverse() const;
+  	Geometry* reverse() const override;
 
 protected:
 
@@ -195,12 +195,12 @@
 	LineString(CoordinateSequence *pts, const GeometryFactory *newFactory);
 
 	/// Hopefully cleaner version of the above
-	LineString(CoordinateSequence::AutoPtr pts,
+	LineString(CoordinateSequence::Ptr pts,
 			const GeometryFactory *newFactory);
 
-	Envelope::AutoPtr computeEnvelopeInternal() const;
+	Envelope::Ptr computeEnvelopeInternal() const override;
 
-	CoordinateSequence::AutoPtr points;
+	CoordinateSequence::Ptr points;
 
 private:
 
diff -Nru geos-3.6.2/include/geos/geom/Location.h geos-3.7.1/include/geos/geom/Location.h
--- geos-3.6.2/include/geos/geom/Location.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Location.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geom/Makefile.am geos-3.7.1/include/geos/geom/Makefile.am
--- geos-3.6.2/include/geos/geom/Makefile.am	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Makefile.am	2018-10-19 22:32:06.000000000 +0000
@@ -1,11 +1,11 @@
 #
-# This file is part of project GEOS (http://trac.osgeo.org/geos/) 
+# This file is part of project GEOS (http://trac.osgeo.org/geos/)
 #
 SUBDIRS = \
     util \
     prep
 
-#EXTRA_DIST = 
+#EXTRA_DIST =
 
 geosdir = $(includedir)/geos/geom
 
@@ -31,7 +31,6 @@
     GeometryFactory.inl \
     GeometryFilter.h \
     Geometry.h \
-    GeometryList.h \
     IntersectionMatrix.h \
     LinearRing.h \
     LineSegment.h \
diff -Nru geos-3.6.2/include/geos/geom/Makefile.in geos-3.7.1/include/geos/geom/Makefile.in
--- geos-3.6.2/include/geos/geom/Makefile.in	2017-07-25 09:27:28.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Makefile.in	2018-11-29 23:05:17.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -93,6 +93,9 @@
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \
 	$(top_srcdir)/macros/ac_python_devel.m4 \
+	$(top_srcdir)/macros/ax_check_compile_flag.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \
 	$(top_srcdir)/macros/libtool.m4 \
 	$(top_srcdir)/macros/ltoptions.m4 \
 	$(top_srcdir)/macros/ltsugar.m4 \
@@ -171,7 +174,7 @@
   $(RECURSIVE_CLEAN_TARGETS) \
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
-	distdir
+	distdir distdir-am
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
@@ -260,6 +263,7 @@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
 INLINE_FLAGS = @INLINE_FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -308,6 +312,8 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RUBY = @RUBY@
+RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@
+RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@
 RUBY_BIN_DIR = @RUBY_BIN_DIR@
 RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@
 RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@
@@ -328,6 +334,7 @@
 VERSION_MAJOR = @VERSION_MAJOR@
 VERSION_MINOR = @VERSION_MINOR@
 VERSION_PATCH = @VERSION_PATCH@
+VERSION_RELEASE = @VERSION_RELEASE@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
@@ -377,7 +384,6 @@
 psdir = @psdir@
 pyexecdir = @pyexecdir@
 pythondir = @pythondir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -392,14 +398,14 @@
 top_srcdir = @top_srcdir@
 
 #
-# This file is part of project GEOS (http://trac.osgeo.org/geos/) 
+# This file is part of project GEOS (http://trac.osgeo.org/geos/)
 #
 SUBDIRS = \
     util \
     prep
 
 
-#EXTRA_DIST = 
+#EXTRA_DIST =
 geosdir = $(includedir)/geos/geom
 geos_HEADERS = \
     BinaryOp.h \
@@ -423,7 +429,6 @@
     GeometryFactory.inl \
     GeometryFilter.h \
     Geometry.h \
-    GeometryList.h \
     IntersectionMatrix.h \
     LinearRing.h \
     LineSegment.h \
@@ -464,8 +469,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -603,7 +608,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru geos-3.6.2/include/geos/geom/MultiLineString.h geos-3.7.1/include/geos/geom/MultiLineString.h
--- geos-3.6.2/include/geos/geom/MultiLineString.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/MultiLineString.h	2018-11-09 23:03:28.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  * Copyright (C) 2005 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -54,30 +54,30 @@
 
 	friend class GeometryFactory;
 
-	virtual ~MultiLineString();
+	~MultiLineString() override;
 
 	/// Returns line dimension (1)
-	Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/**
 	 * \brief
 	 * Returns Dimension::False if all LineStrings in the collection
 	 * are closed, 0 otherwise.
 	 */
-	int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
-	/// Returns a (possibly empty) MultiPoint 
-	Geometry* getBoundary() const;
+	/// Returns a (possibly empty) MultiPoint
+	Geometry* getBoundary() const override;
 
-	std::string getGeometryType() const;
+	std::string getGeometryType() const override;
 
-	virtual GeometryTypeId getGeometryTypeId() const;
+	GeometryTypeId getGeometryTypeId() const override;
 
 	bool isClosed() const;
 
-	bool equalsExact(const Geometry *other, double tolerance=0) const;
+	bool equalsExact(const Geometry *other, double tolerance=0) const override;
 
-	Geometry *clone() const;
+	Geometry *clone() const override;
 
 	/**
 	 * Creates a MultiLineString in the reverse
@@ -88,7 +88,7 @@
 	 *
 	 * @return a MultiLineString in the reverse order
 	 */
-	MultiLineString* reverse() const;
+	Geometry* reverse() const override;
 
 protected:
 
@@ -109,7 +109,7 @@
 	 * 	The GeometryFactory used to create this geometry.
 	 *	Caller must keep the factory alive for the life-time
 	 *	of the constructed MultiLineString.
-	 * 	
+	 *
 	 */
 	MultiLineString(std::vector *newLines,
 			const GeometryFactory *newFactory);
diff -Nru geos-3.6.2/include/geos/geom/MultiLineString.inl geos-3.7.1/include/geos/geom/MultiLineString.inl
--- geos-3.6.2/include/geos/geom/MultiLineString.inl	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/MultiLineString.inl	2018-10-19 22:32:06.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
diff -Nru geos-3.6.2/include/geos/geom/MultiPoint.h geos-3.7.1/include/geos/geom/MultiPoint.h
--- geos-3.6.2/include/geos/geom/MultiPoint.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/MultiPoint.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  * Copyright (C) 2005 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -59,13 +59,13 @@
 
 	friend class GeometryFactory;
 
-	virtual ~MultiPoint();
+	~MultiPoint() override;
 
 	/// Returns point dimension (0)
-	Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/// Returns Dimension::False (Point has no boundary)
-	int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
 	/** \brief
 	 * Gets the boundary of this geometry.
@@ -76,15 +76,17 @@
 	 * @return an empty GeometryCollection
 	 * @see Geometry#getBoundary
 	 */
-	Geometry* getBoundary() const;
+	Geometry* getBoundary() const override;
 
-	std::string getGeometryType() const;
+	std::string getGeometryType() const override;
 
-	virtual GeometryTypeId getGeometryTypeId() const;
+	GeometryTypeId getGeometryTypeId() const override;
 
-	bool equalsExact(const Geometry *other, double tolerance=0) const;
+	bool equalsExact(const Geometry *other, double tolerance=0) const override;
 
-	Geometry *clone() const { return new MultiPoint(*this); }
+	Geometry *clone() const override { return new MultiPoint(*this); }
+
+	Geometry* reverse() const override { return clone(); }
 
 protected:
 
diff -Nru geos-3.6.2/include/geos/geom/MultiPolygon.h geos-3.7.1/include/geos/geom/MultiPolygon.h
--- geos-3.6.2/include/geos/geom/MultiPolygon.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/MultiPolygon.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  * Copyright (C) 2005 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -63,13 +63,13 @@
 
 	friend class GeometryFactory;
 
-	virtual ~MultiPolygon();
+	~MultiPolygon() override;
 
 	/// Returns surface dimension (2)
-	Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/// Returns 1 (MultiPolygon boundary is MultiLineString)
-	int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
 	/** \brief
 	 * Computes the boundary of this geometry
@@ -77,17 +77,19 @@
 	 * @return a lineal geometry (which may be empty)
 	 * @see Geometry#getBoundary
 	 */
-	Geometry* getBoundary() const;
+	Geometry* getBoundary() const override;
 
-	std::string getGeometryType() const;
+	std::string getGeometryType() const override;
 
-	virtual GeometryTypeId getGeometryTypeId() const;
+	GeometryTypeId getGeometryTypeId() const override;
 
-	bool isSimple() const;
+	bool isSimple() const override;
 
-	bool equalsExact(const Geometry *other, double tolerance=0) const;
+	bool equalsExact(const Geometry *other, double tolerance=0) const override;
 
-	Geometry *clone() const;
+	Geometry *clone() const override;
+
+	Geometry *reverse() const override;
 
 protected:
 
diff -Nru geos-3.6.2/include/geos/geom/Point.h geos-3.7.1/include/geos/geom/Point.h
--- geos-3.6.2/include/geos/geom/Point.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Point.h	2018-11-09 23:03:28.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  * Copyright (C) 2005 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -25,15 +25,15 @@
 #include 
 #include  // for inheritance
 #include  // for inheritance
-#include  // for proper use of auto_ptr<>
-#include  // for proper use of auto_ptr<>
+#include  // for proper use of unique_ptr<>
+#include  // for proper use of unique_ptr<>
 #include  // for Dimension::DimensionType
 
 #include 
 
 #include 
 #include 
-#include  // for auto_ptr
+#include  // for unique_ptr
 
 #ifdef _MSC_VER
 #pragma warning(push)
@@ -59,12 +59,12 @@
  * Implementation of Point.
  *
  * A Point is valid iff:
- * 
+ *
  * - the coordinate which defines it is a valid coordinate
  *   (i.e does not have an NaN X or Y ordinate)
  *
  */
-class GEOS_DLL Point : public virtual Geometry, public Puntal 
+class GEOS_DLL Point : public virtual Geometry, public Puntal
 {
 
 public:
@@ -74,7 +74,7 @@
 	/// A vector of const Point pointers
 	typedef std::vector ConstVect;
 
-	virtual ~Point();
+	~Point() override;
 
 	/**
 	 * Creates and returns a full copy of this {@link Point} object.
@@ -82,24 +82,24 @@
 	 *
 	 * @return a clone of this instance
 	 */
-	Geometry *clone() const { return new Point(*this); }
+	Geometry *clone() const override { return new Point(*this); }
 
-	CoordinateSequence* getCoordinates(void) const;
+	CoordinateSequence* getCoordinates(void) const override;
 
 	const CoordinateSequence* getCoordinatesRO() const;
 
-	size_t getNumPoints() const;
-	bool isEmpty() const;
-	bool isSimple() const;
+	size_t getNumPoints() const override;
+	bool isEmpty() const override;
+	bool isSimple() const override;
 
 	/// Returns point dimension (0)
-	Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/// Returns coordinate dimension.
-	virtual int getCoordinateDimension() const;
+	int getCoordinateDimension() const override;
 
 	/// Returns Dimension::False (Point has no boundary)
-	int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
 	/**
 	 * Gets the boundary of this geometry.
@@ -109,30 +109,31 @@
 	 * @return an empty GeometryCollection
 	 * @see Geometry::getBoundary
 	 */
-	Geometry* getBoundary() const;
+	Geometry* getBoundary() const override;
 
 	double getX() const;
 	double getY() const;
-	const Coordinate* getCoordinate() const;
-	std::string getGeometryType() const;
-	virtual GeometryTypeId getGeometryTypeId() const;
-	void apply_ro(CoordinateFilter *filter) const;
-	void apply_rw(const CoordinateFilter *filter);
-	void apply_ro(GeometryFilter *filter) const;
-	void apply_rw(GeometryFilter *filter);
-	void apply_rw(GeometryComponentFilter *filter);
-	void apply_ro(GeometryComponentFilter *filter) const;
-	void apply_rw(CoordinateSequenceFilter& filter);
-	void apply_ro(CoordinateSequenceFilter& filter) const;
+  double getZ() const;
+	const Coordinate* getCoordinate() const override;
+	std::string getGeometryType() const override;
+	GeometryTypeId getGeometryTypeId() const override;
+	void apply_ro(CoordinateFilter *filter) const override;
+	void apply_rw(const CoordinateFilter *filter) override;
+	void apply_ro(GeometryFilter *filter) const override;
+	void apply_rw(GeometryFilter *filter) override;
+	void apply_rw(GeometryComponentFilter *filter) override;
+	void apply_ro(GeometryComponentFilter *filter) const override;
+	void apply_rw(CoordinateSequenceFilter& filter) override;
+	void apply_ro(CoordinateSequenceFilter& filter) const override;
 
-	bool equalsExact(const Geometry *other, double tolerance=0) const;
+	bool equalsExact(const Geometry *other, double tolerance=0) const override;
 
-	void normalize(void)
+	void normalize(void) override
 	{
 		// a Point is always in normalized form
 	}
 
-  	Geometry* reverse() const
+  	Geometry* reverse() const override
 	{
 		return clone();
 	}
@@ -150,21 +151,21 @@
 	 *	the empty geometry.
 	 *
 	 * @param newFactory the GeometryFactory used to create this geometry
-	 */  
+	 */
 	Point(CoordinateSequence *newCoords, const GeometryFactory *newFactory);
 
-	Point(const Point &p); 
+	Point(const Point &p);
 
-	Envelope::AutoPtr computeEnvelopeInternal() const;
+	Envelope::Ptr computeEnvelopeInternal() const override;
 
-	int compareToSameClass(const Geometry *p) const;
+	int compareToSameClass(const Geometry *p) const override;
 
 private:
 
 	/**
 	 *  The Coordinate wrapped by this Point.
 	 */
-	std::auto_ptr coordinates;
+	std::unique_ptr coordinates;
 };
 
 } // namespace geos::geom
diff -Nru geos-3.6.2/include/geos/geom/Polygonal.h geos-3.7.1/include/geos/geom/Polygonal.h
--- geos-3.6.2/include/geos/geom/Polygonal.h	2017-04-04 09:13:52.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Polygonal.h	2018-10-19 22:32:06.000000000 +0000
@@ -1,13 +1,13 @@
-/**********************************************************************
+/**********************************************************************
  *
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011  Sandro Santilli 
+ * Copyright (C) 2011  Sandro Santilli 
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -37,7 +37,7 @@
 class GEOS_DLL Polygonal : public virtual Geometry
 {
 protected:
-  Polygonal(): Geometry(0) {}
+  Polygonal(): Geometry(nullptr) {}
 };
 
 } // namespace geos::geom
diff -Nru geos-3.6.2/include/geos/geom/Polygon.h geos-3.7.1/include/geos/geom/Polygon.h
--- geos-3.6.2/include/geos/geom/Polygon.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Polygon.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005 2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -27,12 +27,12 @@
 #include 
 #include  // for inheritance
 #include  // for inheritance
-#include  // for proper use of auto_ptr<>
+#include  // for proper use of unique_ptr<>
 #include  // for Dimension::DimensionType
 
 #include 
 
-#include  // for auto_ptr
+#include  // for unique_ptr
 
 // Forward declarations
 namespace geos {
@@ -73,7 +73,7 @@
 	/// A vector of const Polygon pointers
 	typedef std::vector ConstVect;
 
-	virtual ~Polygon();
+	~Polygon() override;
 
 	/**
 	 * Creates and returns a full copy of this {@link Polygon} object.
@@ -81,20 +81,20 @@
 	 *
 	 * @return a clone of this instance
 	 */
-	virtual Geometry *clone() const { return new Polygon(*this); }
+	Geometry *clone() const override { return new Polygon(*this); }
 
-	CoordinateSequence* getCoordinates() const;
+	CoordinateSequence* getCoordinates() const override;
 
-	size_t getNumPoints() const;
+	size_t getNumPoints() const override;
 
 	/// Returns surface dimension (2)
-	Dimension::DimensionType getDimension() const;
+	Dimension::DimensionType getDimension() const override;
 
 	/// Returns coordinate dimension.
-	virtual int getCoordinateDimension() const;
+	int getCoordinateDimension() const override;
 
 	/// Returns 1 (Polygon boundary is a MultiLineString)
-	int getBoundaryDimension() const;
+	int getBoundaryDimension() const override;
 
 	/** \brief
 	 * Computes the boundary of this geometry
@@ -102,9 +102,9 @@
 	 * @return a lineal geometry (which may be empty)
 	 * @see Geometry#getBoundary
 	 */
-	Geometry* getBoundary() const;
+	Geometry* getBoundary() const override;
 
-	bool isEmpty() const;
+	bool isEmpty() const override;
 
 	/** \brief
 	 * Tests if a valid polygon is simple.
@@ -112,8 +112,8 @@
 	 *
 	 * @return true
 	 */
-	bool isSimple() const;
-	
+	bool isSimple() const override;
+
 	/// Returns the exterior ring (shell)
 	const LineString* getExteriorRing() const;
 
@@ -123,34 +123,36 @@
 	/// Get nth interior ring (hole)
 	const LineString* getInteriorRingN(std::size_t n) const;
 
-	std::string getGeometryType() const;
-	virtual GeometryTypeId getGeometryTypeId() const;
-	bool equalsExact(const Geometry *other, double tolerance=0) const;
-	void apply_rw(const CoordinateFilter *filter);
-	void apply_ro(CoordinateFilter *filter) const;
-	void apply_rw(GeometryFilter *filter);
-	void apply_ro(GeometryFilter *filter) const;
-	void apply_rw(CoordinateSequenceFilter& filter);
-	void apply_ro(CoordinateSequenceFilter& filter) const;
+	std::string getGeometryType() const override;
+	GeometryTypeId getGeometryTypeId() const override;
+	bool equalsExact(const Geometry *other, double tolerance=0) const override;
+	void apply_rw(const CoordinateFilter *filter) override;
+	void apply_ro(CoordinateFilter *filter) const override;
+	void apply_rw(GeometryFilter *filter) override;
+	void apply_ro(GeometryFilter *filter) const override;
+	void apply_rw(CoordinateSequenceFilter& filter) override;
+	void apply_ro(CoordinateSequenceFilter& filter) const override;
+
+	Geometry* convexHull() const override;
 
-	Geometry* convexHull() const;
+	void normalize() override;
 
-	void normalize();
+	Geometry* reverse() const override;
 
-	int compareToSameClass(const Geometry *p) const; //was protected
+	int compareToSameClass(const Geometry *p) const override; //was protected
 
-	const Coordinate* getCoordinate() const;
+	const Coordinate* getCoordinate() const override;
 
-	double getArea() const;
+	double getArea() const override;
 
  	/// Returns the perimeter of this Polygon
-	double getLength() const;
+	double getLength() const override;
 
-	void apply_rw(GeometryComponentFilter *filter);
+	void apply_rw(GeometryComponentFilter *filter) override;
 
-	void apply_ro(GeometryComponentFilter *filter) const;
+	void apply_ro(GeometryComponentFilter *filter) const override;
 
-	bool isRectangle() const;
+	bool isRectangle() const override;
 
 protected:
 
@@ -158,7 +160,7 @@
 	Polygon(const Polygon &p);
 
 	/**
-	 * Constructs a Polygon with the given exterior 
+	 * Constructs a Polygon with the given exterior
 	 * and interior boundaries.
 	 *
 	 * @param  newShell  the outer boundary of the new Polygon,
@@ -168,12 +170,12 @@
 	 *
 	 * @param  newHoles  the LinearRings defining the inner
 	 *                   boundaries of the new Polygon, or
-	 *                   null or empty LinearRing 
+	 *                   null or empty LinearRing
 	 *                   if the empty  geometry is to be created.
 	 *
 	 * @param newFactory the GeometryFactory used to create this geometry
 	 *
-	 * Polygon will take ownership of Shell and Holes LinearRings 
+	 * Polygon will take ownership of Shell and Holes LinearRings
 	 */
 	Polygon(LinearRing *newShell, std::vector *newHoles,
 		const GeometryFactory *newFactory);
@@ -182,7 +184,7 @@
 
 	std::vector *holes; //Actually vector
 
-	Envelope::AutoPtr computeEnvelopeInternal() const;
+	Envelope::Ptr computeEnvelopeInternal() const override;
 
 private:
 
diff -Nru geos-3.6.2/include/geos/geom/PrecisionModel.h geos-3.7.1/include/geos/geom/PrecisionModel.h
--- geos-3.6.2/include/geos/geom/PrecisionModel.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/PrecisionModel.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,12 +3,12 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -46,7 +46,7 @@
  *
  * In other words, specifies the grid of allowable
  * points for all Geometrys.
- * 
+ *
  * The makePrecise method allows rounding a coordinate to
  * a "precise" value; that is, one whose
  * precision is known exactly.
@@ -115,7 +115,7 @@
 		FLOATING_SINGLE
 
 	} Type;
-	
+
 	/// Creates a PrecisionModel with a default precision of FLOATING.
 	PrecisionModel(void);
 
@@ -146,7 +146,7 @@
 	PrecisionModel(double newScale, double newOffsetX, double newOffsetY);
 
 	/**
-	 * \brief 
+	 * \brief
 	 * Creates a PrecisionModel with Fixed precision.
 	 *
 	 * Fixed-precision coordinates are represented as precise
@@ -179,7 +179,7 @@
 	 * Asymmetric Arithmetic Rounding is used, to provide
 	 * uniform rounding behaviour no matter where the number is
 	 * on the number line.
-	 * 
+	 *
 	 * Note: Java's Math#rint uses the "Banker's Rounding" algorithm,
 	 * which is not suitable for precision operations elsewhere in JTS.
 	 */
diff -Nru geos-3.6.2/include/geos/geom/PrecisionModel.inl geos-3.7.1/include/geos/geom/PrecisionModel.inl
--- geos-3.6.2/include/geos/geom/PrecisionModel.inl	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/PrecisionModel.inl	2018-10-19 22:32:06.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
diff -Nru geos-3.6.2/include/geos/geom/prep/AbstractPreparedPolygonContains.h geos-3.7.1/include/geos/geom/prep/AbstractPreparedPolygonContains.h
--- geos-3.6.2/include/geos/geom/prep/AbstractPreparedPolygonContains.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/AbstractPreparedPolygonContains.h	2018-11-29 22:42:00.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -25,10 +25,10 @@
 
 // forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 
-		namespace prep { 
+		namespace prep {
 			class PreparedPolygon;
 		}
 	}
@@ -45,24 +45,24 @@
  * and covers spatial relationship predicates
  * for a {@link PreparedPolygon} relative to all other {@link Geometry} classes.
  *
- * Uses short-circuit tests and indexing to improve performance. 
- * 
+ * Uses short-circuit tests and indexing to improve performance.
+ *
  * Contains and covers are very similar, and differ only in how certain
- * cases along the boundary are handled.  These cases require 
- * full topological evaluation to handle, so all the code in 
+ * cases along the boundary are handled.  These cases require
+ * full topological evaluation to handle, so all the code in
  * this class is common to both predicates.
- * 
+ *
  * It is not possible to short-circuit in all cases, in particular
  * in the case where line segments of the test geometry touches the polygon
  * linework.
  * In this case full topology must be computed.
- * (However, if the test geometry consists of only points, this 
+ * (However, if the test geometry consists of only points, this
  * can be evaluated in an optimized fashion.
- * 
+ *
  * @author Martin Davis
  *
  */
-class AbstractPreparedPolygonContains : public PreparedPolygonPredicate 
+class AbstractPreparedPolygonContains : public PreparedPolygonPredicate
 {
 private:
 	// information about geometric situation
@@ -74,17 +74,17 @@
 
 	/**
 	 * Tests whether a geometry consists of a single polygon with no holes.
-	 *  
+	 *
 	 * @return true if the geometry is a single polygon with no holes
 	 */
 	bool isSingleShell( const geom::Geometry & geom);
-	
+
 	void findAndClassifyIntersections( const geom::Geometry * geom);
 
 protected:
 	/**
 	 * This flag controls a difference between contains and covers.
-	 * 
+	 *
 	 * For contains the value is true.
 	 * For covers the value is false.
 	 */
@@ -93,7 +93,7 @@
 	/**
 	 * Evaluate the contains or covers relationship
 	 * for the given geometry.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if the test geometry is contained
 	 */
@@ -102,14 +102,14 @@
  	/**
  	 * Computes the full topological predicate.
 	 * Used when short-circuit tests are not conclusive.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if this prepared polygon has the relationship with the test geometry
 	 */
 	virtual bool fullTopologicalPredicate( const geom::Geometry * geom) =0;
 
 public:
-	AbstractPreparedPolygonContains( const PreparedPolygon * const prepPoly) 
+	AbstractPreparedPolygonContains( const PreparedPolygon * const prepPoly)
 	:	PreparedPolygonPredicate( prepPoly),
 		hasSegmentIntersection( false),
 		hasProperIntersection( false),
@@ -117,7 +117,7 @@
 		requireSomePointInInterior(true)
 	{ }
 
-	AbstractPreparedPolygonContains( const PreparedPolygon * const prepPoly, bool requireSomePointInInterior) 
+	AbstractPreparedPolygonContains( const PreparedPolygon * const prepPoly, bool requireSomePointInInterior)
 	:	PreparedPolygonPredicate( prepPoly),
 		hasSegmentIntersection( false),
 		hasProperIntersection( false),
@@ -125,7 +125,7 @@
 		requireSomePointInInterior(requireSomePointInInterior)
 	{ }
 
-	virtual ~AbstractPreparedPolygonContains()
+	~AbstractPreparedPolygonContains() override
 	{ }
 
 };
diff -Nru geos-3.6.2/include/geos/geom/prep/BasicPreparedGeometry.h geos-3.7.1/include/geos/geom/prep/BasicPreparedGeometry.h
--- geos-3.6.2/include/geos/geom/prep/BasicPreparedGeometry.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/BasicPreparedGeometry.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -21,9 +21,9 @@
 #define GEOS_GEOM_PREP_BASICPREPAREDGEOMETRY_H
 
 #include  // for inheritance
-//#include  
-//#include  
-#include  
+//#include 
+//#include 
+#include 
 //#include 
 
 #include 
@@ -44,19 +44,19 @@
 // * \class BasicPreparedGeometry
 
 /**
- * 
+ *
  * \brief
  * A base class for {@link PreparedGeometry} subclasses.
- * 
+ *
  * Contains default implementations for methods, which simply delegate
  * to the equivalent {@link Geometry} methods.
  * This class may be used as a "no-op" class for Geometry types
  * which do not have a corresponding {@link PreparedGeometry} implementation.
- * 
+ *
  * @author Martin Davis
  *
  */
-class BasicPreparedGeometry: public PreparedGeometry 
+class BasicPreparedGeometry: public PreparedGeometry
 {
 private:
 	const geom::Geometry * baseGeom;
@@ -67,21 +67,21 @@
 	 * Sets the original {@link Geometry} which will be prepared.
 	 */
 	void setGeometry( const geom::Geometry * geom );
-	
+
 	/**
-	 * Determines whether a Geometry g interacts with 
+	 * Determines whether a Geometry g interacts with
 	 * this geometry by testing the geometry envelopes.
-	 *  
+	 *
 	 * @param g a Geometry
 	 * @return true if the envelopes intersect
 	 */
 	bool envelopesIntersect(const geom::Geometry* g) const;
 
 	/**
-	 * Determines whether the envelope of 
+	 * Determines whether the envelope of
 	 * this geometry covers the Geometry g.
-	 * 
-	 *  
+	 *
+	 *
 	 * @param g a Geometry
 	 * @return true if g is contained in this envelope
 	 */
@@ -90,9 +90,9 @@
 public:
 	BasicPreparedGeometry( const Geometry * geom);
 
-	~BasicPreparedGeometry( );
+	~BasicPreparedGeometry( ) override;
 
-	const geom::Geometry & getGeometry() const
+	const geom::Geometry & getGeometry() const override
 	{
 		return *baseGeom;
 	}
@@ -100,8 +100,8 @@
 	/**
 	 * Gets the list of representative points for this geometry.
 	 * One vertex is included for every component of the geometry
-	 * (i.e. including one for every ring of polygonal geometries) 
-	 * 
+	 * (i.e. including one for every ring of polygonal geometries)
+	 *
 	 * @return a List of Coordinate
 	 */
 	const Coordinate::ConstVect * getRepresentativePoints()  const
@@ -110,10 +110,10 @@
 	}
 
 	/**
-	 * Tests whether any representative of the target geometry 
+	 * Tests whether any representative of the target geometry
 	 * intersects the test geometry.
 	 * This is useful in A/A, A/L, A/P, L/P, and P/P cases.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @param repPts the representative points of the target geometry
 	 * @return true if any component intersects the areal test geometry
@@ -123,53 +123,53 @@
 	/**
 	 * Default implementation.
 	 */
-	bool contains(const geom::Geometry * g) const;
+	bool contains(const geom::Geometry * g) const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool containsProperly(const geom::Geometry * g)	const;
+	bool containsProperly(const geom::Geometry * g)	const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool coveredBy(const geom::Geometry * g) const;
+	bool coveredBy(const geom::Geometry * g) const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool covers(const geom::Geometry * g) const;
+	bool covers(const geom::Geometry * g) const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool crosses(const geom::Geometry * g) const;
+	bool crosses(const geom::Geometry * g) const override;
 
 	/**
 	 * Standard implementation for all geometries.
 	 * Supports {@link GeometryCollection}s as input.
 	 */
-	bool disjoint(const geom::Geometry * g)	const;
+	bool disjoint(const geom::Geometry * g)	const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool intersects(const geom::Geometry * g) const;
+	bool intersects(const geom::Geometry * g) const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool overlaps(const geom::Geometry * g)	const;
+	bool overlaps(const geom::Geometry * g)	const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool touches(const geom::Geometry * g) const;
+	bool touches(const geom::Geometry * g) const override;
 
 	/**
 	 * Default implementation.
 	 */
-	bool within(const geom::Geometry * g) const;
+	bool within(const geom::Geometry * g) const override;
 
 	std::string toString();
 
diff -Nru geos-3.6.2/include/geos/geom/prep/Makefile.in geos-3.7.1/include/geos/geom/prep/Makefile.in
--- geos-3.6.2/include/geos/geom/prep/Makefile.in	2017-07-25 09:27:29.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/Makefile.in	2018-11-29 23:05:17.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -100,6 +100,9 @@
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \
 	$(top_srcdir)/macros/ac_python_devel.m4 \
+	$(top_srcdir)/macros/ax_check_compile_flag.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \
 	$(top_srcdir)/macros/libtool.m4 \
 	$(top_srcdir)/macros/ltoptions.m4 \
 	$(top_srcdir)/macros/ltsugar.m4 \
@@ -225,6 +228,7 @@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
 INLINE_FLAGS = @INLINE_FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -273,6 +277,8 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RUBY = @RUBY@
+RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@
+RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@
 RUBY_BIN_DIR = @RUBY_BIN_DIR@
 RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@
 RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@
@@ -293,6 +299,7 @@
 VERSION_MAJOR = @VERSION_MAJOR@
 VERSION_MINOR = @VERSION_MINOR@
 VERSION_PATCH = @VERSION_PATCH@
+VERSION_RELEASE = @VERSION_RELEASE@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
@@ -342,7 +349,6 @@
 psdir = @psdir@
 pyexecdir = @pyexecdir@
 pythondir = @pythondir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -391,8 +397,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -483,7 +489,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedGeometryFactory.h geos-3.7.1/include/geos/geom/prep/PreparedGeometryFactory.h
--- geos-3.6.2/include/geos/geom/prep/PreparedGeometryFactory.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedGeometryFactory.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -40,12 +40,12 @@
 /**
  * \brief
  * A factory for creating {@link PreparedGeometry}s.
- * 
+ *
  * It chooses an appropriate implementation of PreparedGeometry
  * based on the geoemtric type of the input geometry.
  * In the future, the factory may accept hints that indicate
  * special optimizations which can be performed.
- * 
+ *
  * @author Martin Davis
  *
  */
@@ -55,19 +55,19 @@
 
 	/**
 	* Creates a new {@link PreparedGeometry} appropriate for the argument {@link Geometry}.
-	* 
+	*
 	* @param geom the geometry to prepare
 	* @return the prepared geometry
 	*/
-	static const PreparedGeometry * prepare(const geom::Geometry * geom) 
+	static const PreparedGeometry * prepare(const geom::Geometry * geom)
 	{
 		PreparedGeometryFactory pf;
-		return pf.create(geom); 
+		return pf.create(geom);
 	}
-    
+
     /**
  	* Destroys {@link PreparedGeometry} allocated with the factory.
- 	* 
+ 	*
 	* @param geom to be deallocated
 	*/
     static void destroy(const PreparedGeometry* geom)
@@ -77,7 +77,7 @@
 
 	/**
  	* Creates a new {@link PreparedGeometry} appropriate for the argument {@link Geometry}.
- 	* 
+ 	*
 	* @param geom the geometry to prepare
 	* @return the prepared geometry
 	*/
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedGeometry.h geos-3.7.1/include/geos/geom/prep/PreparedGeometry.h
--- geos-3.6.2/include/geos/geom/prep/PreparedGeometry.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedGeometry.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -23,7 +23,7 @@
 
 // Forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 	}
 }
@@ -37,36 +37,36 @@
  * \class PreparedGeometry
  *
  * \brief
- * An interface for classes which prepare {@link Geometry}s 
+ * An interface for classes which prepare {@link Geometry}s
  * in order to optimize the performance
  * of repeated calls to specific geometric operations.
- * 
+ *
  * A given implementation may provide optimized implementations
- * for only some of the specified methods, 
+ * for only some of the specified methods,
  * and delegate the remaining methods to the original {@link Geometry} operations.
  * An implementation may also only optimize certain situations,
- * and delegate others. 
+ * and delegate others.
  * See the implementing classes for documentation about which methods and situations
  * they optimize.
- * 
+ *
  */
 class GEOS_DLL PreparedGeometry {
 public:
 	virtual ~PreparedGeometry() {}
-	
+
 	/**
 	 * Gets the original {@link Geometry} which has been prepared.
-	 * 
+	 *
 	 * @return the base geometry
 	 */
 	virtual const geom::Geometry & getGeometry() const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} contains a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry contains the given Geometry
-	 * 
+	 *
 	 * @see Geometry#contains(Geometry)
 	 */
 	virtual bool contains(const geom::Geometry *geom) const =0;
@@ -74,13 +74,13 @@
 	/** \brief
 	 * Tests whether the base {@link Geometry} properly contains
 	 * a given geometry.
-	 * 
+	 *
 	 * The containsProperly predicate has the following
 	 * equivalent definitions:
-	 * 
+	 *
 	 * - Every point of the other geometry is a point of this
 	 *   geometry's interior.
-	 * - The DE-9IM Intersection Matrix for the two geometries matches 
+	 * - The DE-9IM Intersection Matrix for the two geometries matches
 	 *   [T**FF*FF*]
 	 *
          * In other words, if the test geometry has any interaction with
@@ -89,7 +89,7 @@
          * This is different semantics to the {@link Geometry::contains}
 	 * predicate, * in which test geometries can intersect the target's
 	 * boundary and still be contained.
-	 * 
+	 *
          * The advantage of using this predicate is that it can be computed
          * efficiently, since it avoids the need to compute the full
 	 * topological relationship of the input boundaries in cases where
@@ -103,91 +103,91 @@
 	 * which lie
          * wholly inside the area.  In these cases the intersection is
          * known a priori to be exactly the original test geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry properly contains the given Geometry
 	 *
 	 * @see Geometry::contains
-	 * 
+	 *
 	 */
 	virtual bool containsProperly(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} is covered by a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry is covered by the given Geometry
-	 * 
+	 *
 	 * @see Geometry#coveredBy(Geometry)
 	 */
 	virtual bool coveredBy(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} covers a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry covers the given Geometry
-	 * 
+	 *
 	 * @see Geometry#covers(Geometry)
 	 */
 	virtual bool covers(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} crosses a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry crosses the given Geometry
-	 * 
+	 *
 	 * @see Geometry#crosses(Geometry)
 	 */
 	virtual bool crosses(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} is disjoint from a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry is disjoint from the given Geometry
-	 * 
+	 *
 	 * @see Geometry#disjoint(Geometry)
 	 */
 	virtual bool disjoint(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} intersects a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry intersects the given Geometry
-	 * 
+	 *
 	 * @see Geometry#intersects(Geometry)
 	 */
 	virtual bool intersects(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} overlaps a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry overlaps the given Geometry
-	 * 
+	 *
 	 * @see Geometry#overlaps(Geometry)
 	 */
 	virtual bool overlaps(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} touches a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry touches the given Geometry
-	 * 
+	 *
 	 * @see Geometry#touches(Geometry)
 	 */
 	virtual bool touches(const geom::Geometry *geom) const =0;
 
 	/**
 	 * Tests whether the base {@link Geometry} is within a given geometry.
-	 * 
+	 *
 	 * @param geom the Geometry to test
 	 * @return true if this Geometry is within the given Geometry
-	 * 
+	 *
 	 * @see Geometry#within(Geometry)
 	 */
 	virtual bool within(const geom::Geometry *geom) const =0;
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedLineString.h geos-3.7.1/include/geos/geom/prep/PreparedLineString.h
--- geos-3.6.2/include/geos/geom/prep/PreparedLineString.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedLineString.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -21,7 +21,7 @@
 #define GEOS_GEOM_PREP_PREPAREDLINESTRING_H
 
 #include  // for inheritance
-#include  
+#include 
 
 namespace geos {
 	namespace noding {
@@ -36,11 +36,11 @@
 /**
  * \brief
  * A prepared version of {@link LinearRing}, {@link LineString} or {@link MultiLineString} geometries.
- * 
+ *
  * @author mbdavis
  *
  */
-class PreparedLineString : public BasicPreparedGeometry 
+class PreparedLineString : public BasicPreparedGeometry
 {
 private:
 	noding::FastSegmentSetIntersectionFinder * segIntFinder;
@@ -48,17 +48,17 @@
 
 protected:
 public:
-	PreparedLineString(const Geometry * geom) 
-		: 
+	PreparedLineString(const Geometry * geom)
+		:
 		BasicPreparedGeometry( geom),
-		segIntFinder( NULL)
+		segIntFinder( nullptr)
 	{ }
 
-	~PreparedLineString();
+	~PreparedLineString() override;
 
 	noding::FastSegmentSetIntersectionFinder * getIntersectionFinder();
 
-	bool intersects(const geom::Geometry * g) const;
+	bool intersects(const geom::Geometry * g) const override;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedLineStringIntersects.h geos-3.7.1/include/geos/geom/prep/PreparedLineStringIntersects.h
--- geos-3.6.2/include/geos/geom/prep/PreparedLineStringIntersects.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedLineStringIntersects.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -21,9 +21,9 @@
 #define GEOS_GEOM_PREP_PREPAREDLINESTRINGINTERSECTS_H
 
 #include 
-#include  
-#include  
-#include  
+#include 
+#include 
+#include 
 #include 
 
 namespace geos {
@@ -35,9 +35,9 @@
  * Computes the intersects spatial relationship predicate
  * for a target {@link PreparedLineString} relative to all other
  * {@link Geometry} classes.
- * 
- * Uses short-circuit tests and indexing to improve performance. 
- * 
+ *
+ * Uses short-circuit tests and indexing to improve performance.
+ *
  * @author Martin Davis
  *
  */
@@ -48,12 +48,12 @@
 	/**
 	 * Computes the intersects predicate between a {@link PreparedLineString}
 	 * and a {@link Geometry}.
-	 * 
+	 *
 	 * @param prep the prepared linestring
 	 * @param geom a test geometry
 	 * @return true if the linestring intersects the geometry
 	 */
-	static bool intersects(  PreparedLineString & prep, const geom::Geometry * geom ) 
+	static bool intersects(  PreparedLineString & prep, const geom::Geometry * geom )
 	{
 		PreparedLineStringIntersects op( prep);
 		return op.intersects( geom);
@@ -62,13 +62,13 @@
     /**
      * \todo FIXME - mloskot: Why not taking linestring through const reference?
      */
-	PreparedLineStringIntersects(PreparedLineString & prep) 
+	PreparedLineStringIntersects(PreparedLineString & prep)
 		: prepLine( prep)
 	{ }
 
 	/**
 	 * Tests whether this geometry intersects a given geometry.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if the test geometry intersects
 	 */
@@ -81,15 +81,15 @@
 	 * Tests whether any representative point of the test Geometry intersects
 	 * the target geometry.
 	 * Only handles test geometries which are Puntal (dimension 0)
-	 * 
+	 *
 	 * @param geom a Puntal geometry to test
 	 * @return true if any point of the argument intersects the prepared geometry
 	 */
 	bool isAnyTestPointInTarget(const geom::Geometry * testGeom) const;
 
     // Declare type as noncopyable
-    PreparedLineStringIntersects(const PreparedLineStringIntersects& other);
-    PreparedLineStringIntersects& operator=(const PreparedLineStringIntersects& rhs);
+    PreparedLineStringIntersects(const PreparedLineStringIntersects& other) = delete;
+    PreparedLineStringIntersects& operator=(const PreparedLineStringIntersects& rhs) = delete;
 };
 
 } // namespace geos::geom::prep
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPoint.h geos-3.7.1/include/geos/geom/prep/PreparedPoint.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPoint.h	2016-04-23 14:13:04.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPoint.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -29,26 +29,26 @@
 /**
  * \brief
  * A prepared version of {@link Point} or {@link MultiPoint} geometries.
- * 
+ *
  * @author Martin Davis
  *
  */
-class PreparedPoint: public BasicPreparedGeometry 
+class PreparedPoint: public BasicPreparedGeometry
 {
 private:
 protected:
 public:
-	PreparedPoint(const Geometry * geom) 
-		: BasicPreparedGeometry( geom) 
+	PreparedPoint(const Geometry * geom)
+		: BasicPreparedGeometry( geom)
 	{ }
 
 	/**
 	 * Tests whether this point intersects a {@link Geometry}.
-	 * 
+	 *
 	 * The optimization here is that computing topology for the test
 	 * geometry is avoided. This can be significant for large geometries.
 	 */
-	bool intersects(const geom::Geometry* g) const;
+	bool intersects(const geom::Geometry* g) const override;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPolygonContains.h geos-3.7.1/include/geos/geom/prep/PreparedPolygonContains.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPolygonContains.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPolygonContains.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -24,10 +24,10 @@
 
 // forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 
-		namespace prep { 
+		namespace prep {
 			class PreparedPolygon;
 		}
 	}
@@ -41,30 +41,30 @@
  * \brief
  * Computes the contains spatial relationship predicate
  * for a {@link PreparedPolygon} relative to all other {@link Geometry} classes.
- * 
- * Uses short-circuit tests and indexing to improve performance. 
- * 
+ *
+ * Uses short-circuit tests and indexing to improve performance.
+ *
  * It is not possible to short-circuit in all cases, in particular
  * in the case where the test geometry touches the polygon linework.
  * In this case full topology must be computed.
- * 
+ *
  * @author Martin Davis
  *
  */
-class PreparedPolygonContains : public AbstractPreparedPolygonContains 
+class PreparedPolygonContains : public AbstractPreparedPolygonContains
 {
 public:
 
 	/**
 	 * Creates an instance of this operation.
-	 * 
+	 *
 	 * @param prepPoly the PreparedPolygon to evaluate
 	 */
 	PreparedPolygonContains(const PreparedPolygon * const prepPoly);
 
 	/**
 	 * Tests whether this PreparedPolygon contains a given geometry.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if the test geometry is contained
 	 */
@@ -76,7 +76,7 @@
 	/**
 	 * Computes the contains predicate between a {@link PreparedPolygon}
 	 * and a {@link Geometry}.
-	 * 
+	 *
 	 * @param prep the prepared polygon
 	 * @param geom a test geometry
 	 * @return true if the polygon contains the geometry
@@ -91,11 +91,11 @@
 	/**
 	* Computes the full topological contains predicate.
 	* Used when short-circuit tests are not conclusive.
-	* 
+	*
 	* @param geom the test geometry
 	* @return true if this prepared polygon contains the test geometry
 	*/
-	bool fullTopologicalPredicate(const geom::Geometry * geom);
+	bool fullTopologicalPredicate(const geom::Geometry * geom) override;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPolygonContainsProperly.h geos-3.7.1/include/geos/geom/prep/PreparedPolygonContainsProperly.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPolygonContainsProperly.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPolygonContainsProperly.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -24,10 +24,10 @@
 #include  // inherited
 
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 
-		namespace prep { 
+		namespace prep {
 			class PreparedPolygon;
 		}
 	}
@@ -42,18 +42,18 @@
  * Computes the containsProperly spatial relationship predicate
  * for {@link PreparedPolygon}s relative to all other {@link Geometry} classes.
  *
- * Uses short-circuit tests and indexing to improve performance. 
- * 
+ * Uses short-circuit tests and indexing to improve performance.
+ *
  * A Geometry A containsProperly another Geometry B iff
  * all points of B are contained in the Interior of A.
- * Equivalently, B is contained in A AND B does not intersect 
+ * Equivalently, B is contained in A AND B does not intersect
  * the Boundary of A.
- * 
+ *
  * The advantage to using this predicate is that it can be computed
  * efficiently, with no need to compute topology at individual points.
- * In a situation with many geometries intersecting the boundary 
+ * In a situation with many geometries intersecting the boundary
  * of the target geometry, this can make a performance difference.
- * 
+ *
  * @author Martin Davis
  */
 class PreparedPolygonContainsProperly : public PreparedPolygonPredicate
@@ -64,13 +64,13 @@
 	/**
 	 * Computes the containsProperly predicate between a {@link PreparedPolygon}
 	 * and a {@link Geometry}.
-	 * 
+	 *
 	 * @param prep the prepared polygon
 	 * @param geom a test geometry
 	 * @return true if the polygon properly contains the geometry
 	 */
-	static 
-	bool 
+	static
+	bool
 	containsProperly( const PreparedPolygon * const prep, const geom::Geometry * geom)
 	{
 		PreparedPolygonContainsProperly polyInt( prep);
@@ -79,20 +79,20 @@
 
 	/**
 	 * Creates an instance of this operation.
-	 * 
+	 *
 	 * @param prepPoly the PreparedPolygon to evaluate
 	 */
 	PreparedPolygonContainsProperly( const PreparedPolygon * const prep)
 	:	PreparedPolygonPredicate( prep)
 	{ }
-	
+
 	/**
 	 * Tests whether this PreparedPolygon containsProperly a given geometry.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if the test geometry is contained properly
 	 */
-	bool 
+	bool
 	containsProperly( const geom::Geometry * geom);
 
 };
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPolygonCovers.h geos-3.7.1/include/geos/geom/prep/PreparedPolygonCovers.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPolygonCovers.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPolygonCovers.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -25,10 +25,10 @@
 
 // forward declarations
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 
-		namespace prep { 
+		namespace prep {
 			class PreparedPolygon;
 		}
 	}
@@ -43,33 +43,33 @@
  * Computes the covers spatial relationship predicate
  * for a {@link PreparedPolygon} relative to all other {@link Geometry} classes.
  *
- * Uses short-circuit tests and indexing to improve performance. 
- * 
+ * Uses short-circuit tests and indexing to improve performance.
+ *
  * It is not possible to short-circuit in all cases, in particular
  * in the case where the test geometry touches the polygon linework.
  * In this case full topology must be computed.
- * 
+ *
  * @author Martin Davis
  *
  */
-class PreparedPolygonCovers : public AbstractPreparedPolygonContains 
+class PreparedPolygonCovers : public AbstractPreparedPolygonContains
 {
 private:
 protected:
 	/**
 	 * Computes the full topological covers predicate.
 	 * Used when short-circuit tests are not conclusive.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if this prepared polygon covers the test geometry
 	 */
-	bool fullTopologicalPredicate( const geom::Geometry * geom);
+	bool fullTopologicalPredicate( const geom::Geometry * geom) override;
 
 public:
 	/**
 	 * Computes the covers predicate between a {@link PreparedPolygon}
 	 * and a {@link Geometry}.
-	 * 
+	 *
 	 * @param prep the prepared polygon
 	 * @param geom a test geometry
 	 * @return true if the polygon covers the geometry
@@ -82,16 +82,16 @@
 
 	/**
 	 * Creates an instance of this operation.
-	 * 
+	 *
 	 * @param prepPoly the PreparedPolygon to evaluate
 	 */
 	PreparedPolygonCovers(const PreparedPolygon * const prep)
-	:	AbstractPreparedPolygonContains( prep, false) 
+	:	AbstractPreparedPolygonContains( prep, false)
 	{ }
-		
+
 	/**
 	 * Tests whether this PreparedPolygon covers a given geometry.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if the test geometry is covered
 	 */
@@ -99,7 +99,7 @@
 	{
 		return eval( geom);
 	}
-	
+
 };
 
 } // geos::geom::prep
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPolygon.h geos-3.7.1/include/geos/geom/prep/PreparedPolygon.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPolygon.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPolygon.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -21,7 +21,7 @@
 #define GEOS_GEOM_PREP_PREPAREDPOLYGON_H
 
 #include  // for inheritance
-#include  
+#include 
 
 namespace geos {
 	namespace noding {
@@ -41,11 +41,11 @@
 /**
  * \brief
  * A prepared version of {@link Polygon} or {@link MultiPolygon} geometries.
- * 
+ *
  * @author mbdavis
  *
  */
-class PreparedPolygon : public BasicPreparedGeometry 
+class PreparedPolygon : public BasicPreparedGeometry
 {
 private:
 	bool isRectangle;
@@ -56,15 +56,15 @@
 protected:
 public:
 	PreparedPolygon( const geom::Geometry * geom);
-	~PreparedPolygon( );
-  
+	~PreparedPolygon( ) override;
+
 	noding::FastSegmentSetIntersectionFinder * getIntersectionFinder() const;
 	algorithm::locate::PointOnGeometryLocator * getPointLocator() const;
-	
-	bool contains( const geom::Geometry* g) const;
-	bool containsProperly( const geom::Geometry* g) const;
-	bool covers( const geom::Geometry* g) const;
-	bool intersects( const geom::Geometry* g) const;
+
+	bool contains( const geom::Geometry* g) const override;
+	bool containsProperly( const geom::Geometry* g) const override;
+	bool covers( const geom::Geometry* g) const override;
+	bool intersects( const geom::Geometry* g) const override;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPolygonIntersects.h geos-3.7.1/include/geos/geom/prep/PreparedPolygonIntersects.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPolygonIntersects.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPolygonIntersects.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -24,10 +24,10 @@
 #include  // inherited
 
 namespace geos {
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 
-		namespace prep { 
+		namespace prep {
 			class PreparedPolygon;
 		}
 	}
@@ -41,9 +41,9 @@
  * \brief
  * Computes the intersects spatial relationship predicate
  * for {@link PreparedPolygon}s relative to all other {@link Geometry} classes.
- * 
- * Uses short-circuit tests and indexing to improve performance. 
- * 
+ *
+ * Uses short-circuit tests and indexing to improve performance.
+ *
  * @author Martin Davis
  *
  */
@@ -55,7 +55,7 @@
 	/**
 	 * Computes the intersects predicate between a {@link PreparedPolygon}
 	 * and a {@link Geometry}.
-	 * 
+	 *
 	 * @param prep the prepared polygon
 	 * @param geom a test geometry
 	 * @return true if the polygon intersects the geometry
@@ -65,19 +65,19 @@
 		PreparedPolygonIntersects polyInt(prep);
 		return polyInt.intersects( geom);
 	}
-	
+
 	/**
 	 * Creates an instance of this operation.
-	 * 
+	 *
 	 * @param prepPoly the PreparedPolygon to evaluate
 	 */
 	PreparedPolygonIntersects( const PreparedPolygon * const prep)
 	:	PreparedPolygonPredicate( prep)
 	{ }
-	
+
 	/**
 	 * Tests whether this PreparedPolygon intersects a given geometry.
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @return true if the test geometry intersects
 	 */
diff -Nru geos-3.6.2/include/geos/geom/prep/PreparedPolygonPredicate.h geos-3.7.1/include/geos/geom/prep/PreparedPolygonPredicate.h
--- geos-3.6.2/include/geos/geom/prep/PreparedPolygonPredicate.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/prep/PreparedPolygonPredicate.h	2018-11-29 22:42:00.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  *
@@ -30,10 +30,10 @@
 			class PointOnGeometryLocator;
 		}
 	}
-	namespace geom { 
+	namespace geom {
 		class Geometry;
 
-		namespace prep { 
+		namespace prep {
 			class PreparedPolygon;
 		}
 	}
@@ -50,26 +50,26 @@
 /**
  * \brief
  * A base class for predicate operations on {@link PreparedPolygon}s.
- * 
+ *
  * @author mbdavis
  *
  */
-class PreparedPolygonPredicate 
+class PreparedPolygonPredicate
 {
 private:
     // Declare type as noncopyable
-    PreparedPolygonPredicate(const PreparedPolygonPredicate& other);
-    PreparedPolygonPredicate& operator=(const PreparedPolygonPredicate& rhs);
+    PreparedPolygonPredicate(const PreparedPolygonPredicate& other) = delete;
+    PreparedPolygonPredicate& operator=(const PreparedPolygonPredicate& rhs) = delete;
 
 protected:
 	const PreparedPolygon * const prepPoly;
 
 	/** \brief
-	 * Tests whether all components of the test Geometry 
+	 * Tests whether all components of the test Geometry
 	 * are contained in the target geometry.
 	 *
 	 * Handles both linear and point components.
-	 * 
+	 *
 	 * @param geom a geometry to test
 	 * @return true if all components of the argument are contained
 	 *              in the target geometry
@@ -77,11 +77,11 @@
 	bool isAllTestComponentsInTarget(const geom::Geometry * testGeom) const;
 
 	/** \brief
-	 * Tests whether all components of the test Geometry 
+	 * Tests whether all components of the test Geometry
 	 * are contained in the interior of the target geometry.
 	 *
 	 * Handles both linear and point components.
-	 * 
+	 *
 	 * @param geom a geometry to test
 	 * @return true if all componenta of the argument are contained in
 	 *              the target geometry interior
@@ -93,7 +93,7 @@
 	 * the area of the target geometry.
 	 *
 	 * Handles test geometries with both linear and point components.
-	 * 
+	 *
 	 * @param geom a geometry to test
 	 * @return true if any component of the argument intersects the
 	 *              prepared geometry
@@ -105,7 +105,7 @@
 	 * the interior of the target geometry.
 	 *
 	 * Handles test geometries with both linear and point components.
-	 * 
+	 *
 	 * @param geom a geometry to test
 	 * @return true if any component of the argument intersects the
 	 *              prepared area geometry interior
@@ -113,9 +113,9 @@
 	bool isAnyTestComponentInTargetInterior( const geom::Geometry * testGeom) const;
 
 	/**
-	 * Tests whether any component of the target geometry 
+	 * Tests whether any component of the target geometry
 	 * intersects the test geometry (which must be an areal geometry)
-	 * 
+	 *
 	 * @param geom the test geometry
 	 * @param repPts the representative points of the target geometry
 	 * @return true if any component intersects the areal test geometry
@@ -125,7 +125,7 @@
 public:
 	/**
 	 * Creates an instance of this operation.
-	 * 
+	 *
 	 * @param prepPoly the PreparedPolygon to evaluate
 	 */
 	PreparedPolygonPredicate( const PreparedPolygon * const prepPoly)
diff -Nru geos-3.6.2/include/geos/geom/Puntal.h geos-3.7.1/include/geos/geom/Puntal.h
--- geos-3.6.2/include/geos/geom/Puntal.h	2017-04-04 09:13:52.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Puntal.h	2018-10-19 22:32:06.000000000 +0000
@@ -1,13 +1,13 @@
-/**********************************************************************
+/**********************************************************************
  *
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011  Sandro Santilli 
+ * Copyright (C) 2011  Sandro Santilli 
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -37,7 +37,7 @@
 class GEOS_DLL Puntal : public virtual Geometry
 {
 protected:
-  Puntal(): Geometry(0) {}
+  Puntal(): Geometry(nullptr) {}
 };
 
 } // namespace geos::geom
diff -Nru geos-3.6.2/include/geos/geom/Triangle.h geos-3.7.1/include/geos/geom/Triangle.h
--- geos-3.6.2/include/geos/geom/Triangle.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/Triangle.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -16,7 +16,7 @@
 #define GEOS_GEOM_TRIANGLE_H
 
 #include 
-#include  
+#include 
 
 #include 
 
@@ -48,7 +48,7 @@
 	 */
 	void inCentre(Coordinate& resultPoint);
 
-	/** 
+	/**
 	 * Computes the circumcentre of a triangle. The circumcentre is the centre of
 	 * the circumcircle, the smallest circle which encloses the triangle. It is
 	 * also the common intersection point of the perpendicular bisectors of the
@@ -61,17 +61,17 @@
 	 * This method uses an algorithm due to J.R.Shewchuk which uses normalization
 	 * to the origin to improve the accuracy of computation. (See Lecture Notes
 	 * on Geometric Robustness, Jonathan Richard Shewchuk, 1999).
-	 * 
+	 *
 	 * @param resultPoint the point into which to write the inCentre of the triangle
 	 */
 	void circumcentre(Coordinate& resultPoint);
 
 private:
 
-	/** 
+	/**
 	 * Computes the determinant of a 2x2 matrix. Uses standard double-precision
 	 * arithmetic, so is susceptible to round-off error.
-	 * 
+	 *
 	 * @param m00
 	 *          the [0,0] entry of the matrix
 	 * @param m01
diff -Nru geos-3.6.2/include/geos/geom/util/ComponentCoordinateExtracter.h geos-3.7.1/include/geos/geom/util/ComponentCoordinateExtracter.h
--- geos-3.6.2/include/geos/geom/util/ComponentCoordinateExtracter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/ComponentCoordinateExtracter.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -30,12 +30,12 @@
 namespace util { // geos::geom::util
 
 /** \brief
- * Extracts a single representative {@link Coordinate} 
+ * Extracts a single representative {@link Coordinate}
  * from each connected component of a {@link Geometry}.
  *
  * @version 1.9
  */
-class ComponentCoordinateExtracter : public GeometryComponentFilter 
+class ComponentCoordinateExtracter : public GeometryComponentFilter
 {
 public:
 	/**
@@ -53,17 +53,17 @@
 	 */
 	ComponentCoordinateExtracter( std::vector &newComps);
 
-	void filter_rw( Geometry * geom);
+	void filter_rw( Geometry * geom) override;
 
-	void filter_ro( const Geometry * geom);
+	void filter_ro( const Geometry * geom) override;
 
 private:
 
 	Coordinate::ConstVect &comps;
 
     // Declare type as noncopyable
-    ComponentCoordinateExtracter(const ComponentCoordinateExtracter& other);
-    ComponentCoordinateExtracter& operator=(const ComponentCoordinateExtracter& rhs);
+    ComponentCoordinateExtracter(const ComponentCoordinateExtracter& other) = delete;
+    ComponentCoordinateExtracter& operator=(const ComponentCoordinateExtracter& rhs) = delete;
 };
 
 } // namespace geos.geom.util
diff -Nru geos-3.6.2/include/geos/geom/util/CoordinateOperation.h geos-3.7.1/include/geos/geom/util/CoordinateOperation.h
--- geos-3.6.2/include/geos/geom/util/CoordinateOperation.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/CoordinateOperation.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -45,8 +45,8 @@
 	/**
 	 * Return a newly created geometry, ownership to caller
 	 */
-	virtual Geometry* edit(const Geometry *geometry,
-			const GeometryFactory *factory);
+	Geometry* edit(const Geometry *geometry,
+			const GeometryFactory *factory) override;
 
 	/**
 	 * Edits the array of Coordinate from a Geometry.
@@ -60,7 +60,7 @@
 			const Geometry *geometry)=0;
 
 
-	virtual ~CoordinateOperation() {}
+	~CoordinateOperation() override {}
 };
 
 
diff -Nru geos-3.6.2/include/geos/geom/util/GeometryCombiner.h geos-3.7.1/include/geos/geom/util/GeometryCombiner.h
--- geos-3.6.2/include/geos/geom/util/GeometryCombiner.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/GeometryCombiner.h	2018-10-19 22:32:06.000000000 +0000
@@ -7,7 +7,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -41,15 +41,15 @@
  * No validation of the result geometry is performed.
  * (The only case where invalidity is possible is where {@link Polygonal}
  * geometries are combined and result in a self-intersection).
- * 
+ *
  * @see GeometryFactory#buildGeometry
  */
-class GeometryCombiner 
+class GeometryCombiner
 {
 public:
     /**
      * Combines a collection of geometries.
-     * 
+     *
      * @param geoms the geometries to combine (ownership left to caller)
      * @return the combined geometry
      */
@@ -57,7 +57,7 @@
 
     /**
      * Combines two geometries.
-     * 
+     *
      * @param g0 a geometry to combine (ownership left to caller)
      * @param g1 a geometry to combine (ownership left to caller)
      * @return the combined geometry
@@ -66,7 +66,7 @@
 
     /**
      * Combines three geometries.
-     * 
+     *
      * @param g0 a geometry to combine (ownership left to caller)
      * @param g1 a geometry to combine (ownership left to caller)
      * @param g2 a geometry to combine (ownership left to caller)
@@ -82,14 +82,14 @@
 public:
     /**
      * Creates a new combiner for a collection of geometries
-     * 
+     *
      * @param geoms the geometries to combine
      */
     GeometryCombiner(std::vector const& geoms);
 
     /**
      * Extracts the GeometryFactory used by the geometries in a collection
-     * 
+     *
      * @param geoms
      * @return a GeometryFactory
      */
@@ -98,7 +98,7 @@
     /**
      * Computes the combination of the input geometries
      * to produce the most appropriate {@link Geometry} or {@link GeometryCollection}
-     * 
+     *
      * @return a Geometry which is the combination of the inputs
      */
     Geometry* combine();
@@ -107,8 +107,8 @@
     void extractElements(Geometry* geom, std::vector& elems);
 
     // Declare type as noncopyable
-    GeometryCombiner(const GeometryCombiner& other);
-    GeometryCombiner& operator=(const GeometryCombiner& rhs);
+    GeometryCombiner(const GeometryCombiner& other) = delete;
+    GeometryCombiner& operator=(const GeometryCombiner& rhs) = delete;
 };
 
 } // namespace geos.geom.util
diff -Nru geos-3.6.2/include/geos/geom/util/GeometryEditor.h geos-3.7.1/include/geos/geom/util/GeometryEditor.h
--- geos-3.6.2/include/geos/geom/util/GeometryEditor.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/GeometryEditor.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -63,7 +63,7 @@
  *   (e.g. holes may be removed from a Polygon, or LineStrings removed
  *   from a MultiLineString). Deletions will be propagated up the component
  *   tree appropriately.
- * 
+ *
  * Note that all changes must be consistent with the original Geometry's
  * structure
  * (e.g. a Polygon cannot be collapsed into a LineString).
diff -Nru geos-3.6.2/include/geos/geom/util/GeometryEditorOperation.h geos-3.7.1/include/geos/geom/util/GeometryEditorOperation.h
--- geos-3.6.2/include/geos/geom/util/GeometryEditorOperation.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/GeometryEditorOperation.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geom/util/GeometryExtracter.h geos-3.7.1/include/geos/geom/util/GeometryExtracter.h
--- geos-3.6.2/include/geos/geom/util/GeometryExtracter.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/GeometryExtracter.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,16 +3,16 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  * Copyright (C) 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
- ********************************************************************** 
+ **********************************************************************
  *
  * Last port: geom/util/GeometryExtracter.java r320 (JTS-1.12)
  *
@@ -74,7 +74,7 @@
 
     TargetContainer& comps_;
 
-    void filter_ro(const Geometry* geom)
+    void filter_ro(const Geometry* geom) override
     {
       if ( const ComponentType* c = dynamic_cast(geom) ) {
         comps_.push_back(c);
@@ -87,8 +87,8 @@
   };
 
   // Declare type as noncopyable
-  GeometryExtracter(const GeometryExtracter& other);
-  GeometryExtracter& operator=(const GeometryExtracter& rhs);
+  GeometryExtracter(const GeometryExtracter& other) = delete;
+  GeometryExtracter& operator=(const GeometryExtracter& rhs) = delete;
 };
 
 } // namespace geos.geom.util
diff -Nru geos-3.6.2/include/geos/geom/util/GeometryTransformer.h geos-3.7.1/include/geos/geom/util/GeometryTransformer.h
--- geos-3.6.2/include/geos/geom/util/GeometryTransformer.h	2016-12-02 13:59:59.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/GeometryTransformer.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2006 Refractions Research Inc.
  *
  * This is free software; you can redistribute and/or modify it under
@@ -23,10 +23,10 @@
 
 #include 
 #include  // destructor visibility for vector
-#include  // destructor visibility for auto_ptr
-#include  // destructor visibility for auto_ptr
+#include  // destructor visibility for unique_ptr
+#include  // destructor visibility for unique_ptr
 
-#include  // for auto_ptr
+#include  // for unique_ptr
 #include 
 
 // Forward declarations
@@ -97,7 +97,7 @@
 
 	virtual ~GeometryTransformer();
 
-	std::auto_ptr transform(const Geometry* nInputGeom);
+	std::unique_ptr transform(const Geometry* nInputGeom);
 
 	void setSkipTransformedInvalidInteriorRings(bool b);
 
@@ -114,42 +114,42 @@
 	 *
 	 * [final]
 	 */
-	CoordinateSequence::AutoPtr createCoordinateSequence(
-			std::auto_ptr< std::vector > coords);
+	CoordinateSequence::Ptr createCoordinateSequence(
+			std::unique_ptr< std::vector > coords);
 
-	virtual CoordinateSequence::AutoPtr transformCoordinates(
+	virtual CoordinateSequence::Ptr transformCoordinates(
 			const CoordinateSequence* coords,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformPoint(
+	virtual Geometry::Ptr transformPoint(
 			const Point* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformMultiPoint(
+	virtual Geometry::Ptr transformMultiPoint(
 			const MultiPoint* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformLinearRing(
+	virtual Geometry::Ptr transformLinearRing(
 			const LinearRing* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformLineString(
+	virtual Geometry::Ptr transformLineString(
 			const LineString* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformMultiLineString(
+	virtual Geometry::Ptr transformMultiLineString(
 			const MultiLineString* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformPolygon(
+	virtual Geometry::Ptr transformPolygon(
 			const Polygon* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformMultiPolygon(
+	virtual Geometry::Ptr transformMultiPolygon(
 			const MultiPolygon* geom,
 			const Geometry* parent);
 
-	virtual Geometry::AutoPtr transformGeometryCollection(
+	virtual Geometry::Ptr transformGeometryCollection(
 			const GeometryCollection* geom,
 			const Geometry* parent);
 
@@ -186,8 +186,8 @@
 	bool skipTransformedInvalidInteriorRings;
 
 	// Declare type as noncopyable
-	GeometryTransformer(const GeometryTransformer& other);
-	GeometryTransformer& operator=(const GeometryTransformer& rhs);
+	GeometryTransformer(const GeometryTransformer& other) = delete;
+	GeometryTransformer& operator=(const GeometryTransformer& rhs) = delete;
 };
 
 
diff -Nru geos-3.6.2/include/geos/geom/util/LinearComponentExtracter.h geos-3.7.1/include/geos/geom/util/LinearComponentExtracter.h
--- geos-3.6.2/include/geos/geom/util/LinearComponentExtracter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/LinearComponentExtracter.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -39,8 +39,8 @@
 	LineString::ConstVect &comps;
 
     // Declare type as noncopyable
-    LinearComponentExtracter(const LinearComponentExtracter& other);
-    LinearComponentExtracter& operator=(const LinearComponentExtracter& rhs);
+    LinearComponentExtracter(const LinearComponentExtracter& other) = delete;
+    LinearComponentExtracter& operator=(const LinearComponentExtracter& rhs) = delete;
 
 public:
 	/**
@@ -57,9 +57,9 @@
 	 */
 	LinearComponentExtracter(std::vector &newComps);
 
-	void filter_rw(Geometry *geom);
+	void filter_rw(Geometry *geom) override;
 
-	void filter_ro(const Geometry *geom);
+	void filter_ro(const Geometry *geom) override;
 
 };
 
diff -Nru geos-3.6.2/include/geos/geom/util/Makefile.in geos-3.7.1/include/geos/geom/util/Makefile.in
--- geos-3.6.2/include/geos/geom/util/Makefile.in	2017-07-25 09:27:29.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/Makefile.in	2018-11-29 23:05:17.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -100,6 +100,9 @@
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \
 	$(top_srcdir)/macros/ac_python_devel.m4 \
+	$(top_srcdir)/macros/ax_check_compile_flag.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \
 	$(top_srcdir)/macros/libtool.m4 \
 	$(top_srcdir)/macros/ltoptions.m4 \
 	$(top_srcdir)/macros/ltsugar.m4 \
@@ -225,6 +228,7 @@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
 INLINE_FLAGS = @INLINE_FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -273,6 +277,8 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RUBY = @RUBY@
+RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@
+RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@
 RUBY_BIN_DIR = @RUBY_BIN_DIR@
 RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@
 RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@
@@ -293,6 +299,7 @@
 VERSION_MAJOR = @VERSION_MAJOR@
 VERSION_MINOR = @VERSION_MINOR@
 VERSION_PATCH = @VERSION_PATCH@
+VERSION_RELEASE = @VERSION_RELEASE@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
@@ -342,7 +349,6 @@
 psdir = @psdir@
 pyexecdir = @pyexecdir@
 pythondir = @pythondir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -390,8 +396,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -482,7 +488,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru geos-3.6.2/include/geos/geom/util/PointExtracter.h geos-3.7.1/include/geos/geom/util/PointExtracter.h
--- geos-3.6.2/include/geos/geom/util/PointExtracter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/PointExtracter.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -46,17 +46,17 @@
 	 */
 	PointExtracter(Point::ConstVect& newComps);
 
-	void filter_rw(Geometry *geom);
+	void filter_rw(Geometry *geom) override;
 
-	void filter_ro(const Geometry *geom);
+	void filter_ro(const Geometry *geom) override;
 
 private:
 
 	Point::ConstVect& comps;
 
     // Declare type as noncopyable
-    PointExtracter(const PointExtracter& other);
-    PointExtracter& operator=(const PointExtracter& rhs);
+    PointExtracter(const PointExtracter& other) = delete;
+    PointExtracter& operator=(const PointExtracter& rhs) = delete;
 };
 
 } // namespace geos.geom.util
diff -Nru geos-3.6.2/include/geos/geom/util/PolygonExtracter.h geos-3.7.1/include/geos/geom/util/PolygonExtracter.h
--- geos-3.6.2/include/geos/geom/util/PolygonExtracter.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/PolygonExtracter.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -48,9 +48,9 @@
 	 */
 	PolygonExtracter(std::vector& newComps);
 
-	void filter_rw(Geometry *geom);
+	void filter_rw(Geometry *geom) override;
 
-	void filter_ro(const Geometry *geom);
+	void filter_ro(const Geometry *geom) override;
 
 private:
 
@@ -58,8 +58,8 @@
     std::vector& comps;
 
     // Declare type as noncopyable
-    PolygonExtracter(const PolygonExtracter& other);
-    PolygonExtracter& operator=(const PolygonExtracter& rhs);
+    PolygonExtracter(const PolygonExtracter& other) = delete;
+    PolygonExtracter& operator=(const PolygonExtracter& rhs) = delete;
 };
 
 } // namespace geos.geom.util
diff -Nru geos-3.6.2/include/geos/geom/util/ShortCircuitedGeometryVisitor.h geos-3.7.1/include/geos/geom/util/ShortCircuitedGeometryVisitor.h
--- geos-3.6.2/include/geos/geom/util/ShortCircuitedGeometryVisitor.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/ShortCircuitedGeometryVisitor.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geom/util/SineStarFactory.h geos-3.7.1/include/geos/geom/util/SineStarFactory.h
--- geos-3.6.2/include/geos/geom/util/SineStarFactory.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geom/util/SineStarFactory.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,11 +3,11 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli  createSineStar() const;
+  std::unique_ptr createSineStar() const;
 
 
 };
diff -Nru geos-3.6.2/include/geos/geomgraph/Depth.h geos-3.7.1/include/geos/geomgraph/Depth.h
--- geos-3.6.2/include/geos/geomgraph/Depth.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Depth.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
diff -Nru geos-3.6.2/include/geos/geomgraph/DirectedEdge.h geos-3.7.1/include/geos/geomgraph/DirectedEdge.h
--- geos-3.6.2/include/geos/geomgraph/DirectedEdge.h	2017-02-14 16:37:00.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/DirectedEdge.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -53,8 +53,8 @@
 	 */
 	static int depthFactor(int currLocation, int nextLocation);
 
-	//DirectedEdge();	
-	//virtual ~DirectedEdge();	
+	//DirectedEdge();
+	//virtual ~DirectedEdge();
 
 	DirectedEdge(Edge *newEdge, bool newIsForward);
 
@@ -118,7 +118,7 @@
 	 * This edge is a line edge if
 	 * - at least one of the labels is a line label
 	 * - any labels which are not line labels have all Locations = EXTERIOR
-	 * 
+	 *
 	 */
 	bool isLineEdge();
 
@@ -134,15 +134,15 @@
 	bool isInteriorAreaEdge();
 
 	/** \brief
-	 * Set both edge depths. 
+	 * Set both edge depths.
 	 *
-	 * One depth for a given side is provided. 
+	 * One depth for a given side is provided.
 	 * The other is computed depending on the Location transition and the
 	 * depthDelta of the edge.
 	 */
 	void setEdgeDepths(int position, int newDepth);
 
-	virtual std::string print() const;
+	std::string print() const override;
 
 	std::string printEdge();
 
@@ -160,16 +160,16 @@
 	DirectedEdge *sym;
 
 	/// the next edge in the edge ring for the polygon containing this edge
-	DirectedEdge *next; 
+	DirectedEdge *next;
 
 	/// the next edge in the MinimalEdgeRing that contains this edge
-	DirectedEdge *nextMin; 
+	DirectedEdge *nextMin;
 
 	/// the EdgeRing that this edge is part of
-	EdgeRing *edgeRing; 
+	EdgeRing *edgeRing;
 
 	/// the MinimalEdgeRing that this edge is part of
-	EdgeRing *minEdgeRing; 
+	EdgeRing *minEdgeRing;
 
 	/** \brief
 	 * The depth of each side (position) of this edge.
diff -Nru geos-3.6.2/include/geos/geomgraph/DirectedEdge.inl geos-3.7.1/include/geos/geomgraph/DirectedEdge.inl
--- geos-3.6.2/include/geos/geomgraph/DirectedEdge.inl	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/DirectedEdge.inl	2018-10-19 22:32:06.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
diff -Nru geos-3.6.2/include/geos/geomgraph/DirectedEdgeStar.h geos-3.7.1/include/geos/geomgraph/DirectedEdgeStar.h
--- geos-3.6.2/include/geos/geomgraph/DirectedEdgeStar.h	2017-02-14 16:37:00.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/DirectedEdgeStar.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -59,16 +59,16 @@
 	DirectedEdgeStar()
 		:
 		EdgeEndStar(),
-		resultAreaEdgeList(0),
+		resultAreaEdgeList(nullptr),
 		label()
 	{}
 
-	~DirectedEdgeStar() {
+	~DirectedEdgeStar() override {
 		delete resultAreaEdgeList;
 	}
 
 	/// Insert a directed edge in the list
-	void insert(EdgeEnd *ee);
+	void insert(EdgeEnd *ee) override;
 
 	Label &getLabel() { return label; }
 
@@ -82,7 +82,7 @@
 	 * Compute the labelling for all dirEdges in this star, as well
 	 * as the overall labelling
 	 */
-	void computeLabelling(std::vector *geom); // throw(TopologyException *);
+	void computeLabelling(std::vector *geom) override; // throw(TopologyException *);
 
 	/** \brief
 	 * For each dirEdge in the star,
@@ -98,17 +98,17 @@
 	 * Traverse the star of DirectedEdges, linking the included edges together.
 	 * To link two dirEdges, the  pointer for an incoming dirEdge
 	 * is set to the next outgoing edge.
-	 * 
+	 *
 	 * DirEdges are only linked if:
-	 * 
+	 *
 	 * - they belong to an area (i.e. they have sides)
 	 * - they are marked as being in the result
-	 * 
+	 *
 	 * Edges are linked in CCW order (the order they are stored).
 	 * This means that rings have their face on the Right
 	 * (in other words,
 	 * the topological location of the face is given by the RHS label of the DirectedEdge)
-	 * 
+	 *
 	 * PRECONDITION: No pair of dirEdges are both marked as being in the result
 	 */
 	void linkResultDirectedEdges(); // throw(TopologyException *);
@@ -132,7 +132,7 @@
 	 */
 	void computeDepths(DirectedEdge *de);
 
-	virtual std::string print() const;
+	std::string print() const override;
 
 private:
 
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeEnd.h geos-3.7.1/include/geos/geomgraph/EdgeEnd.h
--- geos-3.6.2/include/geos/geomgraph/EdgeEnd.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeEnd.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -65,7 +65,7 @@
 
 	/**
 	 * NOTES:
-	 *  - Copies the given Label 
+	 *  - Copies the given Label
 	 *  - keeps a pointer to given Edge, make sure it's
 	 *    not deleted before the EdgeEnd.
 	 *  - copies given Coordinates (maybe we should avoid that)
@@ -110,9 +110,9 @@
 
 	/**
 	 * Implements the total order relation:
-	 * 
+	 *
 	 *    a has a greater angle with the positive x-axis than b
-	 * 
+	 *
 	 * Using the obvious algorithm of simply computing the angle
 	 * is not robust, since the angle calculation is obviously
 	 * susceptible to roundoff.
@@ -144,13 +144,13 @@
 private:
 
 	/// the node this edge end originates at
-	Node* node;         
+	Node* node;
 
 	/// points of initial line segment. FIXME: do we need a copy here ?
-	geom::Coordinate p0, p1; 
+	geom::Coordinate p0, p1;
 
 	/// the direction vector for this edge from its starting point
-	double dx, dy;     
+	double dx, dy;
 
 	int quadrant;
 };
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeEndStar.h geos-3.7.1/include/geos/geomgraph/EdgeEndStar.h
--- geos-3.6.2/include/geos/geomgraph/EdgeEndStar.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeEndStar.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -137,7 +137,7 @@
 
 	virtual int getLocation(int geomIndex,
 		const geom::Coordinate& p,
-		std::vector *geom); 
+		std::vector *geom);
 
 	/** \brief
 	 * The location of the point for this star in
diff -Nru geos-3.6.2/include/geos/geomgraph/Edge.h geos-3.7.1/include/geos/geomgraph/Edge.h
--- geos-3.6.2/include/geos/geomgraph/Edge.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Edge.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -107,7 +107,7 @@
 	/// Takes ownership of CoordinateSequence
 	Edge(geom::CoordinateSequence* newPts);
 
-	virtual ~Edge();
+	~Edge() override;
 
 	virtual int getNumPoints() const {
 		return static_cast(pts->getSize());
@@ -133,7 +133,7 @@
 	}
 
 
-	virtual Depth &getDepth() { 
+	virtual Depth &getDepth() {
 		testInvariant();
 		return depth;
 	}
@@ -187,7 +187,7 @@
 		testInvariant();
 	}
 
-	virtual bool isIsolated() const {
+	bool isIsolated() const override {
 		testInvariant();
 		return isIsolatedVar;
 	}
@@ -212,7 +212,7 @@
 	/// A component only contributes if it has a labelling for both
 	/// parent geometries
 	///
-	virtual void computeIM(geom::IntersectionMatrix& im) {
+	void computeIM(geom::IntersectionMatrix& im) override {
 		updateIM(label, im);
 		testInvariant();
 	}
@@ -226,7 +226,7 @@
 
 	/**
 	 * equals is defined to be:
-	 * 
+	 *
 	 * e1 equals e2
 	 * iff
 	 * the coordinates of e1 are the same or the reverse of the coordinates in e2
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeIntersection.h geos-3.7.1/include/geos/geomgraph/EdgeIntersection.h
--- geos-3.6.2/include/geos/geomgraph/EdgeIntersection.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeIntersection.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2009-2011 Sandro Santilli 
+ * Copyright (C) 2009-2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -36,7 +36,7 @@
 
 /**
  * Represents a point on an edge which intersects with another edge.
- * 
+ *
  * The intersection may either be a single point, or a line segment
  * (in which case this point is the start of the line segment)
  * The intersection point must be precise.
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeIntersectionList.h geos-3.7.1/include/geos/geomgraph/EdgeIntersectionList.h
--- geos-3.6.2/include/geos/geomgraph/EdgeIntersectionList.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeIntersectionList.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeList.h geos-3.7.1/include/geos/geomgraph/EdgeList.h
--- geos-3.6.2/include/geos/geomgraph/EdgeList.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeList.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -49,8 +49,8 @@
 namespace geos {
 namespace geomgraph { // geos.geomgraph
 
-/** 
- * A EdgeList is a list of Edges. 
+/**
+ * A EdgeList is a list of Edges.
  *
  * It supports locating edges
  * that are pointwise equals to a target edge.
@@ -72,7 +72,7 @@
 
 	/**
 	 * An index of the edges, for fast lookup.
-	 * 
+	 *
 	 * OrientedCoordinateArray objects are owned by us.
 	 * TODO: optimize by dropping the OrientedCoordinateArray
 	 *       construction as a whole, and use CoordinateSequence
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeNodingValidator.h geos-3.7.1/include/geos/geomgraph/EdgeNodingValidator.h
--- geos-3.6.2/include/geos/geomgraph/EdgeNodingValidator.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeNodingValidator.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -94,7 +94,7 @@
 
 	EdgeNodingValidator(std::vector& edges)
 		:
-		segStr(), 
+		segStr(),
 		newCoordSeq(),
 		nv(toSegmentStrings(edges))
 	{}
diff -Nru geos-3.6.2/include/geos/geomgraph/EdgeRing.h geos-3.7.1/include/geos/geomgraph/EdgeRing.h
--- geos-3.6.2/include/geos/geomgraph/EdgeRing.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/EdgeRing.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -127,7 +127,7 @@
 
 #ifndef NDEBUG
 		// If this is not an hole, check that
-		// each hole is not null and 
+		// each hole is not null and
 		// has 'this' as it's shell
 		if ( ! shell )
 		{
@@ -159,10 +159,10 @@
 	 * Merge the RHS label from a DirectedEdge into the label for
 	 * this EdgeRing.
 	 *
-	 * The DirectedEdge label may be null. 
+	 * The DirectedEdge label may be null.
 	 * This is acceptable - it results from a node which is NOT
 	 * an intersection node between the Geometries
-	 * (e.g. the end node of a LinearRing). 
+	 * (e.g. the end node of a LinearRing).
 	 * In this case the DirectedEdge label does not contribute any
 	 * information to the overall labelling, and is
 	 * simply skipped.
@@ -192,7 +192,7 @@
 	bool isHoleVar;
 
 	/// if non-null, the ring is a hole and this EdgeRing is its containing shell
-	EdgeRing *shell;  
+	EdgeRing *shell;
 
 	void computeMaxNodeDegree();
 
diff -Nru geos-3.6.2/include/geos/geomgraph/GeometryGraph.h geos-3.7.1/include/geos/geomgraph/GeometryGraph.h
--- geos-3.6.2/include/geos/geomgraph/GeometryGraph.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/GeometryGraph.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -28,7 +28,7 @@
 #include 
 
 #include 
-#include  // for auto_ptr
+#include  // for unique_ptr
 #include 
 #include  // for LineStringLT
 
@@ -105,13 +105,13 @@
 	int argIndex;
 
 	/// Cache for fast responses to getBoundaryPoints
-	std::auto_ptr< geom::CoordinateSequence > boundaryPoints;
+	std::unique_ptr< geom::CoordinateSequence > boundaryPoints;
 
-	std::auto_ptr< std::vector > boundaryNodes;
+	std::unique_ptr< std::vector > boundaryNodes;
 
 	bool hasTooFewPointsVar;
 
-	geom::Coordinate invalidPoint; 
+	geom::Coordinate invalidPoint;
 
 	/// Allocates a new EdgeSetIntersector. Remember to delete it!
 	index::EdgeSetIntersector* createEdgeSetIntersector();
@@ -155,8 +155,8 @@
 		const geom::Coordinate& coord, int loc);
 
     // Declare type as noncopyable
-    GeometryGraph(const GeometryGraph& other);
-    GeometryGraph& operator=(const GeometryGraph& rhs);
+    GeometryGraph(const GeometryGraph& other) = delete;
+    GeometryGraph& operator=(const GeometryGraph& rhs) = delete;
 
 public:
 
@@ -175,7 +175,7 @@
 	GeometryGraph(int newArgIndex, const geom::Geometry *newParentGeom,
 	              const algorithm::BoundaryNodeRule& boundaryNodeRule);
 
-	virtual ~GeometryGraph();
+	~GeometryGraph() override;
 
 
 	const geom::Geometry* getGeometry();
@@ -214,7 +214,7 @@
 	index::SegmentIntersector* computeSelfNodes(
 			algorithm::LineIntersector *li,
 			bool computeRingSelfNodes,
-			const geom::Envelope *env=0)
+			const geom::Envelope *env=nullptr)
 	{
 		return computeSelfNodes(*li, computeRingSelfNodes, env);
 	}
@@ -223,7 +223,7 @@
 			algorithm::LineIntersector *li,
 			bool computeRingSelfNodes,
 			bool isDoneIfProperInt,
-			const geom::Envelope *env=0)
+			const geom::Envelope *env=nullptr)
 	{
 		return computeSelfNodes(*li, computeRingSelfNodes, isDoneIfProperInt, env);
 	}
@@ -232,21 +232,21 @@
 	// be deprecated.
 	index::SegmentIntersector* computeSelfNodes(
 			algorithm::LineIntersector& li,
-			bool computeRingSelfNodes, const geom::Envelope *env=0);
+			bool computeRingSelfNodes, const geom::Envelope *env=nullptr);
 
 	index::SegmentIntersector* computeSelfNodes(
 			algorithm::LineIntersector& li,
-			bool computeRingSelfNodes, bool isDoneIfProperInt, const geom::Envelope *env=0);
+			bool computeRingSelfNodes, bool isDoneIfProperInt, const geom::Envelope *env=nullptr);
 
 	index::SegmentIntersector* computeEdgeIntersections(GeometryGraph *g,
 		algorithm::LineIntersector *li, bool includeProper,
-		const geom::Envelope *env=0);
+		const geom::Envelope *env=nullptr);
 
 	std::vector *getEdges();
 
 	bool hasTooFewPoints();
 
-	const geom::Coordinate& getInvalidPoint(); 
+	const geom::Coordinate& getInvalidPoint();
 
 	const algorithm::BoundaryNodeRule& getBoundaryNodeRule() const
 	{ return boundaryNodeRule; }
diff -Nru geos-3.6.2/include/geos/geomgraph/GeometryGraph.inl geos-3.7.1/include/geos/geomgraph/GeometryGraph.inl
--- geos-3.6.2/include/geos/geomgraph/GeometryGraph.inl	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/GeometryGraph.inl	2018-10-19 22:32:06.000000000 +0000
@@ -3,7 +3,7 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
diff -Nru geos-3.6.2/include/geos/geomgraph/GraphComponent.h geos-3.7.1/include/geos/geomgraph/GraphComponent.h
--- geos-3.6.2/include/geos/geomgraph/GraphComponent.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/GraphComponent.h	2018-11-29 22:42:00.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -40,8 +40,8 @@
 
 /** \brief
  * A GraphComponent is the parent class for the objects'
- * that form a graph. 
- * 
+ * that form a graph.
+ *
  * Each GraphComponent can carry a Label.
  */
 class GEOS_DLL GraphComponent {
@@ -51,7 +51,7 @@
 	/*
 	 * GraphComponent copies the given Label.
 	 */
-	GraphComponent(const Label& newLabel); 
+	GraphComponent(const Label& newLabel);
 	virtual ~GraphComponent();
 
 	Label& getLabel() { return label; }
diff -Nru geos-3.6.2/include/geos/geomgraph/index/EdgeSetIntersector.h geos-3.7.1/include/geos/geomgraph/index/EdgeSetIntersector.h
--- geos-3.6.2/include/geos/geomgraph/index/EdgeSetIntersector.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/EdgeSetIntersector.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -33,7 +33,7 @@
 namespace geomgraph { // geos::geomgraph
 namespace index { // geos::geomgraph::index
 
-/* 
+/*
  * This is derived from a Java interface.
  */
 class GEOS_DLL EdgeSetIntersector {
diff -Nru geos-3.6.2/include/geos/geomgraph/index/Makefile.in geos-3.7.1/include/geos/geomgraph/index/Makefile.in
--- geos-3.6.2/include/geos/geomgraph/index/Makefile.in	2017-07-25 09:27:29.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/Makefile.in	2018-11-29 23:05:17.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -100,6 +100,9 @@
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \
 	$(top_srcdir)/macros/ac_python_devel.m4 \
+	$(top_srcdir)/macros/ax_check_compile_flag.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \
 	$(top_srcdir)/macros/libtool.m4 \
 	$(top_srcdir)/macros/ltoptions.m4 \
 	$(top_srcdir)/macros/ltsugar.m4 \
@@ -225,6 +228,7 @@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
 INLINE_FLAGS = @INLINE_FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -273,6 +277,8 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RUBY = @RUBY@
+RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@
+RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@
 RUBY_BIN_DIR = @RUBY_BIN_DIR@
 RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@
 RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@
@@ -293,6 +299,7 @@
 VERSION_MAJOR = @VERSION_MAJOR@
 VERSION_MINOR = @VERSION_MINOR@
 VERSION_PATCH = @VERSION_PATCH@
+VERSION_RELEASE = @VERSION_RELEASE@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
@@ -342,7 +349,6 @@
 psdir = @psdir@
 pyexecdir = @pyexecdir@
 pythondir = @pythondir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -389,8 +395,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -481,7 +487,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru geos-3.6.2/include/geos/geomgraph/index/MonotoneChainEdge.h geos-3.7.1/include/geos/geomgraph/index/MonotoneChainEdge.h
--- geos-3.6.2/include/geos/geomgraph/index/MonotoneChainEdge.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/MonotoneChainEdge.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geomgraph/index/MonotoneChain.h geos-3.7.1/include/geos/geomgraph/index/MonotoneChain.h
--- geos-3.6.2/include/geos/geomgraph/index/MonotoneChain.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/MonotoneChain.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -53,7 +53,7 @@
 		chainIndex(newChainIndex)
 	{}
 
-	~MonotoneChain() {}
+	~MonotoneChain() override {}
 
 	void computeIntersections(MonotoneChain *mc,SegmentIntersector *si) {
 		mce->computeIntersectsForChain(chainIndex,*(mc->mce),mc->chainIndex,*si);
diff -Nru geos-3.6.2/include/geos/geomgraph/index/MonotoneChainIndexer.h geos-3.7.1/include/geos/geomgraph/index/MonotoneChainIndexer.h
--- geos-3.6.2/include/geos/geomgraph/index/MonotoneChainIndexer.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/MonotoneChainIndexer.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SegmentIntersector.h geos-3.7.1/include/geos/geomgraph/index/SegmentIntersector.h
--- geos-3.6.2/include/geos/geomgraph/index/SegmentIntersector.h	2016-10-03 10:55:03.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SegmentIntersector.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -57,7 +57,7 @@
 	bool hasProperInterior;
 
 	bool isDone;
-	
+
 	bool isDoneWhenProperInt;
 
 	// the proper intersection point found
@@ -132,7 +132,7 @@
 	void setIsDoneIfProperInt(bool isDoneWhenProperInt);
 
 	bool getIsDone();
-	
+
 };
 
 } // namespace geos.geomgraph.index
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h geos-3.7.1/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h
--- geos-3.6.2/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SimpleEdgeSetIntersector.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -42,10 +42,10 @@
 	SimpleEdgeSetIntersector();
 
 	void computeIntersections(std::vector *edges,
-			SegmentIntersector *si, bool testAllSegments);
+			SegmentIntersector *si, bool testAllSegments) override;
 
 	void computeIntersections(std::vector *edges0,
-			std::vector *edges1, SegmentIntersector *si);
+			std::vector *edges1, SegmentIntersector *si) override;
 
 private:
 
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h geos-3.7.1/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h
--- geos-3.6.2/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h	2016-10-03 10:55:03.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SimpleMCSweepLineIntersector.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -57,14 +57,14 @@
 
 	SimpleMCSweepLineIntersector();
 
-	virtual ~SimpleMCSweepLineIntersector();
+	~SimpleMCSweepLineIntersector() override;
 
 	void computeIntersections(std::vector *edges,
-			SegmentIntersector *si, bool testAllSegments);
+			SegmentIntersector *si, bool testAllSegments) override;
 
 	void computeIntersections(std::vector *edges0,
 			std::vector *edges1,
-			SegmentIntersector *si);
+			SegmentIntersector *si) override;
 
 protected:
 
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SimpleSweepLineIntersector.h geos-3.7.1/include/geos/geomgraph/index/SimpleSweepLineIntersector.h
--- geos-3.6.2/include/geos/geomgraph/index/SimpleSweepLineIntersector.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SimpleSweepLineIntersector.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -54,15 +54,15 @@
 
 	SimpleSweepLineIntersector();
 
-	virtual ~SimpleSweepLineIntersector();
+	~SimpleSweepLineIntersector() override;
 
 	void computeIntersections(std::vector *edges,
 			SegmentIntersector *si,
-			bool testAllSegments);
+			bool testAllSegments) override;
 
 	void computeIntersections(std::vector *edges0,
 			std::vector *edges1,
-			SegmentIntersector *si);
+			SegmentIntersector *si) override;
 
 private:
 
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SweepLineEvent.h geos-3.7.1/include/geos/geomgraph/index/SweepLineEvent.h
--- geos-3.6.2/include/geos/geomgraph/index/SweepLineEvent.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SweepLineEvent.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -51,9 +51,9 @@
 
 	virtual ~SweepLineEvent();
 
-	bool isInsert() { return insertEvent==NULL; }
+	bool isInsert() { return insertEvent==nullptr; }
 
-	bool isDelete() { return insertEvent!=NULL; }
+	bool isDelete() { return insertEvent!=nullptr; }
 
 	SweepLineEvent* getInsertEvent() { return insertEvent; }
 
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SweepLineEventObj.h geos-3.7.1/include/geos/geomgraph/index/SweepLineEventObj.h
--- geos-3.6.2/include/geos/geomgraph/index/SweepLineEventObj.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SweepLineEventObj.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -23,7 +23,7 @@
 namespace index { // geos::geomgraph::index
 
 // This is here so that SweepLineEvent constructor
-// can use it as argument type. 
+// can use it as argument type.
 // Both  SweepLineSegment and MonotoneChain will
 // inherit from it.
 class GEOS_DLL SweepLineEventOBJ {
diff -Nru geos-3.6.2/include/geos/geomgraph/index/SweepLineSegment.h geos-3.7.1/include/geos/geomgraph/index/SweepLineSegment.h
--- geos-3.6.2/include/geos/geomgraph/index/SweepLineSegment.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/index/SweepLineSegment.h	2018-11-29 22:42:00.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************/
@@ -40,7 +40,7 @@
 class GEOS_DLL SweepLineSegment: public SweepLineEventOBJ {
 public:
 	SweepLineSegment(Edge *newEdge, int newPtIndex);
-	~SweepLineSegment();
+	~SweepLineSegment() override;
 	double getMinX();
 	double getMaxX();
 	void computeIntersections(SweepLineSegment *ss, SegmentIntersector *si);
diff -Nru geos-3.6.2/include/geos/geomgraph/Label.h geos-3.7.1/include/geos/geomgraph/Label.h
--- geos-3.6.2/include/geos/geomgraph/Label.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Label.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -22,7 +22,7 @@
 #define GEOS_GEOMGRAPH_LABEL_H
 
 #include 
-#include  
+#include 
 
 #include 
 
@@ -36,7 +36,7 @@
  * of a topology graph to a given Geometry.
  * This class supports labels for relationships to two Geometrys,
  * which is sufficient for algorithms for binary operations.
- * 
+ *
  * Topology graphs support the concept of labeling nodes and edges in the graph.
  * The label of a node or edge specifies its topological relationship to one or
  * more geometries.  (In fact, since JTS operations have only two arguments labels
@@ -75,7 +75,7 @@
 	/** \brief
 	 * Construct a Label with the location specified
 	 * for the given Geometry.
-	 * 
+	 *
 	 * Other geometry location will be set to
 	 * Location::UNDEF.
 	 */
@@ -95,7 +95,7 @@
 
 	/** \brief
 	 * Initialize both locations to Location::UNDEF
-	 * 
+	 *
 	 * isNull() should return true after this kind of construction
 	 */
 	Label();
diff -Nru geos-3.6.2/include/geos/geomgraph/Makefile.in geos-3.7.1/include/geos/geomgraph/Makefile.in
--- geos-3.6.2/include/geos/geomgraph/Makefile.in	2017-07-25 09:27:29.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Makefile.in	2018-11-29 23:05:17.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -93,6 +93,9 @@
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \
 	$(top_srcdir)/macros/ac_python_devel.m4 \
+	$(top_srcdir)/macros/ax_check_compile_flag.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \
+	$(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \
 	$(top_srcdir)/macros/libtool.m4 \
 	$(top_srcdir)/macros/ltoptions.m4 \
 	$(top_srcdir)/macros/ltsugar.m4 \
@@ -171,7 +174,7 @@
   $(RECURSIVE_CLEAN_TARGETS) \
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
-	distdir
+	distdir distdir-am
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 # Read a list of newline-separated strings from the standard input,
 # and print each of them once, without duplicates.  Input order is
@@ -260,6 +263,7 @@
 EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GREP = @GREP@
+HAVE_CXX11 = @HAVE_CXX11@
 INLINE_FLAGS = @INLINE_FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -308,6 +312,8 @@
 PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RUBY = @RUBY@
+RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@
+RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@
 RUBY_BIN_DIR = @RUBY_BIN_DIR@
 RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@
 RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@
@@ -328,6 +334,7 @@
 VERSION_MAJOR = @VERSION_MAJOR@
 VERSION_MINOR = @VERSION_MINOR@
 VERSION_PATCH = @VERSION_PATCH@
+VERSION_RELEASE = @VERSION_RELEASE@
 abs_builddir = @abs_builddir@
 abs_srcdir = @abs_srcdir@
 abs_top_builddir = @abs_top_builddir@
@@ -377,7 +384,6 @@
 psdir = @psdir@
 pyexecdir = @pyexecdir@
 pythondir = @pythondir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -443,8 +449,8 @@
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -582,7 +588,10 @@
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -Nru geos-3.6.2/include/geos/geomgraph/NodeFactory.h geos-3.7.1/include/geos/geomgraph/NodeFactory.h
--- geos-3.6.2/include/geos/geomgraph/NodeFactory.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/NodeFactory.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
diff -Nru geos-3.6.2/include/geos/geomgraph/Node.h geos-3.7.1/include/geos/geomgraph/Node.h
--- geos-3.6.2/include/geos/geomgraph/Node.h	2016-11-22 10:45:24.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Node.h	2018-10-19 22:32:06.000000000 +0000
@@ -3,13 +3,13 @@
  * GEOS - Geometry Engine Open Source
  * http://geos.osgeo.org
  *
- * Copyright (C) 2011 Sandro Santilli 
+ * Copyright (C) 2011 Sandro Santilli 
  * Copyright (C) 2005-2006 Refractions Research Inc.
  * Copyright (C) 2001-2002 Vivid Solutions Inc.
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -68,13 +68,13 @@
 
 	Node(const geom::Coordinate& newCoord, EdgeEndStar* newEdges);
 
-	virtual ~Node();
+	~Node() override;
 
 	virtual const geom::Coordinate& getCoordinate() const;
 
 	virtual EdgeEndStar* getEdges();
 
-	virtual bool isIsolated() const;
+	bool isIsolated() const override;
 
 	/** \brief
 	 * Add the edge to the list of edges at this node
@@ -140,7 +140,7 @@
 	/** \brief
 	 * Basic nodes do not compute IMs
 	 */
-	virtual void computeIM(geom::IntersectionMatrix& /*im*/) {}
+	void computeIM(geom::IntersectionMatrix& /*im*/) override {}
 
 private:
 
@@ -158,11 +158,11 @@
 #ifndef NDEBUG
 	if (edges)
 	{
-		// Each EdgeEnd in the star has this Node's 
+		// Each EdgeEnd in the star has this Node's
 		// coordinate as first coordinate
 		for (EdgeEndStar::iterator
 				it=edges->begin(), itEnd=edges->end();
-				it != itEnd; it++) 
+				it != itEnd; it++)
 		{
 			EdgeEnd* e=*it;
 			assert(e);
@@ -173,7 +173,7 @@
 #if 0 // We can't rely on numerical stability with FP computations
 	// ztot is the sum of doubnle sin zvals vector
 	double ztot_check=0.0;
-	for (std::vector::const_iterator 
+	for (std::vector::const_iterator
 			i = zvals.begin(), e = zvals.end();
 			i != e;
 			i++)
diff -Nru geos-3.6.2/include/geos/geomgraph/NodeMap.h geos-3.7.1/include/geos/geomgraph/NodeMap.h
--- geos-3.6.2/include/geos/geomgraph/NodeMap.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/NodeMap.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -110,8 +110,8 @@
 private:
 
     // Declare type as noncopyable
-    NodeMap(const NodeMap& other);
-    NodeMap& operator=(const NodeMap& rhs);
+    NodeMap(const NodeMap& other) = delete;
+    NodeMap& operator=(const NodeMap& rhs) = delete;
 };
 
 } // namespace geos.geomgraph
diff -Nru geos-3.6.2/include/geos/geomgraph/PlanarGraph.h geos-3.7.1/include/geos/geomgraph/PlanarGraph.h
--- geos-3.6.2/include/geos/geomgraph/PlanarGraph.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/PlanarGraph.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -52,25 +52,25 @@
 /**
  * \brief
  * Represents a directed graph which is embeddable in a planar surface.
- * 
+ *
  * The computation of the IntersectionMatrix relies on the use of a structure
  * called a "topology graph".  The topology graph contains nodes and edges
  * corresponding to the nodes and line segments of a Geometry. Each
  * node and edge in the graph is labeled with its topological location
  * relative to the source geometry.
- * 
+ *
  * Note that there is no requirement that points of self-intersection
  * be a vertex.
  * Thus to obtain a correct topology graph, Geometry objects must be
  * self-noded before constructing their graphs.
  *
  * Two fundamental operations are supported by topology graphs:
- * 
+ *
  *  - Computing the intersections between all the edges and nodes of
  *    a single graph
  *  - Computing the intersections between the edges and nodes of two
  *    different graphs
- * 
+ *
  */
 class GEOS_DLL PlanarGraph {
 public:
diff -Nru geos-3.6.2/include/geos/geomgraph/Position.h geos-3.7.1/include/geos/geomgraph/Position.h
--- geos-3.6.2/include/geos/geomgraph/Position.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Position.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -44,13 +44,13 @@
 		/*
 		 * An indicator that a Location is to the
 		 * left of a GraphComponent
-		 */  
+		 */
 		LEFT,
 
 		/*
 		 * An indicator that a Location is to the
 		 * right of a GraphComponent
-		 */  
+		 */
 		RIGHT
 	};
 
diff -Nru geos-3.6.2/include/geos/geomgraph/Quadrant.h geos-3.7.1/include/geos/geomgraph/Quadrant.h
--- geos-3.6.2/include/geos/geomgraph/Quadrant.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/Quadrant.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -75,7 +75,7 @@
 	 */
 	static bool isOpposite(int quad1, int quad2);
 
-	/* 
+	/*
 	 * Returns the right-hand quadrant of the halfplane defined by
 	 * the two quadrants,
 	 * or -1 if the quadrants are opposite, or the quadrant if they
diff -Nru geos-3.6.2/include/geos/geomgraph/TopologyLocation.h geos-3.7.1/include/geos/geomgraph/TopologyLocation.h
--- geos-3.6.2/include/geos/geomgraph/TopologyLocation.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph/TopologyLocation.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -38,14 +38,14 @@
 /** \brief
  * A TopologyLocation is the labelling of a
  * GraphComponent's topological relationship to a single Geometry.
- * 
+ *
  * If the parent component is an area edge, each side and the edge itself
  * have a topological location.  These locations are named
- * 
+ *
  *  - ON: on the edge
  *  - LEFT: left-hand side of the edge
  *  - RIGHT: right-hand side
- * 
+ *
  * If the parent component is a line edge or node, there is a single
  * topological relationship attribute, ON.
  *
@@ -73,7 +73,7 @@
 	 * Geometry.
 	 *
 	 * Possible values for the
-	 * parameters are Location::UNDEF, Location::EXTERIOR, Location::BOUNDARY, 
+	 * parameters are Location::UNDEF, Location::EXTERIOR, Location::BOUNDARY,
 	 * and Location::INTERIOR.
 	 *
 	 * @see Location
diff -Nru geos-3.6.2/include/geos/geomgraph.h geos-3.7.1/include/geos/geomgraph.h
--- geos-3.6.2/include/geos/geomgraph.h	2016-01-20 20:28:25.000000000 +0000
+++ geos-3.7.1/include/geos/geomgraph.h	2018-10-19 22:32:06.000000000 +0000
@@ -8,7 +8,7 @@
  *
  * This is free software; you can redistribute and/or modify it under
  * the terms of the GNU Lesser General Public Licence as published
- * by the Free Software Foundation. 
+ * by the Free Software Foundation.
  * See the COPYING file for more information.
  *
  **********************************************************************
@@ -27,7 +27,7 @@
 
 /** \brief
  * Contains classes that implement topology graphs.
- * 
+ *
  * The Java Topology Suite (JTS) is a Java API that implements a core
  * set of spatial data operations using an explicit precision model
  * and robust geometric algorithms. JTS is int ended to be used in the
@@ -39,15 +39,15 @@
  * specification; in this case JTS attempts to choose a reasonable and
  * consistent alternative.  Differences from and elaborations of the SFS
  * are documented in this specification.
- * 
+ *
  * 

Package Specification

- * + * * - * + * */ namespace geomgraph { // geos.geomgraph } // namespace geos.geomgraph diff -Nru geos-3.6.2/include/geos/geomgraphindex.h geos-3.7.1/include/geos/geomgraphindex.h --- geos-3.6.2/include/geos/geomgraphindex.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/geomgraphindex.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -17,9 +17,9 @@ #define GEOS_GEOMGRAPH_INDEX_H namespace geos { -namespace geomgraph { -namespace index { -} +namespace geomgraph { +namespace index { +} } } diff -Nru geos-3.6.2/include/geos/geom.h geos-3.7.1/include/geos/geom.h --- geos-3.6.2/include/geos/geom.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/geom.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -25,7 +25,7 @@ * It has interfaces for C++, C and python (though swig). * * \section getstart_sec Getting Started - * + * * The recommended low-level interface to the GEOS library * is the simplified \ref c_iface. This will ensure stability of the * API and the ABI of the library during performance improvements @@ -85,7 +85,7 @@ * Note that prior to version 3.0.0, GEOSException were thrown by * pointer, and did not derive from std::exception. * - */ + */ namespace geos { diff -Nru geos-3.6.2/include/geos/geomUtil.h geos-3.7.1/include/geos/geomUtil.h --- geos-3.6.2/include/geos/geomUtil.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/geomUtil.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/geosAlgorithm.h geos-3.7.1/include/geos/geosAlgorithm.h --- geos-3.6.2/include/geos/geosAlgorithm.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/geosAlgorithm.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,10 +8,10 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * - ********************************************************************** + ********************************************************************** * * This includes all headers from geos/algorithm. * It is reccommended you avoid to include this file, but rather @@ -50,9 +50,9 @@ /** \brief * Contains classes and interfaces implementing fundamental computational geometry algorithms. - * + * *

Robustness

- * + * * Geometrical algorithms involve a combination of combinatorial and numerical computation. As with * all numerical computation using finite-precision numbers, the algorithms chosen are susceptible to * problems of robustness. A robustness problem occurs when a numerical calculation produces an @@ -64,9 +64,9 @@ * the non-robust versions. Fortunately, JTS is sensitive to robustness problems in only a few key * functions (such as line intersection and the point-in-polygon test). There are efficient robust * algorithms available for these functions, and these algorithms are implemented in JTS. - * + * *

Computational Performance

- * + * * Runtime performance is an important consideration for a production-quality implementation of * geometric algorithms. The most computationally intensive algorithm used in JTS is intersection * detection. JTS methods need to determine both all intersection between the line segments in a @@ -78,16 +78,16 @@ * detection. Unfortunately, many of them involve substantial code complexity. JTS tries to balance code * simplicity with performance gains. It uses some simple techniques to produce substantial performance * gains for common types of input data. - * - * + * + * *

Package Specification

- * + * * - * + * */ namespace algorithm { // geos::algorithm diff -Nru geos-3.6.2/include/geos/index/bintree/Bintree.h geos-3.7.1/include/geos/index/bintree/Bintree.h --- geos-3.6.2/include/geos/index/bintree/Bintree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/Bintree.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -25,8 +25,8 @@ // Forward declarations namespace geos { - namespace index { - namespace bintree { + namespace index { + namespace bintree { class Interval; class Root; } @@ -49,7 +49,7 @@ * This implementation does not require specifying the extent of the inserted * items beforehand. It will automatically expand to accomodate any extent * of dataset. - * + * * This index is different to the Interval Tree of Edelsbrunner * or the Segment Tree of Bentley. */ diff -Nru geos-3.6.2/include/geos/index/bintree/Interval.h geos-3.7.1/include/geos/index/bintree/Interval.h --- geos-3.6.2/include/geos/index/bintree/Interval.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/Interval.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/index/bintree/Key.h geos-3.7.1/include/geos/index/bintree/Key.h --- geos-3.6.2/include/geos/index/bintree/Key.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/Key.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -19,8 +19,8 @@ // Forward declarations namespace geos { - namespace index { - namespace bintree { + namespace index { + namespace bintree { class Interval; } } diff -Nru geos-3.6.2/include/geos/index/bintree/Makefile.in geos-3.7.1/include/geos/index/bintree/Makefile.in --- geos-3.6.2/include/geos/index/bintree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -425,8 +431,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -564,7 +570,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/bintree/NodeBase.h geos-3.7.1/include/geos/index/bintree/NodeBase.h --- geos-3.6.2/include/geos/index/bintree/NodeBase.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/NodeBase.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -20,8 +20,8 @@ // Forward declarations namespace geos { - namespace index { - namespace bintree { + namespace index { + namespace bintree { class Node; class Interval; } @@ -58,7 +58,7 @@ virtual int nodeSize(); -protected: +protected: std::vector* items; diff -Nru geos-3.6.2/include/geos/index/bintree/Node.h geos-3.7.1/include/geos/index/bintree/Node.h --- geos-3.6.2/include/geos/index/bintree/Node.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/Node.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -20,8 +20,8 @@ // Forward declarations namespace geos { - namespace index { - namespace bintree { + namespace index { + namespace bintree { class Interval; } } @@ -42,7 +42,7 @@ Node(Interval *newInterval,int newLevel); - ~Node(); + ~Node() override; Interval* getInterval(); @@ -66,7 +66,7 @@ protected: - bool isSearchMatch(Interval *itemInterval); + bool isSearchMatch(Interval *itemInterval) override; }; } // namespace geos::index::bintree diff -Nru geos-3.6.2/include/geos/index/bintree/Root.h geos-3.7.1/include/geos/index/bintree/Root.h --- geos-3.6.2/include/geos/index/bintree/Root.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/bintree/Root.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -20,8 +20,8 @@ // Forward declarations namespace geos { - namespace index { - namespace bintree { + namespace index { + namespace bintree { class Interval; class Node; } @@ -53,7 +53,7 @@ Root() {} - ~Root() {} + ~Root() override {} /// @param itemInterval /// Ownership left to caller, references kept in this class. @@ -65,7 +65,7 @@ protected: - bool isSearchMatch(Interval* /*interval*/) { return true; } + bool isSearchMatch(Interval* /*interval*/) override { return true; } }; } // namespace geos::index::bintree diff -Nru geos-3.6.2/include/geos/index/chain/Makefile.in geos-3.7.1/include/geos/index/chain/Makefile.in --- geos-3.6.2/include/geos/index/chain/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/chain/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -423,8 +429,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -562,7 +568,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/chain/MonotoneChainBuilder.h geos-3.7.1/include/geos/index/chain/MonotoneChainBuilder.h --- geos-3.6.2/include/geos/index/chain/MonotoneChainBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/chain/MonotoneChainBuilder.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -28,8 +28,8 @@ namespace geom { class CoordinateSequence; } - namespace index { - namespace chain { + namespace index { + namespace chain { class MonotoneChain; } } @@ -71,7 +71,7 @@ static std::vector* getChains(const geom::CoordinateSequence *pts) { - return getChains(pts, NULL); + return getChains(pts, nullptr); } /** \brief diff -Nru geos-3.6.2/include/geos/index/chain/MonotoneChain.h geos-3.7.1/include/geos/index/chain/MonotoneChain.h --- geos-3.6.2/include/geos/index/chain/MonotoneChain.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/chain/MonotoneChain.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ #include #include // for inline -#include // for auto_ptr +#include // for unique_ptr // Forward declarations namespace geos { @@ -31,8 +31,8 @@ class LineSegment; class CoordinateSequence; } - namespace index { - namespace chain { + namespace index { + namespace chain { class MonotoneChainSelectAction; class MonotoneChainOverlapAction; } @@ -48,11 +48,11 @@ * allow for fast searching of intersections. * * They have the following properties: - * + * * - the segments within a monotone chain never intersect each other * - the envelope of any contiguous subset of the segments in a monotone * chain is equal to the envelope of the endpoints of the subset. - * + * * Property 1 means that there is no need to test pairs of segments from * within the same monotone chain for intersection. * Property 2 allows an efficient binary search to be used to find the @@ -68,7 +68,7 @@ * have to be allocated. * * MonotoneChains support the following kinds of queries: - * + * * - Envelope select: determine all the segments in the chain which * intersect a given envelope * - Overlap: determine all the pairs of segments in two chains whose @@ -119,7 +119,7 @@ * Allocates a new CoordinateSequence to hold the Coordinates * */ - std::auto_ptr getCoordinates() const; + std::unique_ptr getCoordinates() const; /** * Determine all the line segments in the chain whose envelopes overlap @@ -148,7 +148,7 @@ std::size_t start1, std::size_t end1, MonotoneChainOverlapAction& mco); - /// Externally owned + /// Externally owned const geom::CoordinateSequence& pts; /// Owned by this class, lazely created @@ -167,8 +167,8 @@ int id; // Declare type as noncopyable - MonotoneChain(const MonotoneChain& other); - MonotoneChain& operator=(const MonotoneChain& rhs); + MonotoneChain(const MonotoneChain& other) = delete; + MonotoneChain& operator=(const MonotoneChain& rhs) = delete; }; } // namespace geos::index::chain diff -Nru geos-3.6.2/include/geos/index/chain/MonotoneChainOverlapAction.h geos-3.7.1/include/geos/index/chain/MonotoneChainOverlapAction.h --- geos-3.6.2/include/geos/index/chain/MonotoneChainOverlapAction.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/chain/MonotoneChainOverlapAction.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -26,8 +26,8 @@ // Forward declarations namespace geos { - namespace index { - namespace chain { + namespace index { + namespace chain { class MonotoneChain; } } diff -Nru geos-3.6.2/include/geos/index/chain/MonotoneChainSelectAction.h geos-3.7.1/include/geos/index/chain/MonotoneChainSelectAction.h --- geos-3.6.2/include/geos/index/chain/MonotoneChainSelectAction.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/chain/MonotoneChainSelectAction.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -26,8 +26,8 @@ // Forward declarations namespace geos { - namespace index { - namespace chain { + namespace index { + namespace chain { class MonotoneChain; } } diff -Nru geos-3.6.2/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h geos-3.7.1/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h --- geos-3.6.2/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/intervalrtree/IntervalRTreeBranchNode.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -52,14 +52,14 @@ node2( n2) { } - ~IntervalRTreeBranchNode() + ~IntervalRTreeBranchNode() override { delete node1; delete node2; } - - void query(double queryMin, double queryMax, index::ItemVisitor * visitor) const; + + void query(double queryMin, double queryMax, index::ItemVisitor * visitor) const override; }; } // geos::intervalrtree diff -Nru geos-3.6.2/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h geos-3.7.1/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h --- geos-3.6.2/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/intervalrtree/IntervalRTreeLeafNode.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -47,11 +47,11 @@ item( item) { } - ~IntervalRTreeLeafNode() + ~IntervalRTreeLeafNode() override { } - - void query( double queryMin, double queryMax, index::ItemVisitor * visitor) const; + + void query( double queryMin, double queryMax, index::ItemVisitor * visitor) const override; }; diff -Nru geos-3.6.2/include/geos/index/intervalrtree/IntervalRTreeNode.h geos-3.7.1/include/geos/index/intervalrtree/IntervalRTreeNode.h --- geos-3.6.2/include/geos/index/intervalrtree/IntervalRTreeNode.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/intervalrtree/IntervalRTreeNode.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -32,13 +32,13 @@ namespace index { namespace intervalrtree { -class IntervalRTreeNode +class IntervalRTreeNode { private: protected: double min; double max; - + bool intersects( double queryMin, double queryMax) const { if (min > queryMax || max < queryMin) @@ -60,28 +60,28 @@ max( max ) { } - virtual ~IntervalRTreeNode() + virtual ~IntervalRTreeNode() { } double getMin() const - { - return min; + { + return min; } - - double getMax() const - { - return max; + + double getMax() const + { + return max; } - + virtual void query( double queryMin, double queryMax, ItemVisitor * visitor) const =0; - + //std::string toString() //{ // return WKTWriter.toLineString(new Coordinate(min, 0), new Coordinate(max, 0)); //} - - //class NodeComparator + + //class NodeComparator //{ //public: static bool compare( const IntervalRTreeNode * n1, const IntervalRTreeNode * n2) diff -Nru geos-3.6.2/include/geos/index/intervalrtree/Makefile.in geos-3.7.1/include/geos/index/intervalrtree/Makefile.in --- geos-3.6.2/include/geos/index/intervalrtree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/intervalrtree/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -423,8 +429,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -562,7 +568,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h geos-3.7.1/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h --- geos-3.6.2/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/intervalrtree/SortedPackedIntervalRTree.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -35,18 +35,18 @@ * * It supports range searching, * where the range is an interval of the real line (which may be a single point). - * A common use is to index 1-dimensional intervals which + * A common use is to index 1-dimensional intervals which * are the projection of 2-D objects onto an axis of the coordinate system. - * - * This index structure is static + * + * This index structure is static * - items cannot be added or removed once the first query has been made. - * The advantage of this characteristic is that the index performance + * The advantage of this characteristic is that the index performance * can be optimized based on a fixed set of items. - * + * * @author Martin Davis * */ -class SortedPackedIntervalRTree +class SortedPackedIntervalRTree { private: IntervalRTreeNode::ConstVect * leaves; @@ -60,24 +60,24 @@ protected: public: SortedPackedIntervalRTree(); - + ~SortedPackedIntervalRTree(); /** * Adds an item to the index which is associated with the given interval - * + * * @param min the lower bound of the item interval * @param max the upper bound of the item interval * @param item the item to insert, ownership left to caller - * + * * @throw IllegalStateException if the index has already been queried */ void insert( double min, double max, void * item); - + /** * Search for intervals in the index which intersect the given closed interval * and apply the visitor to them. - * + * * @param min the lower bound of the query interval * @param max the upper bound of the query interval * @param visitor the visitor to pass any matched items to diff -Nru geos-3.6.2/include/geos/index/ItemVisitor.h geos-3.7.1/include/geos/index/ItemVisitor.h --- geos-3.6.2/include/geos/index/ItemVisitor.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/ItemVisitor.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/index/Makefile.in geos-3.7.1/include/geos/index/Makefile.in --- geos-3.6.2/include/geos/index/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -428,8 +434,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -567,7 +573,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/quadtree/DoubleBits.h geos-3.7.1/include/geos/index/quadtree/DoubleBits.h --- geos-3.6.2/include/geos/index/quadtree/DoubleBits.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/DoubleBits.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -36,7 +36,7 @@ * For some operations (such as determining the exponent) * this is more accurate than using mathematical operations * (which suffer from round-off error). - * + * * The algorithms and constants in this class * apply only to IEEE-754 double-precision floating point format. * diff -Nru geos-3.6.2/include/geos/index/quadtree/IntervalSize.h geos-3.7.1/include/geos/index/quadtree/IntervalSize.h --- geos-3.6.2/include/geos/index/quadtree/IntervalSize.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/IntervalSize.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/index/quadtree/Key.h geos-3.7.1/include/geos/index/quadtree/Key.h --- geos-3.6.2/include/geos/index/quadtree/Key.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/Key.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -68,7 +68,7 @@ */ void computeKey(const geom::Envelope& itemEnv); -private: +private: // the fields which make up the key // Owned by this class diff -Nru geos-3.6.2/include/geos/index/quadtree/Makefile.in geos-3.7.1/include/geos/index/quadtree/Makefile.in --- geos-3.6.2/include/geos/index/quadtree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -426,8 +432,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -565,7 +571,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/quadtree/NodeBase.h geos-3.7.1/include/geos/index/quadtree/NodeBase.h --- geos-3.6.2/include/geos/index/quadtree/NodeBase.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/NodeBase.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -57,7 +57,7 @@ void visitItems(const geom::Envelope* searchEnv, ItemVisitor& visitor); - + public: static int getSubnodeIndex(const geom::Envelope *env, @@ -97,7 +97,7 @@ * @return true if the item was found and removed */ bool remove(const geom::Envelope* itemEnv, void* item); - + bool hasItems() const; bool hasChildren() const; @@ -117,7 +117,7 @@ * 0 | 1 *
* - * Nodes are owned by this class + * Nodes are owned by this class */ Node* subnode[4]; @@ -130,7 +130,7 @@ inline bool NodeBase::hasChildren() const { - for (int i = 0; i < 4; i++) + for (int i = 0; i < 4; i++) if (subnode[i]) return true; return false; } diff -Nru geos-3.6.2/include/geos/index/quadtree/Node.h geos-3.7.1/include/geos/index/quadtree/Node.h --- geos-3.6.2/include/geos/index/quadtree/Node.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/Node.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -57,7 +57,7 @@ private: /// Owned by this class - std::auto_ptr env; + std::unique_ptr env; geom::Coordinate centre; @@ -66,42 +66,42 @@ /** * Get the subquad for the index. * If it doesn't exist, create it. - * + * * Ownership of the returned object belongs to this class. */ Node* getSubnode(int index); - std::auto_ptr createSubnode(int index); + std::unique_ptr createSubnode(int index); protected: - bool isSearchMatch(const geom::Envelope& searchEnv) const { + bool isSearchMatch(const geom::Envelope& searchEnv) const override { return env->intersects(searchEnv); } public: // Create a node computing level from given envelope - static std::auto_ptr createNode(const geom::Envelope& env); + static std::unique_ptr createNode(const geom::Envelope& env); /// Create a node containing the given node and envelope // /// @param node if not null, will be inserted to the returned node /// @param addEnv minimum envelope to use for the node /// - static std::auto_ptr createExpanded(std::auto_ptr node, + static std::unique_ptr createExpanded(std::unique_ptr node, const geom::Envelope& addEnv); - Node(std::auto_ptr nenv, int nlevel) + Node(std::unique_ptr nenv, int nlevel) : - env(nenv), + env(std::move(nenv)), centre((env->getMinX()+env->getMaxX())/2, (env->getMinY()+env->getMaxY())/2), level(nlevel) { } - virtual ~Node() {} + ~Node() override {} /// Return Envelope associated with this node /// ownership retained by this object @@ -120,9 +120,9 @@ */ NodeBase* find(const geom::Envelope *searchEnv); - void insertNode(std::auto_ptr node); + void insertNode(std::unique_ptr node); - std::string toString() const; + std::string toString() const override; }; diff -Nru geos-3.6.2/include/geos/index/quadtree/Quadtree.h geos-3.7.1/include/geos/index/quadtree/Quadtree.h --- geos-3.6.2/include/geos/index/quadtree/Quadtree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/Quadtree.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -38,7 +38,7 @@ } namespace index { namespace quadtree { - // class Root; + // class Root; } } } @@ -53,7 +53,7 @@ * of 2D rectangles. If other kinds of spatial objects * need to be indexed they can be represented by their * envelopes - * + * * The quadtree structure is used to provide a primary filter * for range rectangle queries. The query() method returns a list of * all objects which may intersect the query rectangle. Note that @@ -65,7 +65,7 @@ * This implementation does not require specifying the extent of the inserted * items beforehand. It will automatically expand to accomodate any extent * of dataset. - * + * * This data structure is also known as an MX-CIF quadtree * following the usage of Samet and others. */ @@ -113,15 +113,15 @@ minExtent(1.0) {} - ~Quadtree(); + ~Quadtree() override; /// Returns the number of levels in the tree. int depth(); /// Returns the number of items in the tree. int size(); - - void insert(const geom::Envelope *itemEnv, void *item); + + void insert(const geom::Envelope *itemEnv, void *item) override; /** \brief * Queries the tree and returns items which may lie @@ -140,7 +140,7 @@ * @param ret a vector where items which may intersect the * search envelope are pushed */ - void query(const geom::Envelope *searchEnv, std::vector& ret); + void query(const geom::Envelope *searchEnv, std::vector& ret) override; /** \brief @@ -159,7 +159,7 @@ * @param searchEnv the envelope of the desired query area. * @param visitor a visitor object which is passed the visited items */ - void query(const geom::Envelope *searchEnv, ItemVisitor& visitor) + void query(const geom::Envelope *searchEnv, ItemVisitor& visitor) override { /* * the items that are matched are the items in quads which @@ -175,7 +175,7 @@ * @param item the item to remove * @return true if the item was found (and thus removed) */ - bool remove(const geom::Envelope* itemEnv, void* item); + bool remove(const geom::Envelope* itemEnv, void* item) override; /// Return a list of all items in the Quadtree std::vector* queryAll(); diff -Nru geos-3.6.2/include/geos/index/quadtree/Root.h geos-3.7.1/include/geos/index/quadtree/Root.h --- geos-3.6.2/include/geos/index/quadtree/Root.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/quadtree/Root.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -65,7 +65,7 @@ Root() {} - virtual ~Root() {} + ~Root() override {} /** * Insert an item into the quadtree this is the root of. @@ -74,7 +74,7 @@ protected: - bool isSearchMatch(const geom::Envelope& /* searchEnv */) const { + bool isSearchMatch(const geom::Envelope& /* searchEnv */) const override { return true; } diff -Nru geos-3.6.2/include/geos/index/SpatialIndex.h geos-3.7.1/include/geos/index/SpatialIndex.h --- geos-3.6.2/include/geos/index/SpatialIndex.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/SpatialIndex.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -35,7 +35,7 @@ /** \brief * Abstract class defines basic insertion and query operations supported by * classes implementing spatial index algorithms. - * + * * A spatial index typically provides a primary filter for range rectangle queries. A * secondary filter is required to test for exact intersection. Of course, this * secondary filter may consist of other tests besides intersection, such as @@ -46,7 +46,7 @@ */ class GEOS_DLL SpatialIndex { public: - + virtual ~SpatialIndex() {} /** \brief diff -Nru geos-3.6.2/include/geos/index/strtree/AbstractNode.h geos-3.7.1/include/geos/index/strtree/AbstractNode.h --- geos-3.6.2/include/geos/index/strtree/AbstractNode.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/AbstractNode.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -31,12 +31,12 @@ /** \brief * A node of the STR tree. - * + * * The children of this node are either more nodes * (AbstractNodes) or real data (ItemBoundables). * * If this node contains real data (rather than nodes), - * then we say that this node is a "leaf node". + * then we say that this node is a "leaf node". * */ class GEOS_DLL AbstractNode: public Boundable { @@ -45,7 +45,7 @@ int level; public: AbstractNode(int newLevel, int capacity=10); - virtual ~AbstractNode(); + ~AbstractNode() override; // TODO: change signature to return by ref, // document ownership of the return @@ -65,13 +65,13 @@ * test for intersection with the bounds of other Boundables. * The class of object returned depends on the subclass of * AbstractSTRtree. - * + * * @return an Envelope (for STRtrees), an Interval (for SIRtrees), * or other object (for other subclasses of AbstractSTRtree) * * @see AbstractSTRtree::IntersectsOp - */ - const void* getBounds() const; + */ + const void* getBounds() const override; int getLevel(); diff -Nru geos-3.6.2/include/geos/index/strtree/AbstractSTRtree.h geos-3.7.1/include/geos/index/strtree/AbstractSTRtree.h --- geos-3.6.2/include/geos/index/strtree/AbstractSTRtree.h 2017-04-04 09:13:52.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/AbstractSTRtree.h 2018-10-19 22:32:06.000000000 +0000 @@ -1,4 +1,4 @@ -/********************************************************************** +/********************************************************************** * * GEOS - Geometry Engine Open Source * http://geos.osgeo.org @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -21,15 +21,15 @@ #include #include -#include // for auto_ptr +#include // for unique_ptr #include // for inlines #include // Forward declarations namespace geos { - namespace index { + namespace index { class ItemVisitor; - namespace strtree { + namespace strtree { class Boundable; class AbstractNode; } @@ -44,7 +44,7 @@ typedef std::vector BoundableList; //typedef std::list BoundableList; -/// list contains boundables or lists of boundables. The lists are owned by +/// list contains boundables or lists of boundables. The lists are owned by /// this class, the plain boundables are held by reference only. class ItemsList; @@ -123,11 +123,11 @@ * STR-packed R-trees are described in: * P. Rigaux, Michel Scholl and Agnes Voisard. Spatial Databases With * Application To GIS. Morgan Kaufmann, San Francisco, 2002. - * - * This implementation is based on Boundables rather than just AbstractNodes, - * because the STR algorithm operates on both nodes and + * + * This implementation is based on Boundables rather than just AbstractNodes, + * because the STR algorithm operates on both nodes and * data, both of which are treated here as Boundables. - * + * */ class GEOS_DLL AbstractSTRtree { @@ -137,7 +137,7 @@ /** * Creates the levels higher than the given level - * + * * @param boundablesOfALevel * the level to build on * @param level @@ -149,7 +149,7 @@ BoundableList* boundablesOfALevel, int level); - virtual std::auto_ptr sortBoundables(const BoundableList* input)=0; + virtual std::unique_ptr sortBoundables(const BoundableList* input)=0; bool remove(const void* searchBounds, AbstractNode& node, void* item); bool removeItem(AbstractNode& node, void* item); @@ -161,7 +161,7 @@ /** \brief * A test for intersection between two bounds, necessary because * subclasses of AbstractSTRtree have different implementations of - * bounds. + * bounds. */ class GEOS_DLL IntersectsOp { public: @@ -183,14 +183,14 @@ std::vector *nodes; - // Ownership to caller (TODO: return by auto_ptr) + // Ownership to caller (TODO: return by unique_ptr) virtual AbstractNode* createNode(int level)=0; /** * Sorts the childBoundables then divides them into groups of size M, where * M is the node capacity. */ - virtual std::auto_ptr createParentBoundables( + virtual std::unique_ptr createParentBoundables( BoundableList* childBoundables, int newLevel); virtual AbstractNode* lastNode(BoundableList* nodeList) @@ -223,11 +223,11 @@ void query(const void* searchBounds, ItemVisitor& visitor); void query(const void* searchBounds, const AbstractNode& node, ItemVisitor& visitor); - + /// Also builds the tree, if necessary. bool remove(const void* itemEnv, void* item); - std::auto_ptr boundablesAtLevel(int level); + std::unique_ptr boundablesAtLevel(int level); // @@ should be size_t, probably std::size_t nodeCapacity; @@ -239,7 +239,7 @@ * @see IntersectsOp */ virtual IntersectsOp *getIntersectsOp()=0; - + public: @@ -296,15 +296,15 @@ BoundableList* boundables); /** - * Gets a tree structure (as a nested list) + * Gets a tree structure (as a nested list) * corresponding to the structure of the items and nodes in this tree. *

- * The returned {@link List}s contain either {@link Object} items, + * The returned {@link List}s contain either {@link Object} items, * or Lists which correspond to subtrees of the tree * Subtrees which do not contain any items are not included. *

* Builds the tree if necessary. - * + * * @note The caller is responsible for releasing the list * * @return a List of items and/or Lists diff -Nru geos-3.6.2/include/geos/index/strtree/Boundable.h geos-3.7.1/include/geos/index/strtree/Boundable.h --- geos-3.6.2/include/geos/index/strtree/Boundable.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/Boundable.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/index/strtree/BoundablePair.h geos-3.7.1/include/geos/index/strtree/BoundablePair.h --- geos-3.6.2/include/geos/index/strtree/BoundablePair.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/BoundablePair.h 2018-10-19 22:32:06.000000000 +0000 @@ -36,13 +36,10 @@ * @author Martin Davis * */ - -using namespace geos::index::strtree; - - namespace geos { namespace index { namespace strtree { + class BoundablePair { private: const Boundable* boundable1; diff -Nru geos-3.6.2/include/geos/index/strtree/GeometryItemDistance.h geos-3.7.1/include/geos/index/strtree/GeometryItemDistance.h --- geos-3.6.2/include/geos/index/strtree/GeometryItemDistance.h 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/GeometryItemDistance.h 2018-10-19 22:32:06.000000000 +0000 @@ -36,7 +36,7 @@ * @return the distance between the geometries * @throws ClassCastException if either item is not a Geometry */ - double distance(const ItemBoundable* item1, const ItemBoundable* item2); + double distance(const ItemBoundable* item1, const ItemBoundable* item2) override; }; } } diff -Nru geos-3.6.2/include/geos/index/strtree/Interval.h geos-3.7.1/include/geos/index/strtree/Interval.h --- geos-3.6.2/include/geos/index/strtree/Interval.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/Interval.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/index/strtree/ItemBoundable.h geos-3.7.1/include/geos/index/strtree/ItemBoundable.h --- geos-3.6.2/include/geos/index/strtree/ItemBoundable.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/ItemBoundable.h 2018-11-09 23:03:28.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -34,9 +34,9 @@ public: ItemBoundable(const void* newBounds, void* newItem); - virtual ~ItemBoundable(); - - const void* getBounds() const; + ~ItemBoundable() override = default; + + const void* getBounds() const override; void* getItem() const; private: diff -Nru geos-3.6.2/include/geos/index/strtree/Makefile.in geos-3.7.1/include/geos/index/strtree/Makefile.in --- geos-3.6.2/include/geos/index/strtree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -429,8 +435,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -568,7 +574,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/strtree/SIRtree.h geos-3.7.1/include/geos/index/strtree/SIRtree.h --- geos-3.6.2/include/geos/index/strtree/SIRtree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/SIRtree.h 2018-11-29 22:42:04.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -55,7 +55,7 @@ */ SIRtree(std::size_t nodeCapacity); - virtual ~SIRtree(); + ~SIRtree() override; void insert(double x1, double x2, void* item); @@ -76,32 +76,38 @@ */ std::vector* query(double x) { return query(x,x); } + /** + * Disable copy construction and assignment. Apparently needed to make this + * class compile under MSVC. (See https://stackoverflow.com/q/29565299) + */ + SIRtree(const SIRtree&) = delete; + SIRtree& operator=(const SIRtree&) = delete; protected: class SIRIntersectsOp:public AbstractSTRtree::IntersectsOp { public: - bool intersects(const void* aBounds, const void* bBounds); + bool intersects(const void* aBounds, const void* bBounds) override; }; /** \brief * Sorts the childBoundables then divides them into groups of size M, where * M is the node capacity. */ - std::auto_ptr createParentBoundables( - BoundableList* childBoundables, int newLevel); + std::unique_ptr createParentBoundables( + BoundableList* childBoundables, int newLevel) override; - AbstractNode* createNode(int level); + AbstractNode* createNode(int level) override; - IntersectsOp* getIntersectsOp() {return intersectsOp;} + IntersectsOp* getIntersectsOp() override {return intersectsOp;} - std::auto_ptr sortBoundables(const BoundableList* input); + std::unique_ptr sortBoundables(const BoundableList* input) override; private: - IntersectsOp* intersectsOp; + std::vector> intervals; }; - + } // namespace geos::index::strtree } // namespace geos::index diff -Nru geos-3.6.2/include/geos/index/strtree/STRtree.h geos-3.7.1/include/geos/index/strtree/STRtree.h --- geos-3.6.2/include/geos/index/strtree/STRtree.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/index/strtree/STRtree.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,8 +35,8 @@ // Forward declarations namespace geos { - namespace index { - namespace strtree { + namespace index { + namespace strtree { class Boundable; } } @@ -48,17 +48,17 @@ /** * \brief - * A query-only R-tree created using the Sort-Tile-Recursive (STR) algorithm. - * For two-dimensional spatial data. + * A query-only R-tree created using the Sort-Tile-Recursive (STR) algorithm. + * For two-dimensional spatial data. * * The STR packed R-tree is simple to implement and maximizes space * utilization; that is, as many leaves as possible are filled to capacity. * Overlap between nodes is far less than in a basic R-tree. However, once the * tree has been built (explicitly or on the first call to #query), items may - * not be added or removed. - * + * not be added or removed. + * * Described in: P. Rigaux, Michel Scholl and Agnes Voisard. Spatial - * Databases With Application To GIS. Morgan Kaufmann, San Francisco, 2002. + * Databases With Application To GIS. Morgan Kaufmann, San Francisco, 2002. * */ class GEOS_DLL STRtree: public AbstractSTRtree, public SpatialIndex @@ -69,7 +69,7 @@ private: class GEOS_DLL STRIntersectsOp: public AbstractSTRtree::IntersectsOp { public: - bool intersects(const void* aBounds, const void* bBounds); + bool intersects(const void* aBounds, const void* bBounds) override; }; /** @@ -79,15 +79,15 @@ * group them into runs of size M (the node capacity). For each run, creates * a new (parent) node. */ - std::auto_ptr createParentBoundables(BoundableList* childBoundables, int newLevel); + std::unique_ptr createParentBoundables(BoundableList* childBoundables, int newLevel) override; - std::auto_ptr createParentBoundablesFromVerticalSlices(std::vector* verticalSlices, int newLevel); + std::unique_ptr createParentBoundablesFromVerticalSlices(std::vector* verticalSlices, int newLevel); STRIntersectsOp intersectsOp; - std::auto_ptr sortBoundables(const BoundableList* input); + std::unique_ptr sortBoundables(const BoundableList* input) override; - std::auto_ptr createParentBoundablesFromVerticalSlice( + std::unique_ptr createParentBoundablesFromVerticalSlice( BoundableList* childBoundables, int newLevel); @@ -103,15 +103,15 @@ protected: - AbstractNode* createNode(int level); - - IntersectsOp* getIntersectsOp() { + AbstractNode* createNode(int level) override; + + IntersectsOp* getIntersectsOp() override { return &intersectsOp; } public: - ~STRtree(); + ~STRtree() override; /** * Constructs an STRtree with the given maximum number of child nodes that @@ -119,7 +119,7 @@ */ STRtree(std::size_t nodeCapacity=10); - void insert(const geom::Envelope *itemEnv,void* item); + void insert(const geom::Envelope *itemEnv,void* item) override; //static double centreX(const geom::Envelope *e); @@ -131,11 +131,11 @@ return STRtree::avg(e->getMinY(), e->getMaxY()); } - void query(const geom::Envelope *searchEnv, std::vector& matches) { + void query(const geom::Envelope *searchEnv, std::vector& matches) override { AbstractSTRtree::query(searchEnv, matches); } - void query(const geom::Envelope *searchEnv, ItemVisitor& visitor) { + void query(const geom::Envelope *searchEnv, ItemVisitor& visitor) override { return AbstractSTRtree::query(searchEnv, visitor); } @@ -143,10 +143,12 @@ std::pair nearestNeighbour(BoundablePair* initBndPair); std::pair nearestNeighbour(ItemDistance* itemDist); std::pair nearestNeighbour(BoundablePair* initBndPair, double maxDistance); + std::pair nearestNeighbour(STRtree *tree, ItemDistance *itemDist); - bool remove(const geom::Envelope *itemEnv, void* item) { + bool remove(const geom::Envelope *itemEnv, void* item) override { return AbstractSTRtree::remove(itemEnv, item); } + }; } // namespace geos::index::strtree diff -Nru geos-3.6.2/include/geos/index/sweepline/Makefile.in geos-3.7.1/include/geos/index/sweepline/Makefile.in --- geos-3.6.2/include/geos/index/sweepline/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/index/sweepline/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -423,8 +429,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -562,7 +568,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/index/sweepline/SweepLineEvent.h geos-3.7.1/include/geos/index/sweepline/SweepLineEvent.h --- geos-3.6.2/include/geos/index/sweepline/SweepLineEvent.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/sweepline/SweepLineEvent.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -19,8 +19,8 @@ // Forward declarations namespace geos { - namespace index { - namespace sweepline { + namespace index { + namespace sweepline { class SweepLineInterval; } } diff -Nru geos-3.6.2/include/geos/index/sweepline/SweepLineIndex.h geos-3.7.1/include/geos/index/sweepline/SweepLineIndex.h --- geos-3.6.2/include/geos/index/sweepline/SweepLineIndex.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/sweepline/SweepLineIndex.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -26,7 +26,7 @@ // Forward declarations namespace geos { - namespace index { + namespace index { namespace sweepline { class SweepLineInterval; class SweepLineEvent; diff -Nru geos-3.6.2/include/geos/index/sweepline/SweepLineInterval.h geos-3.7.1/include/geos/index/sweepline/SweepLineInterval.h --- geos-3.6.2/include/geos/index/sweepline/SweepLineInterval.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/sweepline/SweepLineInterval.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -23,7 +23,7 @@ class GEOS_DLL SweepLineInterval { public: - SweepLineInterval(double newMin, double newMax, void* newItem=0); + SweepLineInterval(double newMin, double newMax, void* newItem=nullptr); double getMin(); double getMax(); void* getItem(); diff -Nru geos-3.6.2/include/geos/index/sweepline/SweepLineOverlapAction.h geos-3.7.1/include/geos/index/sweepline/SweepLineOverlapAction.h --- geos-3.6.2/include/geos/index/sweepline/SweepLineOverlapAction.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/index/sweepline/SweepLineOverlapAction.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -19,7 +19,7 @@ // Forward declarations namespace geos { - namespace index { + namespace index { namespace sweepline { class SweepLineInterval; } diff -Nru geos-3.6.2/include/geos/indexBintree.h geos-3.7.1/include/geos/indexBintree.h --- geos-3.6.2/include/geos/indexBintree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/indexBintree.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/indexChain.h geos-3.7.1/include/geos/indexChain.h --- geos-3.6.2/include/geos/indexChain.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/indexChain.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/indexQuadtree.h geos-3.7.1/include/geos/indexQuadtree.h --- geos-3.6.2/include/geos/indexQuadtree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/indexQuadtree.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/indexStrtree.h geos-3.7.1/include/geos/indexStrtree.h --- geos-3.6.2/include/geos/indexStrtree.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/indexStrtree.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/indexSweepline.h geos-3.7.1/include/geos/indexSweepline.h --- geos-3.6.2/include/geos/indexSweepline.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/indexSweepline.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/inline.h geos-3.7.1/include/geos/inline.h --- geos-3.6.2/include/geos/inline.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/inline.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/io/ByteOrderDataInStream.h geos-3.7.1/include/geos/io/ByteOrderDataInStream.h --- geos-3.6.2/include/geos/io/ByteOrderDataInStream.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/ByteOrderDataInStream.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -34,7 +34,7 @@ /* * \class ByteOrderDataInStream io.h geos.h - * + * * Allows reading an stream of primitive datatypes from an underlying * istream, with the representation being in either common byte ordering. * @@ -43,7 +43,7 @@ public: - ByteOrderDataInStream(std::istream *s=NULL); + ByteOrderDataInStream(std::istream *s=nullptr); ~ByteOrderDataInStream(); diff -Nru geos-3.6.2/include/geos/io/ByteOrderValues.h geos-3.7.1/include/geos/io/ByteOrderValues.h --- geos-3.6.2/include/geos/io/ByteOrderValues.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/ByteOrderValues.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -28,10 +28,10 @@ /* * \class ByteOrderValues io.h geos.h - * + * * Methods to read and write primitive datatypes from/to byte * sequences, allowing the byte order to be specified - * + * * Similar to the standard Java ByteBuffer class. */ class GEOS_DLL ByteOrderValues { diff -Nru geos-3.6.2/include/geos/io/CLocalizer.h geos-3.7.1/include/geos/io/CLocalizer.h --- geos-3.6.2/include/geos/io/CLocalizer.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/CLocalizer.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/io/Makefile.in geos-3.7.1/include/geos/io/Makefile.in --- geos-3.6.2/include/geos/io/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/io/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -432,8 +438,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -571,7 +577,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/io/ParseException.h geos-3.7.1/include/geos/io/ParseException.h --- geos-3.6.2/include/geos/io/ParseException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/ParseException.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -44,7 +44,7 @@ ParseException(const std::string& msg, double num); - ~ParseException() throw() {} + ~ParseException() throw() override {} private: static std::string stringify(double num); diff -Nru geos-3.6.2/include/geos/io/StringTokenizer.h geos-3.7.1/include/geos/io/StringTokenizer.h --- geos-3.6.2/include/geos/io/StringTokenizer.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/StringTokenizer.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -41,7 +41,7 @@ TT_WORD }; //StringTokenizer(); - StringTokenizer(const std::string& txt); + explicit StringTokenizer(const std::string& txt); ~StringTokenizer() {} int nextToken(); int peekNextToken(); @@ -54,8 +54,8 @@ std::string::const_iterator iter; // Declare type as noncopyable - StringTokenizer(const StringTokenizer& other); - StringTokenizer& operator=(const StringTokenizer& rhs); + StringTokenizer(const StringTokenizer& other) = delete; + StringTokenizer& operator=(const StringTokenizer& rhs) = delete; }; } // namespace io diff -Nru geos-3.6.2/include/geos/io/WKBConstants.h geos-3.7.1/include/geos/io/WKBConstants.h --- geos-3.6.2/include/geos/io/WKBConstants.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/WKBConstants.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -29,7 +29,7 @@ /// Big Endian const int wkbXDR = 0; - /// Little Endian + /// Little Endian const int wkbNDR = 1; const int wkbPoint = 1; diff -Nru geos-3.6.2/include/geos/io/WKBReader.h geos-3.7.1/include/geos/io/WKBReader.h --- geos-3.6.2/include/geos/io/WKBReader.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/WKBReader.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -88,7 +88,7 @@ /** * \brief Reads a Geometry from an istream. * - * @param is the stream to read from + * @param is the stream to read from * @return the Geometry read * @throws IOException * @throws ParseException @@ -99,7 +99,7 @@ /** * \brief Reads a Geometry from an istream in hex format. * - * @param is the stream to read from + * @param is the stream to read from * @return the Geometry read * @throws IOException * @throws ParseException @@ -114,7 +114,7 @@ * @param os is the stream to write to */ static std::ostream &printHEX(std::istream &is, std::ostream &os); - + private: const geom::GeometryFactory &factory; @@ -158,8 +158,8 @@ void readCoordinate(); // throws IOException // Declare type as noncopyable - WKBReader(const WKBReader& other); - WKBReader& operator=(const WKBReader& rhs); + WKBReader(const WKBReader& other) = delete; + WKBReader& operator=(const WKBReader& rhs) = delete; }; } // namespace io diff -Nru geos-3.6.2/include/geos/io/WKBWriter.h geos-3.7.1/include/geos/io/WKBWriter.h --- geos-3.6.2/include/geos/io/WKBWriter.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/WKBWriter.h 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -62,7 +62,7 @@ * IllegalArgumentException will be thrown if one is * written. The WKB specification does not support representing LinearRing * they will be written as LineString - * + * * This class is designed to support reuse of a single instance to read multiple * geometries. This class is not thread-safe; each thread should create its own * instance. @@ -74,14 +74,14 @@ public: /* * \brief - * Initializes writer with target coordinate dimension, endianness + * Initializes writer with target coordinate dimension, endianness * flag and SRID value. * * @param dims Supported values are 2 or 3. Note that 3 indicates * up to 3 dimensions will be written but 2D WKB is still produced for 2D geometries. - * @param bo output byte order - default to native machine byte order. + * @param bo output byte order - default to native machine byte order. * Legal values include 0 (big endian/xdr) and 1 (little endian/ndr). - * @param incudeSRID true if SRID should be included in WKB (an + * @param incudeSRID true if SRID should be included in WKB (an * extension). */ WKBWriter(int dims=2, int bo=getMachineByteOrder(), bool includeSRID=false); @@ -100,14 +100,14 @@ virtual int getOutputDimension() const { return defaultOutputDimension; } /* - * Sets the output dimension used by the WKBWriter. + * Sets the output dimension used by the WKBWriter. * - * @param newOutputDimension Supported values are 2 or 3. + * @param newOutputDimension Supported values are 2 or 3. * Note that 3 indicates up to 3 dimensions will be written but * 2D WKB is still produced for 2D geometries. */ virtual void setOutputDimension(int newOutputDimension); - + /* * \brief * Returns the byte order used by the @@ -160,7 +160,7 @@ int outputDimension; int byteOrder; - + bool includeSRID; std::ostream *outStream; diff -Nru geos-3.6.2/include/geos/io/WKTReader.h geos-3.7.1/include/geos/io/WKTReader.h --- geos-3.6.2/include/geos/io/WKTReader.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/WKTReader.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -44,8 +44,8 @@ class MultiLineString; class MultiPolygon; class PrecisionModel; - } -} + } +} namespace geos { diff -Nru geos-3.6.2/include/geos/io/WKTWriter.h geos-3.7.1/include/geos/io/WKTWriter.h --- geos-3.6.2/include/geos/io/WKTWriter.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/io/WKTWriter.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -45,11 +45,11 @@ class MultiLineString; class MultiPolygon; class PrecisionModel; - } + } namespace io { class Writer; - } -} + } +} namespace geos { @@ -60,15 +60,15 @@ * * \brief Outputs the textual representation of a Geometry. * See also WKTReader. - * + * * The WKTWriter outputs coordinates rounded to the precision * model. No more than the maximum number of necessary decimal places will be * output. - * + * * The Well-known Text format is defined in the OpenGIS Simple Features * Specification for SQL. - * + * * A non-standard "LINEARRING" tag is used for LinearRings. The WKT spec does * not define a special tag for LinearRings. The standard tag to use is * "LINESTRING". @@ -101,7 +101,7 @@ * * @return the WKT */ - static std::string toLineString(const geom::CoordinateSequence& seq); + static std::string toLineString(const geom::CoordinateSequence& seq); /** * Generates the WKT for a 2-point LineString. @@ -121,7 +121,7 @@ * @return the WKT */ static std::string toPoint(const geom::Coordinate& p0); - + /** * Sets the rounding precision when writing the WKT * a precision of -1 disables it @@ -159,14 +159,14 @@ int getOutputDimension() const { return defaultOutputDimension; } /* - * Sets the output dimension used by the WKBWriter. + * Sets the output dimension used by the WKBWriter. * - * @param newOutputDimension Supported values are 2 or 3. + * @param newOutputDimension Supported values are 2 or 3. * Note that 3 indicates up to 3 dimensions will be * written but 2D WKB is still produced for 2D geometries. */ void setOutputDimension(int newOutputDimension); - + protected: int decimalPlaces; diff -Nru geos-3.6.2/include/geos/io/Writer.h geos-3.7.1/include/geos/io/Writer.h --- geos-3.6.2/include/geos/io/Writer.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io/Writer.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/io.h geos-3.7.1/include/geos/io.h --- geos-3.6.2/include/geos/io.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/io.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/linearref/LengthIndexedLine.h geos-3.7.1/include/geos/linearref/LengthIndexedLine.h --- geos-3.6.2/include/geos/linearref/LengthIndexedLine.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LengthIndexedLine.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * diff -Nru geos-3.6.2/include/geos/linearref/LengthIndexOfPoint.h geos-3.7.1/include/geos/linearref/LengthIndexOfPoint.h --- geos-3.6.2/include/geos/linearref/LengthIndexOfPoint.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LengthIndexOfPoint.h 2018-10-19 22:32:06.000000000 +0000 @@ -50,7 +50,7 @@ double indexOfFromStart(const geom::Coordinate& inputPt, const double minIndex) const; - double segmentNearestMeasure(const geom::LineSegment *seg, + double segmentNearestMeasure(const geom::LineSegment *seg, const geom::Coordinate& inputPt, double segmentStartMeasure) const; public: diff -Nru geos-3.6.2/include/geos/linearref/LengthLocationMap.h geos-3.7.1/include/geos/linearref/LengthLocationMap.h --- geos-3.6.2/include/geos/linearref/LengthLocationMap.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LengthLocationMap.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -74,7 +74,7 @@ * @param line the linear geometry to use * @param length the length index of the location * @param resolveLower if true lengths are resolved to the - * lowest possible index + * lowest possible index * @return the {@link LinearLocation} for the length */ static LinearLocation getLocation(const geom::Geometry *linearGeom, double length, bool resolveLower) @@ -98,7 +98,7 @@ /** * \brief * Compute the {@link LinearLocation} corresponding to a length. - * + * * Negative lengths are measured in reverse from end of the linear geometry. * Out-of-range values are clamped. * Ambiguous indexes are resolved to the lowest possible location value, @@ -112,7 +112,7 @@ /** * \brief * Compute the {@link LinearLocation} corresponding to a length. - * + * * Negative lengths are measured in reverse from end of the linear geometry. * Out-of-range values are clamped. * Ambiguous indexes are resolved to the lowest possible location value. diff -Nru geos-3.6.2/include/geos/linearref/LinearIterator.h geos-3.7.1/include/geos/linearref/LinearIterator.h --- geos-3.6.2/include/geos/linearref/LinearIterator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LinearIterator.h 2018-11-29 22:42:00.000000000 +0000 @@ -149,8 +149,8 @@ void loadCurrentLine(); // Declare type as noncopyable - LinearIterator(const LinearIterator& other); - LinearIterator& operator=(const LinearIterator& rhs); + LinearIterator(const LinearIterator& other) = delete; + LinearIterator& operator=(const LinearIterator& rhs) = delete; }; }} // namespace geos::linearref diff -Nru geos-3.6.2/include/geos/linearref/LinearLocation.h geos-3.7.1/include/geos/linearref/LinearLocation.h --- geos-3.6.2/include/geos/linearref/LinearLocation.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LinearLocation.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -22,7 +22,7 @@ #define GEOS_LINEARREF_LINEARLOCATION_H #include -#include // for std::auto_ptr +#include // for std::unique_ptr #include #include @@ -168,7 +168,7 @@ * @param linearGeom a linear geometry * @return the LineSegment containing the location */ - std::auto_ptr getSegment(const geom::Geometry* linearGeom) const; + std::unique_ptr getSegment(const geom::Geometry* linearGeom) const; /** * Tests whether this location refers to a valid diff -Nru geos-3.6.2/include/geos/linearref/LocationIndexedLine.h geos-3.7.1/include/geos/linearref/LocationIndexedLine.h --- geos-3.6.2/include/geos/linearref/LocationIndexedLine.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LocationIndexedLine.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published diff -Nru geos-3.6.2/include/geos/linearref/LocationIndexOfLine.h geos-3.7.1/include/geos/linearref/LocationIndexOfLine.h --- geos-3.6.2/include/geos/linearref/LocationIndexOfLine.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LocationIndexOfLine.h 2018-10-19 22:32:06.000000000 +0000 @@ -54,7 +54,7 @@ * Determines the location of a subline along a linear {@link Geometry}. * * The location is reported as a pair of {@link LinearLocation}s. - * + * * Note: Currently this algorithm is not guaranteed to * return the correct substring in some situations where * an endpoint of the test line occurs more than once in the input line. diff -Nru geos-3.6.2/include/geos/linearref/LocationIndexOfPoint.h geos-3.7.1/include/geos/linearref/LocationIndexOfPoint.h --- geos-3.6.2/include/geos/linearref/LocationIndexOfPoint.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/LocationIndexOfPoint.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * diff -Nru geos-3.6.2/include/geos/linearref/Makefile.in geos-3.7.1/include/geos/linearref/Makefile.in --- geos-3.6.2/include/geos/linearref/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/linearref/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -218,6 +221,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -266,6 +270,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -286,6 +292,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -335,7 +342,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -386,8 +392,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -478,7 +484,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/Makefile.in geos-3.7.1/include/geos/Makefile.in --- geos-3.6.2/include/geos/Makefile.in 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/include/geos/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -170,7 +173,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ $(LISP)platform.h.in # Read a list of newline-separated strings from the standard input, @@ -261,6 +264,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -309,6 +313,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -329,6 +335,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -378,7 +385,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -470,8 +476,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -643,7 +649,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/noding/BasicSegmentString.h geos-3.7.1/include/geos/noding/BasicSegmentString.h --- geos-3.6.2/include/geos/noding/BasicSegmentString.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/noding/BasicSegmentString.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -64,31 +64,31 @@ pts(newPts) {} - virtual ~BasicSegmentString() + ~BasicSegmentString() override {} /// see dox in SegmentString.h - virtual unsigned int size() const + unsigned int size() const override { - return pts->size(); + return static_cast(pts->size()); } /// see dox in SegmentString.h - virtual const geom::Coordinate& getCoordinate(unsigned int i) const; + const geom::Coordinate& getCoordinate(unsigned int i) const override; /// see dox in SegmentString.h - virtual geom::CoordinateSequence* getCoordinates() const; + geom::CoordinateSequence* getCoordinates() const override; /// see dox in SegmentString.h - virtual bool isClosed() const; + bool isClosed() const override; /// see dox in SegmentString.h - virtual std::ostream& print(std::ostream& os) const; + std::ostream& print(std::ostream& os) const override; /** \brief * Gets the octant of the segment starting at vertex index. * - * @param index the index of the vertex starting the segment. + * @param index the index of the vertex starting the segment. * Must not be the last index in the vertex list * @return the octant of the segment at the vertex */ diff -Nru geos-3.6.2/include/geos/noding/FastNodingValidator.h geos-3.7.1/include/geos/noding/FastNodingValidator.h --- geos-3.6.2/include/geos/noding/FastNodingValidator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/FastNodingValidator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -40,17 +40,17 @@ * Validates that a collection of {@link SegmentString}s is correctly noded. * * Uses indexes to improve performance. - * Does NOT check a-b-a collapse situations. + * Does NOT check a-b-a collapse situations. * Also does not check for endpt-interior vertex intersections. * This should not be a problem, since the noders should be * able to compute intersections between vertices correctly. - * User may either test the valid condition, or request that a - * {@link TopologyException} + * User may either test the valid condition, or request that a + * {@link TopologyException} * be thrown. * * @version 1.7 */ -class FastNodingValidator +class FastNodingValidator { public: @@ -65,9 +65,9 @@ } /** - * Checks for an intersection and + * Checks for an intersection and * reports if one is found. - * + * * @return true if the arrangement contains an interior intersection */ bool isValid() @@ -75,15 +75,15 @@ execute(); return isValidVar; } - + /** * Returns an error message indicating the segments containing * the intersection. - * + * * @return an error message documenting the intersection location */ std::string getErrorMessage() const; - + /** * Checks for an intersection and throws * a TopologyException if one is found. @@ -98,21 +98,21 @@ std::vector& segStrings; - std::auto_ptr segInt; + std::unique_ptr segInt; bool isValidVar; - + void execute() { - if (segInt.get() != NULL) return; + if (segInt.get() != nullptr) return; checkInteriorIntersections(); } void checkInteriorIntersections(); - + // Declare type as noncopyable - FastNodingValidator(const FastNodingValidator& other); - FastNodingValidator& operator=(const FastNodingValidator& rhs); + FastNodingValidator(const FastNodingValidator& other) = delete; + FastNodingValidator& operator=(const FastNodingValidator& rhs) = delete; }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/FastSegmentSetIntersectionFinder.h geos-3.7.1/include/geos/noding/FastSegmentSetIntersectionFinder.h --- geos-3.6.2/include/geos/noding/FastSegmentSetIntersectionFinder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/FastSegmentSetIntersectionFinder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -26,7 +26,7 @@ //forward declarations namespace geos { - namespace noding { + namespace noding { class SegmentIntersectionDetector; class SegmentSetMutualIntersector; //class MCIndexSegmentSetMutualIntersector : public SegmentSetMutualIntersector; @@ -49,7 +49,7 @@ class FastSegmentSetIntersectionFinder { private: - MCIndexSegmentSetMutualIntersector * segSetMutInt; + MCIndexSegmentSetMutualIntersector * segSetMutInt; geos::algorithm::LineIntersector * lineIntersector; protected: @@ -57,11 +57,11 @@ FastSegmentSetIntersectionFinder( SegmentString::ConstVect * baseSegStrings); ~FastSegmentSetIntersectionFinder(); - + /** * Gets the segment set intersector used by this class. * This allows other uses of the same underlying indexed structure. - * + * * @return the segment set intersector used */ SegmentSetMutualIntersector * getSegmentSetIntersector() diff -Nru geos-3.6.2/include/geos/noding/GeometryNoder.h geos-3.7.1/include/geos/noding/GeometryNoder.h --- geos-3.6.2/include/geos/noding/GeometryNoder.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/noding/GeometryNoder.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ #include #include // for NonConstVect -#include // for auto_ptr +#include // for unique_ptr // Forward declarations namespace geos { @@ -41,11 +41,11 @@ { public: - static std::auto_ptr node(const geom::Geometry& geom); + static std::unique_ptr node(const geom::Geometry& geom); GeometryNoder(const geom::Geometry& g); - std::auto_ptr getNoded(); + std::unique_ptr getNoded(); private: @@ -58,9 +58,9 @@ Noder& getNoder(); - std::auto_ptr noder; + std::unique_ptr noder; - std::auto_ptr toGeometry(SegmentString::NonConstVect& noded); + std::unique_ptr toGeometry(SegmentString::NonConstVect& noded); GeometryNoder(GeometryNoder const&); /*= delete*/ GeometryNoder& operator=(GeometryNoder const&); /*= delete*/ diff -Nru geos-3.6.2/include/geos/noding/IntersectionAdder.h geos-3.7.1/include/geos/noding/IntersectionAdder.h --- geos-3.6.2/include/geos/noding/IntersectionAdder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/IntersectionAdder.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -83,10 +83,10 @@ */ bool isTrivialIntersection(const SegmentString* e0, int segIndex0, const SegmentString* e1, int segIndex1); - + // Declare type as noncopyable - IntersectionAdder(const IntersectionAdder& other); - IntersectionAdder& operator=(const IntersectionAdder& rhs); + IntersectionAdder(const IntersectionAdder& other) = delete; + IntersectionAdder& operator=(const IntersectionAdder& rhs) = delete; public: @@ -103,7 +103,7 @@ hasProper(false), hasProperInterior(false), hasInterior(false), - properIntersectionPoint(NULL), + properIntersectionPoint(nullptr), li(newLi), numIntersections(0), numInteriorIntersections(0), @@ -158,9 +158,9 @@ */ void processIntersections( SegmentString* e0, int segIndex0, - SegmentString* e1, int segIndex1); + SegmentString* e1, int segIndex1) override; + - static bool isAdjacentSegments(int i1, int i2) { return std::abs(i1 - i2) == 1; } @@ -170,11 +170,11 @@ * * @return false always */ - virtual bool isDone() const { + bool isDone() const override { return false; } }; - + } // namespace geos.noding } // namespace geos diff -Nru geos-3.6.2/include/geos/noding/IntersectionFinderAdder.h geos-3.7.1/include/geos/noding/IntersectionFinderAdder.h --- geos-3.6.2/include/geos/noding/IntersectionFinderAdder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/IntersectionFinderAdder.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -80,28 +80,28 @@ */ void processIntersections( SegmentString* e0, int segIndex0, - SegmentString* e1, int segIndex1); + SegmentString* e1, int segIndex1) override; std::vector& getInteriorIntersections() { return interiorIntersections; } - + /** * Always process all intersections * * @return false always */ - virtual bool isDone() const { + bool isDone() const override { return false; } private: algorithm::LineIntersector& li; std::vector& interiorIntersections; - + // Declare type as noncopyable - IntersectionFinderAdder(const IntersectionFinderAdder& other); - IntersectionFinderAdder& operator=(const IntersectionFinderAdder& rhs); + IntersectionFinderAdder(const IntersectionFinderAdder& other) = delete; + IntersectionFinderAdder& operator=(const IntersectionFinderAdder& rhs) = delete; }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/IteratedNoder.h geos-3.7.1/include/geos/noding/IteratedNoder.h --- geos-3.6.2/include/geos/noding/IteratedNoder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/IteratedNoder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,11 +42,11 @@ /** \brief * Nodes a set of SegmentStrings completely. - * + * * The set of segmentStrings is fully noded; * i.e. noding is repeated until no further * intersections are detected. - * + * * Iterated noding using a FLOATING precision model is not guaranteed to converge, * due to roundoff error. This problem is detected and an exception is thrown. * Clients can choose to rerun the noding using a lower precision model. @@ -80,7 +80,7 @@ { } - virtual ~IteratedNoder() {} + ~IteratedNoder() override {} /** * Sets the maximum number of noding iterations performed before @@ -93,10 +93,10 @@ */ void setMaximumIterations(int n) { maxIter = n; } - std::vector* getNodedSubstrings() const { + std::vector* getNodedSubstrings() const override { return nodedSegStrings; } - + /** * Fully nodes a list of {@link SegmentStrings}, i.e. peforms noding iteratively @@ -107,7 +107,7 @@ * @param segStrings a collection of SegmentStrings to be noded * @throws TopologyException if the iterated noding fails to converge. */ - void computeNodes(std::vector* inputSegmentStrings); // throw(GEOSException); + void computeNodes(std::vector* inputSegmentStrings) override; // throw(GEOSException); }; } // namespace geos::noding diff -Nru geos-3.6.2/include/geos/noding/Makefile.in geos-3.7.1/include/geos/noding/Makefile.in --- geos-3.6.2/include/geos/noding/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/noding/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -447,8 +453,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -586,7 +592,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/noding/MCIndexNoder.h geos-3.7.1/include/geos/noding/MCIndexNoder.h --- geos-3.6.2/include/geos/noding/MCIndexNoder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/MCIndexNoder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -76,24 +76,24 @@ public: - MCIndexNoder(SegmentIntersector *nSegInt=NULL) + MCIndexNoder(SegmentIntersector *nSegInt=nullptr) : SinglePassNoder(nSegInt), idCounter(0), - nodedSegStrings(NULL), + nodedSegStrings(nullptr), nOverlaps(0) {} - ~MCIndexNoder(); + ~MCIndexNoder() override; /// Return a reference to this instance's std::vector of MonotoneChains std::vector& getMonotoneChains() { return monoChains; } index::SpatialIndex& getIndex(); - std::vector* getNodedSubstrings() const; + std::vector* getNodedSubstrings() const override; - void computeNodes(std::vector* inputSegmentStrings); + void computeNodes(std::vector* inputSegmentStrings) override; class SegmentOverlapAction : public index::chain::MonotoneChainOverlapAction { public: @@ -104,15 +104,15 @@ {} void overlap(index::chain::MonotoneChain& mc1, std::size_t start1, - index::chain::MonotoneChain& mc2, std::size_t start2); + index::chain::MonotoneChain& mc2, std::size_t start2) override; private: SegmentIntersector& si; // Declare type as noncopyable - SegmentOverlapAction(const SegmentOverlapAction& other); - SegmentOverlapAction& operator=(const SegmentOverlapAction& rhs); + SegmentOverlapAction(const SegmentOverlapAction& other) = delete; + SegmentOverlapAction& operator=(const SegmentOverlapAction& rhs) = delete; }; - + }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/MCIndexSegmentSetMutualIntersector.h geos-3.7.1/include/geos/noding/MCIndexSegmentSetMutualIntersector.h --- geos-3.6.2/include/geos/noding/MCIndexSegmentSetMutualIntersector.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/MCIndexSegmentSetMutualIntersector.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -51,32 +51,32 @@ * * @version 1.7 */ -class MCIndexSegmentSetMutualIntersector : public SegmentSetMutualIntersector +class MCIndexSegmentSetMutualIntersector : public SegmentSetMutualIntersector { public: MCIndexSegmentSetMutualIntersector(); - ~MCIndexSegmentSetMutualIntersector(); + ~MCIndexSegmentSetMutualIntersector() override; /* Returns a reference to a vector of MonotoneChain objects owned * by this class and destroyed on next call to ::process. * Copy them if you need them alive for longer. */ - std::vector& getMonotoneChains() - { - return monoChains; + std::vector& getMonotoneChains() + { + return monoChains; } - index::SpatialIndex* getIndex() - { - return index; + index::SpatialIndex* getIndex() + { + return index; } - void setBaseSegments(SegmentString::ConstVect* segStrings); - + void setBaseSegments(SegmentString::ConstVect* segStrings) override; + // NOTE: re-populates the MonotoneChain vector with newly created chains - void process(SegmentString::ConstVect* segStrings); + void process(SegmentString::ConstVect* segStrings) override; class SegmentOverlapAction : public index::chain::MonotoneChainOverlapAction { @@ -84,8 +84,8 @@ SegmentIntersector & si; // Declare type as noncopyable - SegmentOverlapAction(const SegmentOverlapAction& other); - SegmentOverlapAction& operator=(const SegmentOverlapAction& rhs); + SegmentOverlapAction(const SegmentOverlapAction& other) = delete; + SegmentOverlapAction& operator=(const SegmentOverlapAction& rhs) = delete; public: SegmentOverlapAction(SegmentIntersector & si) : @@ -93,7 +93,7 @@ {} void overlap(index::chain::MonotoneChain& mc1, std::size_t start1, - index::chain::MonotoneChain& mc2, std::size_t start2); + index::chain::MonotoneChain& mc2, std::size_t start2) override; }; private: @@ -111,12 +111,12 @@ int processCounter; // statistics int nOverlaps; - + /* memory management helper, holds MonotoneChain objects used * in the SpatialIndex. It's cleared when the SpatialIndex is */ MonoChains chainStore; - + void addToIndex( SegmentString * segStr); void intersectChains(); diff -Nru geos-3.6.2/include/geos/noding/NodableSegmentString.h geos-3.7.1/include/geos/noding/NodableSegmentString.h --- geos-3.6.2/include/geos/noding/NodableSegmentString.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/NodableSegmentString.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -31,22 +31,22 @@ /** \brief * An interface for classes which support adding nodes to * a segment string. - * + * * @author Martin Davis */ -class GEOS_DLL NodableSegmentString : public SegmentString +class GEOS_DLL NodableSegmentString : public SegmentString { private: protected: public: NodableSegmentString(const void* newContext) : - SegmentString( newContext ) + SegmentString( newContext ) { } /** * Adds an intersection node for a given point and segment to this segment string. - * + * * @param intPt the location of the intersection * @param segmentIndex the index of the segment containing the intersection */ diff -Nru geos-3.6.2/include/geos/noding/NodedSegmentString.h geos-3.7.1/include/geos/noding/NodedSegmentString.h --- geos-3.6.2/include/geos/noding/NodedSegmentString.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/noding/NodedSegmentString.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -54,13 +54,13 @@ * All noded substrings are initialized with the same context object. * */ -class GEOS_DLL NodedSegmentString : public NodableSegmentString +class GEOS_DLL NodedSegmentString : public NodableSegmentString { public: // TODO: provide a templated method using an output iterator template - static void getNodedSubstrings(II from, II too_far, + static void getNodedSubstrings(II from, II too_far, SegmentString::NonConstVect* resultEdgelist) { for (II i=from; i != too_far; ++i) @@ -101,7 +101,7 @@ , pts(newPts) {} - ~NodedSegmentString() + ~NodedSegmentString() override { delete pts; } @@ -110,25 +110,25 @@ * Adds an intersection node for a given point and segment to this segment string. * If an intersection already exists for this exact location, the existing * node will be returned. - * + * * @param intPt the location of the intersection * @param segmentIndex the index of the segment containing the intersection * @return the intersection node for the point */ - SegmentNode* addIntersectionNode( geom::Coordinate * intPt, std::size_t segmentIndex) + SegmentNode* addIntersectionNode( geom::Coordinate * intPt, std::size_t segmentIndex) { std::size_t normalizedSegmentIndex = segmentIndex; // normalize the intersection point location std::size_t nextSegIndex = normalizedSegmentIndex + 1; - if (nextSegIndex < size()) + if (nextSegIndex < size()) { - geom::Coordinate const& nextPt = + geom::Coordinate const& nextPt = getCoordinate(static_cast(nextSegIndex)); // Normalize segment index if intPt falls on vertex // The check for point equality is 2D only - Z values are ignored - if ( intPt->equals2D( nextPt )) + if ( intPt->equals2D( nextPt )) { normalizedSegmentIndex = nextSegIndex; } @@ -143,24 +143,24 @@ const SegmentNodeList& getNodeList() const; - virtual unsigned int size() const + unsigned int size() const override { return static_cast(pts->size()); } - virtual const geom::Coordinate& getCoordinate(unsigned int i) const; + const geom::Coordinate& getCoordinate(unsigned int i) const override; - virtual geom::CoordinateSequence* getCoordinates() const; + geom::CoordinateSequence* getCoordinates() const override; - virtual bool isClosed() const; + bool isClosed() const override; - virtual std::ostream& print(std::ostream& os) const; + std::ostream& print(std::ostream& os) const override; /** \brief * Gets the octant of the segment starting at vertex index. * - * @param index the index of the vertex starting the segment. + * @param index the index of the vertex starting the segment. * Must not be the last index in the vertex list * @return the octant of the segment at the vertex */ diff -Nru geos-3.6.2/include/geos/noding/Noder.h geos-3.7.1/include/geos/noding/Noder.h --- geos-3.6.2/include/geos/noding/Noder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/Noder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/noding/NodingValidator.h geos-3.7.1/include/geos/noding/NodingValidator.h --- geos-3.6.2/include/geos/noding/NodingValidator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/NodingValidator.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -91,8 +91,8 @@ const geom::Coordinate& p0, const geom::Coordinate& p1) const; // Declare type as noncopyable - NodingValidator(const NodingValidator& other); - NodingValidator& operator=(const NodingValidator& rhs); + NodingValidator(const NodingValidator& other) = delete; + NodingValidator& operator=(const NodingValidator& rhs) = delete; public: diff -Nru geos-3.6.2/include/geos/noding/Octant.h geos-3.7.1/include/geos/noding/Octant.h --- geos-3.6.2/include/geos/noding/Octant.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/Octant.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -34,12 +34,12 @@ * Methods for computing and working with octants of the Cartesian plane. * * Octants are numbered as follows: - * - * 2|1 + * + * 2|1 * 3 | 0 * ---+-- * 4 | 7 - * 5|6 + * 5|6 * * If line segments lie along a coordinate axis, the octant is the lower of the two * possible values. @@ -61,7 +61,7 @@ * Returns the octant of a directed line segment from p0 to p1. */ static int octant(const geom::Coordinate& p0, const geom::Coordinate& p1); - + static int octant(const geom::Coordinate* p0, const geom::Coordinate* p1) { ::geos::ignore_unused_variable_warning(p0); diff -Nru geos-3.6.2/include/geos/noding/OrientedCoordinateArray.h geos-3.7.1/include/geos/noding/OrientedCoordinateArray.h --- geos-3.6.2/include/geos/noding/OrientedCoordinateArray.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/noding/OrientedCoordinateArray.h 2018-11-29 22:42:00.000000000 +0000 @@ -1,115 +1,115 @@ -/********************************************************************** - * - * GEOS - Geometry Engine Open Source - * http://geos.osgeo.org - * - * Copyright (C) 2009 Sandro Santilli - * - * This is free software; you can redistribute and/or modify it under - * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. - * See the COPYING file for more information. - * - ********************************************************************** - * - * Last port: noding/OrientedCoordinateArray.java rev. 1.1 (JTS-1.9) - * - **********************************************************************/ - -#ifndef GEOS_NODING_ORIENTEDCOORDINATEARRAY_H -#define GEOS_NODING_ORIENTEDCOORDINATEARRAY_H - -#include - -//#include -//#include - -//#include - -// Forward declarations -namespace geos { - namespace geom { - class CoordinateSequence; - } - namespace noding { - //class SegmentString; - } -} - -namespace geos { -namespace noding { // geos.noding - -/** \brief - * Allows comparing {@link geom::CoordinateSequence}s - * in an orientation-independent way. - */ -class GEOS_DLL OrientedCoordinateArray -{ -public: - - /** - * Creates a new {@link OrientedCoordinateArray} - * for the given {@link geom::CoordinateSequence}. - * - * @param pts the coordinates to orient - */ - OrientedCoordinateArray(const geom::CoordinateSequence& pts) - : - pts(&pts), - orientationVar(orientation(pts)) - { - } - - /** \brief - * Compares two {@link OrientedCoordinateArray}s for their - * relative order - * - * @return -1 this one is smaller - * @return 0 the two objects are equal - * @return 1 this one is greater - * - * In JTS, this is used automatically by ordered lists. - * In C++, operator< would be used instead.... - */ - int compareTo(const OrientedCoordinateArray& o1) const; - - -private: - - static int compareOriented(const geom::CoordinateSequence& pts1, - bool orientation1, - const geom::CoordinateSequence& pts2, - bool orientation2); - - - /** - * Computes the canonical orientation for a coordinate array. - * - * @param pts the array to test - * @return true if the points are oriented forwards - * @return false + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU Lesser General Public Licence as published + * by the Free Software Foundation. + * See the COPYING file for more information. + * + ********************************************************************** + * + * Last port: noding/OrientedCoordinateArray.java rev. 1.1 (JTS-1.9) + * + **********************************************************************/ + +#ifndef GEOS_NODING_ORIENTEDCOORDINATEARRAY_H +#define GEOS_NODING_ORIENTEDCOORDINATEARRAY_H + +#include + +//#include +//#include + +//#include + +// Forward declarations +namespace geos { + namespace geom { + class CoordinateSequence; + } + namespace noding { + //class SegmentString; + } +} + +namespace geos { +namespace noding { // geos.noding + +/** \brief + * Allows comparing {@link geom::CoordinateSequence}s + * in an orientation-independent way. + */ +class GEOS_DLL OrientedCoordinateArray +{ +public: + + /** + * Creates a new {@link OrientedCoordinateArray} + * for the given {@link geom::CoordinateSequence}. + * + * @param pts the coordinates to orient + */ + OrientedCoordinateArray(const geom::CoordinateSequence& pts) + : + pts(&pts), + orientationVar(orientation(pts)) + { + } + + /** \brief + * Compares two {@link OrientedCoordinateArray}s for their + * relative order + * + * @return -1 this one is smaller + * @return 0 the two objects are equal + * @return 1 this one is greater + * + * In JTS, this is used automatically by ordered lists. + * In C++, operator< would be used instead.... + */ + int compareTo(const OrientedCoordinateArray& o1) const; + + +private: + + static int compareOriented(const geom::CoordinateSequence& pts1, + bool orientation1, + const geom::CoordinateSequence& pts2, + bool orientation2); + + + /** + * Computes the canonical orientation for a coordinate array. + * + * @param pts the array to test + * @return true if the points are oriented forwards + * @return false* getNodedSubstrings() const; + std::vector* getNodedSubstrings() const override; - void computeNodes(std::vector* inputSegStr); + void computeNodes(std::vector* inputSegStr) override; //void filter(Coordinate& c); @@ -117,8 +117,8 @@ mutable std::vector newCoordSeq; // Declare type as noncopyable - ScaledNoder(const ScaledNoder& other); - ScaledNoder& operator=(const ScaledNoder& rhs); + ScaledNoder(const ScaledNoder& other) = delete; + ScaledNoder& operator=(const ScaledNoder& rhs) = delete; }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/SegmentIntersectionDetector.h geos-3.7.1/include/geos/noding/SegmentIntersectionDetector.h --- geos-3.6.2/include/geos/noding/SegmentIntersectionDetector.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentIntersectionDetector.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -29,7 +29,7 @@ /** \brief * Detects and records an intersection between two {@link SegmentString}s, - * if one exists. + * if one exists. * * This strategy can be configured to search for proper intersections. * In this case, the presence of any intersection will still be recorded, @@ -40,7 +40,7 @@ * * @version 1.7 */ -class SegmentIntersectionDetector : public SegmentIntersector +class SegmentIntersectionDetector : public SegmentIntersector { private: LineIntersector * li; @@ -57,7 +57,7 @@ protected: public: - SegmentIntersectionDetector( LineIntersector * li) + SegmentIntersectionDetector( LineIntersector * li) : li( li), findProper(false), @@ -65,11 +65,11 @@ _hasIntersection(false), _hasProperIntersection(false), _hasNonProperIntersection(false), - intPt( NULL), - intSegments( NULL) + intPt( nullptr), + intSegments( nullptr) { } - ~SegmentIntersectionDetector() + ~SegmentIntersectionDetector() override { //delete intPt; delete intSegments; @@ -80,66 +80,66 @@ { this->findProper = findProper; } - + void setFindAllIntersectionTypes( bool findAllTypes) { this->findAllTypes = findAllTypes; } - + /** * Tests whether an intersection was found. - * + * * @return true if an intersection was found */ bool hasIntersection() const - { - return _hasIntersection; + { + return _hasIntersection; } - + /** * Tests whether a proper intersection was found. - * + * * @return true if a proper intersection was found */ - bool hasProperIntersection() const - { - return _hasProperIntersection; + bool hasProperIntersection() const + { + return _hasProperIntersection; } - + /** * Tests whether a non-proper intersection was found. - * + * * @return true if a non-proper intersection was found */ bool hasNonProperIntersection() const - { - return _hasNonProperIntersection; + { + return _hasNonProperIntersection; } - + /** * Gets the computed location of the intersection. * Due to round-off, the location may not be exact. - * + * * @return the coordinate for the intersection location */ - const geom::Coordinate * const getIntersection() const - { - return intPt; + const geom::Coordinate * getIntersection() const + { + return intPt; } /** * Gets the endpoints of the intersecting segments. - * + * * @return an array of the segment endpoints (p00, p01, p10, p11) */ const geom::CoordinateSequence * getIntersectionSegments() const { return intSegments; } - - bool isDone() const - { + + bool isDone() const override + { // If finding all types, we can stop // when both possible types have been found. if (findAllTypes) @@ -161,8 +161,8 @@ * (e.g. by an disjoint envelope test). */ void processIntersections( noding::SegmentString * e0, int segIndex0, - noding::SegmentString * e1, int segIndex1 ); - + noding::SegmentString * e1, int segIndex1 ) override; + }; } // namespace geos::noding diff -Nru geos-3.6.2/include/geos/noding/SegmentIntersector.h geos-3.7.1/include/geos/noding/SegmentIntersector.h --- geos-3.6.2/include/geos/noding/SegmentIntersector.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentIntersector.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -62,7 +62,7 @@ * \brief * Reports whether the client of this class * needs to continue testing all intersections in an arrangement. - * + * * @return true if there is not need to continue testing segments * * The default implementation always return false (process all intersections). @@ -71,13 +71,13 @@ return false; } - virtual ~SegmentIntersector() + virtual ~SegmentIntersector() { } protected: SegmentIntersector() {} - + }; /// Temporary typedef for namespace transition diff -Nru geos-3.6.2/include/geos/noding/SegmentNode.h geos-3.7.1/include/geos/noding/SegmentNode.h --- geos-3.6.2/include/geos/noding/SegmentNode.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentNode.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -51,21 +51,21 @@ bool isInteriorVar; // Declare type as noncopyable - SegmentNode(const SegmentNode& other); - SegmentNode& operator=(const SegmentNode& rhs); + SegmentNode(const SegmentNode& other) = delete; + SegmentNode& operator=(const SegmentNode& rhs) = delete; public: friend std::ostream& operator<< (std::ostream& os, const SegmentNode& n); /// the point of intersection (own copy) - geom::Coordinate coord; + geom::Coordinate coord; /// the index of the containing line segment in the parent edge - unsigned int segmentIndex; + unsigned int segmentIndex; /// Construct a node on the given NodedSegmentString // - /// @param ss the parent NodedSegmentString + /// @param ss the parent NodedSegmentString /// /// @param coord the coordinate of the intersection, will be copied /// diff -Nru geos-3.6.2/include/geos/noding/SegmentNodeList.h geos-3.7.1/include/geos/noding/SegmentNodeList.h --- geos-3.6.2/include/geos/noding/SegmentNodeList.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentNodeList.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -58,7 +58,7 @@ std::set nodeMap; // the parent edge - const NodedSegmentString& edge; + const NodedSegmentString& edge; /** * Checks the correctness of the set of split edges corresponding @@ -73,7 +73,7 @@ * (and including) the two intersections. * The label for the new edge is the same as the label for the * parent edge. - * + * * ownership of return value is transferred */ SegmentString* createSplitEdge(SegmentNode *ei0, SegmentNode *ei1); @@ -109,8 +109,8 @@ size_t& collapsedVertexIndex); // Declare type as noncopyable - SegmentNodeList(const SegmentNodeList& other); - SegmentNodeList& operator=(const SegmentNodeList& rhs); + SegmentNodeList(const SegmentNodeList& other) = delete; + SegmentNodeList& operator=(const SegmentNodeList& rhs) = delete; public: @@ -138,7 +138,7 @@ * destroyed at SegmentNodeList destruction time. * * @param intPt the intersection Coordinate, will be copied - * @param segmentIndex + * @param segmentIndex */ SegmentNode* add(const geom::Coordinate& intPt, std::size_t segmentIndex); diff -Nru geos-3.6.2/include/geos/noding/SegmentPointComparator.h geos-3.7.1/include/geos/noding/SegmentPointComparator.h --- geos-3.6.2/include/geos/noding/SegmentPointComparator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentPointComparator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -41,7 +41,7 @@ public: /** - * Compares two Coordinates for their relative position along a + * Compares two Coordinates for their relative position along a * segment lying in the specified Octant. * * @return -1 node0 occurs first @@ -69,7 +69,7 @@ } assert(0); // invalid octant value return 0; - + } static int relativeSign(double x0, double x1) @@ -87,7 +87,7 @@ if (compareSign1 > 0) return 1; return 0; } - + }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/SegmentSetMutualIntersector.h geos-3.7.1/include/geos/noding/SegmentSetMutualIntersector.h --- geos-3.6.2/include/geos/noding/SegmentSetMutualIntersector.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentSetMutualIntersector.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -37,9 +37,9 @@ class SegmentSetMutualIntersector { public: - + SegmentSetMutualIntersector() - : segInt(0) + : segInt(nullptr) {} virtual ~SegmentSetMutualIntersector() {} @@ -57,10 +57,10 @@ } /** - * + * * @param segStrings0 a collection of {@link SegmentString}s to node */ - virtual void setBaseSegments(SegmentString::ConstVect* segStrings) = 0; + virtual void setBaseSegments(SegmentString::ConstVect* segStrings) = 0; /** * Computes the intersections for two collections of {@link SegmentString}s. diff -Nru geos-3.6.2/include/geos/noding/SegmentString.h geos-3.7.1/include/geos/noding/SegmentString.h --- geos-3.6.2/include/geos/noding/SegmentString.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentString.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -98,8 +98,8 @@ const void* context; // Declare type as noncopyable - SegmentString(const SegmentString& other); - SegmentString& operator=(const SegmentString& rhs); + SegmentString(const SegmentString& other) = delete; + SegmentString& operator=(const SegmentString& rhs) = delete; }; std::ostream& operator<< (std::ostream& os, const SegmentString& ss); diff -Nru geos-3.6.2/include/geos/noding/SegmentStringUtil.h geos-3.7.1/include/geos/noding/SegmentStringUtil.h --- geos-3.6.2/include/geos/noding/SegmentStringUtil.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SegmentStringUtil.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * * @@ -30,7 +30,7 @@ /** \brief * Utility methods for processing {@link SegmentString}s. - * + * * @author Martin Davis * */ @@ -42,11 +42,11 @@ * to {@link SegmentString}s. * * The SegmentString data item is set to be the source Geometry. - * + * * @param geom the geometry to extract from * @param segStr a List of SegmentStrings (output parameter). * Ownership of elements pushed to the vector - * is transferred to caller. + * is transferred to caller. */ static void extractSegmentStrings(const geom::Geometry * g, SegmentString::ConstVect& segStr) diff -Nru geos-3.6.2/include/geos/noding/SimpleNoder.h geos-3.7.1/include/geos/noding/SimpleNoder.h --- geos-3.6.2/include/geos/noding/SimpleNoder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SimpleNoder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -54,14 +54,14 @@ virtual void computeIntersects(SegmentString *e0, SegmentString *e1); public: - SimpleNoder(SegmentIntersector* nSegInt=NULL) + SimpleNoder(SegmentIntersector* nSegInt=nullptr) : SinglePassNoder(nSegInt) {} - void computeNodes(std::vector* inputSegmentStrings); + void computeNodes(std::vector* inputSegmentStrings) override; - std::vector* getNodedSubstrings() const { + std::vector* getNodedSubstrings() const override { return NodedSegmentString::getNodedSubstrings(*nodedSegStrings); } }; diff -Nru geos-3.6.2/include/geos/noding/SingleInteriorIntersectionFinder.h geos-3.7.1/include/geos/noding/SingleInteriorIntersectionFinder.h --- geos-3.6.2/include/geos/noding/SingleInteriorIntersectionFinder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SingleInteriorIntersectionFinder.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -60,35 +60,35 @@ /** \brief * Tests whether an intersection was found. - * + * * @return true if an intersection was found */ bool hasIntersection() const - { - return !interiorIntersection.isNull(); + { + return !interiorIntersection.isNull(); } - + /** \brief * Gets the computed location of the intersection. * Due to round-off, the location may not be exact. - * + * * @return the coordinate for the intersection location */ const geom::Coordinate& getInteriorIntersection() const - { - return interiorIntersection; + { + return interiorIntersection; } /** \brief * Gets the endpoints of the intersecting segments. - * + * * @return an array of the segment endpoints (p00, p01, p10, p11) */ const std::vector& getIntersectionSegments() const { return intSegments; } - + /** \brief * This method is called by clients * of the {@link SegmentIntersector} class to process @@ -100,10 +100,10 @@ */ void processIntersections( SegmentString* e0, int segIndex0, - SegmentString* e1, int segIndex1); - - bool isDone() const - { + SegmentString* e1, int segIndex1) override; + + bool isDone() const override + { return !interiorIntersection.isNull(); } @@ -113,8 +113,8 @@ std::vector intSegments; // Declare type as noncopyable - SingleInteriorIntersectionFinder(const SingleInteriorIntersectionFinder& other); - SingleInteriorIntersectionFinder& operator=(const SingleInteriorIntersectionFinder& rhs); + SingleInteriorIntersectionFinder(const SingleInteriorIntersectionFinder& other) = delete; + SingleInteriorIntersectionFinder& operator=(const SingleInteriorIntersectionFinder& rhs) = delete; }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/SinglePassNoder.h geos-3.7.1/include/geos/noding/SinglePassNoder.h --- geos-3.6.2/include/geos/noding/SinglePassNoder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/SinglePassNoder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -56,9 +56,9 @@ public: - SinglePassNoder(SegmentIntersector* nSegInt=NULL): segInt(nSegInt) {} + SinglePassNoder(SegmentIntersector* nSegInt=nullptr): segInt(nSegInt) {} - virtual ~SinglePassNoder() {} + ~SinglePassNoder() override {} /** * Sets the SegmentIntersector to use with this noder. @@ -78,7 +78,7 @@ * * @param segStrings a collection of {@link SegmentString}s to node */ - virtual void computeNodes(std::vector* segStrings)=0; + void computeNodes(std::vector* segStrings) override =0; /** * Returns a {@link Collection} of fully noded {@link SegmentStrings}. @@ -86,8 +86,8 @@ * * @return a Collection of SegmentStrings */ - virtual std::vector* getNodedSubstrings() const=0; - + std::vector* getNodedSubstrings() const override =0; + }; } // namespace geos.noding diff -Nru geos-3.6.2/include/geos/noding/snapround/HotPixel.h geos-3.7.1/include/geos/noding/snapround/HotPixel.h --- geos-3.6.2/include/geos/noding/snapround/HotPixel.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/snapround/HotPixel.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -24,7 +24,7 @@ #include #include // for composition -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -54,7 +54,7 @@ * A hot pixel contains the interior of the tolerance square and * the boundary * minus the top and right segments. - * + * * The hot pixel operations are all computed in the integer domain * to avoid rounding problems. * @@ -81,7 +81,7 @@ /** \brief * The corners of the hot pixel - * + * * In the order: * 1 0 * 2 3 @@ -89,7 +89,7 @@ std::vector corner; /// Owned by this class, constructed on demand - mutable std::auto_ptr safeEnv; + mutable std::unique_ptr safeEnv; void initCorners(const geom::Coordinate& pt); @@ -108,20 +108,20 @@ * can take advantage of the fact that because the hot pixel edges * do not lie on the coordinate grid. It is sufficient to check * if there is at least one of: - * + * * - a proper intersection with the segment and any hot pixel edge * - an intersection between the segment and both the left * and bottom edges * - an intersection between a segment endpoint and the hot * pixel coordinate - * + * * @param p0 * @param p1 * @return */ bool intersectsToleranceSquare(const geom::Coordinate& p0, const geom::Coordinate& p1) const; - + /** \brief * Test whether the given segment intersects @@ -142,10 +142,10 @@ bool intersectsScaled(const geom::Coordinate& p0, const geom::Coordinate& p1) const; - + // Declare type as noncopyable - HotPixel(const HotPixel& other); - HotPixel& operator=(const HotPixel& rhs); + HotPixel(const HotPixel& other) = delete; + HotPixel& operator=(const HotPixel& rhs) = delete; public: @@ -185,7 +185,7 @@ */ bool intersects(const geom::Coordinate& p0, const geom::Coordinate& p1) const; - + /** * Adds a new node (equal to the snap pt) to the specified segment * if the segment passes through the hot pixel diff -Nru geos-3.6.2/include/geos/noding/snapround/Makefile.in geos-3.7.1/include/geos/noding/snapround/Makefile.in --- geos-3.6.2/include/geos/noding/snapround/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/noding/snapround/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -383,8 +389,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -475,7 +481,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/noding/snapround/MCIndexPointSnapper.h geos-3.7.1/include/geos/noding/snapround/MCIndexPointSnapper.h --- geos-3.6.2/include/geos/noding/snapround/MCIndexPointSnapper.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/snapround/MCIndexPointSnapper.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -48,7 +48,7 @@ class GEOS_DLL MCIndexPointSnapper { public: - + MCIndexPointSnapper(index::SpatialIndex& nIndex) : @@ -71,7 +71,7 @@ unsigned int vertexIndex); bool snap(HotPixel& hotPixel) { - return snap(hotPixel, 0, 0); + return snap(hotPixel, nullptr, 0); } @@ -80,8 +80,8 @@ index::SpatialIndex& index; // Declare type as noncopyable - MCIndexPointSnapper(const MCIndexPointSnapper& other); - MCIndexPointSnapper& operator=(const MCIndexPointSnapper& rhs); + MCIndexPointSnapper(const MCIndexPointSnapper& other) = delete; + MCIndexPointSnapper& operator=(const MCIndexPointSnapper& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/noding/snapround/MCIndexSnapRounder.h geos-3.7.1/include/geos/noding/snapround/MCIndexSnapRounder.h --- geos-3.6.2/include/geos/noding/snapround/MCIndexSnapRounder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/snapround/MCIndexSnapRounder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -61,7 +61,7 @@ * Snap Rounding assumes that all vertices lie on a uniform grid * (hence the precision model of the input must be fixed precision, * and all the input vertices must be rounded to that precision). - * + * * This implementation uses a monotone chains and a spatial index to * speed up the intersection tests. * @@ -79,17 +79,17 @@ : pm(nPm), scaleFactor(nPm.getScale()), - pointSnapper(0) + pointSnapper(nullptr) { li.setPrecisionModel(&pm); } - std::vector* getNodedSubstrings() const { + std::vector* getNodedSubstrings() const override { return NodedSegmentString::getNodedSubstrings(*nodedSegStrings); } - void computeNodes(std::vector* segStrings); - + void computeNodes(std::vector* segStrings) override; + /** * Computes nodes introduced as a result of * snapping segments to vertices of other segments @@ -111,11 +111,11 @@ std::vector* nodedSegStrings; - std::auto_ptr pointSnapper; + std::unique_ptr pointSnapper; void snapRound(MCIndexNoder& noder, std::vector* segStrings); - + /** * Computes all interior intersections in the collection of SegmentStrings, * and push their Coordinate to the provided vector. @@ -138,12 +138,12 @@ * This has n^2 performance. */ void computeVertexSnaps(NodedSegmentString* e); - + void checkCorrectness(std::vector& inputSegmentStrings); // Declare type as noncopyable - MCIndexSnapRounder(const MCIndexSnapRounder& other); - MCIndexSnapRounder& operator=(const MCIndexSnapRounder& rhs); + MCIndexSnapRounder(const MCIndexSnapRounder& other) = delete; + MCIndexSnapRounder& operator=(const MCIndexSnapRounder& rhs) = delete; }; } // namespace geos::noding::snapround diff -Nru geos-3.6.2/include/geos/noding/snapround/SimpleSnapRounder.h geos-3.7.1/include/geos/noding/snapround/SimpleSnapRounder.h --- geos-3.6.2/include/geos/noding/snapround/SimpleSnapRounder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding/snapround/SimpleSnapRounder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -76,9 +76,9 @@ SimpleSnapRounder(const geom::PrecisionModel& newPm); - std::vector* getNodedSubstrings() const; + std::vector* getNodedSubstrings() const override; - void computeNodes(std::vector* inputSegmentStrings); + void computeNodes(std::vector* inputSegmentStrings) override; void add(const SegmentString* segStr); @@ -135,8 +135,8 @@ void computeVertexSnaps(NodedSegmentString* e0, NodedSegmentString* e1); // Declare type as noncopyable - SimpleSnapRounder(const SimpleSnapRounder& other); - SimpleSnapRounder& operator=(const SimpleSnapRounder& rhs); + SimpleSnapRounder(const SimpleSnapRounder& other) = delete; + SimpleSnapRounder& operator=(const SimpleSnapRounder& rhs) = delete; }; } // namespace geos::noding::snapround diff -Nru geos-3.6.2/include/geos/noding.h geos-3.7.1/include/geos/noding.h --- geos-3.6.2/include/geos/noding.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/noding.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/nodingSnapround.h geos-3.7.1/include/geos/nodingSnapround.h --- geos-3.6.2/include/geos/nodingSnapround.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/nodingSnapround.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/opBuffer.h geos-3.7.1/include/geos/opBuffer.h --- geos-3.6.2/include/geos/opBuffer.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opBuffer.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -20,7 +20,7 @@ namespace operation { // geos.operation /// Provides classes for computing buffers of geometries -namespace buffer { +namespace buffer { } // namespace geos.operation.buffer } // namespace geos.operation } // namespace geos diff -Nru geos-3.6.2/include/geos/opDistance.h geos-3.7.1/include/geos/opDistance.h --- geos-3.6.2/include/geos/opDistance.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opDistance.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/operation/buffer/BufferBuilder.h geos-3.7.1/include/geos/operation/buffer/BufferBuilder.h --- geos-3.6.2/include/geos/operation/buffer/BufferBuilder.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/BufferBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2011 Sandro Santilli + * Copyright (C) 2009-2011 Sandro Santilli * Copyright (C) 2008-2010 Safe Software Inc. * Copyright (C) 2006-2007 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -76,7 +76,7 @@ * * Allows setting the level of approximation for circular arcs, * and the precision model in which to carry out the computation. - * + * * When computing buffers in floating point double-precision * it can happen that the process of iterated noding can fail to converge * (terminate). @@ -101,11 +101,11 @@ BufferBuilder(const BufferParameters& nBufParams) : bufParams(nBufParams), - workingPrecisionModel(NULL), - li(NULL), - intersectionAdder(NULL), - workingNoder(NULL), - geomFact(NULL), + workingPrecisionModel(nullptr), + li(nullptr), + intersectionAdder(nullptr), + workingNoder(nullptr), + geomFact(nullptr), edgeList() {} @@ -167,7 +167,7 @@ */ static int depthDelta(const geomgraph::Label& label); - const BufferParameters& bufParams; + const BufferParameters& bufParams; const geom::PrecisionModel* workingPrecisionModel; @@ -233,10 +233,10 @@ * @return the empty result geometry, transferring ownership to caller. */ geom::Geometry* createEmptyResultGeometry() const; - + // Declare type as noncopyable - BufferBuilder(const BufferBuilder& other); - BufferBuilder& operator=(const BufferBuilder& rhs); + BufferBuilder(const BufferBuilder& other) = delete; + BufferBuilder& operator=(const BufferBuilder& rhs) = delete; }; } // namespace geos::operation::buffer diff -Nru geos-3.6.2/include/geos/operation/buffer/BufferInputLineSimplifier.h geos-3.7.1/include/geos/operation/buffer/BufferInputLineSimplifier.h --- geos-3.6.2/include/geos/operation/buffer/BufferInputLineSimplifier.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/BufferInputLineSimplifier.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -41,7 +41,7 @@ /** \brief * Simplifies a buffer input line to * remove concavities with shallow depth. - * + * * The most important benefit of doing this * is to reduce the number of points and the complexity of * shape which will be buffered. @@ -49,17 +49,17 @@ * the quantized fillet arcs (although this issue * should be eliminated in any case by the * offset curve generation logic). - * + * * A key aspect of the simplification is that it * affects inside (concave or inward) corners only. * Convex (outward) corners are preserved, since they * are required to ensure that the generated buffer curve * lies at the correct distance from the input geometry. - * + * * Another important heuristic used is that the end segments * of the input are never simplified. This ensures that * the client buffer code is able to generate end caps faithfully. - * + * * No attempt is made to avoid self-intersections in the output. * This is acceptable for use for generating a buffer offset curve, * since the buffer algorithm is insensitive to invalid polygonal @@ -87,7 +87,7 @@ * @param distanceTol simplification distance tolerance to use * @return a simplified version of the coordinate sequence */ - static std::auto_ptr simplify( + static std::unique_ptr simplify( const geom::CoordinateSequence& inputLine, double distanceTol); BufferInputLineSimplifier(const geom::CoordinateSequence& input); @@ -102,7 +102,7 @@ * @param distanceTol simplification distance tolerance to use * @return the simplified coordinate list */ - std::auto_ptr simplify(double distanceTol); + std::unique_ptr simplify(double distanceTol); private: @@ -124,7 +124,7 @@ */ unsigned int findNextNonDeletedIndex(unsigned int index) const; - std::auto_ptr collapseLine() const; + std::unique_ptr collapseLine() const; bool isDeletable(int i0, int i1, int i2, double distanceTol) const; @@ -172,8 +172,8 @@ int angleOrientation; // Declare type as noncopyable - BufferInputLineSimplifier(const BufferInputLineSimplifier& other); - BufferInputLineSimplifier& operator=(const BufferInputLineSimplifier& rhs); + BufferInputLineSimplifier(const BufferInputLineSimplifier& other) = delete; + BufferInputLineSimplifier& operator=(const BufferInputLineSimplifier& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/operation/buffer/BufferOp.h geos-3.7.1/include/geos/operation/buffer/BufferOp.h --- geos-3.6.2/include/geos/operation/buffer/BufferOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/BufferOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2011 Sandro Santilli + * Copyright (C) 2009-2011 Sandro Santilli * Copyright (C) 2005-2007 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ #define GEOS_OP_BUFFER_BUFFEROP_H #include -#include // for enum values +#include // for enum values #include // for composition @@ -61,19 +61,19 @@ * The buffer operation always returns a polygonal result. * The negative or zero-distance buffer of lines and points is always * an empty Polygon. - * + * * Since true buffer curves may contain circular arcs, * computed buffer polygons can only be approximations to the true geometry. * The user can control the accuracy of the curve approximation by specifying * the number of linear segments with which to approximate a curve. - * + * * The end cap style of a linear buffer may be specified. * The following end cap styles are supported: * - CAP_ROUND - the usual round end caps * - CAP_BUTT - end caps are truncated flat at the line ends * - CAP_SQUARE - end caps are squared off at the buffer distance * beyond the line ends - * + * */ class GEOS_DLL BufferOp { @@ -83,7 +83,7 @@ /** * A number of digits of precision which leaves some computational "headroom" * for floating point operations. - * + * * This value should be less than the decimal precision of double-precision values (16). */ static const int MAX_PRECISION_DIGITS = 12; @@ -171,7 +171,7 @@ : argGeom(g), bufParams(), - resultGeometry(NULL) + resultGeometry(nullptr) { } @@ -187,7 +187,7 @@ : argGeom(g), bufParams(params), - resultGeometry(NULL) + resultGeometry(nullptr) { } @@ -211,14 +211,14 @@ /** * Sets whether the computed buffer should be single-sided. - * + * * A single-sided buffer is constructed on only one side * of each input line. - * + * * The side used is determined by the sign of the buffer distance: * - a positive distance indicates the left-hand side * - a negative distance indicates the right-hand side - * + * * The single-sided buffer of point geometries is * the same as the regular buffer. * diff -Nru geos-3.6.2/include/geos/operation/buffer/BufferParameters.h geos-3.7.1/include/geos/operation/buffer/BufferParameters.h --- geos-3.6.2/include/geos/operation/buffer/BufferParameters.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/BufferParameters.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -140,7 +140,7 @@ /// \brief /// Sets the number of line segments used to approximate /// an angle fillet. - // + // /// - If quadSegs >= 1, joins are round, /// and quadSegs indicates the number of /// segments to use to approximate a quarter-circle. @@ -150,7 +150,7 @@ ///

 	///    mitreLimit = |quadSegs|
 	///    
- /// + /// /// For round joins, quadSegs determines the maximum /// error in the approximation to the true buffer curve. /// @@ -223,7 +223,7 @@ /// @return the limit value /// double getMitreLimit() const { return mitreLimit; } - + /// Sets the limit on the mitre ratio used for very sharp corners. // /// The mitre ratio is the ratio of the distance from the corner @@ -245,11 +245,11 @@ /** * Sets whether the computed buffer should be single-sided. * A single-sided buffer is constructed on only one side of each input line. - * + * * The side used is determined by the sign of the buffer distance: * - a positive distance indicates the left-hand side * - a negative distance indicates the right-hand side - * + * * The single-sided buffer of point geometries is * the same as the regular buffer. * diff -Nru geos-3.6.2/include/geos/operation/buffer/BufferSubgraph.h geos-3.7.1/include/geos/operation/buffer/BufferSubgraph.h --- geos-3.6.2/include/geos/operation/buffer/BufferSubgraph.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/BufferSubgraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -53,7 +53,7 @@ /** * \brief * A connected subset of the graph of DirectedEdge and geomgraph::Node. - * + * * Its edges will generate either * - a single polygon in the complete buffer, with zero or more holes, or * - ne or more connected holes @@ -107,7 +107,7 @@ friend std::ostream& operator<< (std::ostream& os, const BufferSubgraph& bs); - BufferSubgraph(); + BufferSubgraph(); ~BufferSubgraph(); @@ -150,7 +150,7 @@ * Coordinate. * * This defines a partial ordering on the graphs such that: - * + * * g1 >= g2 <==> Ring(g2) does not contain Ring(g1) * * where Polygon(g) is the buffer polygon that is built from g. diff -Nru geos-3.6.2/include/geos/operation/buffer/Makefile.in geos-3.7.1/include/geos/operation/buffer/Makefile.in --- geos-3.6.2/include/geos/operation/buffer/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -389,8 +395,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -481,7 +487,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/buffer/OffsetCurveBuilder.h geos-3.7.1/include/geos/operation/buffer/OffsetCurveBuilder.h --- geos-3.6.2/include/geos/operation/buffer/OffsetCurveBuilder.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/OffsetCurveBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2011 Sandro Santilli + * Copyright (C) 2009-2011 Sandro Santilli * Copyright (C) 2006-2007 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,10 +23,10 @@ #include #include // for composition -#include +#include #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -116,7 +116,7 @@ * * NOTE: this is a GEOS extension */ - void getSingleSidedLineCurve(const geom::CoordinateSequence* inputPts, + void getSingleSidedLineCurve(const geom::CoordinateSequence* inputPts, double distance, std::vector& lineList, bool leftSide, bool rightSide ) ; @@ -138,7 +138,7 @@ const geom::PrecisionModel* precisionModel; - const BufferParameters& bufParams; + const BufferParameters& bufParams; /** * Use a value which results in a potential distance error which is @@ -168,15 +168,15 @@ void computeRingBufferCurve(const geom::CoordinateSequence& inputPts, int side, OffsetSegmentGenerator& segGen); - std::auto_ptr getSegGen(double dist); + std::unique_ptr getSegGen(double dist); void computePointCurve(const geom::Coordinate& pt, OffsetSegmentGenerator& segGen); // Declare type as noncopyable - OffsetCurveBuilder(const OffsetCurveBuilder& other); - OffsetCurveBuilder& operator=(const OffsetCurveBuilder& rhs); + OffsetCurveBuilder(const OffsetCurveBuilder& other) = delete; + OffsetCurveBuilder& operator=(const OffsetCurveBuilder& rhs) = delete; }; } // namespace geos::operation::buffer diff -Nru geos-3.6.2/include/geos/operation/buffer/OffsetCurveSetBuilder.h geos-3.7.1/include/geos/operation/buffer/OffsetCurveSetBuilder.h --- geos-3.6.2/include/geos/operation/buffer/OffsetCurveSetBuilder.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/OffsetCurveSetBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -170,8 +170,8 @@ double bufferDistance); // Declare type as noncopyable - OffsetCurveSetBuilder(const OffsetCurveSetBuilder& other); - OffsetCurveSetBuilder& operator=(const OffsetCurveSetBuilder& rhs); + OffsetCurveSetBuilder(const OffsetCurveSetBuilder& other) = delete; + OffsetCurveSetBuilder& operator=(const OffsetCurveSetBuilder& rhs) = delete; public: diff -Nru geos-3.6.2/include/geos/operation/buffer/OffsetSegmentGenerator.h geos-3.7.1/include/geos/operation/buffer/OffsetSegmentGenerator.h --- geos-3.6.2/include/geos/operation/buffer/OffsetSegmentGenerator.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/OffsetSegmentGenerator.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -152,7 +152,7 @@ * can be to be snapped */ static const double INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTOR; // 1.0E-3; - + /** * Factor which controls how close curve vertices can be to be snapped */ @@ -182,7 +182,7 @@ /// with default-or-better quantization) the closing segments /// can be made quite short. This substantially improves /// performance (due to fewer intersections being created). - /// + /// /// A closingSegFactor of 0 results in lines to the corner vertex. /// A closingSegFactor of 1 results in lines halfway /// to the corner vertex. @@ -194,12 +194,12 @@ /// int closingSegLengthFactor; // 1; - /// Owned by this object, destroyed by dtor + /// Owned by this object, destroyed by dtor // /// This actually gets created multiple times /// and each of the old versions is pushed /// to the ptLists std::vector to ensure all - /// created CoordinateSequences are properly + /// created CoordinateSequences are properly /// destroyed. /// OffsetSegmentString segList; @@ -208,7 +208,7 @@ const geom::PrecisionModel* precisionModel; - const BufferParameters& bufParams; + const BufferParameters& bufParams; algorithm::LineIntersector li; @@ -257,7 +257,7 @@ /// \brief /// Adds a bevel join connecting the two offset segments /// around a reflex corner. - // + // /// @param offset0 the first offset segment /// @param offset1 the second offset segment /// @@ -282,15 +282,15 @@ /// Adds the offset points for an outside (convex) turn // - /// @param orientation - /// @param addStartPoint + /// @param orientation + /// @param addStartPoint /// void addOutsideTurn(int orientation, bool addStartPoint); /// Adds the offset points for an inside (concave) turn // - /// @param orientation - /// @param addStartPoint + /// @param orientation + /// @param addStartPoint /// void addInsideTurn(int orientation, bool addStartPoint); @@ -312,7 +312,7 @@ /** * Adds points for a circular fillet around a reflex corner. - * + * * Adds the start and end points * * @param p base point of curve @@ -325,7 +325,7 @@ const geom::Coordinate &p1, int direction, double radius); - /** + /** * Adds points for a circular fillet arc between two specified angles. * * The start and end point for the fillet are not added - diff -Nru geos-3.6.2/include/geos/operation/buffer/OffsetSegmentString.h geos-3.7.1/include/geos/operation/buffer/OffsetSegmentString.h --- geos-3.6.2/include/geos/operation/buffer/OffsetSegmentString.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/OffsetSegmentString.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2007 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -40,7 +40,7 @@ /// /// @author Martin Davis /// -class OffsetSegmentString +class OffsetSegmentString { private: @@ -48,9 +48,9 @@ geom::CoordinateArraySequence* ptList; const geom::PrecisionModel* precisionModel; - + /** \brief - * The distance below which two adjacent points on the curve + * The distance below which two adjacent points on the curve * are considered to be coincident. * * This is chosen to be a small fraction of the offset distance. @@ -60,7 +60,7 @@ /** \brief * Tests whether the given point is redundant relative to the previous * point in the list (up to tolerance) - * + * * @param pt * @return true if the point is redundant */ @@ -74,16 +74,16 @@ return true; return false; } - + public: - + friend std::ostream& operator<< (std::ostream& os, const OffsetSegmentString& node); OffsetSegmentString() : ptList(new geom::CoordinateArraySequence()), - precisionModel(NULL), + precisionModel(nullptr), minimumVertexDistance (0.0) { } @@ -95,23 +95,23 @@ void reset() { - if ( ptList ) ptList->clear(); + if ( ptList ) ptList->clear(); else ptList = new geom::CoordinateArraySequence(); - precisionModel = NULL; + precisionModel = nullptr; minimumVertexDistance = 0.0; } - + void setPrecisionModel(const geom::PrecisionModel* nPrecisionModel) { precisionModel = nPrecisionModel; } - + void setMinimumVertexDistance(double nMinVertexDistance) { minimumVertexDistance = nMinVertexDistance; } - + void addPt(const geom::Coordinate& pt) { assert(precisionModel); @@ -141,7 +141,7 @@ } } } - + /// Check that points are a ring // /// add the startpoint again if they are not @@ -167,7 +167,7 @@ { closeRing(); geom::CoordinateSequence* ret = ptList; - ptList = 0; + ptList = nullptr; return ret; } diff -Nru geos-3.6.2/include/geos/operation/buffer/RightmostEdgeFinder.h geos-3.7.1/include/geos/operation/buffer/RightmostEdgeFinder.h --- geos-3.6.2/include/geos/operation/buffer/RightmostEdgeFinder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/RightmostEdgeFinder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/buffer/SubgraphDepthLocater.h geos-3.7.1/include/geos/operation/buffer/SubgraphDepthLocater.h --- geos-3.6.2/include/geos/operation/buffer/SubgraphDepthLocater.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/buffer/SubgraphDepthLocater.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/distance/ConnectedElementLocationFilter.h geos-3.7.1/include/geos/operation/distance/ConnectedElementLocationFilter.h --- geos-3.6.2/include/geos/operation/distance/ConnectedElementLocationFilter.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/ConnectedElementLocationFilter.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,10 +27,10 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Geometry; } - namespace operation { + namespace operation { namespace distance { class GeometryLocation; } @@ -46,7 +46,7 @@ * A ConnectedElementPointFilter extracts a single point * from each connected element in a Geometry * (e.g. a polygon, linestring or point) - * and returns them in a list. The elements of the list are + * and returns them in a list. The elements of the list are * DistanceOp::GeometryLocation. */ class GEOS_DLL ConnectedElementLocationFilter: public geom::GeometryFilter { @@ -58,9 +58,9 @@ /** * Returns a list containing a point from each Polygon, LineString, and Point * found inside the specified geometry. Thus, if the specified geometry is - * not a GeometryCollection, an empty list will be returned. The elements of the list + * not a GeometryCollection, an empty list will be returned. The elements of the list * are {@link com.vividsolutions.jts.operation.distance.GeometryLocation}s. - */ + */ static std::vector* getLocations(const geom::Geometry *geom); ConnectedElementLocationFilter(std::vector *newLocations) @@ -68,8 +68,8 @@ locations(newLocations) {} - void filter_ro(const geom::Geometry *geom); - void filter_rw(geom::Geometry *geom); + void filter_ro(const geom::Geometry *geom) override; + void filter_rw(geom::Geometry *geom) override; }; diff -Nru geos-3.6.2/include/geos/operation/distance/ConnectedElementPointFilter.h geos-3.7.1/include/geos/operation/distance/ConnectedElementPointFilter.h --- geos-3.6.2/include/geos/operation/distance/ConnectedElementPointFilter.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/ConnectedElementPointFilter.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,7 +27,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Coordinate; class Geometry; } @@ -62,7 +62,7 @@ pts(newPts) {} - void filter_ro(const geom::Geometry *geom); + void filter_ro(const geom::Geometry *geom) override; //void filter_rw(geom::Geometry * /*geom*/) {}; }; diff -Nru geos-3.6.2/include/geos/operation/distance/DistanceOp.h geos-3.7.1/include/geos/operation/distance/DistanceOp.h --- geos-3.6.2/include/geos/operation/distance/DistanceOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/DistanceOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,7 +33,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Coordinate; class Polygon; class LineString; @@ -41,8 +41,8 @@ class Geometry; class CoordinateSequence; } - namespace operation { - namespace distance { + namespace operation { + namespace distance { class GeometryLocation; } } @@ -59,13 +59,13 @@ * within a given distance, or else are the nearest points * on the geometries (in which case this also * provides the distance between the geometries). - * + * * The distance computation also finds a pair of points in the * input geometries which have the minimum distance between them. * If a point lies in the interior of a line segment, * the coordinate computed is a close * approximation to the exact point. - * + * * The algorithms used are straightforward O(n^2) * comparisons. This worst-case performance could be improved on * by using Voronoi techniques or spatial indexes. @@ -201,7 +201,7 @@ * Geometries. * * @return a pair of {@link GeometryLocation}s for the closest points. - * Ownership of returned object is left to this instance and + * Ownership of returned object is left to this instance and * it's reference will be alive for the whole lifetime of it. * * NOTE: this is public in JTS, but we aim at API reduction here... @@ -211,11 +211,11 @@ // input (TODO: use two references instead..) std::vector geom; - double terminateDistance; + double terminateDistance; - // working + // working algorithm::PointLocator ptLocator; - // TODO: use auto_ptr + // TODO: use unique_ptr std::vector *minDistanceLocation; double minDistance; diff -Nru geos-3.6.2/include/geos/operation/distance/FacetSequence.h geos-3.7.1/include/geos/operation/distance/FacetSequence.h --- geos-3.6.2/include/geos/operation/distance/FacetSequence.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/FacetSequence.h 2018-10-19 22:32:06.000000000 +0000 @@ -23,40 +23,38 @@ #include #include -using namespace geos::geom; - namespace geos { namespace operation { namespace distance { class FacetSequence { private: - const CoordinateSequence *pts; + const geom::CoordinateSequence *pts; const size_t start; const size_t end; /* Unlike JTS, we store the envelope in the FacetSequence so that it has a clear owner. This is * helpful when making a tree of FacetSequence objects (FacetSequenceTreeBuilder) * */ - Envelope env; + geom::Envelope env; double computeLineLineDistance(const FacetSequence & facetSeq) const; - double computePointLineDistance(const Coordinate & pt, const FacetSequence & facetSeq) const; + double computePointLineDistance(const geom::Coordinate & pt, const FacetSequence & facetSeq) const; void computeEnvelope(); public: - const Envelope * getEnvelope() const; + const geom::Envelope * getEnvelope() const; - const Coordinate * getCoordinate(size_t index) const; + const geom::Coordinate * getCoordinate(size_t index) const; size_t size() const; bool isPoint() const; - double distance(const FacetSequence & facetSeq); + double distance(const FacetSequence & facetSeq) const; - FacetSequence(const CoordinateSequence *pts, size_t start, size_t end); + FacetSequence(const geom::CoordinateSequence *pts, size_t start, size_t end); }; } diff -Nru geos-3.6.2/include/geos/operation/distance/FacetSequenceTreeBuilder.h geos-3.7.1/include/geos/operation/distance/FacetSequenceTreeBuilder.h --- geos-3.6.2/include/geos/operation/distance/FacetSequenceTreeBuilder.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/FacetSequenceTreeBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -24,14 +24,10 @@ #include #include -using namespace geos::geom; -using namespace geos::index::strtree; -using namespace geos::operation::distance; - namespace geos { namespace operation { namespace distance { - class FacetSequenceTreeBuilder { + class GEOS_DLL FacetSequenceTreeBuilder { private: // 6 seems to be a good facet sequence size static const int FACET_SEQUENCE_SIZE = 6; @@ -39,11 +35,11 @@ // Seems to be better to use a minimum node capacity static const int STR_TREE_NODE_CAPACITY = 4; - static void addFacetSequences(const CoordinateSequence* pts, std::vector & sections); - static std::vector * computeFacetSequences(const Geometry* g); + static void addFacetSequences(const geom::CoordinateSequence* pts, std::vector & sections); + static std::vector * computeFacetSequences(const geom::Geometry* g); public: - static STRtree* build(const Geometry* g); + static geos::index::strtree::STRtree* build(const geom::Geometry* g); }; } } diff -Nru geos-3.6.2/include/geos/operation/distance/GeometryLocation.h geos-3.7.1/include/geos/operation/distance/GeometryLocation.h --- geos-3.6.2/include/geos/operation/distance/GeometryLocation.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/GeometryLocation.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -25,7 +25,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Geometry; } } @@ -52,7 +52,7 @@ const geom::Geometry *component; int segIndex; geom::Coordinate pt; -public: +public: /** \brief * A Special value of segmentIndex used for locations * inside area geometries. @@ -80,7 +80,7 @@ * * @param component the component of the geometry containing the point * @param pt the coordinate of the location - */ + */ GeometryLocation(const geom::Geometry *component, const geom::Coordinate &pt); @@ -91,7 +91,7 @@ /** * Returns the segment index for this location. - * + * * If the location is inside an * area, the index will have the value INSIDE_AREA; * diff -Nru geos-3.6.2/include/geos/operation/distance/IndexedFacetDistance.h geos-3.7.1/include/geos/operation/distance/IndexedFacetDistance.h --- geos-3.6.2/include/geos/operation/distance/IndexedFacetDistance.h 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/IndexedFacetDistance.h 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,47 @@ +/********************************************************************** + * + * GEOS - Geometry Engine Open Source + * http://geos.osgeo.org + * + * Copyright (C) 2016 Daniel Baston + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU Lesser General Public Licence as published + * by the Free Software Foundation. + * See the COPYING file for more information. + * + ********************************************************************** + * + * Last port: operation/distance/IndexedFacetDistance.java (f6187ee2 JTS-1.14) + * + **********************************************************************/ + +#ifndef GEOS_INDEXEDFACETDISTANCE_H +#define GEOS_INDEXEDFACETDISTANCE_H + +#include + +namespace geos { + namespace operation { + namespace distance { + class GEOS_DLL IndexedFacetDistance { + public: + IndexedFacetDistance(const geom::Geometry * g) : + cachedTree(FacetSequenceTreeBuilder::build(g)) + {} + + static double distance(const geom::Geometry * g1, const geom::Geometry * g2); + + double getDistance(const geom::Geometry * g) const; + + ~IndexedFacetDistance(); + + private: + std::unique_ptr cachedTree; + + }; + } + } +} + +#endif //GEOS_INDEXEDFACETDISTANCE_H diff -Nru geos-3.6.2/include/geos/operation/distance/Makefile.am geos-3.7.1/include/geos/operation/distance/Makefile.am --- geos-3.6.2/include/geos/operation/distance/Makefile.am 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/Makefile.am 2018-10-19 22:32:06.000000000 +0000 @@ -11,6 +11,7 @@ ConnectedElementLocationFilter.h \ ConnectedElementPointFilter.h \ DistanceOp.h \ + IndexedFacetDistance.h \ FacetSequence.h \ FacetSequenceTreeBuilder.h \ GeometryLocation.h diff -Nru geos-3.6.2/include/geos/operation/distance/Makefile.in geos-3.7.1/include/geos/operation/distance/Makefile.in --- geos-3.6.2/include/geos/operation/distance/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/distance/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -360,6 +366,7 @@ ConnectedElementLocationFilter.h \ ConnectedElementPointFilter.h \ DistanceOp.h \ + IndexedFacetDistance.h \ FacetSequence.h \ FacetSequenceTreeBuilder.h \ GeometryLocation.h @@ -384,8 +391,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -476,7 +483,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/GeometryGraphOperation.h geos-3.7.1/include/geos/operation/GeometryGraphOperation.h --- geos-3.6.2/include/geos/operation/GeometryGraphOperation.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/GeometryGraphOperation.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -75,7 +75,7 @@ /** \brief * The operation args into an array so they can be accessed by index */ - std::vector arg; + std::vector arg; void setComputationPrecision(const geom::PrecisionModel* pm); }; diff -Nru geos-3.6.2/include/geos/operation/intersection/Makefile.in geos-3.7.1/include/geos/operation/intersection/Makefile.in --- geos-3.6.2/include/geos/operation/intersection/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/intersection/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -381,8 +387,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -473,7 +479,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/intersection/Rectangle.h geos-3.7.1/include/geos/operation/intersection/Rectangle.h --- geos-3.6.2/include/geos/operation/intersection/Rectangle.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/operation/intersection/Rectangle.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -106,12 +106,12 @@ { Inside = 1, Outside = 2, - + Left = 4, Top = 8, Right = 16, Bottom = 32, - + TopLeft = Top|Left, // 12 TopRight = Top|Right, // 24 BottomLeft = Bottom|Left, // 36 diff -Nru geos-3.6.2/include/geos/operation/intersection/RectangleIntersectionBuilder.h geos-3.7.1/include/geos/operation/intersection/RectangleIntersectionBuilder.h --- geos-3.6.2/include/geos/operation/intersection/RectangleIntersectionBuilder.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/operation/intersection/RectangleIntersectionBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -74,7 +74,7 @@ /** * \brief Build the result geometry from partial results and clean up */ - std::auto_ptr build(); + std::unique_ptr build(); /** * \brief Build polygons from parts left by clipping one diff -Nru geos-3.6.2/include/geos/operation/intersection/RectangleIntersection.h geos-3.7.1/include/geos/operation/intersection/RectangleIntersection.h --- geos-3.6.2/include/geos/operation/intersection/RectangleIntersection.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/operation/intersection/RectangleIntersection.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -83,7 +83,7 @@ * @return the clipped geometry * @return NULL if the geometry is outside the {@link Rectangle} */ - static std::auto_ptr clip(const geom::Geometry & geom, + static std::unique_ptr clip(const geom::Geometry & geom, const Rectangle & rect); /** @@ -98,16 +98,16 @@ * @return the clipped geometry * @return NULL if the geometry is outside the {@link Rectangle} */ - static std::auto_ptr clipBoundary(const geom::Geometry & geom, + static std::unique_ptr clipBoundary(const geom::Geometry & geom, const Rectangle & rect); private: RectangleIntersection(const geom::Geometry& geom, const Rectangle& rect); - std::auto_ptr clipBoundary(); + std::unique_ptr clipBoundary(); - std::auto_ptr clip(); + std::unique_ptr clip(); const geom::Geometry &_geom; const Rectangle &_rect; diff -Nru geos-3.6.2/include/geos/operation/IsSimpleOp.h geos-3.7.1/include/geos/operation/IsSimpleOp.h --- geos-3.6.2/include/geos/operation/IsSimpleOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/IsSimpleOp.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,10 +22,10 @@ #define GEOS_OPERATION_ISSIMPLEOP_H #include -#include // for dtor visibility by auto_ptr (compos) +#include // for dtor visibility by unique_ptr (compos) #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -63,21 +63,21 @@ * * - A Geometry is simple if and only if the only self-intersections * are at boundary points. - * + * * This definition relies on the definition of boundary points. * The SFS uses the Mod-2 rule to determine which points are on the boundary of * lineal geometries, but this class supports * using other {@link BoundaryNodeRule}s as well. * * Simplicity is defined for each {@link Geometry} subclass as follows: - * + * * - Valid polygonal geometries are simple by definition, so * isSimple trivially returns true. * (Hint: in order to check if a polygonal geometry has self-intersections, * use {@link Geometry::isValid}). * * - Linear geometries are simple iff they do not self-intersect at points - * other than boundary points. + * other than boundary points. * (Using the Mod-2 rule, this means that closed linestrings * cannot be touched at their endpoints, since these are * interior points, not boundary points). @@ -200,13 +200,13 @@ geom::CoordinateLessThen>&endPoints, const geom::Coordinate *p, bool isClosed); - bool isClosedEndpointsInInterior; + bool isClosedEndpointsInInterior; bool isSimpleMultiPoint(const geom::MultiPoint& mp); const geom::Geometry* geom; - std::auto_ptr nonSimpleLocation; + std::unique_ptr nonSimpleLocation; }; } // namespace geos.operation diff -Nru geos-3.6.2/include/geos/operation/linemerge/EdgeString.h geos-3.7.1/include/geos/operation/linemerge/EdgeString.h --- geos-3.6.2/include/geos/operation/linemerge/EdgeString.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/EdgeString.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -29,15 +29,15 @@ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class #endif -// Forward declarations +// Forward declarations namespace geos { - namespace geom { + namespace geom { class GeometryFactory; class CoordinateSequence; class LineString; } - namespace operation { - namespace linemerge { + namespace operation { + namespace linemerge { class LineMergeDirectedEdge; } } diff -Nru geos-3.6.2/include/geos/operation/linemerge/LineMergeDirectedEdge.h geos-3.7.1/include/geos/operation/linemerge/LineMergeDirectedEdge.h --- geos-3.6.2/include/geos/operation/linemerge/LineMergeDirectedEdge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/LineMergeDirectedEdge.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,13 +23,13 @@ #include // for inheritance -// Forward declarations +// Forward declarations namespace geos { - namespace geom { + namespace geom { class Coordinate; //class LineString; } - namespace planargraph { + namespace planargraph { class Node; } } @@ -41,7 +41,7 @@ /** * \brief - * A planargraph::DirectedEdge of a LineMergeGraph. + * A planargraph::DirectedEdge of a LineMergeGraph. * */ class GEOS_DLL LineMergeDirectedEdge: public planargraph::DirectedEdge { @@ -58,7 +58,7 @@ * @param edgeDirection * whether this DirectedEdge's direction is the same as or * opposite to that of the parent Edge (if any) - */ + */ LineMergeDirectedEdge(planargraph::Node *from, planargraph::Node *to, const geom::Coordinate& directionPt, @@ -66,7 +66,7 @@ /** * Returns the directed edge that starts at this directed edge's end point, or null - * if there are zero or multiple directed edges starting there. + * if there are zero or multiple directed edges starting there. * @return */ LineMergeDirectedEdge* getNext(); diff -Nru geos-3.6.2/include/geos/operation/linemerge/LineMergeEdge.h geos-3.7.1/include/geos/operation/linemerge/LineMergeEdge.h --- geos-3.6.2/include/geos/operation/linemerge/LineMergeEdge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/LineMergeEdge.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -24,9 +24,9 @@ #include // for inheritance -// Forward declarations +// Forward declarations namespace geos { - namespace geom { + namespace geom { class LineString; } } diff -Nru geos-3.6.2/include/geos/operation/linemerge/LineMergeGraph.h geos-3.7.1/include/geos/operation/linemerge/LineMergeGraph.h --- geos-3.6.2/include/geos/operation/linemerge/LineMergeGraph.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/LineMergeGraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -31,13 +31,13 @@ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class #endif -// Forward declarations +// Forward declarations namespace geos { - namespace geom { + namespace geom { class LineString; class Coordinate; } - namespace planargraph { + namespace planargraph { class Node; class Edge; class DirectedEdge; @@ -72,15 +72,15 @@ /** \brief * Adds an Edge, DirectedEdges, and Nodes for the given - * LineString representation of an edge. - * + * LineString representation of an edge. + * * Empty lines or lines with all coordinates equal are not added. - * + * * @param lineString the linestring to add to the graph */ void addEdge(const geom::LineString *lineString); - ~LineMergeGraph(); + ~LineMergeGraph() override; }; } // namespace geos::operation::linemerge } // namespace geos::operation diff -Nru geos-3.6.2/include/geos/operation/linemerge/LineMerger.h geos-3.7.1/include/geos/operation/linemerge/LineMerger.h --- geos-3.6.2/include/geos/operation/linemerge/LineMerger.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/LineMerger.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -29,9 +29,9 @@ #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class #endif -// Forward declarations +// Forward declarations namespace geos { - namespace geom { + namespace geom { class LineString; class GeometryFactory; class Geometry; @@ -39,8 +39,8 @@ namespace planargraph { class Node; } - namespace operation { - namespace linemerge { + namespace operation { + namespace linemerge { class EdgeString; class LineMergeDirectedEdge; } @@ -62,11 +62,11 @@ * in which case a node is simply chosen as a starting point. * The direction of each merged LineString will be that of the majority * of the LineStrings from which it was derived. - * + * * Any dimension of Geometry is handled. * The constituent linework is extracted to form the edges. * The edges must be correctly noded; that is, they must only meet - * at their endpoints. + * at their endpoints. * * The LineMerger will still run on incorrectly noded input * but will not form polygons from incorrected noded edges. @@ -119,7 +119,7 @@ * * Any dimension of Geometry may be added; the constituent * linework will be extracted. - */ + */ void add(const geom::Geometry *geometry); /** diff -Nru geos-3.6.2/include/geos/operation/linemerge/LineSequencer.h geos-3.7.1/include/geos/operation/linemerge/LineSequencer.h --- geos-3.6.2/include/geos/operation/linemerge/LineSequencer.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/LineSequencer.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -28,21 +28,21 @@ #include #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class #endif -// Forward declarations +// Forward declarations namespace geos { - namespace geom { + namespace geom { class GeometryFactory; class Geometry; class LineString; } - namespace planargraph { + namespace planargraph { class DirectedEdge; class Subgraph; class Node; @@ -73,7 +73,7 @@ * not be what is expected. * The computed output is a single MultiLineString containing the ordered * linestrings in the sequence. - * + * * The sequencing employs the classic Eulerian path graph algorithm. * Since Eulerian paths are not uniquely determined, * further rules are used to @@ -106,7 +106,7 @@ const geom::GeometryFactory *factory; unsigned int lineCount; bool isRun; - std::auto_ptr sequencedGeometry; + std::unique_ptr sequencedGeometry; bool isSequenceableVar; void addLine(const geom::LineString *lineString); @@ -140,7 +140,7 @@ DirEdgeList& deList, DirEdgeList::iterator lit, bool expectedClosed); - + /** * Finds an {@link DirectedEdge} for an unvisited edge (if any), * choosing the dirEdge which preserves orientation, if possible. @@ -155,9 +155,9 @@ /** * Computes a version of the sequence which is optimally * oriented relative to the underlying geometry. - * + * * Heuristics used are: - * + * * - If the path has a degree-1 node which is the start * node of an linestring, use that node as the start of the sequence * - If the path has a degree-1 node which is the end @@ -166,7 +166,7 @@ * (NOTE: in this case could orient the sequence according to the * majority of the linestring orientations) * - * @param seq a List of planarDirectedEdges + * @param seq a List of planarDirectedEdges * @return the oriented sequence, possibly same as input if already * oriented */ @@ -202,10 +202,10 @@ LineSequencer() : - factory(0), + factory(nullptr), lineCount(0), isRun(false), - sequencedGeometry(0), + sequencedGeometry(nullptr), isSequenceableVar(false) {} diff -Nru geos-3.6.2/include/geos/operation/linemerge/Makefile.in geos-3.7.1/include/geos/operation/linemerge/Makefile.in --- geos-3.6.2/include/geos/operation/linemerge/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/linemerge/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -384,8 +390,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -476,7 +482,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/Makefile.in geos-3.7.1/include/geos/operation/Makefile.in --- geos-3.6.2/include/geos/operation/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -434,8 +440,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -573,7 +579,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/overlay/EdgeSetNoder.h geos-3.7.1/include/geos/operation/overlay/EdgeSetNoder.h --- geos-3.6.2/include/geos/operation/overlay/EdgeSetNoder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/EdgeSetNoder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/overlay/ElevationMatrixCell.h geos-3.7.1/include/geos/operation/overlay/ElevationMatrixCell.h --- geos-3.6.2/include/geos/operation/overlay/ElevationMatrixCell.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/ElevationMatrixCell.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/overlay/ElevationMatrix.h geos-3.7.1/include/geos/operation/overlay/ElevationMatrix.h --- geos-3.6.2/include/geos/operation/overlay/ElevationMatrix.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/ElevationMatrix.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -21,7 +21,7 @@ #include -#include // for inheritance +#include // for inheritance #include // for composition #include // for composition @@ -62,16 +62,16 @@ { public: ElevationMatrixFilter(ElevationMatrix &em); - ~ElevationMatrixFilter(); - void filter_rw(geom::Coordinate *c) const; - void filter_ro(const geom::Coordinate *c); + ~ElevationMatrixFilter() override; + void filter_rw(geom::Coordinate *c) const override; + void filter_ro(const geom::Coordinate *c) override; private: ElevationMatrix &em; double avgElevation; // Declare type as noncopyable - ElevationMatrixFilter(const ElevationMatrixFilter& other); - ElevationMatrixFilter& operator=(const ElevationMatrixFilter& rhs); + ElevationMatrixFilter(const ElevationMatrixFilter& other) = delete; + ElevationMatrixFilter& operator=(const ElevationMatrixFilter& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/operation/overlay/LineBuilder.h geos-3.7.1/include/geos/operation/overlay/LineBuilder.h --- geos-3.6.2/include/geos/operation/overlay/LineBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/LineBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -21,7 +21,7 @@ #include -#include // for OverlayOp::OpCode enum +#include // for OverlayOp::OpCode enum #include @@ -82,9 +82,9 @@ * an area boundary, if they are in the result of the overlay operation, * and if they are not covered by a result area. * - * @param de the directed edge to test. + * @param de the directed edge to test. * @param opCode the overlap operation - * @param edges the list of included line edges. + * @param edges the list of included line edges. */ void collectLineEdge(geomgraph::DirectedEdge *de, OverlayOp::OpCode opCode, @@ -105,11 +105,11 @@ * Collect edges from Area inputs which should be in the result but * which have not been included in a result area. * This happens ONLY: - * + * * - during an intersection when the boundaries of two * areas touch in a line segment * - OR as a result of a dimensional collapse. - * + * */ void collectBoundaryTouchEdge(geomgraph::DirectedEdge *de, OverlayOp::OpCode opCode, diff -Nru geos-3.6.2/include/geos/operation/overlay/Makefile.in geos-3.7.1/include/geos/operation/overlay/Makefile.in --- geos-3.6.2/include/geos/operation/overlay/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -434,8 +440,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -573,7 +579,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/overlay/MaximalEdgeRing.h geos-3.7.1/include/geos/operation/overlay/MaximalEdgeRing.h --- geos-3.6.2/include/geos/operation/overlay/MaximalEdgeRing.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/MaximalEdgeRing.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -49,13 +49,13 @@ * A ring of {@link edges} which may contain nodes of degree > 2. * * A MaximalEdgeRing may represent two different spatial entities: - * + * * - a single polygon possibly containing inversions (if the ring is oriented CW) * - a single hole possibly containing exversions (if the ring is oriented CCW) - * + * * If the MaximalEdgeRing represents a polygon, * the interior of the polygon is strongly connected. - * + * * These are the form of rings used to define polygons under some spatial data models. * However, under the OGC SFS model, {@link MinimalEdgeRings} are required. * A MaximalEdgeRing can be converted to a list of MinimalEdgeRings using the @@ -71,11 +71,11 @@ const geom::GeometryFactory *geometryFactory); // throw(const TopologyException &) - virtual ~MaximalEdgeRing(); + ~MaximalEdgeRing() override; - geomgraph::DirectedEdge* getNext(geomgraph::DirectedEdge *de); + geomgraph::DirectedEdge* getNext(geomgraph::DirectedEdge *de) override; - void setEdgeRing(geomgraph::DirectedEdge* de, geomgraph::EdgeRing* er); + void setEdgeRing(geomgraph::DirectedEdge* de, geomgraph::EdgeRing* er) override; /// \brief /// This function returns a newly allocated vector of diff -Nru geos-3.6.2/include/geos/operation/overlay/MinimalEdgeRing.h geos-3.7.1/include/geos/operation/overlay/MinimalEdgeRing.h --- geos-3.6.2/include/geos/operation/overlay/MinimalEdgeRing.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/MinimalEdgeRing.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -45,7 +45,7 @@ /** \brief * A ring of {@link Edge}s with the property that no node - * has degree greater than 2. + * has degree greater than 2. * * These are the form of rings required * to represent polygons under the OGC SFS spatial data model. @@ -61,12 +61,12 @@ MinimalEdgeRing(geomgraph::DirectedEdge *start, const geom::GeometryFactory *geometryFactory); - virtual ~MinimalEdgeRing(); + ~MinimalEdgeRing() override; - geomgraph::DirectedEdge* getNext(geomgraph::DirectedEdge *de); + geomgraph::DirectedEdge* getNext(geomgraph::DirectedEdge *de) override; void setEdgeRing(geomgraph::DirectedEdge *de, - geomgraph::EdgeRing *er); + geomgraph::EdgeRing *er) override; }; diff -Nru geos-3.6.2/include/geos/operation/overlay/OverlayNodeFactory.h geos-3.7.1/include/geos/operation/overlay/OverlayNodeFactory.h --- geos-3.6.2/include/geos/operation/overlay/OverlayNodeFactory.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/OverlayNodeFactory.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -46,7 +46,7 @@ class GEOS_DLL OverlayNodeFactory: public geomgraph::NodeFactory { public: OverlayNodeFactory():geomgraph::NodeFactory() {} - geomgraph::Node* createNode(const geom::Coordinate &coord) const; + geomgraph::Node* createNode(const geom::Coordinate &coord) const override; static const geomgraph::NodeFactory &instance(); }; diff -Nru geos-3.6.2/include/geos/operation/overlay/OverlayOp.h geos-3.7.1/include/geos/operation/overlay/OverlayOp.h --- geos-3.6.2/include/geos/operation/overlay/OverlayOp.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/OverlayOp.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -60,7 +60,7 @@ namespace operation { // geos::operation namespace overlay { // geos::operation::overlay -/// Computes the geometric overlay of two Geometry. +/// Computes the geometric overlay of two Geometry. // /// The overlay can be used to determine any /// boolean combination of the geometries. @@ -104,7 +104,7 @@ * relative to two geometries is contained in * the result of overlaying the geometries using * a given overlay operation. - * + * * The method handles arguments of {@link Location#NONE} correctly * * @param label the topological label of the point @@ -120,17 +120,17 @@ static bool isResultOfOp(int loc0, int loc1, OpCode opCode); /// Construct an OverlayOp with the given Geometry args. - // + // /// Ownership of passed args will remain to caller, and /// the OverlayOp won't change them in any way. /// OverlayOp(const geom::Geometry *g0, const geom::Geometry *g1); - virtual ~OverlayOp(); // FIXME: virtual ? + ~OverlayOp() override; // FIXME: virtual ? /** * Gets the result of the overlay for a given overlay operation. - * + * * Note: this method can be called once only. * * @param overlayOpCode the overlay operation to perform @@ -201,7 +201,7 @@ void computeOverlay(OpCode opCode); // throw(TopologyException *); - void insertUniqueEdges(std::vector *edges, const geom::Envelope *env=0); + void insertUniqueEdges(std::vector *edges, const geom::Envelope *env=nullptr); /* * If either of the GeometryLocations for the existing label is @@ -241,7 +241,7 @@ * but in the original arg Geometry it is actually * in the interior due to the Boundary Determination Rule) */ - void copyPoints(int argIndex, const geom::Envelope *env=0); + void copyPoints(int argIndex, const geom::Envelope *env=nullptr); /** \brief * Compute initial labelling for all DirectedEdges at each node. @@ -253,10 +253,10 @@ */ void computeLabelling(); // throw(TopologyException *); - /** + /** * For nodes which have edges from only one Geometry incident on them, * the previous step will have left their dirEdges with no - * labelling for the other Geometry. + * labelling for the other Geometry. * However, the sym dirEdge may have a labelling for the other * Geometry, so merge the two labels. */ @@ -264,7 +264,7 @@ void updateNodeLabelling(); - /** + /** * Incomplete nodes are nodes whose labels are incomplete. * * (e.g. the location for one Geometry is NULL). @@ -277,7 +277,7 @@ * labelled by the initial process of adding nodes to the nodeList. * To complete the labelling we need to check for nodes that * lie in the interior of edges, and in the interior of areas. - * + * * When each node labelling is completed, the labelling of the * incident edges is updated, to complete their labelling as well. */ @@ -290,7 +290,7 @@ /** \brief * Find all edges whose label indicates that they are in the result - * area(s), according to the operation being performed. + * area(s), according to the operation being performed. * * Since we want polygon shells to be * oriented CW, choose dirEdges with the interior of the result @@ -330,14 +330,14 @@ /** * Build a Geometry containing all Geometries in the given vectors. - * Takes element's ownership, vector control is left to caller. + * Takes element's ownership, vector control is left to caller. */ geom::Geometry* computeGeometry( std::vector *nResultPointList, std::vector *nResultLineList, std::vector *nResultPolyList); - /// Caches for memory management + /// Caches for memory management std::vectordupEdges; /** \brief diff -Nru geos-3.6.2/include/geos/operation/overlay/PointBuilder.h geos-3.7.1/include/geos/operation/overlay/PointBuilder.h --- geos-3.6.2/include/geos/operation/overlay/PointBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/PointBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -74,7 +74,7 @@ void filterCoveredNodeToPoint(const geomgraph::Node *); /// Allocated a construction time, but not owned. - /// Make sure you take ownership of it, getting + /// Make sure you take ownership of it, getting /// it from build() std::vector *resultPointList; @@ -82,7 +82,7 @@ PointBuilder(OverlayOp *newOp, const geom::GeometryFactory *newGeometryFactory, - algorithm::PointLocator *newPtLocator=NULL) + algorithm::PointLocator *newPtLocator=nullptr) : op(newOp), geometryFactory(newGeometryFactory), diff -Nru geos-3.6.2/include/geos/operation/overlay/PolygonBuilder.h geos-3.7.1/include/geos/operation/overlay/PolygonBuilder.h --- geos-3.6.2/include/geos/operation/overlay/PolygonBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/PolygonBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -116,7 +116,7 @@ /** * This method takes a list of MinimalEdgeRings derived from a - * MaximalEdgeRing, and tests whether they form a Polygon. + * MaximalEdgeRing, and tests whether they form a Polygon. * This is the case if there is a single shell * in the list. In this case the shell is returned. * The other possibility is that they are a series of connected @@ -132,7 +132,7 @@ * MinimalEdgeRings) to its shell. * Determining the holes for a MinimalEdgeRing polygon serves two * purposes: - * + * * - it is faster than using a point-in-polygon check later on. * - it ensures correctness, since if the PIP test was used the point * chosen might lie on the shell, which might return an incorrect @@ -179,7 +179,7 @@ * * ring A contains ring B iff envelope(ring A) * contains envelope(ring B) - * + * * This routine is only safe to use if the chosen point of the hole * is known to be properly contained in a shell * (which is guaranteed to be the case if the hole does not touch diff -Nru geos-3.6.2/include/geos/operation/overlay/snap/GeometrySnapper.h geos-3.7.1/include/geos/operation/overlay/snap/GeometrySnapper.h --- geos-3.6.2/include/geos/operation/overlay/snap/GeometrySnapper.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/snap/GeometrySnapper.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2010 Sandro Santilli + * Copyright (C) 2009-2010 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -27,7 +27,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { //class PrecisionModel; class Geometry; class CoordinateSequence; @@ -59,7 +59,7 @@ public: - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; /** * Snaps two geometries together with a given tolerance. @@ -67,7 +67,7 @@ * @param g0 a geometry to snap * @param g1 a geometry to snap * @param snapTolerance the tolerance to use - * @param ret the snapped geometries as a pair of auto_ptrs + * @param ret the snapped geometries as a pair of smart pointers * (output parameter) */ static void snap(const geom::Geometry& g0, @@ -97,7 +97,7 @@ * @param snapTolerance * @return a new snapped Geometry */ - std::auto_ptr snapTo(const geom::Geometry& g, + std::unique_ptr snapTo(const geom::Geometry& g, double snapTolerance); /** \brief @@ -109,7 +109,7 @@ * @param cleanResult clean the result * @return a new snapped Geometry */ - std::auto_ptr snapToSelf(double snapTolerance, + std::unique_ptr snapToSelf(double snapTolerance, bool cleanResult); /** \brief @@ -140,12 +140,12 @@ const geom::Geometry& srcGeom; /// Extract target (unique) coordinates - std::auto_ptr extractTargetCoordinates( + std::unique_ptr extractTargetCoordinates( const geom::Geometry& g); // Declare type as noncopyable - GeometrySnapper(const GeometrySnapper& other); - GeometrySnapper& operator=(const GeometrySnapper& rhs); + GeometrySnapper(const GeometrySnapper& other) = delete; + GeometrySnapper& operator=(const GeometrySnapper& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/operation/overlay/snap/LineStringSnapper.h geos-3.7.1/include/geos/operation/overlay/snap/LineStringSnapper.h --- geos-3.6.2/include/geos/operation/overlay/snap/LineStringSnapper.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/snap/LineStringSnapper.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2010 Sandro Santilli + * Copyright (C) 2009-2010 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -71,7 +71,7 @@ } // Snap points are assumed to be all distinct points (a set would be better, uh ?) - std::auto_ptr snapTo(const geom::Coordinate::ConstVect& snapPts); + std::unique_ptr snapTo(const geom::Coordinate::ConstVect& snapPts); void setAllowSnappingToSourceVertices(bool allow) { allowSnappingToSourceVertices = allow; @@ -152,8 +152,8 @@ geom::CoordinateList::iterator too_far); // Declare type as noncopyable - LineStringSnapper(const LineStringSnapper& other); - LineStringSnapper& operator=(const LineStringSnapper& rhs); + LineStringSnapper(const LineStringSnapper& other) = delete; + LineStringSnapper& operator=(const LineStringSnapper& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/operation/overlay/snap/Makefile.in geos-3.7.1/include/geos/operation/overlay/snap/Makefile.in --- geos-3.6.2/include/geos/operation/overlay/snap/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/snap/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -382,8 +388,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -474,7 +480,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h geos-3.7.1/include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h --- geos-3.6.2/include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/snap/SnapIfNeededOverlayOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 2011 Sandro Santilli + * Copyright (C) 2009 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -19,9 +19,9 @@ #ifndef GEOS_OP_OVERLAY_SNAP_SNAPIFNEEDEDOVERLAYOP_H #define GEOS_OP_OVERLAY_SNAP_SNAPIFNEEDEDOVERLAYOP_H -#include // for enums +#include // for enums -#include // for auto_ptr +#include // for unique_ptr // Forward declarations namespace geos { @@ -51,7 +51,7 @@ public: - static std::auto_ptr + static std::unique_ptr overlayOp(const geom::Geometry& g0, const geom::Geometry& g1, OverlayOp::OpCode opCode) { @@ -59,25 +59,25 @@ return op.getResultGeometry(opCode); } - static std::auto_ptr + static std::unique_ptr intersection(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opINTERSECTION); } - static std::auto_ptr + static std::unique_ptr Union(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opUNION); } - static std::auto_ptr + static std::unique_ptr difference(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opDIFFERENCE); } - static std::auto_ptr + static std::unique_ptr symDifference(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opSYMDIFFERENCE); @@ -90,8 +90,8 @@ { } - - typedef std::auto_ptr GeomPtr; + + typedef std::unique_ptr GeomPtr; GeomPtr getResultGeometry(OverlayOp::OpCode opCode); @@ -101,10 +101,10 @@ const geom::Geometry& geom1; // Declare type as noncopyable - SnapIfNeededOverlayOp(const SnapIfNeededOverlayOp& other); - SnapIfNeededOverlayOp& operator=(const SnapIfNeededOverlayOp& rhs); + SnapIfNeededOverlayOp(const SnapIfNeededOverlayOp& other) = delete; + SnapIfNeededOverlayOp& operator=(const SnapIfNeededOverlayOp& rhs) = delete; }; - + } // namespace geos::operation::overlay::snap } // namespace geos::operation::overlay diff -Nru geos-3.6.2/include/geos/operation/overlay/snap/SnapOverlayOp.h geos-3.7.1/include/geos/operation/overlay/snap/SnapOverlayOp.h --- geos-3.6.2/include/geos/operation/overlay/snap/SnapOverlayOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/snap/SnapOverlayOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -19,10 +19,10 @@ #ifndef GEOS_OP_OVERLAY_SNAP_SNAPOVERLAYOP_H #define GEOS_OP_OVERLAY_SNAP_SNAPOVERLAYOP_H -#include // for enums -#include // for dtor visibility by auto_ptr +#include // for enums +#include // for dtor visibility by unique_ptr -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -58,7 +58,7 @@ public: - static std::auto_ptr + static std::unique_ptr overlayOp(const geom::Geometry& g0, const geom::Geometry& g1, OverlayOp::OpCode opCode) { @@ -66,25 +66,25 @@ return op.getResultGeometry(opCode); } - static std::auto_ptr + static std::unique_ptr intersection(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opINTERSECTION); } - static std::auto_ptr + static std::unique_ptr Union(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opUNION); } - static std::auto_ptr + static std::unique_ptr difference(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opDIFFERENCE); } - static std::auto_ptr + static std::unique_ptr symDifference(const geom::Geometry& g0, const geom::Geometry& g1) { return overlayOp(g0, g1, OverlayOp::opSYMDIFFERENCE); @@ -98,8 +98,8 @@ computeSnapTolerance(); } - - typedef std::auto_ptr GeomPtr; + + typedef std::unique_ptr GeomPtr; GeomPtr getResultGeometry(OverlayOp::OpCode opCode); @@ -122,13 +122,13 @@ double snapTolerance; - std::auto_ptr cbr; + std::unique_ptr cbr; // Declare type as noncopyable - SnapOverlayOp(const SnapOverlayOp& other); - SnapOverlayOp& operator=(const SnapOverlayOp& rhs); + SnapOverlayOp(const SnapOverlayOp& other) = delete; + SnapOverlayOp& operator=(const SnapOverlayOp& rhs) = delete; }; - + } // namespace geos::operation::overlay::snap } // namespace geos::operation::overlay } // namespace geos::operation diff -Nru geos-3.6.2/include/geos/operation/overlay/validate/FuzzyPointLocator.h geos-3.7.1/include/geos/operation/overlay/validate/FuzzyPointLocator.h --- geos-3.6.2/include/geos/operation/overlay/validate/FuzzyPointLocator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/validate/FuzzyPointLocator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -21,11 +21,11 @@ #include #include // for composition -#include // for auto_ptr visibility of dtor +#include // for unique_ptr visibility of dtor #include // for Location::Value enum #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -71,20 +71,20 @@ algorithm::PointLocator ptLocator; - std::auto_ptr linework; + std::unique_ptr linework; // this function has been obsoleted - std::auto_ptr getLineWork(const geom::Geometry& geom); + std::unique_ptr getLineWork(const geom::Geometry& geom); /// Extracts linework for polygonal components. // /// @param g the geometry from which to extract /// @return a lineal geometry containing the extracted linework - std::auto_ptr extractLineWork(const geom::Geometry& geom); + std::unique_ptr extractLineWork(const geom::Geometry& geom); // Declare type as noncopyable - FuzzyPointLocator(const FuzzyPointLocator& other); - FuzzyPointLocator& operator=(const FuzzyPointLocator& rhs); + FuzzyPointLocator(const FuzzyPointLocator& other) = delete; + FuzzyPointLocator& operator=(const FuzzyPointLocator& rhs) = delete; }; } // namespace geos::operation::overlay::validate diff -Nru geos-3.6.2/include/geos/operation/overlay/validate/OffsetPointGenerator.h geos-3.7.1/include/geos/operation/overlay/validate/OffsetPointGenerator.h --- geos-3.6.2/include/geos/operation/overlay/validate/OffsetPointGenerator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/validate/OffsetPointGenerator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -21,12 +21,12 @@ #include #include // for composition -#include // for auto_ptr visibility of dtor -#include // for auto_ptr visibility of dtor +#include // for unique_ptr visibility of dtor +#include // for unique_ptr visibility of dtor #include // for use in vector #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -57,7 +57,7 @@ OffsetPointGenerator(const geom::Geometry& geom, double offset); /// Gets the computed offset points. - std::auto_ptr< std::vector > getPoints(); + std::unique_ptr< std::vector > getPoints(); private: @@ -65,7 +65,7 @@ double offsetDistance; - std::auto_ptr< std::vector > offsetPts; + std::unique_ptr< std::vector > offsetPts; void extractPoints(const geom::LineString* line); @@ -73,8 +73,8 @@ const geom::Coordinate& p1); // Declare type as noncopyable - OffsetPointGenerator(const OffsetPointGenerator& other); - OffsetPointGenerator& operator=(const OffsetPointGenerator& rhs); + OffsetPointGenerator(const OffsetPointGenerator& other) = delete; + OffsetPointGenerator& operator=(const OffsetPointGenerator& rhs) = delete; }; } // namespace geos::operation::overlay::validate diff -Nru geos-3.6.2/include/geos/operation/overlay/validate/OverlayResultValidator.h geos-3.7.1/include/geos/operation/overlay/validate/OverlayResultValidator.h --- geos-3.6.2/include/geos/operation/overlay/validate/OverlayResultValidator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/overlay/validate/OverlayResultValidator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -117,8 +117,8 @@ const geom::Geometry& g0, const geom::Geometry& g1); // Declare type as noncopyable - OverlayResultValidator(const OverlayResultValidator& other); - OverlayResultValidator& operator=(const OverlayResultValidator& rhs); + OverlayResultValidator(const OverlayResultValidator& other) = delete; + OverlayResultValidator& operator=(const OverlayResultValidator& rhs) = delete; }; } // namespace geos::operation::overlay::validate diff -Nru geos-3.6.2/include/geos/operation/polygonize/EdgeRing.h geos-3.7.1/include/geos/operation/polygonize/EdgeRing.h --- geos-3.6.2/include/geos/operation/polygonize/EdgeRing.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/polygonize/EdgeRing.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -32,7 +32,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class LineString; class LinearRing; class Polygon; @@ -41,7 +41,7 @@ class GeometryFactory; class Coordinate; } - namespace planargraph { + namespace planargraph { class DirectedEdge; } } @@ -56,7 +56,7 @@ */ class GEOS_DLL EdgeRing { private: - const geom::GeometryFactory *factory; + const geom::GeometryFactory *factory; typedef std::vector DeList; DeList deList; @@ -88,7 +88,7 @@ * * The innermost enclosing ring is the smallest enclosing ring. * The algorithm used depends on the fact that: - * + * * ring A contains ring B iff envelope(ring A) contains envelope(ring B) * * This routine is only safe to use if the chosen point of the hole diff -Nru geos-3.6.2/include/geos/operation/polygonize/Makefile.in geos-3.7.1/include/geos/operation/polygonize/Makefile.in --- geos-3.6.2/include/geos/operation/polygonize/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/polygonize/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -383,8 +389,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -475,7 +481,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/polygonize/PolygonizeDirectedEdge.h geos-3.7.1/include/geos/operation/polygonize/PolygonizeDirectedEdge.h --- geos-3.6.2/include/geos/operation/polygonize/PolygonizeDirectedEdge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/polygonize/PolygonizeDirectedEdge.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,14 +27,14 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { //class LineString; } - namespace planargraph { + namespace planargraph { class Node; } - namespace operation { - namespace polygonize { + namespace operation { + namespace polygonize { class EdgeRing; } } diff -Nru geos-3.6.2/include/geos/operation/polygonize/PolygonizeEdge.h geos-3.7.1/include/geos/operation/polygonize/PolygonizeEdge.h --- geos-3.6.2/include/geos/operation/polygonize/PolygonizeEdge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/polygonize/PolygonizeEdge.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,7 +27,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class LineString; } } diff -Nru geos-3.6.2/include/geos/operation/polygonize/PolygonizeGraph.h geos-3.7.1/include/geos/operation/polygonize/PolygonizeGraph.h --- geos-3.6.2/include/geos/operation/polygonize/PolygonizeGraph.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/polygonize/PolygonizeGraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,18 +33,18 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class LineString; class GeometryFactory; class Coordinate; class CoordinateSequence; } - namespace planargraph { + namespace planargraph { class Node; class Edge; class DirectedEdge; } - namespace operation { + namespace operation { namespace polygonize { class EdgeRing; class PolygonizeDirectedEdge; @@ -61,7 +61,7 @@ * Represents a planar graph of edges that can be used to compute a * polygonization, and implements the algorithms to compute the * EdgeRings formed by the graph. - * + * * The marked flag on DirectedEdge is used to indicate that a directed edge * has be logically deleted from the graph. * @@ -86,7 +86,7 @@ * \brief * Destroy a polygonization graph. */ - ~PolygonizeGraph(); + ~PolygonizeGraph() override; /** * \brief diff -Nru geos-3.6.2/include/geos/operation/polygonize/Polygonizer.h geos-3.7.1/include/geos/operation/polygonize/Polygonizer.h --- geos-3.6.2/include/geos/operation/polygonize/Polygonizer.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/polygonize/Polygonizer.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2010 Sandro Santilli + * Copyright (C) 2010 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,13 +33,13 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Geometry; class LineString; class Polygon; } - namespace operation { - namespace polygonize { + namespace operation { + namespace polygonize { class EdgeRing; class PolygonizeGraph; } @@ -59,9 +59,9 @@ * The edges must be correctly noded; that is, they must only meet * at their endpoints. The Polygonizer will still run on incorrectly noded input * but will not form polygons from incorrected noded edges. - * + * * The Polygonizer reports the follow kinds of errors: - * + * * - Dangles - edges which have one or both ends which are * not incident on another edge endpoint * - Cut Edges - edges which are connected at both ends but @@ -80,7 +80,7 @@ Polygonizer *pol; LineStringAdder(Polygonizer *p); //void filter_rw(geom::Geometry *g); - void filter_ro(const geom::Geometry * g); + void filter_ro(const geom::Geometry * g) override; }; // default factory diff -Nru geos-3.6.2/include/geos/operation/predicate/Makefile.in geos-3.7.1/include/geos/operation/predicate/Makefile.in --- geos-3.6.2/include/geos/operation/predicate/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/predicate/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -381,8 +387,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -473,7 +479,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/predicate/RectangleContains.h geos-3.7.1/include/geos/operation/predicate/RectangleContains.h --- geos-3.6.2/include/geos/operation/predicate/RectangleContains.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/predicate/RectangleContains.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,7 +42,7 @@ /** \brief * Optimized implementation of spatial predicate "contains" * for cases where the first Geometry is a rectangle. - * + * * As a further optimization, * this class can be used directly to test many geometries against a single * rectangle. @@ -110,8 +110,8 @@ bool contains(const geom::Geometry& geom); // Declare type as noncopyable - RectangleContains(const RectangleContains& other); - RectangleContains& operator=(const RectangleContains& rhs); + RectangleContains(const RectangleContains& other) = delete; + RectangleContains& operator=(const RectangleContains& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/operation/predicate/RectangleIntersects.h geos-3.7.1/include/geos/operation/predicate/RectangleIntersects.h --- geos-3.6.2/include/geos/operation/predicate/RectangleIntersects.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/predicate/RectangleIntersects.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,7 +42,7 @@ * * This class works for all input geometries, including * {@link GeometryCollection}s. - * + * * As a further optimization, * this class can be used to test * many geometries against a single @@ -58,8 +58,8 @@ const geom::Envelope &rectEnv; // Declare type as noncopyable - RectangleIntersects(const RectangleIntersects& other); - RectangleIntersects& operator=(const RectangleIntersects& rhs); + RectangleIntersects(const RectangleIntersects& other) = delete; + RectangleIntersects& operator=(const RectangleIntersects& rhs) = delete; public: @@ -86,7 +86,7 @@ static bool intersects(const geom::Polygon &rectangle, const geom::Geometry &b) { - RectangleIntersects rp(rectangle); + RectangleIntersects rp(rectangle); return rp.intersects(b); } diff -Nru geos-3.6.2/include/geos/operation/predicate/SegmentIntersectionTester.h geos-3.7.1/include/geos/operation/predicate/SegmentIntersectionTester.h --- geos-3.6.2/include/geos/operation/predicate/SegmentIntersectionTester.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/predicate/SegmentIntersectionTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/relate/EdgeEndBuilder.h geos-3.7.1/include/geos/operation/relate/EdgeEndBuilder.h --- geos-3.6.2/include/geos/operation/relate/EdgeEndBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/EdgeEndBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/relate/EdgeEndBundle.h geos-3.7.1/include/geos/operation/relate/EdgeEndBundle.h --- geos-3.6.2/include/geos/operation/relate/EdgeEndBundle.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/EdgeEndBundle.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -44,15 +44,15 @@ * A collection of geomgraph::EdgeEnd objects which * originate at the same point and have the same direction. */ -class GEOS_DLL EdgeEndBundle: public geomgraph::EdgeEnd +class GEOS_DLL EdgeEndBundle: public geomgraph::EdgeEnd { public: EdgeEndBundle(geomgraph::EdgeEnd *e); - virtual ~EdgeEndBundle(); + ~EdgeEndBundle() override; std::vector* getEdgeEnds(); void insert(geomgraph::EdgeEnd *e); - void computeLabel(const algorithm::BoundaryNodeRule& bnr); + void computeLabel(const algorithm::BoundaryNodeRule& bnr) override; /** * \brief @@ -61,7 +61,7 @@ */ void updateIM(geom::IntersectionMatrix& im); - std::string print(); + std::string print() const override; protected: std::vector *edgeEnds; @@ -84,7 +84,7 @@ * lying on * top of a Polygon edge.) In this case the Boundary is * given precendence. - * + * * These observations result in the following rules for computing * the ON location: * - if there are an odd number of Bdy edges, the attribute is Bdy @@ -92,7 +92,7 @@ * is Int * - if there are any Int edges, the attribute is Int * - otherwise, the attribute is NULL. - * + * */ void computeLabelOn(int geomIndex, const algorithm::BoundaryNodeRule& boundaryNodeRule); diff -Nru geos-3.6.2/include/geos/operation/relate/EdgeEndBundleStar.h geos-3.7.1/include/geos/operation/relate/EdgeEndBundleStar.h --- geos-3.6.2/include/geos/operation/relate/EdgeEndBundleStar.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/EdgeEndBundleStar.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -50,9 +50,9 @@ /// Creates a new empty EdgeEndBundleStar EdgeEndBundleStar() {} - - virtual ~EdgeEndBundleStar(); - void insert(geomgraph::EdgeEnd *e); + + ~EdgeEndBundleStar() override; + void insert(geomgraph::EdgeEnd *e) override; /** * Update the IM with the contribution for the EdgeStubs around the node. diff -Nru geos-3.6.2/include/geos/operation/relate/Makefile.in geos-3.7.1/include/geos/operation/relate/Makefile.in --- geos-3.6.2/include/geos/operation/relate/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -386,8 +392,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -478,7 +484,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/relate/RelateComputer.h geos-3.7.1/include/geos/operation/relate/RelateComputer.h --- geos-3.6.2/include/geos/operation/relate/RelateComputer.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/RelateComputer.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -64,7 +64,7 @@ * RelateComputer does not need to build a complete graph structure to compute * the IntersectionMatrix. The relationship between the geometries can * be computed by simply examining the labelling of edges incident on each node. - * + * * RelateComputer does not currently support arbitrary GeometryCollections. * This is because GeometryCollections can contain overlapping Polygons. * In order to correct compute relate on overlapping Polygons, they @@ -85,12 +85,12 @@ algorithm::PointLocator ptLocator; /// the arg(s) of the operation - std::vector *arg; + std::vector *arg; geomgraph::NodeMap nodes; /// this intersection matrix will hold the results compute for the relate - std::auto_ptr im; + std::unique_ptr im; std::vector isolatedEdges; diff -Nru geos-3.6.2/include/geos/operation/relate/RelateNodeFactory.h geos-3.7.1/include/geos/operation/relate/RelateNodeFactory.h --- geos-3.6.2/include/geos/operation/relate/RelateNodeFactory.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/RelateNodeFactory.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -43,7 +43,7 @@ */ class GEOS_DLL RelateNodeFactory: public geomgraph::NodeFactory { public: - geomgraph::Node* createNode(const geom::Coordinate &coord) const; + geomgraph::Node* createNode(const geom::Coordinate &coord) const override; static const geomgraph::NodeFactory &instance(); private: RelateNodeFactory() {} diff -Nru geos-3.6.2/include/geos/operation/relate/RelateNodeGraph.h geos-3.7.1/include/geos/operation/relate/RelateNodeGraph.h --- geos-3.6.2/include/geos/operation/relate/RelateNodeGraph.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/RelateNodeGraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -50,7 +50,7 @@ * * Also supports building a topological graph of a single Geometry, to * allow verification of valid topology. - * + * * It is not necessary to create a fully linked * PlanarGraph to determine relationships, since it is sufficient * to know how the Geometries interact locally around the nodes. diff -Nru geos-3.6.2/include/geos/operation/relate/RelateNode.h geos-3.7.1/include/geos/operation/relate/RelateNode.h --- geos-3.6.2/include/geos/operation/relate/RelateNode.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/RelateNode.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -49,7 +49,7 @@ RelateNode(const geom::Coordinate& coord, geomgraph::EdgeEndStar *edges); - virtual ~RelateNode(); + ~RelateNode() override; /** * Update the IM with the contribution for the EdgeEnds incident on this node. @@ -58,7 +58,7 @@ protected: - void computeIM(geom::IntersectionMatrix& im); + void computeIM(geom::IntersectionMatrix& im) override; }; diff -Nru geos-3.6.2/include/geos/operation/relate/RelateOp.h geos-3.7.1/include/geos/operation/relate/RelateOp.h --- geos-3.6.2/include/geos/operation/relate/RelateOp.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/relate/RelateOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -46,7 +46,7 @@ * * This class supports specifying a custom algorithm::BoundaryNodeRule * to be used during the relate computation. - * + * * Note: custom Boundary Node Rules do not (currently) * affect the results of other Geometry methods (such * as {@link Geometry::getBoundary}. The results of @@ -112,7 +112,7 @@ const geom::Geometry *g1, const algorithm::BoundaryNodeRule& boundaryNodeRule); - virtual ~RelateOp(); + ~RelateOp() override; /** \brief * Gets the IntersectionMatrix for the spatial relationship diff -Nru geos-3.6.2/include/geos/operation/sharedpaths/Makefile.in geos-3.7.1/include/geos/operation/sharedpaths/Makefile.in --- geos-3.6.2/include/geos/operation/sharedpaths/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/sharedpaths/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -379,8 +385,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -471,7 +477,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/sharedpaths/SharedPathsOp.h geos-3.7.1/include/geos/operation/sharedpaths/SharedPathsOp.h --- geos-3.6.2/include/geos/operation/sharedpaths/SharedPathsOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/sharedpaths/SharedPathsOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,18 +3,18 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2010 Sandro Santilli + * Copyright (C) 2010 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** * * Last port: original work * - * Developed by Sandro Santilli (strk@keybit.net) + * Developed by Sandro Santilli (strk@kbt.io) * for Faunalia (http://www.faunalia.it) * with funding from Regione Toscana - Settore SISTEMA INFORMATIVO * TERRITORIALE ED AMBIENTALE - for the project: "Sviluppo strumenti @@ -28,7 +28,7 @@ #include // for GEOS_DLL -#include +#include // Forward declarations namespace geos { @@ -53,7 +53,7 @@ * Paths reported as shared are given in the direction they * appear in the first geometry. * - * Developed by Sandro Santilli (strk@keybit.net) + * Developed by Sandro Santilli (strk@kbt.io) * for Faunalia (http://www.faunalia.it) * with funding from Regione Toscana - Settore SISTEMA INFORMATIVO * TERRITORIALE ED AMBIENTALE - for the project: "Sviluppo strumenti @@ -101,7 +101,7 @@ /// SharedPathsOp(const geom::Geometry& g1, const geom::Geometry& g2); - /// Get shared paths + /// Get shared paths // /// @param sameDir /// Shared edges having the same direction are pushed @@ -149,8 +149,8 @@ const geom::GeometryFactory& _gf; // Declare type as noncopyable - SharedPathsOp(const SharedPathsOp& other); - SharedPathsOp& operator=(const SharedPathsOp& rhs); + SharedPathsOp(const SharedPathsOp& other) = delete; + SharedPathsOp& operator=(const SharedPathsOp& rhs) = delete; }; diff -Nru geos-3.6.2/include/geos/operation/union/CascadedPolygonUnion.h geos-3.7.1/include/geos/operation/union/CascadedPolygonUnion.h --- geos-3.6.2/include/geos/operation/union/CascadedPolygonUnion.h 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/include/geos/operation/union/CascadedPolygonUnion.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -50,25 +50,25 @@ namespace geounion { // geos::operation::geounion /** - * \brief - * Provides an efficient method of unioning a collection of + * \brief + * Provides an efficient method of unioning a collection of * {@link Polygonal} geometries. * This algorithm is faster and likely more robust than - * the simple iterated approach of + * the simple iterated approach of * repeatedly unioning each polygon to a result geometry. - * - * The buffer(0) trick is sometimes faster, but can be less robust and + * + * The buffer(0) trick is sometimes faster, but can be less robust and * can sometimes take an exceptionally long time to complete. * This is particularly the case where there is a high degree of overlap * between the polygons. In this case, buffer(0) is forced to compute - * with all line segments from the outset, + * with all line segments from the outset, * whereas cascading can eliminate many segments * at each stage of processing. * The best case for buffer(0) is the trivial case - * where there is no overlap between the input geometries. + * where there is no overlap between the input geometries. * However, this case is likely rare in practice. */ -class GEOS_DLL CascadedPolygonUnion +class GEOS_DLL CascadedPolygonUnion { private: std::vector* inputPolys; @@ -76,7 +76,7 @@ /** * The effectiveness of the index is somewhat sensitive - * to the node capacity. + * to the node capacity. * Testing indicates that a smaller capacity is better. * For an STRtree, 4 is probably a good number (since * this produces 2x2 "squares"). @@ -88,7 +88,7 @@ * * Extracts the {@link Polygon}s from the input * and returns them as an appropriate {@link Polygonal} geometry. - * + * * If the input is already Polygonal, it is returned unchanged. * * A particular use case is to filter out non-polygonal components @@ -97,7 +97,7 @@ * @param g the geometry to filter * @return a Polygonal geometry */ - static std::auto_ptr restrictToPolygons(std::auto_ptr g); + static std::unique_ptr restrictToPolygons(std::unique_ptr g); public: CascadedPolygonUnion(); @@ -105,7 +105,7 @@ /** * Computes the union of * a collection of {@link Polygonal} {@link Geometry}s. - * + * * @param polys a collection of {@link Polygonal} {@link Geometry}s. * ownership of elements _and_ vector are left to caller. */ @@ -113,7 +113,7 @@ /** * Computes the union of a set of {@link Polygonal} {@link Geometry}s. - * + * * @tparam T an iterator yelding something castable to const Polygon * * @param start start iterator * @param end end iterator @@ -132,7 +132,7 @@ /** * Computes the union of * a collection of {@link Polygonal} {@link Geometry}s. - * + * * @param polys a collection of {@link Polygonal} {@link Geometry}s * ownership of elements _and_ vector are left to caller. */ @@ -141,18 +141,18 @@ /** * Creates a new instance to union * the given collection of {@link Geometry}s. - * + * * @param geoms a collection of {@link Polygonal} {@link Geometry}s * ownership of elements _and_ vector are left to caller. */ CascadedPolygonUnion(std::vector* polys) : inputPolys(polys), - geomFactory(NULL) + geomFactory(nullptr) {} /** * Computes the union of the input geometries. - * + * * @return the union of the input geometries * @return null if no input geometries were provided */ @@ -162,7 +162,7 @@ geom::Geometry* unionTree(index::strtree::ItemsList* geomTree); /** - * Unions a list of geometries + * Unions a list of geometries * by treating the list as a flattened binary tree, * and performing a cascaded union on the tree. */ @@ -171,28 +171,28 @@ /** * Unions a section of a list using a recursive binary union on each half * of the section. - * + * * @param geoms the list of geometries containing the section to union * @param start the start index of the section * @param end the index after the end of the section * @return the union of the list section */ - geom::Geometry* binaryUnion(GeometryListHolder* geoms, std::size_t start, + geom::Geometry* binaryUnion(GeometryListHolder* geoms, std::size_t start, std::size_t end); /** * Reduces a tree of geometries to a list of geometries * by recursively unioning the subtrees in the list. - * + * * @param geomTree a tree-structured list of geometries * @return a list of Geometrys */ GeometryListHolder* reduceToGeometries(index::strtree::ItemsList* geomTree); /** - * Computes the union of two geometries, + * Computes the union of two geometries, * either of both of which may be null. - * + * * @param g0 a Geometry * @param g1 a Geometry * @return the union of the input(s) @@ -207,7 +207,7 @@ * Unions two polygonal geometries, restricting computation * to the envelope intersection where possible. * - * The case of MultiPolygons is optimized to union only + * The case of MultiPolygons is optimized to union only * the polygons which lie in the intersection of the two geometry's * envelopes. * Polygons outside this region can simply be combined with the union @@ -215,16 +215,16 @@ * This case is likely to occur often during cascaded union, and may also * occur in real world data (such as unioning data for parcels on * different street blocks). - * + * * @param g0 a polygonal geometry * @param g1 a polygonal geometry * @param common the intersection of the envelopes of the inputs * @return the union of the inputs */ - geom::Geometry* unionUsingEnvelopeIntersection(geom::Geometry* g0, + geom::Geometry* unionUsingEnvelopeIntersection(geom::Geometry* g0, geom::Geometry* g1, geom::Envelope const& common); - geom::Geometry* extractByEnvelope(geom::Envelope const& env, + geom::Geometry* extractByEnvelope(geom::Envelope const& env, geom::Geometry* geom, std::vector& disjointGeoms); void extractByEnvelope(geom::Envelope const& env, @@ -239,7 +239,7 @@ /** * Encapsulates the actual unioning of two polygonal geometries. - * + * * @param g0 * @param g1 * @return diff -Nru geos-3.6.2/include/geos/operation/union/CascadedUnion.h geos-3.7.1/include/geos/operation/union/CascadedUnion.h --- geos-3.6.2/include/geos/operation/union/CascadedUnion.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/union/CascadedUnion.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://trac.osgeo.org/geos * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -46,13 +46,13 @@ namespace geounion { // geos::operation::geounion /** - * \brief + * \brief * Provides an efficient method of unioning a collection of Geometries * * This algorithm is more robust than the simple iterated approach * of repeatedly unioning each geometry to a result geometry. */ -class GEOS_DLL CascadedUnion +class GEOS_DLL CascadedUnion { private: const std::vector* inputGeoms; @@ -60,7 +60,7 @@ /** * The effectiveness of the index is somewhat sensitive - * to the node capacity. + * to the node capacity. * Testing indicates that a smaller capacity is better. * For an STRtree, 4 is probably a good number (since * this produces 2x2 "squares"). @@ -72,7 +72,7 @@ /** * Computes the union of a collection of {@link Geometry}s. - * + * * @param geoms a collection of {@link Geometry}s. * ownership of elements _and_ vector are left to caller. */ @@ -80,7 +80,7 @@ /** * Computes the union of a set of {@link Geometry}s. - * + * * @tparam T an iterator yelding something castable to const Geometry * * @param start start iterator * @param end end iterator @@ -99,18 +99,18 @@ /** * Creates a new instance to union * the given collection of {@link Geometry}s. - * + * * @param geoms a collection of {@link Geometryal} {@link Geometry}s * ownership of elements _and_ vector are left to caller. */ CascadedUnion(const std::vector* geoms) : inputGeoms(geoms), - geomFactory(NULL) + geomFactory(nullptr) {} /** * Computes the union of the input geometries. - * + * * @return the union of the input geometries * @return null if no input geometries were provided */ @@ -120,7 +120,7 @@ geom::Geometry* unionTree(index::strtree::ItemsList* geomTree); /** - * Unions a list of geometries + * Unions a list of geometries * by treating the list as a flattened binary tree, * and performing a cascaded union on the tree. */ @@ -129,28 +129,28 @@ /** * Unions a section of a list using a recursive binary union on each half * of the section. - * + * * @param geoms * @param start * @param end * @return the union of the list section */ - geom::Geometry* binaryUnion(GeometryListHolder* geoms, std::size_t start, + geom::Geometry* binaryUnion(GeometryListHolder* geoms, std::size_t start, std::size_t end); /** * Reduces a tree of geometries to a list of geometries * by recursively unioning the subtrees in the list. - * + * * @param geomTree a tree-structured list of geometries * @return a list of Geometrys */ GeometryListHolder* reduceToGeometries(index::strtree::ItemsList* geomTree); /** - * Computes the union of two geometries, + * Computes the union of two geometries, * either of both of which may be null. - * + * * @param g0 a Geometry * @param g1 a Geometry * @return the union of the input(s) @@ -162,7 +162,7 @@ /** * Unions two geometries. - * The case of multi geometries is optimized to union only + * The case of multi geometries is optimized to union only * the components which lie in the intersection of the two geometry's * envelopes. * Geometrys outside this region can simply be combined with the union @@ -170,21 +170,21 @@ * This case is likely to occur often during cascaded union, and may also * occur in real world data (such as unioning data for parcels on * different street blocks). - * + * * @param g0 a geometry * @param g1 a geometry * @param common the intersection of the envelopes of the inputs * @return the union of the inputs */ - geom::Geometry* unionUsingEnvelopeIntersection(geom::Geometry* g0, + geom::Geometry* unionUsingEnvelopeIntersection(geom::Geometry* g0, geom::Geometry* g1, geom::Envelope const& common); - geom::Geometry* extractByEnvelope(geom::Envelope const& env, + geom::Geometry* extractByEnvelope(geom::Envelope const& env, geom::Geometry* geom, std::vector& disjointGeoms); /** * Encapsulates the actual unioning of two polygonal geometries. - * + * * @param g0 * @param g1 * @return diff -Nru geos-3.6.2/include/geos/operation/union/GeometryListHolder.h geos-3.7.1/include/geos/operation/union/GeometryListHolder.h --- geos-3.6.2/include/geos/operation/union/GeometryListHolder.h 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/include/geos/operation/union/GeometryListHolder.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -40,7 +40,7 @@ GeometryListHolder() {} ~GeometryListHolder() { - std::for_each(ownedItems.begin(), ownedItems.end(), + std::for_each(ownedItems.begin(), ownedItems.end(), &GeometryListHolder::deleteItem); } @@ -53,8 +53,8 @@ geom::Geometry* getGeometry(std::size_t index) { - if (index >= this->base_type::size()) - return NULL; + if (index >= this->base_type::size()) + return nullptr; return (*this)[index]; } diff -Nru geos-3.6.2/include/geos/operation/union/Makefile.in geos-3.7.1/include/geos/operation/union/Makefile.in --- geos-3.6.2/include/geos/operation/union/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/union/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -383,8 +389,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -475,7 +481,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/union/PointGeometryUnion.h geos-3.7.1/include/geos/operation/union/PointGeometryUnion.h --- geos-3.6.2/include/geos/operation/union/PointGeometryUnion.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/union/PointGeometryUnion.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli Union( + static std::unique_ptr Union( const geom::Puntal& pointGeom, const geom::Geometry& otherGeom); @@ -56,7 +56,7 @@ PointGeometryUnion(const geom::Puntal& pointGeom, const geom::Geometry& otherGeom); - std::auto_ptr Union() const; + std::unique_ptr Union() const; private: const geom::Geometry& pointGeom; diff -Nru geos-3.6.2/include/geos/operation/union/UnaryUnionOp.h geos-3.7.1/include/geos/operation/union/UnaryUnionOp.h --- geos-3.6.2/include/geos/operation/union/UnaryUnionOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/union/UnaryUnionOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -56,9 +56,9 @@ * geometries it is possible to take advantage of various optimizations * to improve performance. * Heterogeneous {@link GeometryCollection}s are fully supported. - * + * * The result obeys the following contract: - * + * * - Unioning a set of overlapping {@link Polygons}s has the effect of * merging the areas (i.e. the same effect as * iteratively unioning all individual polygons together). @@ -87,21 +87,21 @@ public: template - static std::auto_ptr Union(const T& geoms) + static std::unique_ptr Union(const T& geoms) { UnaryUnionOp op(geoms); return op.Union(); } template - static std::auto_ptr Union(const T& geoms, + static std::unique_ptr Union(const T& geoms, geom::GeometryFactory& geomFact) { UnaryUnionOp op(geoms, geomFact); return op.Union(); } - static std::auto_ptr Union(const geom::Geometry& geom) + static std::unique_ptr Union(const geom::Geometry& geom) { UnaryUnionOp op(geom); return op.Union(); @@ -118,7 +118,7 @@ template UnaryUnionOp(const T& geoms) : - geomFact(0) + geomFact(nullptr) { extractGeoms(geoms); } @@ -140,7 +140,7 @@ * @return an empty GEOMETRYCOLLECTION if no geometries were provided * in the input */ - std::auto_ptr Union(); + std::unique_ptr Union(); private: @@ -181,7 +181,7 @@ * @param g0 a geometry * @return the union of the input geometry */ - std::auto_ptr unionNoOpt(const geom::Geometry& g0) + std::unique_ptr unionNoOpt(const geom::Geometry& g0) { using geos::operation::overlay::OverlayOp; //using geos::operation::overlay::snap::SnapIfNeededOverlayOp; @@ -202,8 +202,8 @@ * @return the union of the input(s) * @return null if both inputs are null */ - std::auto_ptr unionWithNull(std::auto_ptr g0, - std::auto_ptr g1); + std::unique_ptr unionWithNull(std::unique_ptr g0, + std::unique_ptr g1); std::vector polygons; std::vector lines; @@ -211,9 +211,9 @@ const geom::GeometryFactory* geomFact; - std::auto_ptr empty; + std::unique_ptr empty; }; - + } // namespace geos::operation::union } // namespace geos::operation diff -Nru geos-3.6.2/include/geos/operation/valid/ConnectedInteriorTester.h geos-3.7.1/include/geos/operation/valid/ConnectedInteriorTester.h --- geos-3.6.2/include/geos/operation/valid/ConnectedInteriorTester.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/ConnectedInteriorTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,7 +23,7 @@ #include #include // for composition -#include // for GeometryFactory::unique_ptr +#include // for GeometryFactory::Ptr #include @@ -57,14 +57,14 @@ /** \brief * This class tests that the interior of an area Geometry * (Polygon or MultiPolygon) - * is connected. + * is connected. * * An area Geometry is invalid if the interior is disconnected. * This can happen if: - * + * * - one or more holes either form a chain touching the shell at two places * - one or more holes form a ring around a portion of the interior - * + * * If an inconsistency if found the location of the problem * is recorded. */ @@ -84,7 +84,7 @@ private: - geom::GeometryFactory::unique_ptr geometryFactory; + geom::GeometryFactory::Ptr geometryFactory; geomgraph::GeometryGraph &geomGraph; @@ -98,7 +98,7 @@ void setInteriorEdgesInResult(geomgraph::PlanarGraph &graph); - + /** * \brief * Form DirectedEdges in graph into Minimal EdgeRings. @@ -134,8 +134,8 @@ bool hasUnvisitedShellEdge(std::vector *edgeRings); // Declare type as noncopyable - ConnectedInteriorTester(const ConnectedInteriorTester& other); - ConnectedInteriorTester& operator=(const ConnectedInteriorTester& rhs); + ConnectedInteriorTester(const ConnectedInteriorTester& other) = delete; + ConnectedInteriorTester& operator=(const ConnectedInteriorTester& rhs) = delete; }; } // namespace geos::operation::valid diff -Nru geos-3.6.2/include/geos/operation/valid/ConsistentAreaTester.h geos-3.7.1/include/geos/operation/valid/ConsistentAreaTester.h --- geos-3.6.2/include/geos/operation/valid/ConsistentAreaTester.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/ConsistentAreaTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -51,11 +51,11 @@ * is consistent with the OGC-SFS semantics for area geometries. * * Checks include: - * + * * - testing for rings which self-intersect (both properly * and at nodes) * - testing for duplicate rings - * + * * If an inconsistency if found the location of the problem * is recorded. */ @@ -66,16 +66,16 @@ * This check is required for any reasonable polygonal model * (including the OGC-SFS model, as well as models which allow ring * self-intersection at single points) - * + * * Checks include: - * + * * - test for rings which properly intersect * (but not for ring self-intersection, or intersections at vertices) * - test for consistent labelling at all node points * (this detects vertex intersections with invalid topology, * i.e. where the exterior side of an edge lies in the interior of the area) * - test for duplicate rings - * + * * If an inconsistency is found the location of the problem * is recorded and is available to the caller. * diff -Nru geos-3.6.2/include/geos/operation/valid/IsValidOp.h geos-3.7.1/include/geos/operation/valid/IsValidOp.h --- geos-3.6.2/include/geos/operation/valid/IsValidOp.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/IsValidOp.h 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2010 Sandro Santilli + * Copyright (C) 2010 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -62,7 +62,7 @@ friend class Unload; private: /// the base Geometry to be validated - const geom::Geometry *parentGeometry; + const geom::Geometry *parentGeometry; bool isChecked; @@ -122,12 +122,12 @@ * This routine assumes that the holes are disjoint. * To ensure this, holes have previously been tested * to ensure that: - * + * * - they do not partially overlap * (checked by checkRelateConsistency) * - they are not identical * (checked by checkRelateConsistency) - * + * */ void checkHolesNotNested(const geom::Polygon *p, geomgraph::GeometryGraph *graph); @@ -135,9 +135,9 @@ /** * Tests that no element polygon is wholly in the interior of another * element polygon. - * + * * Preconditions: - * + * * - shells do not partially overlap * - shells do not touch along an edge * - no duplicate rings exist @@ -150,11 +150,11 @@ geomgraph::GeometryGraph *graph); /** - * Check if a shell is incorrectly nested within a polygon. + * Check if a shell is incorrectly nested within a polygon. * This is the case if the shell is inside the polygon shell, * but not inside a polygon hole. * (If the shell is inside a polygon hole, the nesting is valid.) - * + * * The algorithm used relies on the fact that the rings must be * properly contained. * E.g. they cannot partially overlap (this has been previously @@ -215,7 +215,7 @@ /** * Tests whether a {@link Geometry} is valid. - * + * * @param geom the Geometry to test * @return true if the geometry is valid */ @@ -225,7 +225,7 @@ : parentGeometry(geom), isChecked(false), - validErr(NULL), + validErr(nullptr), isSelfTouchingRingFormingHoleValid(false) {} diff -Nru geos-3.6.2/include/geos/operation/valid/Makefile.in geos-3.7.1/include/geos/operation/valid/Makefile.in --- geos-3.6.2/include/geos/operation/valid/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -386,8 +392,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -478,7 +484,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/operation/valid/QuadtreeNestedRingTester.h geos-3.7.1/include/geos/operation/valid/QuadtreeNestedRingTester.h --- geos-3.6.2/include/geos/operation/valid/QuadtreeNestedRingTester.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/QuadtreeNestedRingTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/valid/RepeatedPointTester.h geos-3.7.1/include/geos/operation/valid/RepeatedPointTester.h --- geos-3.6.2/include/geos/operation/valid/RepeatedPointTester.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/RepeatedPointTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation/valid/SimpleNestedRingTester.h geos-3.7.1/include/geos/operation/valid/SimpleNestedRingTester.h --- geos-3.6.2/include/geos/operation/valid/SimpleNestedRingTester.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/SimpleNestedRingTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -61,7 +61,7 @@ : graph(newGraph), rings(), - nestedPt(NULL) + nestedPt(nullptr) {} ~SimpleNestedRingTester() { diff -Nru geos-3.6.2/include/geos/operation/valid/SweeplineNestedRingTester.h geos-3.7.1/include/geos/operation/valid/SweeplineNestedRingTester.h --- geos-3.6.2/include/geos/operation/valid/SweeplineNestedRingTester.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/SweeplineNestedRingTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ #include #include // for inline -//#include // for inline and inheritance +//#include // for inline and inheritance #include // for inheritance #include // for inlines @@ -75,7 +75,7 @@ graph(newGraph), rings(), sweepLine(new index::sweepline::SweepLineIndex()), - nestedPt(NULL) + nestedPt(nullptr) {} ~SweeplineNestedRingTester() @@ -102,7 +102,7 @@ bool isNonNested; OverlapAction(SweeplineNestedRingTester *p); void overlap(index::sweepline::SweepLineInterval *s0, - index::sweepline::SweepLineInterval *s1); + index::sweepline::SweepLineInterval *s1) override; private: SweeplineNestedRingTester *parent; }; diff -Nru geos-3.6.2/include/geos/operation/valid/TopologyValidationError.h geos-3.7.1/include/geos/operation/valid/TopologyValidationError.h --- geos-3.6.2/include/geos/operation/valid/TopologyValidationError.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation/valid/TopologyValidationError.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/operation.h geos-3.7.1/include/geos/operation.h --- geos-3.6.2/include/geos/operation.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/operation.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/opLinemerge.h geos-3.7.1/include/geos/opLinemerge.h --- geos-3.6.2/include/geos/opLinemerge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opLinemerge.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/opOverlay.h geos-3.7.1/include/geos/opOverlay.h --- geos-3.6.2/include/geos/opOverlay.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opOverlay.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -17,28 +17,28 @@ #define GEOS_OPOVERLAY_H namespace geos { -namespace operation { +namespace operation { /** \brief * Contains classes that perform a topological overlay to compute boolean * spatial functions. - * + * * The Overlay Algorithm is used in spatial analysis methods for computing * set-theoretic operations (boolean combinations) of input {@link Geometry}s. * The algorithm for computing the overlay uses the intersection operations * supported by topology graphs. * To compute an overlay it is necessary to explicitly compute the resultant * graph formed by the computed intersections. - * + * * The algorithm to compute a set-theoretic spatial analysis method has the * following steps: - * + * * - Build topology graphs of the two input geometries. For each geometry all * self-intersection nodes are computed and added to the graph. * - Compute nodes for all intersections between edges and nodes of the graphs. * - Compute the labeling for the computed nodes by merging the labels from * the input graphs. - * - Compute new edges between the compute intersection nodes. + * - Compute new edges between the compute intersection nodes. * Label the edges appropriately. * - Build the resultant graph from the new nodes and edges. * - Compute the labeling for isolated components of the graph. Add the @@ -46,13 +46,13 @@ * - Compute the result of the boolean combination by selecting the node * and edges with the appropriate labels. Polygonize areas and sew linear * geometries together. - * + * *

Package Specification

- * + * * - Java Topology Suite Technical Specifications * - * OpenGIS Simple Features Specification for SQL - * + * */ namespace overlay { // geos.operation.overlay diff -Nru geos-3.6.2/include/geos/opPolygonize.h geos-3.7.1/include/geos/opPolygonize.h --- geos-3.6.2/include/geos/opPolygonize.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opPolygonize.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/opPredicate.h geos-3.7.1/include/geos/opPredicate.h --- geos-3.6.2/include/geos/opPredicate.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opPredicate.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/opRelate.h geos-3.7.1/include/geos/opRelate.h --- geos-3.6.2/include/geos/opRelate.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opRelate.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -22,7 +22,7 @@ /** \brief * Contains classes to implement the computation of the spatial relationships of Geometrys. - * + * * The relate algorithm computes the IntersectionMatrix describing the * relationship of two Geometrys. The algorithm for computing relate * uses the intersection operations supported by topology graphs. Although the relate @@ -40,9 +40,9 @@ *
  • Compute the labeling for isolated components of the graph (see below) *
  • Compute the IntersectionMatrix from the labels on the nodes and edges. * - * + * *

    Labeling isolated components

    - * + * * Isolated components are components (edges or nodes) of an input Geometry which * do not contain any intersections with the other input Geometry. The * topological relationship of these components to the other input Geometry @@ -53,15 +53,15 @@ * edge of the Geometry). If the other Geometry is 2-dimensional, * a Point-In-Polygon test can be used to determine whether the isolated component is in the * interior or exterior. - * + * *

    Package Specification

    - * + * * - * + * */ namespace relate { // geos.operation.relate diff -Nru geos-3.6.2/include/geos/opValid.h geos-3.7.1/include/geos/opValid.h --- geos-3.6.2/include/geos/opValid.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/opValid.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h geos-3.7.1/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h --- geos-3.6.2/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/algorithm/ConnectedSubgraphFinder.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -24,7 +24,7 @@ // Forward declarations namespace geos { - namespace planargraph { + namespace planargraph { class PlanarGraph; class Subgraph; class Node; @@ -37,7 +37,7 @@ /** \brief * Finds all connected {@link Subgraph}s of a PlanarGraph. - * + * * Note: uses the isVisited flag on the nodes. */ class GEOS_DLL ConnectedSubgraphFinder @@ -84,8 +84,8 @@ Subgraph* subgraph); // Declare type as noncopyable - ConnectedSubgraphFinder(const ConnectedSubgraphFinder& other); - ConnectedSubgraphFinder& operator=(const ConnectedSubgraphFinder& rhs); + ConnectedSubgraphFinder(const ConnectedSubgraphFinder& other) = delete; + ConnectedSubgraphFinder& operator=(const ConnectedSubgraphFinder& rhs) = delete; }; } // namespace geos::planargraph::algorithm diff -Nru geos-3.6.2/include/geos/planargraph/algorithm/Makefile.in geos-3.7.1/include/geos/planargraph/algorithm/Makefile.in --- geos-3.6.2/include/geos/planargraph/algorithm/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/algorithm/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -379,8 +385,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -471,7 +477,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/planargraph/DirectedEdge.h geos-3.7.1/include/geos/planargraph/DirectedEdge.h --- geos-3.6.2/include/geos/planargraph/DirectedEdge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/DirectedEdge.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -25,7 +25,7 @@ // Forward declarations namespace geos { - namespace planargraph { + namespace planargraph { class Edge; class Node; } @@ -84,7 +84,7 @@ * Add parent Edge (possibly null) of each of the given DirectedEdges * to the given parentEdges vector. * - * NOTE: parents are pushed to the parentEdges vector, make sure + * NOTE: parents are pushed to the parentEdges vector, make sure * it is empty if index-based corrispondence is important. */ static void toEdges( std::vector& dirEdges, @@ -182,7 +182,7 @@ * Using the obvious algorithm of simply computing the angle is * not robust, since the angle calculation is susceptible to roundoff. * A robust algorithm is: - * + * * - first compare the quadrants. * If the quadrants are different, it it * trivial to determine which std::vector is "greater". @@ -190,7 +190,7 @@ * RobustCGAlgorithms::computeOrientation(Coordinate, Coordinate, Coordinate) * function can be used to decide the relative orientation of * the vectors. - * + * */ int compareTo(const DirectedEdge* obj) const; @@ -203,7 +203,7 @@ * Using the obvious algorithm of simply computing the angle is * not robust, since the angle calculation is susceptible to roundoff. * A robust algorithm is: - * + * * - first compare the quadrants. * If the quadrants are different, it it trivial to determine * which std::vector is "greater". @@ -227,7 +227,7 @@ /// Strict Weak comparator function for containers bool pdeLessThan(DirectedEdge *first, DirectedEdge * second); -/// Output operator +/// Output operator std::ostream& operator << (std::ostream&, const DirectedEdge&); diff -Nru geos-3.6.2/include/geos/planargraph/DirectedEdgeStar.h geos-3.7.1/include/geos/planargraph/DirectedEdgeStar.h --- geos-3.6.2/include/geos/planargraph/DirectedEdgeStar.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/DirectedEdgeStar.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -115,19 +115,19 @@ * \brief Returns the zero-based index of the given DirectedEdge, * after sorting in ascending order * by angle with the positive x-axis. - */ + */ int getIndex(const DirectedEdge *dirEdge); /** * \brief Returns the remainder when i is divided by the number of - * edges in this DirectedEdgeStar. + * edges in this DirectedEdgeStar. */ int getIndex(int i) const; /** * \brief Returns the DirectedEdge on the left-hand side * of the given DirectedEdge (which must be a member of this - * DirectedEdgeStar). + * DirectedEdgeStar). */ DirectedEdge* getNextEdge(DirectedEdge *dirEdge); }; diff -Nru geos-3.6.2/include/geos/planargraph/Edge.h geos-3.7.1/include/geos/planargraph/Edge.h --- geos-3.6.2/include/geos/planargraph/Edge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/Edge.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -31,7 +31,7 @@ // Forward declarations namespace geos { - namespace planargraph { + namespace planargraph { class DirectedEdgeStar; class DirectedEdge; class Edge; @@ -47,7 +47,7 @@ * * An undirected edge in fact simply acts as a central point of reference * for two opposite DirectedEdge. - * + * * Usually a client using a PlanarGraph will subclass Edge * to add its own application-specific data and methods. */ @@ -134,7 +134,7 @@ }; /// Print a Edge -std::ostream& operator<<(std::ostream& os, const Edge& n); +std::ostream& operator<<(std::ostream& os, const Edge& n); /// For backward compatibility //typedef Edge planarEdge; diff -Nru geos-3.6.2/include/geos/planargraph/GraphComponent.h geos-3.7.1/include/geos/planargraph/GraphComponent.h --- geos-3.6.2/include/geos/planargraph/GraphComponent.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/GraphComponent.h 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -30,7 +30,7 @@ * * Maintains flags of use in generic graph algorithms. * Provides two flags: - * + * * - marked - typically this is used to indicate a state that * persists for the course of the graph's lifetime. For instance, * it can be used to indicate that a component has been logically diff -Nru geos-3.6.2/include/geos/planargraph/Makefile.in geos-3.7.1/include/geos/planargraph/Makefile.in --- geos-3.6.2/include/geos/planargraph/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -428,8 +434,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -567,7 +573,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/planargraph/Node.h geos-3.7.1/include/geos/planargraph/Node.h --- geos-3.6.2/include/geos/planargraph/Node.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/Node.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -24,7 +24,7 @@ // Forward declarations namespace geos { - namespace planargraph { + namespace planargraph { //class DirectedEdgeStar; class DirectedEdge; } @@ -45,10 +45,10 @@ class GEOS_DLL Node: public GraphComponent { protected: - /// The location of this Node + /// The location of this Node geom::Coordinate pt; - /// The collection of DirectedEdges that leave this Node + /// The collection of DirectedEdges that leave this Node DirectedEdgeStar *deStar; public: @@ -59,7 +59,7 @@ * Returns all Edges that connect the two nodes (which are * assumed to be different). * - * Note: returned vector is newly allocated, ownership to + * Note: returned vector is newly allocated, ownership to * the caller. */ static std::vector* getEdgesBetween(Node *node0, @@ -71,7 +71,7 @@ pt(newPt) { deStar=new DirectedEdgeStar(); } - virtual ~Node() { + ~Node() override { delete deStar; } @@ -127,7 +127,7 @@ }; /// Print a Node -std::ostream& operator<<(std::ostream& os, const Node& n); +std::ostream& operator<<(std::ostream& os, const Node& n); /// For backward compatibility diff -Nru geos-3.6.2/include/geos/planargraph/NodeMap.h geos-3.7.1/include/geos/planargraph/NodeMap.h --- geos-3.6.2/include/geos/planargraph/NodeMap.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/NodeMap.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -29,7 +29,7 @@ // Forward declarations namespace geos { - namespace planargraph { + namespace planargraph { class DirectedEdgeStar; class DirectedEdge; class Edge; @@ -50,7 +50,7 @@ typedef std::map container; private: container nodeMap; -public: +public: /** * \brief Constructs a NodeMap without any Nodes. */ diff -Nru geos-3.6.2/include/geos/planargraph/PlanarGraph.h geos-3.7.1/include/geos/planargraph/PlanarGraph.h --- geos-3.6.2/include/geos/planargraph/PlanarGraph.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/PlanarGraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -31,10 +31,10 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Coordinate; } - namespace planargraph { + namespace planargraph { class DirectedEdge; class Edge; class Node; @@ -48,7 +48,7 @@ * \class PlanarGraph planargraph.h geos/planargraph.h * \brief * Represents a directed graph which is embeddable in a planar surface. - * + * * This class and the other classes in this package serve as a framework for * building planar graphs for specific algorithms. This class must be * subclassed to expose appropriate methods to construct the graph. This allows @@ -152,7 +152,7 @@ * Returns the Nodes in this PlanarGraph. * * @param nodes : the nodes are push_back'ed here - */ + */ void getNodes(std::vector& nodes) { nodeMap.getNodes(nodes); } /** diff -Nru geos-3.6.2/include/geos/planargraph/Subgraph.h geos-3.7.1/include/geos/planargraph/Subgraph.h --- geos-3.6.2/include/geos/planargraph/Subgraph.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph/Subgraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -19,7 +19,7 @@ #include #include // for composition -#include +#include #ifdef _MSC_VER #pragma warning(push) @@ -28,7 +28,7 @@ // Forward declarations namespace geos { - namespace planargraph { + namespace planargraph { class PlanarGraph; class DirectedEdge; class Edge; @@ -98,7 +98,7 @@ return dirEdges.begin(); } - + /** * Returns an {@link Iterator} over the {@link Edge}s in this * graph, in the order in which they were added. @@ -115,16 +115,16 @@ * in this graph. */ NodeMap::container::iterator nodeBegin() { - return nodeMap.begin(); + return nodeMap.begin(); } NodeMap::container::const_iterator nodeEnd() const { - return nodeMap.end(); + return nodeMap.end(); } NodeMap::container::iterator nodeEnd() { - return nodeMap.end(); + return nodeMap.end(); } NodeMap::container::const_iterator nodeBegin() const { - return nodeMap.begin(); + return nodeMap.begin(); } /** @@ -140,10 +140,10 @@ std::set edges; std::vector dirEdges; NodeMap nodeMap; - + // Declare type as noncopyable - Subgraph(const Subgraph& other); - Subgraph& operator=(const Subgraph& rhs); + Subgraph(const Subgraph& other) = delete; + Subgraph& operator=(const Subgraph& rhs) = delete; }; } // namespace geos::planargraph diff -Nru geos-3.6.2/include/geos/planargraph.h geos-3.7.1/include/geos/planargraph.h --- geos-3.6.2/include/geos/planargraph.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/planargraph.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/platform.h.cmake geos-3.7.1/include/geos/platform.h.cmake --- geos-3.6.2/include/geos/platform.h.cmake 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/platform.h.cmake 2018-11-29 22:42:00.000000000 +0000 @@ -5,13 +5,14 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * + * Copyright (C) 2018 Vicky Vergara * Copyright (C) 2009 Mateusz Loskot * Copyright (C) 2005-2009 Refractions Research Inc. * Copyright (C) 2001-2009 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************/ @@ -28,138 +29,58 @@ /* Disable inclusion of platform.h not generated by CMake */ #define GEOS_PLATFORM_H 1 -/* Set to 1 if you have stdint.h */ -#cmakedefine HAVE_STDINT_H 1 - -/* Set to 1 if you have inttypes.h */ -#cmakedefine HAVE_INTTYPES_H 1 - /* Set to 1 if you have ieeefp.h */ #cmakedefine HAVE_IEEEFP_H 1 -/* Set to 1 if you have `int64_t' type */ -#cmakedefine HAVE_INT64_T_64 1 - -/* Set to 1 if `long int' is 64 bits */ -#cmakedefine HAVE_LONG_INT_64 1 - -/* Set to 1 if `long long int' is 64 bits */ -#cmakedefine HAVE_LONG_LONG_INT_64 1 - -/* Set to 1 if C++/C99 std::isnan is defined */ -#cmakedefine HAVE_STD_ISNAN 1 - -/* Set to 1 if C99 isnan is defined */ -#cmakedefine HAVE_ISNAN 1 - -/* Set to 1 if XCode __isnand is defined */ -#cmakedefine HAVE_ISNAND_XCODE 1 - -/* Set to 1 if XCode __inline_isnand is defined */ -#cmakedefine HAVE_INLINE_ISNAND_XCODE 1 - -/* Set to 1 if C++/C99 std::isfinite is defined */ -#cmakedefine HAVE_STD_ISFINITE 1 - -/* Set to 1 if C99 isfinite is defined */ -#cmakedefine HAVE_ISFINITE 1 - -/* Set to 1 if Visual C++ finite is defined */ -#cmakedefine HAVE_FINITE 1 - - -#ifdef HAVE_IEEEFP_H -extern "C" -{ -#include -} -#endif - -#ifdef HAVE_INTTYPES_H -extern "C" -{ -#include -} -# ifndef HAVE_INT64_T_64 -# error Warning: inttypes.h included but HAVE_INT64_T_64 not defined -# endif -#endif - -/* We need M_PI, but on MSVC you need to define _USE_MATH_DEFINES before - * including math.h to get it. If we are too late (math.h already included) - * we will define it manually. - */ #ifdef _MSC_VER -#define _USE_MATH_DEFINES -#include -#include -#else -#include +# define _USE_MATH_DEFINES #endif +#include #include +#include + + #ifndef M_PI #define M_PI 3.14159265358979323846 #endif -/* For MingW the appropriate definitions are included in math.h - * and float.h but the definitions in math.h are only included - * if __STRICT_ANSI__ is not defined. Since GEOS is compiled - * with -ansi that means those definitions are not available. - */ -#if defined(__GNUC__) && defined(_WIN32) -#include -#endif +typedef int64_t int64; + -#ifdef HAVE_INT64_T_64 -# ifdef _MSC_VER - typedef __int64 int64; -# else - typedef int64_t int64; -# endif +#if defined(_MSC_VER) && _MSC_VER >= 1200 // VC++ 6.0 and above +# include +# ifndef FINITE +# define FINITE(x) _finite(x) +# endif +# ifndef ISNAN +# define ISNAN(x) _isnan(x) +# endif +#elif !defined(HAVE_IEEEFP_H) +# include +# ifndef FINITE +# define FINITE(x) std::isfinite(x) +# endif +# ifndef ISNAN +# define ISNAN(x) std::isnan(x) +# endif #else -# ifdef HAVE_LONG_LONG_INT_64 - typedef long long int int64; -# else - typedef long int int64; -# ifndef HAVE_LONG_INT_64 -# define INT64_IS_REALLY32 1 -# warning "Could not find 64bit integer definition!" +# include +# ifndef FINITE +# define FINITE(x) finite(x) +# endif +# ifndef ISNAN +# define ISNAN(x) isnan(x) # endif -# endif #endif -#if defined(HAVE_STD_ISNAN) -# define ISNAN(x) (std::isnan)(x) -#elif defined(HAVE_INLINE_ISNAND_XCODE) -# define ISNAN(x) __inline_isnand(static_cast(x)) -#elif defined(HAVE_ISNAND_XCODE) -# define ISNAN(x) __isnand(static_cast(x)) -#elif defined(HAVE_ISNAN) -# if defined(_MSC_VER) -# define ISNAN(x) _isnan(static_cast(x)) -# else -# define ISNAN(x) isnan(x) -# endif -#else -# error "Could not find isnan function or macro!" -#endif -#if defined(HAVE_STD_ISFINITE) -# define FINITE(x) (std::isfinite)(x) -#elif defined(HAVE_ISFINITE) -# define FINITE(x) isfinite(x) -#elif defined(HAVE_FINITE) -# define FINITE(x) _finite(static_cast(x)) -#else -# error "Could not find finite or isfinite function or macro!" -#endif +// Some handy constants +constexpr double DoubleNotANumber = std::numeric_limits::quiet_NaN(); +constexpr double DoubleMax = (std::numeric_limits::max)(); +constexpr double DoubleInfinity = (std::numeric_limits::infinity)(); +constexpr double DoubleNegInfinity = (-(std::numeric_limits::infinity)()); + -#define DoubleNegInfinity (-(std::numeric_limits::infinity)()) -#define DoubleMax (std::numeric_limits::max)() -// Defines NaN for Intel platforms -#define DoubleNotANumber std::numeric_limits::quiet_NaN() -// Don't forget to define infinities -#define DoubleInfinity (std::numeric_limits::infinity)() #endif // GEOS_PLATFORM_H_INCLUDED diff -Nru geos-3.6.2/include/geos/platform.h.in geos-3.7.1/include/geos/platform.h.in --- geos-3.6.2/include/geos/platform.h.in 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/include/geos/platform.h.in 2018-10-19 22:32:06.000000000 +0000 @@ -38,7 +38,7 @@ #if defined(__GNUC__) && defined(_WIN32) /* For MingW the appropriate definitions are included in - math.h and float.h but the definitions in + math.h and float.h but the definitions in math.h are only included if __STRICT_ANSI__ is not defined. Since GEOS is compiled with -ansi that means those definitions are not available. */ @@ -77,7 +77,7 @@ # define FINITE(x) (finite(x)) #else # if defined(_MSC_VER) -# define FINITE(x) _finite(static_cast(x)) +# define FINITE(x) _finite(static_cast(x)) # elif defined(__hpux__) && defined(__ia64__) # define FINITE(x) (_Isfinite(x)) # else diff -Nru geos-3.6.2/include/geos/precision/CommonBits.h geos-3.7.1/include/geos/precision/CommonBits.h --- geos-3.6.2/include/geos/precision/CommonBits.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/precision/CommonBits.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/precision/CommonBitsOp.h geos-3.7.1/include/geos/precision/CommonBitsOp.h --- geos-3.6.2/include/geos/precision/CommonBitsOp.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/precision/CommonBitsOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -16,7 +16,7 @@ #define GEOS_PRECISION_COMMONBITSOP_H #include -#include // for auto_ptr composition +#include // for unique_ptr composition #include #include @@ -41,7 +41,7 @@ /** \brief * Provides versions of Geometry spatial functions which use * common bit removal to reduce the likelihood of robustness problems. - * + * * In the current implementation no rounding is performed on the * reshifted result geometry, which means that it is possible * that the returned Geometry is invalid. @@ -53,7 +53,7 @@ bool returnToOriginalPrecision; - std::auto_ptr cbr; + std::unique_ptr cbr; /** \brief * Computes a copy of the input Geometry with the calculated @@ -71,8 +71,8 @@ void removeCommonBits( const geom::Geometry* geom0, const geom::Geometry* geom1, - std::auto_ptr& rgeom0, - std::auto_ptr& rgeom1); + std::unique_ptr& rgeom0, + std::unique_ptr& rgeom1); public: @@ -152,7 +152,7 @@ /** * If required, returning the result to the orginal precision * if required. - * + * * In this current implementation, no rounding is performed on the * reshifted result geometry, which means that it is possible * that the returned Geometry is invalid. diff -Nru geos-3.6.2/include/geos/precision/CommonBitsRemover.h geos-3.7.1/include/geos/precision/CommonBitsRemover.h --- geos-3.6.2/include/geos/precision/CommonBitsRemover.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/precision/CommonBitsRemover.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/precision/EnhancedPrecisionOp.h geos-3.7.1/include/geos/precision/EnhancedPrecisionOp.h --- geos-3.6.2/include/geos/precision/EnhancedPrecisionOp.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/precision/EnhancedPrecisionOp.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/precision/GeometryPrecisionReducer.h geos-3.7.1/include/geos/precision/GeometryPrecisionReducer.h --- geos-3.6.2/include/geos/precision/GeometryPrecisionReducer.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/precision/GeometryPrecisionReducer.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -20,12 +20,12 @@ #define GEOS_PRECISION_GEOMETRYPRECISIONREDUCER_H #include -#include // for GeometryFactory::unique_ptr -#include // for auto_ptr +#include // for GeometryFactory::Ptr +#include // for unique_ptr // Forward declarations namespace geos { - namespace geom { + namespace geom { class PrecisionModel; class GeometryFactory; class Geometry; @@ -37,7 +37,7 @@ /** \brief * Reduces the precision of a {@link Geometry} - * according to the supplied {@link PrecisionModel}, + * according to the supplied {@link PrecisionModel}, * ensuring that the result is topologically valid. */ class GEOS_DLL GeometryPrecisionReducer { @@ -53,12 +53,12 @@ bool isPointwise; - std::auto_ptr reducePointwise( const geom::Geometry& geom ); + std::unique_ptr reducePointwise( const geom::Geometry& geom ); - std::auto_ptr fixPolygonalTopology( + std::unique_ptr fixPolygonalTopology( const geom::Geometry& geom ); - geom::GeometryFactory::unique_ptr createFactory( + geom::GeometryFactory::Ptr createFactory( const geom::GeometryFactory& oldGF, const geom::PrecisionModel& newPM ); @@ -78,7 +78,7 @@ * @param precModel the precision model to use * @return the reduced geometry */ - static std::auto_ptr reduce( + static std::unique_ptr reduce( const geom::Geometry &g, const geom::PrecisionModel &precModel ) { @@ -97,7 +97,7 @@ * @param precModel the precision model to use * @return the reduced geometry */ - static std::auto_ptr reducePointwise( + static std::unique_ptr reducePointwise( const geom::Geometry &g, const geom::PrecisionModel &precModel ) { @@ -108,7 +108,7 @@ GeometryPrecisionReducer(const geom::PrecisionModel &pm) : - newFactory(0), + newFactory(nullptr), targetPM(pm), removeCollapsed(true), isPointwise(false) @@ -153,7 +153,7 @@ isPointwise = pointwise; } - std::auto_ptr reduce(const geom::Geometry& geom); + std::unique_ptr reduce(const geom::Geometry& geom); }; diff -Nru geos-3.6.2/include/geos/precision/Makefile.in geos-3.7.1/include/geos/precision/Makefile.in --- geos-3.6.2/include/geos/precision/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/precision/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -386,8 +392,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -478,7 +484,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/precision/MinimumClearance.h geos-3.7.1/include/geos/precision/MinimumClearance.h --- geos-3.6.2/include/geos/precision/MinimumClearance.h 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/include/geos/precision/MinimumClearance.h 2018-10-19 22:32:06.000000000 +0000 @@ -29,7 +29,7 @@ private: const geom::Geometry* inputGeom; double minClearance; - std::auto_ptr minClearancePts; + std::unique_ptr minClearancePts; void compute(); public: @@ -50,7 +50,7 @@ * @return the value of the minimum clearance distance * or LINESTRING EMPTY if no Minimum Clearance distance exists */ - std::auto_ptr getLine(); + std::unique_ptr getLine(); }; } } diff -Nru geos-3.6.2/include/geos/precision/PrecisionReducerCoordinateOperation.h geos-3.7.1/include/geos/precision/PrecisionReducerCoordinateOperation.h --- geos-3.6.2/include/geos/precision/PrecisionReducerCoordinateOperation.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/precision/PrecisionReducerCoordinateOperation.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -23,7 +23,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class PrecisionModel; class CoordinateSequence; class Geometry; @@ -59,7 +59,7 @@ // /// virtual function geom::CoordinateSequence* edit(const geom::CoordinateSequence *coordinates, - const geom::Geometry *geom); + const geom::Geometry *geom) override; }; } // namespace geos.precision diff -Nru geos-3.6.2/include/geos/precision/SimpleGeometryPrecisionReducer.h geos-3.7.1/include/geos/precision/SimpleGeometryPrecisionReducer.h --- geos-3.6.2/include/geos/precision/SimpleGeometryPrecisionReducer.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/precision/SimpleGeometryPrecisionReducer.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -19,7 +19,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class PrecisionModel; class Geometry; } @@ -32,7 +32,7 @@ * Reduces the precision of a {@link Geometry} * according to the supplied {@link PrecisionModel}, without * attempting to preserve valid topology. - * + * * The topology of the resulting geometry may be invalid if * topological collapse occurs due to coordinates being shifted. * It is up to the client to check this and handle it if necessary. diff -Nru geos-3.6.2/include/geos/precision.h geos-3.7.1/include/geos/precision.h --- geos-3.6.2/include/geos/precision.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/precision.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/profiler.h geos-3.7.1/include/geos/profiler.h --- geos-3.6.2/include/geos/profiler.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/profiler.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -21,7 +21,7 @@ /* For MingW builds with __STRICT_ANSI__ (-ansi) */ /** MINGW64 doesn't have a config.h **/ #if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) -/* Allow us to check for presence of gettimeofday in MingW */ +/* Allow us to check for presence of gettimeofday in MingW */ #include #include @@ -32,7 +32,7 @@ __MINGW_IMPORT char *_tzname[2]; } #endif - + #if defined(_MSC_VER) || defined(__MINGW32__) && !defined(HAVE_GETTIMEOFDAY) && !defined(__MINGW64_VERSION_MAJOR) #include #else @@ -73,15 +73,16 @@ /** \brief start a new timer */ void start() { - gettimeofday(&starttime, NULL); + gettimeofday(&starttime, nullptr); } /** \brief stop current timer */ void stop() { - gettimeofday(&stoptime, NULL); - double elapsed = 1000000*(stoptime.tv_sec-starttime.tv_sec)+ - (stoptime.tv_usec-starttime.tv_usec); + gettimeofday(&stoptime, nullptr); + double elapsed = static_cast( + 1000000 * (stoptime.tv_sec - starttime.tv_sec) + + (stoptime.tv_usec - starttime.tv_usec)); timings.push_back(elapsed); totaltime += elapsed; @@ -91,7 +92,7 @@ if ( elapsed > max ) max = elapsed; if ( elapsed < min ) min = elapsed; } - avg = totaltime / timings.size(); + avg = totaltime / static_cast(timings.size()); } /** \brief Return Max stored timing */ @@ -164,7 +165,7 @@ /** * \brief - * Stop timer for named task. + * Stop timer for named task. * Elapsed time is registered in the given task. */ void stop(std::string name); @@ -177,10 +178,10 @@ /** \brief Return a string representing the Profile */ -std::ostream& operator<< (std::ostream& os, const Profile&); +GEOS_DLL std::ostream& operator<< (std::ostream& os, const Profile&); /** \brief Return a string representing the Profiler */ -std::ostream& operator<< (std::ostream& os, const Profiler&); +GEOS_DLL std::ostream& operator<< (std::ostream& os, const Profiler&); } // namespace geos::util } // namespace geos diff -Nru geos-3.6.2/include/geos/simplify/DouglasPeuckerLineSimplifier.h geos-3.7.1/include/geos/simplify/DouglasPeuckerLineSimplifier.h --- geos-3.6.2/include/geos/simplify/DouglasPeuckerLineSimplifier.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/DouglasPeuckerLineSimplifier.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -21,7 +21,7 @@ #include #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -47,15 +47,15 @@ public: typedef std::vector BoolVect; - typedef std::auto_ptr BoolVectAutoPtr; + typedef std::unique_ptr BoolVectAutoPtr; typedef std::vector CoordsVect; - typedef std::auto_ptr CoordsVectAutoPtr; + typedef std::unique_ptr CoordsVectAutoPtr; /** \brief * Returns a newly allocated Coordinate vector, wrapped - * into an auto_ptr + * into an unique_ptr */ static CoordsVectAutoPtr simplify( const CoordsVect& nPts, @@ -75,7 +75,7 @@ /** \brief * Returns a newly allocated Coordinate vector, wrapped - * into an auto_ptr + * into an unique_ptr */ CoordsVectAutoPtr simplify(); @@ -88,8 +88,8 @@ void simplifySection(std::size_t i, std::size_t j); // Declare type as noncopyable - DouglasPeuckerLineSimplifier(const DouglasPeuckerLineSimplifier& other); - DouglasPeuckerLineSimplifier& operator=(const DouglasPeuckerLineSimplifier& rhs); + DouglasPeuckerLineSimplifier(const DouglasPeuckerLineSimplifier& other) = delete; + DouglasPeuckerLineSimplifier& operator=(const DouglasPeuckerLineSimplifier& rhs) = delete; }; } // namespace geos::simplify diff -Nru geos-3.6.2/include/geos/simplify/DouglasPeuckerSimplifier.h geos-3.7.1/include/geos/simplify/DouglasPeuckerSimplifier.h --- geos-3.6.2/include/geos/simplify/DouglasPeuckerSimplifier.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/DouglasPeuckerSimplifier.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -20,7 +20,7 @@ #define GEOS_SIMPLIFY_DOUBGLASPEUCKERSIMPLIFIER_H #include -#include // for auto_ptr +#include // for unique_ptr // Forward declarations namespace geos { @@ -38,7 +38,7 @@ * * Ensures that any polygonal geometries returned are valid. * Simple lines are not guaranteed to remain simple after simplification. - * + * * Note that in general D-P does not preserve topology - * e.g. polygons can be split, collapse to lines or disappear * holes can be created or disappear, @@ -51,7 +51,7 @@ public: - static std::auto_ptr simplify( + static std::unique_ptr simplify( const geom::Geometry* geom, double tolerance); @@ -69,7 +69,7 @@ */ void setDistanceTolerance(double tolerance); - std::auto_ptr getResultGeometry(); + std::unique_ptr getResultGeometry(); private: diff -Nru geos-3.6.2/include/geos/simplify/LineSegmentIndex.h geos-3.7.1/include/geos/simplify/LineSegmentIndex.h --- geos-3.6.2/include/geos/simplify/LineSegmentIndex.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/LineSegmentIndex.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -25,7 +25,7 @@ #include #include -#include // for auto_ptr +#include // for unique_ptr #ifdef _MSC_VER #pragma warning(push) @@ -65,15 +65,15 @@ void remove(const geom::LineSegment* seg); - std::auto_ptr< std::vector > + std::unique_ptr< std::vector > query(const geom::LineSegment* seg) const; private: - std::auto_ptr index; + std::unique_ptr index; std::vector newEnvelopes; - + // Copying is turned off LineSegmentIndex(const LineSegmentIndex&); LineSegmentIndex& operator=(const LineSegmentIndex&); diff -Nru geos-3.6.2/include/geos/simplify/Makefile.in geos-3.7.1/include/geos/simplify/Makefile.in --- geos-3.6.2/include/geos/simplify/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -427,8 +433,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -566,7 +572,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/simplify/TaggedLineSegment.h geos-3.7.1/include/geos/simplify/TaggedLineSegment.h --- geos-3.6.2/include/geos/simplify/TaggedLineSegment.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/TaggedLineSegment.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -19,9 +19,9 @@ * NOTES: Use of this class by DP simplification algorithms * makes it useless for a TaggedLineSegment to store copies * of coordinates. Using pointers would be good enough here. - * We don't do it to avoid having to break inheritance from + * We don't do it to avoid having to break inheritance from * LineSegment, which has copies intead. Wheter LineSegment - * itself should be refactored can be discussed. + * itself should be refactored can be discussed. * --strk 2006-04-12 * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/simplify/TaggedLinesSimplifier.h geos-3.7.1/include/geos/simplify/TaggedLinesSimplifier.h --- geos-3.6.2/include/geos/simplify/TaggedLinesSimplifier.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/TaggedLinesSimplifier.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -77,7 +77,7 @@ * inequality and dereference operators. * Dereference operator must return a TaggedLineString* * - * @param begin iterator to the first element + * @param begin iterator to the first element * to be simplified. * @param end an iterator to one-past-last element * to be simplified. @@ -105,11 +105,11 @@ void simplify(TaggedLineString& line); - std::auto_ptr inputIndex; + std::unique_ptr inputIndex; - std::auto_ptr outputIndex; + std::unique_ptr outputIndex; - std::auto_ptr taggedlineSimplifier; + std::unique_ptr taggedlineSimplifier; }; } // namespace geos::simplify diff -Nru geos-3.6.2/include/geos/simplify/TaggedLineString.h geos-3.7.1/include/geos/simplify/TaggedLineString.h --- geos-3.6.2/include/geos/simplify/TaggedLineString.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/TaggedLineString.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -62,12 +62,12 @@ public: typedef std::vector CoordVect; - - typedef std::auto_ptr CoordVectPtr; + + typedef std::unique_ptr CoordVectPtr; typedef geom::CoordinateSequence CoordSeq; - typedef std::auto_ptr CoordSeqPtr; + typedef std::unique_ptr CoordSeqPtr; TaggedLineString(const geom::LineString* nParentLine, std::size_t minimumSize=2); @@ -92,11 +92,11 @@ const std::vector& getSegments() const; - void addToResult(std::auto_ptr seg); + void addToResult(std::unique_ptr seg); - std::auto_ptr asLineString() const; + std::unique_ptr asLineString() const; - std::auto_ptr asLinearRing() const; + std::unique_ptr asLinearRing() const; private: diff -Nru geos-3.6.2/include/geos/simplify/TaggedLineStringSimplifier.h geos-3.7.1/include/geos/simplify/TaggedLineStringSimplifier.h --- geos-3.6.2/include/geos/simplify/TaggedLineStringSimplifier.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/TaggedLineStringSimplifier.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -94,7 +94,7 @@ // externally owned LineSegmentIndex* outputIndex; - std::auto_ptr li; + std::unique_ptr li; /// non-const as segments are possibly added to it TaggedLineString* line; @@ -124,7 +124,7 @@ bool hasInteriorIntersection(const geom::LineSegment& seg0, const geom::LineSegment& seg1) const; - std::auto_ptr flatten( + std::unique_ptr flatten( std::size_t start, std::size_t end); /** \brief @@ -151,7 +151,7 @@ void remove(const TaggedLineString* line, std::size_t start, std::size_t end); - + }; inline void diff -Nru geos-3.6.2/include/geos/simplify/TopologyPreservingSimplifier.h geos-3.7.1/include/geos/simplify/TopologyPreservingSimplifier.h --- geos-3.6.2/include/geos/simplify/TopologyPreservingSimplifier.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/simplify/TopologyPreservingSimplifier.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -26,8 +26,8 @@ #include #include #include -#include // for auto_ptr -#include +#include // for unique_ptr +#include #ifdef _MSC_VER #pragma warning(push) @@ -45,10 +45,10 @@ * * The simplification uses a maximum distance difference algorithm * similar to the one used in the Douglas-Peucker algorithm. - * + * * In particular, if the input is an areal geometry * ( Polygon or MultiPolygon ) - * + * * - The result has the same number of shells and holes (rings) as the input, * in the same order * - The result rings touch at no more than the number of touching point in the input @@ -60,7 +60,7 @@ public: - static std::auto_ptr simplify( + static std::unique_ptr simplify( const geom::Geometry* geom, double tolerance); @@ -78,13 +78,13 @@ */ void setDistanceTolerance(double tolerance); - std::auto_ptr getResultGeometry(); + std::unique_ptr getResultGeometry(); private: const geom::Geometry* inputGeom; - std::auto_ptr lineSimplifier; + std::unique_ptr lineSimplifier; }; diff -Nru geos-3.6.2/include/geos/spatialIndex.h geos-3.7.1/include/geos/spatialIndex.h --- geos-3.6.2/include/geos/spatialIndex.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/spatialIndex.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/timeval.h geos-3.7.1/include/geos/timeval.h --- geos-3.6.2/include/geos/timeval.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/timeval.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,10 +7,10 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * - * Note: This code is in the public domain, see + * Note: This code is in the public domain, see * http://wyw.dcweb.cn/time.htm * **********************************************************************/ @@ -109,9 +109,9 @@ } if (tz) - { + { GetTimeZoneInformation(&tzi); - + tz->tz_minuteswest = tzi.Bias; if (tzi.StandardDate.wMonth != 0) { diff -Nru geos-3.6.2/include/geos/triangulate/DelaunayTriangulationBuilder.h geos-3.7.1/include/geos/triangulate/DelaunayTriangulationBuilder.h --- geos-3.6.2/include/geos/triangulate/DelaunayTriangulationBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/DelaunayTriangulationBuilder.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -31,8 +31,8 @@ class GeometryFactory; class Envelope; } - namespace triangulate { - namespace quadedge { + namespace triangulate { + namespace quadedge { class QuadEdgeSubdivision; } } @@ -44,14 +44,14 @@ /** * A utility class which creates Delaunay Triangulations - * from collections of points and extract the resulting - * triangulation edges or triangles as geometries. - * + * from collections of points and extract the resulting + * triangulation edges or triangles as geometries. + * * @author JTS: Martin Davis * @author Benjamin Campbell * */ -class GEOS_DLL DelaunayTriangulationBuilder +class GEOS_DLL DelaunayTriangulationBuilder { public: /** @@ -60,21 +60,21 @@ * @return a List of the unique Coordinates. Caller takes ownership of the returned object. */ static geom::CoordinateSequence* extractUniqueCoordinates(const geom::Geometry& geom); - + static void unique(geom::CoordinateSequence& coords); - + /** * Converts all {@link Coordinate}s in a collection to {@link Vertex}es. * @param coords the coordinates to convert * @return a List of Vertex objects. Call takes ownership of returned object. */ static IncrementalDelaunayTriangulator::VertexList* toVertices(const geom::CoordinateSequence &coords); - + private: geom::CoordinateSequence* siteCoords; double tolerance; quadedge::QuadEdgeSubdivision *subdiv; - + public: /** * Creates a new triangulation builder. @@ -83,66 +83,66 @@ DelaunayTriangulationBuilder(); ~DelaunayTriangulationBuilder(); - + /** * Sets the sites (vertices) which will be triangulated. * All vertices of the given geometry will be used as sites. - * + * * @param geom the geometry from which the sites will be extracted. */ void setSites(const geom::Geometry& geom); - + /** * Sets the sites (vertices) which will be triangulated * from a collection of {@link Coordinate}s. - * + * * @param geom a CoordinateSequence. */ void setSites(const geom::CoordinateSequence& coords); - + /** * Sets the snapping tolerance which will be used * to improved the robustness of the triangulation computation. * A tolerance of 0.0 specifies that no snapping will take place. - * + * * @param tolerance the tolerance distance to use */ inline void setTolerance(double tolerance) { this->tolerance = tolerance; } - + private: void create(); - + public: /** * Gets the {@link quadedge::QuadEdgeSubdivision} which models the computed triangulation. - * + * * @return the subdivision containing the triangulation */ quadedge::QuadEdgeSubdivision& getSubdivision(); - + /** * Gets the edges of the computed triangulation as a {@link MultiLineString}. - * + * * @param geomFact the geometry factory to use to create the output * @return the edges of the triangulation. The caller takes ownership of the returned object. */ - std::auto_ptr getEdges(const geom::GeometryFactory &geomFact); - + std::unique_ptr getEdges(const geom::GeometryFactory &geomFact); + /** - * Gets the faces of the computed triangulation as a {@link GeometryCollection} + * Gets the faces of the computed triangulation as a {@link GeometryCollection} * of {@link Polygon}. - * + * * @param geomFact the geometry factory to use to create the output * @return the faces of the triangulation. The caller takes ownership of the returned object. */ - std::auto_ptr getTriangles(const geom::GeometryFactory& geomFact); + std::unique_ptr getTriangles(const geom::GeometryFactory& geomFact); - /** + /** * Computes the {@link Envelope} of a collection of {@link Coordinate}s. - * + * * @param coords a List of Coordinates * @return the envelope of the set of coordinates */ diff -Nru geos-3.6.2/include/geos/triangulate/IncrementalDelaunayTriangulator.h geos-3.7.1/include/geos/triangulate/IncrementalDelaunayTriangulator.h --- geos-3.6.2/include/geos/triangulate/IncrementalDelaunayTriangulator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/IncrementalDelaunayTriangulator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,11 +35,11 @@ /** * Computes a Delauanay Triangulation of a set of {@link Vertex}es, using an * incrementatal insertion algorithm. - * + * * @author JTS: Martin Davis * @author Benjamin Campbell */ -class GEOS_DLL IncrementalDelaunayTriangulator +class GEOS_DLL IncrementalDelaunayTriangulator { private: quadedge::QuadEdgeSubdivision *subdiv; @@ -49,7 +49,7 @@ /** * Creates a new triangulator using the given {@link QuadEdgeSubdivision}. * The triangulator uses the tolerance of the supplied subdivision. - * + * * @param subdiv * a subdivision in which to build the TIN */ @@ -62,9 +62,9 @@ * unique up to the provided tolerance value. (i.e. no two vertices should be * closer than the provided tolerance value). They do not have to be rounded * to the tolerance grid, however. - * + * * @param vertices a Collection of Vertex - * + * * @throws LocateFailureException if the location algorithm * fails to converge in a reasonable number of iterations */ @@ -75,7 +75,7 @@ * triangulation, and fixes the affected edges so that the result * is still a Delaunay triangulation. *

    - * + * * @return a quadedge containing the inserted vertex */ quadedge::QuadEdge& insertSite(const quadedge::Vertex &v); diff -Nru geos-3.6.2/include/geos/triangulate/Makefile.in geos-3.7.1/include/geos/triangulate/Makefile.in --- geos-3.6.2/include/geos/triangulate/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -424,8 +430,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -563,7 +569,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h geos-3.7.1/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h --- geos-3.6.2/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/LastFoundQuadEdgeLocator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,7 +33,7 @@ * Locates {@link QuadEdge}s in a {@link QuadEdgeSubdivision}, * optimizing the search by starting in the * locality of the last edge found. -* +* * @author JTS: Martin Davis * @author Benjamin Campbell */ @@ -57,8 +57,8 @@ * The search starts from the last located edge amd proceeds on the general direction of v. * @return The caller _does not_ take ownership of the returned object. */ - virtual QuadEdge* locate(const Vertex &v); -}; + QuadEdge* locate(const Vertex &v) override; +}; } //namespace geos.triangulate.quadedge } //namespace geos.triangulate diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/LocateFailureException.h geos-3.7.1/include/geos/triangulate/quadedge/LocateFailureException.h --- geos-3.6.2/include/geos/triangulate/quadedge/LocateFailureException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/LocateFailureException.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/Makefile.in geos-3.7.1/include/geos/triangulate/quadedge/Makefile.in --- geos-3.6.2/include/geos/triangulate/quadedge/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -260,6 +263,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -308,6 +312,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -328,6 +334,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -377,7 +384,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -427,8 +433,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -566,7 +572,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/QuadEdge.h geos-3.7.1/include/geos/triangulate/quadedge/QuadEdge.h --- geos-3.6.2/include/geos/triangulate/quadedge/QuadEdge.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/QuadEdge.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -29,21 +29,21 @@ namespace quadedge { //geos.triangulate.quadedge /** - * A class that represents the edge data structure which implements the quadedge algebra. + * A class that represents the edge data structure which implements the quadedge algebra. * The quadedge algebra was described in a well-known paper by Guibas and Stolfi, - * "Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams", + * "Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams", * ACM Transactions on Graphics, 4(2), 1985, 75-123. - * + * * Each edge object is part of a quartet of 4 edges, * linked via their _rot references. * Any edge in the group may be accessed using a series of {@link #rot()} operations. * Quadedges in a subdivision are linked together via their next references. * The linkage between the quadedge quartets determines the topology - * of the subdivision. + * of the subdivision. * * The edge class does not contain separate information for vertice or faces; a vertex is implicitly * defined as a ring of edges (created using the next field). - * + * * @author JTS: David Skea * @author JTS: Martin Davis * @author Benjamin Campbell @@ -52,7 +52,7 @@ public: /** * Creates a new QuadEdge quartet from {@link Vertex} o to {@link Vertex} d. - * + * * @param o * the origin Vertex * @param d @@ -60,7 +60,7 @@ * @return the new QuadEdge* The caller is reponsible for * freeing the returned pointer */ - static std::auto_ptr makeEdge(const Vertex &o, const Vertex &d); + static std::unique_ptr makeEdge(const Vertex &o, const Vertex &d); /** * Creates a new QuadEdge connecting the destination of a to the origin of @@ -71,26 +71,26 @@ * @return the new QuadEdge* The caller is reponsible for * freeing the returned pointer */ - static std::auto_ptr connect(QuadEdge &a, QuadEdge &b); + static std::unique_ptr connect(QuadEdge &a, QuadEdge &b); /** * Splices two edges together or apart. * Splice affects the two edge rings around the origins of a and b, and, independently, the two - * edge rings around the left faces of a and b. + * edge rings around the left faces of a and b. * In each case, (i) if the two rings are distinct, * Splice will combine them into one, or (ii) if the two are the same ring, Splice will break it * into two separate pieces. Thus, Splice can be used both to attach the two edges together, and * to break them apart. - * + * * @param a an edge to splice * @param b an edge to splice - * + * */ static void splice(QuadEdge &a, QuadEdge &b); /** * Turns an edge counterclockwise inside its enclosing quadrilateral. - * + * * @param e the quadedge to turn */ static void swap(QuadEdge &e); @@ -104,7 +104,7 @@ bool isAlive; /** - * Quadedges must be made using {@link makeEdge}, + * Quadedges must be made using {@link makeEdge}, * to ensure proper construction. */ QuadEdge(); @@ -125,21 +125,21 @@ * The primary edge is the one for which the origin * and destination coordinates are ordered * according to the standard {@link Coordinate} ordering - * + * * @return the primary quadedge */ const QuadEdge& getPrimary() const; - + /** * Sets the external data value for this edge. - * + * * @param data an object containing external data */ virtual void setData(void* data); - + /** * Gets the external data value for this edge. - * + * * @return the data object */ virtual void* getData(); @@ -155,10 +155,10 @@ * */ void remove(); - + /** * Tests whether this edge has been deleted. - * + * * @return true if this edge has not been deleted. */ inline bool isLive() { @@ -168,21 +168,21 @@ /** * Sets the connected edge - * + * * @param nextEdge edge */ inline void setNext(QuadEdge *next) { this->next = next; } - + /*************************************************************************** - * QuadEdge Algebra + * QuadEdge Algebra *************************************************************************** */ /** * Gets the dual of this edge, directed from its right to its left. - * + * * @return the rotated edge */ inline QuadEdge& rot() const { @@ -191,7 +191,7 @@ /** * Gets the dual of this edge, directed from its left to its right. - * + * * @return the inverse rotated edge. */ inline QuadEdge& invRot() const { @@ -200,7 +200,7 @@ /** * Gets the edge from the destination to the origin of this edge. - * + * * @return the sym of the edge */ inline QuadEdge& sym() const { @@ -209,7 +209,7 @@ /** * Gets the next CCW edge around the origin of this edge. - * + * * @return the next linked edge. */ inline QuadEdge& oNext() const { @@ -218,7 +218,7 @@ /** * Gets the next CW edge around (from) the origin of this edge. - * + * * @return the previous edge. */ inline QuadEdge& oPrev() const { @@ -227,7 +227,7 @@ /** * Gets the next CCW edge around (into) the destination of this edge. - * + * * @return the next destination edge. */ inline QuadEdge& dNext() const { @@ -236,7 +236,7 @@ /** * Gets the next CW edge around (into) the destination of this edge. - * + * * @return the previous destination edge. */ inline QuadEdge& dPrev() const { @@ -245,7 +245,7 @@ /** * Gets the CCW edge around the left face following this edge. - * + * * @return the next left face edge. */ inline QuadEdge& lNext() const { @@ -254,7 +254,7 @@ /** * Gets the CCW edge around the left face before this edge. - * + * * @return the previous left face edge. */ inline QuadEdge& lPrev() const { @@ -263,7 +263,7 @@ /** * Gets the edge around the right face ccw following this edge. - * + * * @return the next right face edge. */ inline QuadEdge& rNext() { @@ -272,7 +272,7 @@ /** * Gets the edge around the right face ccw before this edge. - * + * * @return the previous right face edge. */ inline QuadEdge& rPrev() { @@ -284,7 +284,7 @@ **********************************************************************************************/ /** * Sets the vertex for this edge's origin - * + * * @param o the origin vertex */ inline void setOrig(const Vertex &o) { @@ -293,7 +293,7 @@ /** * Sets the vertex for this edge's destination - * + * * @param d the destination vertex */ inline void setDest(const Vertex &d) { @@ -302,7 +302,7 @@ /** * Gets the vertex for the edge's origin - * + * * @return the origin vertex */ const Vertex& orig() const { @@ -311,7 +311,7 @@ /** * Gets the vertex for the edge's destination - * + * * @return the destination vertex */ const Vertex& dest() const { @@ -320,7 +320,7 @@ /** * Gets the length of the geometry of this quadedge. - * + * * @return the length of the quadedge */ inline double getLength() const { @@ -328,9 +328,9 @@ } /** - * Tests if this quadedge and another have the same line segment geometry, + * Tests if this quadedge and another have the same line segment geometry, * regardless of orientation. - * + * * @param qe a quadege * @return true if the quadedges are based on the same line segment regardless of orientation */ @@ -339,7 +339,7 @@ /** * Tests if this quadedge and another have the same line segment geometry * with the same orientation. - * + * * @param qe a quadege * @return true if the quadedges are based on the same line segment */ @@ -348,10 +348,10 @@ /** * Creates a {@link LineSegment} representing the * geometry of this edge. - * + * * @return a LineSegment */ - std::auto_ptr toLineSegment() const; + std::unique_ptr toLineSegment() const; }; } //namespace geos.triangulate.quadedge diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/QuadEdgeLocator.h geos-3.7.1/include/geos/triangulate/quadedge/QuadEdgeLocator.h --- geos-3.6.2/include/geos/triangulate/quadedge/QuadEdgeLocator.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/QuadEdgeLocator.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -28,11 +28,11 @@ /** * An interface for classes which locate an edge in a {@link QuadEdgeSubdivision} - * which either contains a given {@link Vertex} V - * or is an edge of a triangle which contains V. + * which either contains a given {@link Vertex} V + * or is an edge of a triangle which contains V. * Implementors may utilized different strategies for * optimizing locating containing edges/triangles. - * + * * @author JTS: Martin Davis * @author Ben Campbell */ diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h geos-3.7.1/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h --- geos-3.6.2/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/QuadEdgeSubdivision.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -52,9 +52,9 @@ /** * A class that contains the {@link QuadEdge}s representing a planar - * subdivision that models a triangulation. + * subdivision that models a triangulation. * The subdivision is constructed using the - * quadedge algebra defined in the classs {@link QuadEdge}. + * quadedge algebra defined in the classs {@link QuadEdge}. * All metric calculations * are done in the {@link Vertex} class. * In addition to a triangulation, subdivisions @@ -71,7 +71,7 @@ * edges. The frame is used to provide a bounded "container" for all edges * within a TIN. Normally the frame edges, frame connecting edges, and frame * triangles are not included in client processing. - * + * * @author JTS: David Skea * @author JTS: Martin Davis * @author Benjamin Campbell @@ -82,10 +82,10 @@ /** * Gets the edges for the triangle to the left of the given {@link QuadEdge}. - * + * * @param startQE * @param triEdge - * + * * @throws IllegalArgumentException * if the edges do not form a triangle */ @@ -100,14 +100,14 @@ double edgeCoincidenceTolerance; Vertex frameVertex[3]; geom::Envelope frameEnv; - std::auto_ptr locator; + std::unique_ptr locator; public: /** * Creates a new instance of a quad-edge subdivision based on a frame triangle * that encloses a supplied bounding box. A new super-bounding box that * contains the triangle is computed and stored. - * + * * @param env * the bouding box to surround * @param tolerance @@ -119,14 +119,14 @@ private: virtual void createFrame(const geom::Envelope &env); - + virtual void initSubdiv(QuadEdge* initEdges[3]); - + public: /** * Gets the vertex-equality tolerance value * used in this subdivision - * + * * @return the tolerance value */ inline double getTolerance() const { @@ -135,7 +135,7 @@ /** * Gets the envelope of the Subdivision (including the frame). - * + * * @return the envelope */ inline const geom::Envelope& getEnvelope() const { @@ -145,7 +145,7 @@ /** * Gets the collection of base {@link QuadEdge}s (one for every pair of * vertices which is connected). - * + * * @return a QuadEdgeList */ inline const QuadEdgeList& getEdges() const { @@ -155,17 +155,17 @@ /** * Sets the {@link QuadEdgeLocator} to use for locating containing triangles * in this subdivision. - * + * * @param locator * a QuadEdgeLocator */ - inline void setLocator(std::auto_ptr locator) { - this->locator = locator; + inline void setLocator(std::unique_ptr locator) { + this->locator = std::move(locator); } /** * Creates a new quadedge, recording it in the edges list. - * + * * @param o * @param d * @return @@ -176,7 +176,7 @@ * Creates a new QuadEdge connecting the destination of a to the origin of b, * in such a way that all three have the same left face after the connection * is complete. The quadedge is recorded in the edges list. - * + * * @param a * @param b * @return @@ -186,22 +186,22 @@ /** * Deletes a quadedge from the subdivision. Linked quadedges are updated to * reflect the deletion. - * + * * @param e * the quadedge to delete */ void remove(QuadEdge &e); /** - * Locates an edge of a triangle which contains a location - * specified by a Vertex v. + * Locates an edge of a triangle which contains a location + * specified by a Vertex v. * The edge returned has the * property that either v is on e, or e is an edge of a triangle containing v. * The search starts from startEdge amd proceeds on the general direction of v. *

    * This locate algorithm relies on the subdivision being Delaunay. For * non-Delaunay subdivisions, this may loop for ever. - * + * * @param v the location to search for * @param startEdge an edge of the subdivision to start searching at * @returns a QuadEdge which contains v, or is on the edge of a triangle containing v @@ -214,9 +214,9 @@ const QuadEdge &startEdge) const; /** - * Finds a quadedge of a triangle containing a location + * Finds a quadedge of a triangle containing a location * specified by a {@link Vertex}, if one exists. - * + * * @param x the vertex to locate * @return a quadedge on the edge of a triangle which touches or contains the location * @return null if no such triangle exists. The returned pointer should not be @@ -229,7 +229,7 @@ /** * Finds a quadedge of a triangle containing a location * specified by a {@link Coordinate}, if one exists. - * + * * @param p the Coordinate to locate * @return a quadedge on the edge of a triangle which touches or contains the location * @return null if no such triangle exists. The returned pointer should not be @@ -242,7 +242,7 @@ /** * Locates the edge between the given vertices, if it exists in the * subdivision. - * + * * @param p0 a coordinate * @param p1 another coordinate * @return the edge joining the coordinates, if present @@ -262,7 +262,7 @@ * This method does NOT check if the inserted vertex falls on an edge. This * must be checked by the caller, since this situation may cause erroneous * triangulation - * + * * @param v * the vertex to insert * @return a new quad edge terminating in v @@ -271,7 +271,7 @@ /** * Tests whether a QuadEdge is an edge incident on a frame triangle vertex. - * + * * @param e * the edge to test * @return true if the edge is connected to the frame triangle @@ -282,7 +282,7 @@ * Tests whether a QuadEdge is an edge on the border of the frame facets and * the internal facets. E.g. an edge which does not itself touch a frame * vertex, but which touches an edge which does. - * + * * @param e * the edge to test * @return true if the edge is on the border of the frame @@ -291,7 +291,7 @@ /** * Tests whether a vertex is a vertex of the outer triangle. - * + * * @param v * the vertex to test * @return true if the vertex is an outer triangle vertex @@ -302,7 +302,7 @@ /** * Tests whether a {@link Coordinate} lies on a {@link QuadEdge}, up to a * tolerance determined by the subdivision tolerance. - * + * * @param e * a QuadEdge * @param p @@ -314,7 +314,7 @@ /** * Tests whether a {@link Vertex} is the start or end vertex of a * {@link QuadEdge}, up to the subdivision tolerance distance. - * + * * @param e * @param v * @return true if the vertex is a endpoint of the edge @@ -322,17 +322,17 @@ bool isVertexOfEdge(const QuadEdge &e, const Vertex &v) const; /** - * Gets all primary quadedges in the subdivision. + * Gets all primary quadedges in the subdivision. * A primary edge is a {@link QuadEdge} - * which occupies the 0'th position in its array of associated quadedges. + * which occupies the 0'th position in its array of associated quadedges. * These provide the unique geometric edges of the triangulation. - * + * * @param includeFrame true if the frame edges are to be included * @return a List of QuadEdges. The caller takes ownership of the returned QuadEdgeList but not the * items it contains. */ - std::auto_ptr getPrimaryEdges(bool includeFrame); - + std::unique_ptr getPrimaryEdges(bool includeFrame); + /***************************************************************************** * Visitors ****************************************************************************/ @@ -354,7 +354,7 @@ /** * Stores the edges for a visited triangle. Also pushes sym (neighbour) edges * on stack to visit later. - * + * * @param edge * @param edgeStack * @param includeFrame @@ -367,7 +367,7 @@ /** * Gets the coordinates for each triangle in the subdivision as an array. - * + * * @param includeFrame * true if the frame triangles should be included * @param triList a list of Coordinate[4] representing each triangle @@ -382,112 +382,112 @@ /** * Gets the geometry for the edges in the subdivision as a {@link MultiLineString} * containing 2-point lines. - * + * * @param geomFact the GeometryFactory to use * @return a MultiLineString. The caller takes ownership of the returned object. */ - std::auto_ptr getEdges(const geom::GeometryFactory& geomFact); + std::unique_ptr getEdges(const geom::GeometryFactory& geomFact); /** * Gets the geometry for the triangles in a triangulated subdivision as a {@link GeometryCollection} * of triangular {@link Polygon}s. - * + * * @param geomFact the GeometryFactory to use * @return a GeometryCollection of triangular Polygons. The caller takes ownership of the returned object. */ - std::auto_ptr getTriangles(const geom::GeometryFactory &geomFact); + std::unique_ptr getTriangles(const geom::GeometryFactory &geomFact); - /** + /** * Gets the cells in the Voronoi diagram for this triangulation. * The cells are returned as a {@link GeometryCollection} of {@link Polygon}s * The userData of each polygon is set to be the {@link Coordinate} - * of the cell site. This allows easily associating external + * of the cell site. This allows easily associating external * data associated with the sites to the cells. * * @param geomFact a geometry factory * @return a GeometryCollection of Polygons */ - std::auto_ptr getVoronoiDiagram(const geom::GeometryFactory& geomFact); + std::unique_ptr getVoronoiDiagram(const geom::GeometryFactory& geomFact); - /** + /** * Gets the cells in the Voronoi diagram for this triangulation. * The cells are returned as a {@link GeometryCollection} of {@link LineString}s * The userData of each polygon is set to be the {@link Coordinate} - * of the cell site. This allows easily associating external + * of the cell site. This allows easily associating external * data associated with the sites to the cells. * * @param geomFact a geometry factory * @return a MultiLineString */ - std::auto_ptr getVoronoiDiagramEdges(const geom::GeometryFactory& geomFact); + std::unique_ptr getVoronoiDiagramEdges(const geom::GeometryFactory& geomFact); - /** - * Gets a List of {@link Polygon}s for the Voronoi cells + /** + * Gets a List of {@link Polygon}s for the Voronoi cells * of this triangulation. * The userData of each polygon is set to be the {@link Coordinate} - * of the cell site. This allows easily associating external + * of the cell site. This allows easily associating external * data associated with the sites to the cells. * * @param geomFact a geometry factory * @return a List of Polygons */ - std::auto_ptr< std::vector > getVoronoiCellPolygons(const geom::GeometryFactory& geomFact); + std::unique_ptr< std::vector > getVoronoiCellPolygons(const geom::GeometryFactory& geomFact); - /** - * Gets a List of {@link LineString}s for the Voronoi cells + /** + * Gets a List of {@link LineString}s for the Voronoi cells * of this triangulation. * The userData of each LineString is set to be the {@link Coordinate} - * of the cell site. This allows easily associating external + * of the cell site. This allows easily associating external * data associated with the sites to the cells. * * @param geomFact a geometry factory * @return a List of LineString */ - std::auto_ptr< std::vector > getVoronoiCellEdges(const geom::GeometryFactory& geomFact); - + std::unique_ptr< std::vector > getVoronoiCellEdges(const geom::GeometryFactory& geomFact); + /** * Gets a collection of {@link QuadEdge}s whose origin * vertices are a unique set which includes - * all vertices in the subdivision. + * all vertices in the subdivision. * The frame vertices can be included if required. - * This is useful for algorithms which require traversing the + * This is useful for algorithms which require traversing the * subdivision starting at all vertices. * Returning a quadedge for each vertex - * is more efficient than + * is more efficient than * the alternative of finding the actual vertices - * using {@link #getVertices} and then locating + * using {@link #getVertices} and then locating * quadedges attached to them. * * @param includeFrame true if the frame vertices should be included * @return a collection of QuadEdge with the vertices of the subdivision as their origins */ - std::auto_ptr getVertexUniqueEdges(bool includeFrame); + std::unique_ptr getVertexUniqueEdges(bool includeFrame); /** * Gets the Voronoi cell around a site specified * by the origin of a QuadEdge. * The userData of the polygon is set to be the {@link Coordinate} - * of the site. This allows attaching external + * of the site. This allows attaching external * data associated with the site to this cell polygon. * * @param qe a quadedge originating at the cell site * @param geomFact a factory for building the polygon * @return a polygon indicating the cell extent */ - std::auto_ptr getVoronoiCellPolygon(QuadEdge* qe ,const geom::GeometryFactory& geomFact); + std::unique_ptr getVoronoiCellPolygon(QuadEdge* qe ,const geom::GeometryFactory& geomFact); /** * Gets the Voronoi cell edge around a site specified * by the origin of a QuadEdge. * The userData of the LineString is set to be the {@link Coordinate} - * of the site. This allows attaching external + * of the site. This allows attaching external * data associated with the site to this cell polygon. * * @param qe a quadedge originating at the cell site * @param geomFact a factory for building the polygon * @return a polygon indicating the cell extent */ - std::auto_ptr getVoronoiCellEdge(QuadEdge* qe ,const geom::GeometryFactory& geomFact); + std::unique_ptr getVoronoiCellEdge(QuadEdge* qe ,const geom::GeometryFactory& geomFact); }; diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/TrianglePredicate.h geos-3.7.1/include/geos/triangulate/quadedge/TrianglePredicate.h --- geos-3.6.2/include/geos/triangulate/quadedge/TrianglePredicate.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/TrianglePredicate.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,20 +33,20 @@ * Also, some more robust formulations of * some algorithms are provided, which utilize * normalization to the origin. - * + * * @author JTS: Martin Davis * @author Benjamin Campbell * */ -class TrianglePredicate +class TrianglePredicate { public: /** - * Tests if a point is inside the circle defined by - * the triangle with vertices a, b, c (oriented counter-clockwise). + * Tests if a point is inside the circle defined by + * the triangle with vertices a, b, c (oriented counter-clockwise). * This test uses simple * double-precision arithmetic, and thus may not be robust. - * + * * @param a a vertex of the triangle * @param b a vertex of the triangle * @param c a vertex of the triangle @@ -54,20 +54,20 @@ * @return true if this point is inside the circle defined by the points a, b, c */ static bool isInCircleNonRobust( - const Coordinate &a, const Coordinate &b, const Coordinate &c, + const Coordinate &a, const Coordinate &b, const Coordinate &c, const Coordinate &p); - + /** - * Tests if a point is inside the circle defined by - * the triangle with vertices a, b, c (oriented counter-clockwise). + * Tests if a point is inside the circle defined by + * the triangle with vertices a, b, c (oriented counter-clockwise). * This test uses simple * double-precision arithmetic, and thus is not 10% robust. * However, by using normalization to the origin * it provides improved robustness and increased performance. *

    * Based on code by J.R.Shewchuk. - * - * + * + * * @param a a vertex of the triangle * @param b a vertex of the triangle * @param c a vertex of the triangle @@ -75,14 +75,14 @@ * @return true if this point is inside the circle defined by the points a, b, c */ static bool isInCircleNormalized( - const Coordinate &a, const Coordinate &b, const Coordinate &c, + const Coordinate &a, const Coordinate &b, const Coordinate &c, const Coordinate &p); -private: +private: /** * Computes twice the area of the oriented triangle (a, b, c), i.e., the area is positive if the * triangle is oriented counterclockwise. - * + * * @param a a vertex of the triangle * @param b a vertex of the triangle * @param c a vertex of the triangle @@ -92,10 +92,10 @@ public: /** - * Tests if a point is inside the circle defined by - * the triangle with vertices a, b, c (oriented counter-clockwise). + * Tests if a point is inside the circle defined by + * the triangle with vertices a, b, c (oriented counter-clockwise). * This method uses more robust computation. - * + * * @param a a vertex of the triangle * @param b a vertex of the triangle * @param c a vertex of the triangle @@ -103,7 +103,7 @@ * @return true if this point is inside the circle defined by the points a, b, c */ static bool isInCircleRobust( - const Coordinate &a, const Coordinate &b, const Coordinate &c, + const Coordinate &a, const Coordinate &b, const Coordinate &c, const Coordinate &p); } ; diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/TriangleVisitor.h geos-3.7.1/include/geos/triangulate/quadedge/TriangleVisitor.h --- geos-3.6.2/include/geos/triangulate/quadedge/TriangleVisitor.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/TriangleVisitor.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,7 +27,7 @@ /** * An interface for algorithms which process the triangles in a {@link QuadEdgeSubdivision}. - * + * * @author JTS: Martin Davis * @author Benjamin Campbell */ @@ -35,13 +35,13 @@ public: /** * Visits the {@link QuadEdge}s of a triangle. - * + * * @param triEdges an array of the 3 quad edges in a triangle (in CCW order) */ virtual void visit(QuadEdge* triEdges[3]) = 0; virtual ~TriangleVisitor() = 0 ; private: -} ; +} ; } //namespace geos.triangulate.quadedge } //namespace geos.triangulate diff -Nru geos-3.6.2/include/geos/triangulate/quadedge/Vertex.h geos-3.7.1/include/geos/triangulate/quadedge/Vertex.h --- geos-3.6.2/include/geos/triangulate/quadedge/Vertex.h 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/quadedge/Vertex.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -40,19 +40,19 @@ namespace quadedge { //geos.triangulate.quadedge /** - * Models a site (node) in a {@link QuadEdgeSubdivision}. + * Models a site (node) in a {@link QuadEdgeSubdivision}. * The sites can be points on a line string representing a - * linear site. - * + * linear site. + * * The vertex can be considered as a vector with a norm, length, inner product, cross * product, etc. Additionally, point relations (e.g., is a point to the left of a line, the circle * defined by this point and two others, etc.) are also defined in this class. * - * It is common to want to attach user-defined data to - * the vertices of a subdivision. + * It is common to want to attach user-defined data to + * the vertices of a subdivision. * One way to do this is to subclass Vertex * to carry any desired information (see {@link ConstraintVertex}). - * + * * @author JTS: David Skea * @author JTS: Martin Davis * @author Benjamin Campbell @@ -117,7 +117,7 @@ /** * Computes the cross product k = u X v. - * + * * @param v a vertex * @return returns the magnitude of u X v */ @@ -128,7 +128,7 @@ /** * Computes the inner or dot product - * + * * @param v, a vertex * @return returns the dot product u.v */ @@ -139,22 +139,22 @@ /** * Computes the scalar product c(v) - * + * * @param v, a vertex * @return returns the scaled vector */ - inline std::auto_ptr times(double c) const { - return std::auto_ptr(new Vertex(c * p.x, c * p.y)); + inline std::unique_ptr times(double c) const { + return std::unique_ptr(new Vertex(c * p.x, c * p.y)); } /* Vector addition */ - inline std::auto_ptr sum(Vertex v) const { - return std::auto_ptr(new Vertex(p.x + v.getX(), p.y + v.getY())); + inline std::unique_ptr sum(Vertex v) const { + return std::unique_ptr(new Vertex(p.x + v.getX(), p.y + v.getY())); } /* and subtraction */ - inline std::auto_ptr sub(const Vertex &v) const { - return std::auto_ptr(new Vertex(p.x - v.getX(), p.y - v.getY())); + inline std::unique_ptr sub(const Vertex &v) const { + return std::unique_ptr(new Vertex(p.x - v.getX(), p.y - v.getY())); } /* magnitude of vector */ @@ -163,8 +163,8 @@ } /* returns k X v (cross product). this is a vector perpendicular to v */ - inline std::auto_ptr cross() const { - return std::auto_ptr(new Vertex(p.y, -p.x)); + inline std::unique_ptr cross() const { + return std::unique_ptr(new Vertex(p.y, -p.x)); } /** ************************************************************* */ @@ -173,9 +173,9 @@ **********************************************************************************************/ /** - * Tests if the vertex is inside the circle defined by - * the triangle with vertices a, b, c (oriented counter-clockwise). - * + * Tests if the vertex is inside the circle defined by + * the triangle with vertices a, b, c (oriented counter-clockwise). + * * @param a a vertex of the triangle * @param b a vertex of the triangle * @param c a vertex of the triangle @@ -186,16 +186,16 @@ /** * Tests whether the triangle formed by this vertex and two * other vertices is in CCW orientation. - * + * * @param b a vertex * @param c a vertex * @returns true if the triangle is oriented CCW */ - inline bool isCCW(const Vertex &b, const Vertex &c) const + inline bool isCCW(const Vertex &b, const Vertex &c) const { // is equal to the signed area of the triangle - return (b.p.x - p.x) * (c.p.y - p.y) + return (b.p.x - p.x) * (c.p.y - p.y) - (b.p.y - p.y) * (c.p.x - p.x) > 0; } @@ -203,7 +203,7 @@ bool leftOf(const QuadEdge &e) const; private: - static std::auto_ptr bisector(const Vertex &a, const Vertex &b); + static std::unique_ptr bisector(const Vertex &a, const Vertex &b); inline double distance(const Vertex &v1, const Vertex &v2) { @@ -216,7 +216,7 @@ * given tolerance B, the associated triangle is considered skinny. For an equal lateral * triangle this value is 0.57735. The ratio is related to the minimum triangle angle theta by: * circumRadius/shortestEdge = 1/(2sin(theta)). - * + * * @param b second vertex of the triangle * @param c third vertex of the triangle * @return ratio of circumradius to shortest edge. @@ -225,20 +225,20 @@ /** * returns a new vertex that is mid-way between this vertex and another end point. - * + * * @param a the other end point. * @return the point mid-way between this and that. */ - virtual std::auto_ptr midPoint(const Vertex &a); + virtual std::unique_ptr midPoint(const Vertex &a); /** * Computes the centre of the circumcircle of this vertex and two others. - * + * * @param b * @param c * @return the Coordinate which is the circumcircle of the 3 points. */ - virtual std::auto_ptr circleCenter(const Vertex &b, const Vertex &c) const; + virtual std::unique_ptr circleCenter(const Vertex &b, const Vertex &c) const; /** * For this vertex enclosed in a triangle defined by three verticies v0, v1 and v2, interpolate @@ -260,18 +260,18 @@ * @param v2 a vertex of a triangle containing the p * @return the interpolated Z-value (height) of the point */ - static double interpolateZ(const geom::Coordinate &p, const geom::Coordinate &v0, + static double interpolateZ(const geom::Coordinate &p, const geom::Coordinate &v0, const geom::Coordinate &v1, const geom::Coordinate &v2); /** * Computes the interpolated Z-value for a point p lying on the segment p0-p1 - * + * * @param p * @param p0 * @param p1 * @return the interpolated Z value */ - static double interpolateZ(const geom::Coordinate &p, const geom::Coordinate &p0, + static double interpolateZ(const geom::Coordinate &p, const geom::Coordinate &p0, const geom::Coordinate &p1); }; diff -Nru geos-3.6.2/include/geos/triangulate/VoronoiDiagramBuilder.h geos-3.7.1/include/geos/triangulate/VoronoiDiagramBuilder.h --- geos-3.6.2/include/geos/triangulate/VoronoiDiagramBuilder.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/triangulate/VoronoiDiagramBuilder.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -20,7 +20,7 @@ #define GEOS_TRIANGULATE_VORONOIDIAGRAMBUILDER_H #include -#include // for composition +#include // for composition #include #include @@ -39,92 +39,92 @@ * The diagram is returned as a {@link GeometryCollection} of {@link Polygon}s, * clipped to the larger of a supplied envelope or to an envelope determined * by the input sites. - * + * * @author Martin Davis * */ class GEOS_DLL VoronoiDiagramBuilder{ public: - /** + /** * Creates a new Voronoi diagram builder. * */ VoronoiDiagramBuilder(); - + ~VoronoiDiagramBuilder(); - + /** * Sets the sites (point or vertices) which will be diagrammed. * All vertices of the given geometry will be used as sites. - * + * * @param geom the geometry from which the sites will be extracted. */ void setSites(const geom::Geometry& geom); - + /** * Sets the sites (point or vertices) which will be diagrammed * from a collection of {@link Coordinate}s. - * + * * @param coords a collection of Coordinates. */ void setSites(const geom::CoordinateSequence& coords); - + /** * Sets the envelope to clip the diagram to. * The diagram will be clipped to the larger * of this envelope or an envelope surrounding the sites. - * + * * @param clipEnv the clip envelope; must be kept alive by * caller until done with this instance; * set to 0 for no clipping. */ void setClipEnvelope(const geom::Envelope* clipEnv); - + /** * Sets the snapping tolerance which will be used * to improved the robustness of the triangulation computation. * A tolerance of 0.0 specifies that no snapping will take place. - * + * * @param tolerance the tolerance distance to use */ void setTolerance(double tolerance); - + /** * Gets the {@link QuadEdgeSubdivision} which models the computed diagram. - * + * * @return the subdivision containing the triangulation */ - std::auto_ptr getSubdivision(); + std::unique_ptr getSubdivision(); /** - * Gets the faces of the computed diagram as a {@link GeometryCollection} + * Gets the faces of the computed diagram as a {@link GeometryCollection} * of {@link Polygon}s, clipped as specified. - * + * * @param geomFact the geometry factory to use to create the output * @return the faces of the diagram */ - std::auto_ptr getDiagram(const geom::GeometryFactory& geomFact); + std::unique_ptr getDiagram(const geom::GeometryFactory& geomFact); /** - * Gets the faces of the computed diagram as a {@link GeometryCollection} + * Gets the faces of the computed diagram as a {@link GeometryCollection} * of {@link LineString}s, clipped as specified. - * + * * @param geomFact the geometry factory to use to create the output * @return the faces of the diagram */ - std::auto_ptr getDiagramEdges(const geom::GeometryFactory& geomFact); + std::unique_ptr getDiagramEdges(const geom::GeometryFactory& geomFact); private: - std::auto_ptr siteCoords; + std::unique_ptr siteCoords; double tolerance; - std::auto_ptr subdiv; + std::unique_ptr subdiv; const geom::Envelope* clipEnv; // externally owned geom::Envelope diagramEnv; void create(); - - static std::auto_ptr + + static std::unique_ptr clipGeometryCollection(const geom::GeometryCollection& geom, const geom::Envelope& clipEnv); }; diff -Nru geos-3.6.2/include/geos/unload.h geos-3.7.1/include/geos/unload.h --- geos-3.6.2/include/geos/unload.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/unload.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/util/Assert.h geos-3.7.1/include/geos/util/Assert.h --- geos-3.6.2/include/geos/util/Assert.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/Assert.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/util/AssertionFailedException.h geos-3.7.1/include/geos/util/AssertionFailedException.h --- geos-3.6.2/include/geos/util/AssertionFailedException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/AssertionFailedException.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -41,7 +41,7 @@ GEOSException("AssertionFailedException", msg) {} - ~AssertionFailedException() throw() {} + ~AssertionFailedException() throw() override {} }; } // namespace geos.util diff -Nru geos-3.6.2/include/geos/util/CoordinateArrayFilter.h geos-3.7.1/include/geos/util/CoordinateArrayFilter.h --- geos-3.6.2/include/geos/util/CoordinateArrayFilter.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/CoordinateArrayFilter.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -40,7 +40,7 @@ /** * Constructs a CoordinateArrayFilter. * - * @param target The destination vector. + * @param target The destination vector. */ CoordinateArrayFilter(geom::Coordinate::ConstVect& target) : diff -Nru geos-3.6.2/include/geos/util/GeometricShapeFactory.h geos-3.7.1/include/geos/util/GeometricShapeFactory.h --- geos-3.6.2/include/geos/util/GeometricShapeFactory.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/GeometricShapeFactory.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,7 +33,7 @@ // Forward declarations namespace geos { - namespace geom { + namespace geom { class Coordinate; class Envelope; class Polygon; @@ -59,7 +59,7 @@ * gsf.setSize(100); * gsf.setNumPoints(100); * gsf.setBase(Coordinate(0, 0)); - * std::auto_ptr rect ( gsf.createRectangle() ); + * std::unique_ptr rect ( gsf.createRectangle() ); *

  • * */ @@ -98,7 +98,7 @@ * @param factory the factory to use. You need to keep the * factory alive for the whole GeometricShapeFactory * life time. - * + * */ GeometricShapeFactory(const geom::GeometryFactory *factory); diff -Nru geos-3.6.2/include/geos/util/GEOSException.h geos-3.7.1/include/geos/util/GEOSException.h --- geos-3.6.2/include/geos/util/GEOSException.h 2017-04-04 09:13:52.000000000 +0000 +++ geos-3.7.1/include/geos/util/GEOSException.h 2018-11-09 23:03:28.000000000 +0000 @@ -1,4 +1,4 @@ -/********************************************************************** +/********************************************************************** * * GEOS - Geometry Engine Open Source * http://geos.osgeo.org @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -33,38 +33,27 @@ * * \brief Base class for all GEOS exceptions. * - * Exceptions are thrown as pointers to this type. - * Use toString() to get a readable message. + * Use what() to get a readable message. */ -class GEOS_DLL GEOSException: public std::exception { - - std::string _msg; +class GEOS_DLL GEOSException: public std::runtime_error { public: GEOSException() : - _msg("Unknown error") + std::runtime_error("Unknown error") {} GEOSException(std::string const& msg) : - _msg(msg) + std::runtime_error(msg) {} GEOSException(std::string const& name, std::string const& msg) : - _msg(name+": "+msg) - {} - - virtual ~GEOSException() throw() + std::runtime_error(name + ": "+msg) {} - const char* what() const throw() - { - return _msg.c_str(); - } - }; } // namespace geos.util diff -Nru geos-3.6.2/include/geos/util/IllegalArgumentException.h geos-3.7.1/include/geos/util/IllegalArgumentException.h --- geos-3.6.2/include/geos/util/IllegalArgumentException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/IllegalArgumentException.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -24,7 +24,7 @@ namespace geos { namespace util { // geos::util -/** +/** * \brief Indicates one or more illegal arguments. * * This exception is thrown - for example - when @@ -43,7 +43,7 @@ GEOSException("IllegalArgumentException", msg) {} - ~IllegalArgumentException() throw() {} + ~IllegalArgumentException() throw() override {} }; } // namespace geos::util diff -Nru geos-3.6.2/include/geos/util/IllegalStateException.h geos-3.7.1/include/geos/util/IllegalStateException.h --- geos-3.6.2/include/geos/util/IllegalStateException.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/util/IllegalStateException.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -36,7 +36,7 @@ GEOSException("IllegalStateException", msg) {} - ~IllegalStateException() throw() {} + ~IllegalStateException() throw() override {} }; } // namespace geos::util diff -Nru geos-3.6.2/include/geos/util/Interrupt.h geos-3.7.1/include/geos/util/Interrupt.h --- geos-3.6.2/include/geos/util/Interrupt.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/include/geos/util/Interrupt.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -29,7 +29,7 @@ typedef void (Callback)(void); - /** + /** * Request interruption of operations * * Operations will be terminated by a GEOSInterrupt diff -Nru geos-3.6.2/include/geos/util/Machine.h geos-3.7.1/include/geos/util/Machine.h --- geos-3.6.2/include/geos/util/Machine.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/Machine.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/util/Makefile.in geos-3.7.1/include/geos/util/Makefile.in --- geos-3.6.2/include/geos/util/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/include/geos/util/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -100,6 +100,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -225,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -391,8 +397,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -483,7 +489,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/include/geos/util/math.h geos-3.7.1/include/geos/util/math.h --- geos-3.6.2/include/geos/util/math.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/math.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/util/TopologyException.h geos-3.7.1/include/geos/util/TopologyException.h --- geos-3.6.2/include/geos/util/TopologyException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/TopologyException.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -50,7 +50,7 @@ pt(newPt) {} - ~TopologyException() throw() {} + ~TopologyException() throw() override {} geom::Coordinate& getCoordinate() { return pt; } private: geom::Coordinate pt; diff -Nru geos-3.6.2/include/geos/util/UniqueCoordinateArrayFilter.h geos-3.7.1/include/geos/util/UniqueCoordinateArrayFilter.h --- geos-3.6.2/include/geos/util/UniqueCoordinateArrayFilter.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/UniqueCoordinateArrayFilter.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -45,7 +45,7 @@ /** * Constructs a CoordinateArrayFilter. * - * @param target The destination set. + * @param target The destination set. */ UniqueCoordinateArrayFilter(geom::Coordinate::ConstVect &target) : pts(target) @@ -57,14 +57,14 @@ * delete a derived-class object via a base-class pointer. * http://www.parashift.com/c++-faq-lite/virtual-functions.html#faq-20.7 */ - virtual ~UniqueCoordinateArrayFilter() {} + ~UniqueCoordinateArrayFilter() override {} /** * Performs a filtering operation with or on coord in "read-only" mode. * @param coord The "read-only" Coordinate to which * the filter is applied. */ - virtual void filter_ro(const geom::Coordinate *coord) + void filter_ro(const geom::Coordinate *coord) override { if ( uniqPts.insert(coord).second ) { @@ -77,8 +77,8 @@ geom::Coordinate::ConstSet uniqPts; // unique points set // Declare type as noncopyable - UniqueCoordinateArrayFilter(const UniqueCoordinateArrayFilter& other); - UniqueCoordinateArrayFilter& operator=(const UniqueCoordinateArrayFilter& rhs); + UniqueCoordinateArrayFilter(const UniqueCoordinateArrayFilter& other) = delete; + UniqueCoordinateArrayFilter& operator=(const UniqueCoordinateArrayFilter& rhs) = delete; }; } // namespace geos::util diff -Nru geos-3.6.2/include/geos/util/UnsupportedOperationException.h geos-3.7.1/include/geos/util/UnsupportedOperationException.h --- geos-3.6.2/include/geos/util/UnsupportedOperationException.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util/UnsupportedOperationException.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -45,7 +45,7 @@ GEOSException("UnsupportedOperationException", msg) {} - ~UnsupportedOperationException() throw() {} + ~UnsupportedOperationException() throw() override {} }; } // namespace geos::util diff -Nru geos-3.6.2/include/geos/util.h geos-3.7.1/include/geos/util.h --- geos-3.6.2/include/geos/util.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/util.h 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -32,8 +32,8 @@ //#include // -// Private macros definition -// +// Private macros definition +// namespace geos { diff -Nru geos-3.6.2/include/geos/version.h.in geos-3.7.1/include/geos/version.h.in --- geos-3.6.2/include/geos/version.h.in 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos/version.h.in 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/geos/version.h.vc geos-3.7.1/include/geos/version.h.vc --- geos-3.6.2/include/geos/version.h.vc 2017-07-25 09:15:07.000000000 +0000 +++ geos-3.7.1/include/geos/version.h.vc 2018-11-29 22:42:00.000000000 +0000 @@ -30,15 +30,15 @@ #endif #ifndef GEOS_VERSION_MINOR -#define GEOS_VERSION_MINOR 6 +#define GEOS_VERSION_MINOR 7 #endif #ifndef GEOS_VERSION_PATCH -#define GEOS_VERSION_PATCH 2 +#define GEOS_VERSION_PATCH 0 #endif #ifndef GEOS_VERSION -#define GEOS_VERSION "3.6.2" +#define GEOS_VERSION "3.7.0" #endif #ifndef GEOS_JTS_PORT diff -Nru geos-3.6.2/include/geos.h geos-3.7.1/include/geos.h --- geos-3.6.2/include/geos.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/include/geos.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/include/Makefile.in geos-3.7.1/include/Makefile.in --- geos-3.6.2/include/Makefile.in 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/include/Makefile.in 2018-11-29 23:05:17.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -171,7 +174,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ $(LISP)config.h.in # Read a list of newline-separated strings from the standard input, @@ -261,6 +264,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -309,6 +313,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -329,6 +335,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -378,7 +385,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -423,8 +429,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -577,7 +583,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/install-sh geos-3.7.1/install-sh --- geos-3.6.2/install-sh 2016-09-03 18:32:14.000000000 +0000 +++ geos-3.7.1/install-sh 2017-09-05 18:37:08.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-11-20.07; # UTC +scriptversion=2013-12-25.23; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -41,19 +41,15 @@ # This script is compatible with the BSD install script, but was written # from scratch. +tab=' ' nl=' ' -IFS=" "" $nl" +IFS=" $tab$nl" -# set DOITPROG to echo to test this script +# Set DOITPROG to "echo" to test this script. -# Don't use :- since 4.3BSD and earlier shells don't like it. doit=${DOITPROG-} -if test -z "$doit"; then - doit_exec=exec -else - doit_exec=$doit -fi +doit_exec=${doit:-exec} # Put in absolute file names if you don't have them in your path; # or use environment vars. @@ -68,17 +64,6 @@ rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} -posix_glob='?' -initialize_posix_glob=' - test "$posix_glob" != "?" || { - if (set -f) 2>/dev/null; then - posix_glob= - else - posix_glob=: - fi - } -' - posix_mkdir= # Desired mode of installed file. @@ -97,7 +82,7 @@ dst_arg= copy_on_change=false -no_target_directory= +is_target_a_directory=possibly usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE @@ -137,46 +122,57 @@ -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" - shift;; + shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 - case $mode in - *' '* | *' '* | *' -'* | *'*'* | *'?'* | *'['*) - echo "$0: invalid mode: $mode" >&2 - exit 1;; - esac - shift;; + case $mode in + *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) + echo "$0: invalid mode: $mode" >&2 + exit 1;; + esac + shift;; -o) chowncmd="$chownprog $2" - shift;; + shift;; -s) stripcmd=$stripprog;; - -t) dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - shift;; + -t) + is_target_a_directory=always + dst_arg=$2 + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + shift;; - -T) no_target_directory=true;; + -T) is_target_a_directory=never;; --version) echo "$0 $scriptversion"; exit $?;; - --) shift - break;; + --) shift + break;; - -*) echo "$0: invalid option: $1" >&2 - exit 1;; + -*) echo "$0: invalid option: $1" >&2 + exit 1;; *) break;; esac shift done +# We allow the use of options -d and -T together, by making -d +# take the precedence; this is for compatibility with GNU install. + +if test -n "$dir_arg"; then + if test -n "$dst_arg"; then + echo "$0: target directory not allowed when installing a directory." >&2 + exit 1 + fi +fi + if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. @@ -208,6 +204,15 @@ fi if test -z "$dir_arg"; then + if test $# -gt 1 || test "$is_target_a_directory" = always; then + if test ! -d "$dst_arg"; then + echo "$0: $dst_arg: Is not a directory." >&2 + exit 1 + fi + fi +fi + +if test -z "$dir_arg"; then do_exit='(exit $ret); exit $ret' trap "ret=129; $do_exit" 1 trap "ret=130; $do_exit" 2 @@ -223,16 +228,16 @@ *[0-7]) if test -z "$stripcmd"; then - u_plus_rw= + u_plus_rw= else - u_plus_rw='% 200' + u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then - u_plus_rw= + u_plus_rw= else - u_plus_rw=,u+rw + u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac @@ -269,41 +274,15 @@ # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then - if test -n "$no_target_directory"; then - echo "$0: $dst_arg: Is a directory" >&2 - exit 1 + if test "$is_target_a_directory" = never; then + echo "$0: $dst_arg: Is a directory" >&2 + exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else - # Prefer dirname, but fall back on a substitute if dirname fails. - dstdir=` - (dirname "$dst") 2>/dev/null || - expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$dst" : 'X\(//\)[^/]' \| \ - X"$dst" : 'X\(//\)$' \| \ - X"$dst" : 'X\(/\)' \| . 2>/dev/null || - echo X"$dst" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q' - ` - + dstdir=`dirname "$dst"` test -d "$dstdir" dstdir_status=$? fi @@ -314,74 +293,74 @@ if test $dstdir_status != 0; then case $posix_mkdir in '') - # Create intermediate dirs using mode 755 as modified by the umask. - # This is like FreeBSD 'install' as of 1997-10-28. - umask=`umask` - case $stripcmd.$umask in - # Optimize common cases. - *[2367][2367]) mkdir_umask=$umask;; - .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; - - *[0-7]) - mkdir_umask=`expr $umask + 22 \ - - $umask % 100 % 40 + $umask % 20 \ - - $umask % 10 % 4 + $umask % 2 - `;; - *) mkdir_umask=$umask,go-w;; - esac - - # With -d, create the new directory with the user-specified mode. - # Otherwise, rely on $mkdir_umask. - if test -n "$dir_arg"; then - mkdir_mode=-m$mode - else - mkdir_mode= - fi - - posix_mkdir=false - case $umask in - *[123567][0-7][0-7]) - # POSIX mkdir -p sets u+wx bits regardless of umask, which - # is incompatible with FreeBSD 'install' when (umask & 300) != 0. - ;; - *) - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 - - if (umask $mkdir_umask && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - ls_ld_tmpdir=`ls -ld "$tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/d" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null - fi - trap '' 0;; - esac;; + # Create intermediate dirs using mode 755 as modified by the umask. + # This is like FreeBSD 'install' as of 1997-10-28. + umask=`umask` + case $stripcmd.$umask in + # Optimize common cases. + *[2367][2367]) mkdir_umask=$umask;; + .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; + + *[0-7]) + mkdir_umask=`expr $umask + 22 \ + - $umask % 100 % 40 + $umask % 20 \ + - $umask % 10 % 4 + $umask % 2 + `;; + *) mkdir_umask=$umask,go-w;; + esac + + # With -d, create the new directory with the user-specified mode. + # Otherwise, rely on $mkdir_umask. + if test -n "$dir_arg"; then + mkdir_mode=-m$mode + else + mkdir_mode= + fi + + posix_mkdir=false + case $umask in + *[123567][0-7][0-7]) + # POSIX mkdir -p sets u+wx bits regardless of umask, which + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 + + if (umask $mkdir_umask && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + ls_ld_tmpdir=`ls -ld "$tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/d" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null + fi + trap '' 0;; + esac;; esac if $posix_mkdir && ( - umask $mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" + umask $mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else @@ -391,53 +370,51 @@ # directory the slow way, step by step, checking for races as we go. case $dstdir in - /*) prefix='/';; - [-=\(\)!]*) prefix='./';; - *) prefix='';; + /*) prefix='/';; + [-=\(\)!]*) prefix='./';; + *) prefix='';; esac - eval "$initialize_posix_glob" - oIFS=$IFS IFS=/ - $posix_glob set -f + set -f set fnord $dstdir shift - $posix_glob set +f + set +f IFS=$oIFS prefixes= for d do - test X"$d" = X && continue + test X"$d" = X && continue - prefix=$prefix$d - if test -d "$prefix"; then - prefixes= - else - if $posix_mkdir; then - (umask=$mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break - # Don't fail if two instances are running concurrently. - test -d "$prefix" || exit 1 - else - case $prefix in - *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; - *) qprefix=$prefix;; - esac - prefixes="$prefixes '$qprefix'" - fi - fi - prefix=$prefix/ + prefix=$prefix$d + if test -d "$prefix"; then + prefixes= + else + if $posix_mkdir; then + (umask=$mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break + # Don't fail if two instances are running concurrently. + test -d "$prefix" || exit 1 + else + case $prefix in + *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; + *) qprefix=$prefix;; + esac + prefixes="$prefixes '$qprefix'" + fi + fi + prefix=$prefix/ done if test -n "$prefixes"; then - # Don't fail if two instances are running concurrently. - (umask $mkdir_umask && - eval "\$doit_exec \$mkdirprog $prefixes") || - test -d "$dstdir" || exit 1 - obsolete_mkdir_used=true + # Don't fail if two instances are running concurrently. + (umask $mkdir_umask && + eval "\$doit_exec \$mkdirprog $prefixes") || + test -d "$dstdir" || exit 1 + obsolete_mkdir_used=true fi fi fi @@ -472,15 +449,12 @@ # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && - old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && - new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && - - eval "$initialize_posix_glob" && - $posix_glob set -f && + old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && + new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && + set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && - $posix_glob set +f && - + set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then @@ -493,24 +467,24 @@ # to itself, or perhaps because mv is so ancient that it does not # support -f. { - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - test ! -f "$dst" || - $doit $rmcmd -f "$dst" 2>/dev/null || - { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } - } || - { echo "$0: cannot unlink or rename $dst" >&2 - (exit 1); exit 1 - } - } && + # Now remove or move aside any old file at destination location. + # We try this two ways since rm can't unlink itself on some + # systems and the destination file might be busy for other + # reasons. In this case, the final cleanup might fail but the new + # file should still install successfully. + { + test ! -f "$dst" || + $doit $rmcmd -f "$dst" 2>/dev/null || + { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && + { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + } || + { echo "$0: cannot unlink or rename $dst" >&2 + (exit 1); exit 1 + } + } && - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dst" + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 diff -Nru geos-3.6.2/ltmain.sh geos-3.7.1/ltmain.sh --- geos-3.6.2/ltmain.sh 2017-07-25 09:27:27.000000000 +0000 +++ geos-3.7.1/ltmain.sh 2018-11-29 23:05:11.000000000 +0000 @@ -31,7 +31,7 @@ PROGRAM=libtool PACKAGE=libtool -VERSION="2.4.6 Debian-2.4.6-2" +VERSION=2.4.6 package_revision=2.4.6 @@ -2068,12 +2068,12 @@ compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) - version: $progname $scriptversion Debian-2.4.6-2 + version: $progname (GNU libtool) 2.4.6 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` Report bugs to . -GNU libtool home page: . +GNU libtool home page: . General help using GNU software: ." exit 0 } @@ -7272,13 +7272,12 @@ # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization - # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang - # -fsanitize=* Clang/GCC memory and address sanitizer + # -fsanitize=* Clang memory and address sanitizer -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ - -specs=*|-fsanitize=*) + -fsanitize=*) func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" @@ -7571,10 +7570,7 @@ case $pass in dlopen) libs=$dlfiles ;; dlpreopen) libs=$dlprefiles ;; - link) - libs="$deplibs %DEPLIBS%" - test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" - ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi if test lib,dlpreopen = "$linkmode,$pass"; then @@ -7893,19 +7889,19 @@ # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" - tmp_libs= - for deplib in $dependency_libs; do - deplibs="$deplib $deplibs" - if $opt_preserve_dup_deps; then - case "$tmp_libs " in - *" $deplib "*) func_append specialdeplibs " $deplib" ;; - esac - fi - func_append tmp_libs " $deplib" - done elif test prog != "$linkmode" && test lib != "$linkmode"; then func_fatal_error "'$lib' is not a convenience library" fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done continue fi # $pass = conv @@ -8829,9 +8825,6 @@ revision=$number_minor lt_irix_increment=no ;; - *) - func_fatal_configuration "$modename: unknown library version type '$version_type'" - ;; esac ;; no) diff -Nru geos-3.6.2/macros/ax_check_compile_flag.m4 geos-3.7.1/macros/ax_check_compile_flag.m4 --- geos-3.6.2/macros/ax_check_compile_flag.m4 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/macros/ax_check_compile_flag.m4 2018-11-09 23:03:28.000000000 +0000 @@ -0,0 +1,74 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) +# +# DESCRIPTION +# +# Check whether the given FLAG works with the current language's compiler +# or gives an error. (Warnings, however, are ignored) +# +# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on +# success/failure. +# +# If EXTRA-FLAGS is defined, it is added to the current language's default +# flags (e.g. CFLAGS) when the check is done. The check is thus made with +# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to +# force the compiler to issue an error when a bad flag is given. +# +# INPUT gives an alternative input source to AC_COMPILE_IFELSE. +# +# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this +# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. +# +# LICENSE +# +# Copyright (c) 2008 Guido U. Draheim +# Copyright (c) 2011 Maarten Bosmans +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program 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 General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 4 + +AC_DEFUN([AX_CHECK_COMPILE_FLAG], +[AC_PREREQ(2.63)dnl for _AC_LANG_PREFIX and AS_VAR_IF +AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl +AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ + ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS + _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" + AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], + [AS_VAR_SET(CACHEVAR,[yes])], + [AS_VAR_SET(CACHEVAR,[no])]) + _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) +AS_VAR_IF(CACHEVAR,yes, + [m4_default([$2], :)], + [m4_default([$3], :)]) +AS_VAR_POPDEF([CACHEVAR])dnl +])dnl AX_CHECK_COMPILE_FLAGS diff -Nru geos-3.6.2/macros/ax_cxx_compile_stdcxx_11.m4 geos-3.7.1/macros/ax_cxx_compile_stdcxx_11.m4 --- geos-3.6.2/macros/ax_cxx_compile_stdcxx_11.m4 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/macros/ax_cxx_compile_stdcxx_11.m4 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,39 @@ +# ============================================================================ +# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html +# ============================================================================ +# +# SYNOPSIS +# +# AX_CXX_COMPILE_STDCXX_11([ext|noext], [mandatory|optional]) +# +# DESCRIPTION +# +# Check for baseline language coverage in the compiler for the C++11 +# standard; if necessary, add switches to CXX and CXXCPP to enable +# support. +# +# This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX +# macro with the version set to C++11. The two optional arguments are +# forwarded literally as the second and third argument respectively. +# Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for +# more information. If you want to use this macro, you also need to +# download the ax_cxx_compile_stdcxx.m4 file. +# +# LICENSE +# +# Copyright (c) 2008 Benjamin Kosnik +# Copyright (c) 2012 Zack Weinberg +# Copyright (c) 2013 Roy Stogner +# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov +# Copyright (c) 2015 Paul Norman +# Copyright (c) 2015 Moritz Klammler +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 17 + +AX_REQUIRE_DEFINED([AX_CXX_COMPILE_STDCXX]) +AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [AX_CXX_COMPILE_STDCXX([11], [$1], [$2])]) diff -Nru geos-3.6.2/macros/ax_cxx_compile_stdcxx.m4 geos-3.7.1/macros/ax_cxx_compile_stdcxx.m4 --- geos-3.6.2/macros/ax_cxx_compile_stdcxx.m4 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/macros/ax_cxx_compile_stdcxx.m4 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,562 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional]) +# +# DESCRIPTION +# +# Check for baseline language coverage in the compiler for the specified +# version of the C++ standard. If necessary, add switches to CXX and +# CXXCPP to enable support. VERSION may be '11' (for the C++11 standard) +# or '14' (for the C++14 standard). +# +# The second argument, if specified, indicates whether you insist on an +# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g. +# -std=c++11). If neither is specified, you get whatever works, with +# preference for an extended mode. +# +# The third argument, if specified 'mandatory' or if left unspecified, +# indicates that baseline support for the specified C++ standard is +# required and that the macro should error out if no mode with that +# support is found. If specified 'optional', then configuration proceeds +# regardless, after defining HAVE_CXX${VERSION} if and only if a +# supporting mode is found. +# +# LICENSE +# +# Copyright (c) 2008 Benjamin Kosnik +# Copyright (c) 2012 Zack Weinberg +# Copyright (c) 2013 Roy Stogner +# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov +# Copyright (c) 2015 Paul Norman +# Copyright (c) 2015 Moritz Klammler +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 4 + +dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro +dnl (serial version number 13). + +AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl + m4_if([$1], [11], [], + [$1], [14], [], + [$1], [17], [m4_fatal([support for C++17 not yet implemented in AX_CXX_COMPILE_STDCXX])], + [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl + m4_if([$2], [], [], + [$2], [ext], [], + [$2], [noext], [], + [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX])])dnl + m4_if([$3], [], [ax_cxx_compile_cxx$1_required=true], + [$3], [mandatory], [ax_cxx_compile_cxx$1_required=true], + [$3], [optional], [ax_cxx_compile_cxx$1_required=false], + [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])]) + AC_LANG_PUSH([C++])dnl + ac_success=no + AC_CACHE_CHECK(whether $CXX supports C++$1 features by default, + ax_cv_cxx_compile_cxx$1, + [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], + [ax_cv_cxx_compile_cxx$1=yes], + [ax_cv_cxx_compile_cxx$1=no])]) + if test x$ax_cv_cxx_compile_cxx$1 = xyes; then + ac_success=yes + fi + + m4_if([$2], [noext], [], [dnl + if test x$ac_success = xno; then + for switch in -std=gnu++$1 -std=gnu++0x; do + cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) + AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, + $cachevar, + [ac_save_CXX="$CXX" + CXX="$CXX $switch" + AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], + [eval $cachevar=yes], + [eval $cachevar=no]) + CXX="$ac_save_CXX"]) + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + fi]) + + m4_if([$2], [ext], [], [dnl + if test x$ac_success = xno; then + dnl HP's aCC needs +std=c++11 according to: + dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf + dnl Cray's crayCC needs "-h std=c++11" + for switch in -std=c++$1 -std=c++0x +std=c++$1 "-h std=c++$1"; do + cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch]) + AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch, + $cachevar, + [ac_save_CXX="$CXX" + CXX="$CXX $switch" + AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])], + [eval $cachevar=yes], + [eval $cachevar=no]) + CXX="$ac_save_CXX"]) + if eval test x\$$cachevar = xyes; then + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi + ac_success=yes + break + fi + done + fi]) + AC_LANG_POP([C++]) + if test x$ax_cxx_compile_cxx$1_required = xtrue; then + if test x$ac_success = xno; then + AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.]) + fi + fi + if test x$ac_success = xno; then + HAVE_CXX$1=0 + AC_MSG_NOTICE([No compiler with C++$1 support was found]) + else + HAVE_CXX$1=1 + AC_DEFINE(HAVE_CXX$1,1, + [define if the compiler supports basic C++$1 syntax]) + fi + AC_SUBST(HAVE_CXX$1) +]) + + +dnl Test body for checking C++11 support + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11], + _AX_CXX_COMPILE_STDCXX_testbody_new_in_11 +) + + +dnl Test body for checking C++14 support + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14], + _AX_CXX_COMPILE_STDCXX_testbody_new_in_11 + _AX_CXX_COMPILE_STDCXX_testbody_new_in_14 +) + + +dnl Tests for new features in C++11 + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[ + +// If the compiler admits that it is not ready for C++11, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201103L + +#error "This is not a C++11 compiler" + +#else + +namespace cxx11 +{ + + namespace test_static_assert + { + + template + struct check + { + static_assert(sizeof(int) <= sizeof(T), "not big enough"); + }; + + } + + namespace test_final_override + { + + struct Base + { + virtual void f() {} + }; + + struct Derived : public Base + { + virtual void f() override {} + }; + + } + + namespace test_double_right_angle_brackets + { + + template < typename T > + struct check {}; + + typedef check single_type; + typedef check> double_type; + typedef check>> triple_type; + typedef check>>> quadruple_type; + + } + + namespace test_decltype + { + + int + f() + { + int a = 1; + decltype(a) b = 2; + return a + b; + } + + } + + namespace test_type_deduction + { + + template < typename T1, typename T2 > + struct is_same + { + static const bool value = false; + }; + + template < typename T > + struct is_same + { + static const bool value = true; + }; + + template < typename T1, typename T2 > + auto + add(T1 a1, T2 a2) -> decltype(a1 + a2) + { + return a1 + a2; + } + + int + test(const int c, volatile int v) + { + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == false, ""); + auto ac = c; + auto av = v; + auto sumi = ac + av + 'x'; + auto sumf = ac + av + 1.0; + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == true, ""); + static_assert(is_same::value == false, ""); + static_assert(is_same::value == true, ""); + return (sumf > 0.0) ? sumi : add(c, v); + } + + } + + namespace test_noexcept + { + + int f() { return 0; } + int g() noexcept { return 0; } + + static_assert(noexcept(f()) == false, ""); + static_assert(noexcept(g()) == true, ""); + + } + + namespace test_constexpr + { + + template < typename CharT > + unsigned long constexpr + strlen_c_r(const CharT *const s, const unsigned long acc) noexcept + { + return *s ? strlen_c_r(s + 1, acc + 1) : acc; + } + + template < typename CharT > + unsigned long constexpr + strlen_c(const CharT *const s) noexcept + { + return strlen_c_r(s, 0UL); + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("1") == 1UL, ""); + static_assert(strlen_c("example") == 7UL, ""); + static_assert(strlen_c("another\0example") == 7UL, ""); + + } + + namespace test_rvalue_references + { + + template < int N > + struct answer + { + static constexpr int value = N; + }; + + answer<1> f(int&) { return answer<1>(); } + answer<2> f(const int&) { return answer<2>(); } + answer<3> f(int&&) { return answer<3>(); } + + void + test() + { + int i = 0; + const int c = 0; + static_assert(decltype(f(i))::value == 1, ""); + static_assert(decltype(f(c))::value == 2, ""); + static_assert(decltype(f(0))::value == 3, ""); + } + + } + + namespace test_uniform_initialization + { + + struct test + { + static const int zero {}; + static const int one {1}; + }; + + static_assert(test::zero == 0, ""); + static_assert(test::one == 1, ""); + + } + + namespace test_lambdas + { + + void + test1() + { + auto lambda1 = [](){}; + auto lambda2 = lambda1; + lambda1(); + lambda2(); + } + + int + test2() + { + auto a = [](int i, int j){ return i + j; }(1, 2); + auto b = []() -> int { return '0'; }(); + auto c = [=](){ return a + b; }(); + auto d = [&](){ return c; }(); + auto e = [a, &b](int x) mutable { + const auto identity = [](int y){ return y; }; + for (auto i = 0; i < a; ++i) + a += b--; + return x + identity(a + b); + }(0); + return a + b + c + d + e; + } + + int + test3() + { + const auto nullary = [](){ return 0; }; + const auto unary = [](int x){ return x; }; + using nullary_t = decltype(nullary); + using unary_t = decltype(unary); + const auto higher1st = [](nullary_t f){ return f(); }; + const auto higher2nd = [unary](nullary_t f1){ + return [unary, f1](unary_t f2){ return f2(unary(f1())); }; + }; + return higher1st(nullary) + higher2nd(nullary)(unary); + } + + } + + namespace test_variadic_templates + { + + template + struct sum; + + template + struct sum + { + static constexpr auto value = N0 + sum::value; + }; + + template <> + struct sum<> + { + static constexpr auto value = 0; + }; + + static_assert(sum<>::value == 0, ""); + static_assert(sum<1>::value == 1, ""); + static_assert(sum<23>::value == 23, ""); + static_assert(sum<1, 2>::value == 3, ""); + static_assert(sum<5, 5, 11>::value == 21, ""); + static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, ""); + + } + + // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae + // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function + // because of this. + namespace test_template_alias_sfinae + { + + struct foo {}; + + template + using member = typename T::member_type; + + template + void func(...) {} + + template + void func(member*) {} + + void test(); + + void test() { func(0); } + + } + +} // namespace cxx11 + +#endif // __cplusplus >= 201103L + +]]) + + +dnl Tests for new features in C++14 + +m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[ + +// If the compiler admits that it is not ready for C++14, why torture it? +// Hopefully, this will speed up the test. + +#ifndef __cplusplus + +#error "This is not a C++ compiler" + +#elif __cplusplus < 201402L + +#error "This is not a C++14 compiler" + +#else + +namespace cxx14 +{ + + namespace test_polymorphic_lambdas + { + + int + test() + { + const auto lambda = [](auto&&... args){ + const auto istiny = [](auto x){ + return (sizeof(x) == 1UL) ? 1 : 0; + }; + const int aretiny[] = { istiny(args)... }; + return aretiny[0]; + }; + return lambda(1, 1L, 1.0f, '1'); + } + + } + + namespace test_binary_literals + { + + constexpr auto ivii = 0b0000000000101010; + static_assert(ivii == 42, "wrong value"); + + } + + namespace test_generalized_constexpr + { + + template < typename CharT > + constexpr unsigned long + strlen_c(const CharT *const s) noexcept + { + auto length = 0UL; + for (auto p = s; *p; ++p) + ++length; + return length; + } + + static_assert(strlen_c("") == 0UL, ""); + static_assert(strlen_c("x") == 1UL, ""); + static_assert(strlen_c("test") == 4UL, ""); + static_assert(strlen_c("another\0test") == 7UL, ""); + + } + + namespace test_lambda_init_capture + { + + int + test() + { + auto x = 0; + const auto lambda1 = [a = x](int b){ return a + b; }; + const auto lambda2 = [a = lambda1(x)](){ return a; }; + return lambda2(); + } + + } + + namespace test_digit_seperators + { + + constexpr auto ten_million = 100'000'000; + static_assert(ten_million == 100000000, ""); + + } + + namespace test_return_type_deduction + { + + auto f(int& x) { return x; } + decltype(auto) g(int& x) { return x; } + + template < typename T1, typename T2 > + struct is_same + { + static constexpr auto value = false; + }; + + template < typename T > + struct is_same + { + static constexpr auto value = true; + }; + + int + test() + { + auto x = 0; + static_assert(is_same::value, ""); + static_assert(is_same::value, ""); + return x; + } + + } + +} // namespace cxx14 + +#endif // __cplusplus >= 201402L + +]]) diff -Nru geos-3.6.2/macros/libtool.m4 geos-3.7.1/macros/libtool.m4 --- geos-3.6.2/macros/libtool.m4 2017-07-25 09:27:27.000000000 +0000 +++ geos-3.7.1/macros/libtool.m4 2018-11-29 23:05:11.000000000 +0000 @@ -728,6 +728,7 @@ cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. @@ -2886,18 +2887,6 @@ dynamic_linker='GNU/Linux ld.so' ;; -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - netbsd*) version_type=sunos need_lib_prefix=no @@ -3557,7 +3546,7 @@ lt_cv_deplibs_check_method=pass_all ;; -netbsd* | netbsdelf*-gnu) +netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else @@ -4435,7 +4424,7 @@ ;; esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise @@ -4947,9 +4936,6 @@ ;; esac ;; - linux* | k*bsd*-gnu | gnu*) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@ -5012,9 +4998,6 @@ openbsd* | bitrig*) with_gnu_ld=no ;; - linux* | k*bsd*-gnu | gnu*) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes @@ -5269,7 +5252,7 @@ fi ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -5790,7 +5773,6 @@ if test yes = "$lt_cv_irix_exported_symbol"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi - _LT_TAGVAR(link_all_deplibs, $1)=no else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@ -5812,7 +5794,7 @@ esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else diff -Nru geos-3.6.2/macros/Makefile.in geos-3.7.1/macros/Makefile.in --- geos-3.6.2/macros/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/macros/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,6 +92,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -170,6 +173,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -218,6 +222,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -238,6 +244,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -291,7 +298,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -326,8 +332,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -351,7 +357,10 @@ cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/macros/ruby.m4 geos-3.7.1/macros/ruby.m4 --- geos-3.6.2/macros/ruby.m4 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/macros/ruby.m4 2018-11-09 23:03:28.000000000 +0000 @@ -1,4 +1,4 @@ -## ------------------------ +## ------------------------ ## Ruby file handling ## From Charlie Savage ## ------------------------ @@ -12,9 +12,9 @@ AC_DEFUN([AC_RUBY_DEVEL], [ - dnl Find a Ruby interpreter + dnl Find a Ruby interpreter AC_PATH_PROG([RUBY],[ruby]) - + if test -z "$RUBY" ; then AC_MSG_ERROR([Could not find ruby interpreter.]) RUBY='' @@ -25,39 +25,49 @@ dnl Get Ruby bin directory RUBY_BIN_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["bindir"]] || Config::CONFIG[["bindir"]]'` - dnl Get Ruby site arch + dnl Get Ruby site arch RUBY_SITE_ARCH=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["sitearch"]] || Config::CONFIG[["sitearch"]]'` dnl Get Ruby include directory RUBY_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["rubyhdrdir"]] || Config::CONFIG[["archdir"]]'` - + + dnl Get Ruby config.h include directory + RUBY_ARCH_INCLUDE_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["rubyarchhdrdir"]] || Config::CONFIG[["archdir"]]'` + dnl Get Ruby lib directory RUBY_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["libdir"]] || Config::CONFIG[["libdir"]]'` + dnl Get Ruby arch lib directory + RUBY_ARCH_LIB_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["archlibdir"]] || Config::CONFIG[["archlibdir"]]'` + dnl Get Ruby extensions directory RUBY_EXTENSION_DIR=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["sitearchdir"]] || Config::CONFIG[["sitearchdir"]]'` dnl Get Ruby shared library name, this does not include the lib prefix or extension name RUBY_SO_NAME=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["RUBY_SO_NAME"]] || Config::CONFIG[["RUBY_SO_NAME"]]'` - + dnl Get Ruby shared libary name RUBY_SHARED_LIB=`$RUBY -rrbconfig -e 'puts RbConfig::CONFIG[["LIBRUBY"]] || Config::CONFIG[["LIBRUBY"]]'` - + AC_MSG_NOTICE([Ruby executable is '$RUBY']) AC_MSG_NOTICE([Ruby version is '$RUBY_VERSION']) AC_MSG_NOTICE([Ruby bin directory is '$RUBY_BIN_DIR']) AC_MSG_NOTICE([Ruby site arch is '$RUBY_SITE_ARCH']) AC_MSG_NOTICE([Ruby include directory is '$RUBY_INCLUDE_DIR']) + AC_MSG_NOTICE([Ruby config.h include directory is '$RUBY_ARCH_INCLUDE_DIR']) AC_MSG_NOTICE([Ruby library directory is '$RUBY_LIB_DIR']) + AC_MSG_NOTICE([Ruby architecture library directory is '$RUBY_ARCH_LIB_DIR']) AC_MSG_NOTICE([Ruby extension directory is '$RUBY_EXTENSION_DIR']) AC_MSG_NOTICE([Ruby library is '$RUBY_SO_NAME']) AC_MSG_NOTICE([Ruby import library is '$RUBY_SHARED_LIB']) - + AC_SUBST([RUBY_VERSION]) AC_SUBST([RUBY_BIN_DIR]) AC_SUBST([RUBY_SITE_ARCH]) AC_SUBST([RUBY_INCLUDE_DIR]) + AC_SUBST([RUBY_ARCH_INCLUDE_DIR]) AC_SUBST([RUBY_LIB_DIR]) + AC_SUBST([RUBY_ARCH_LIB_DIR]) AC_SUBST([RUBY_EXTENSION_DIR]) AC_SUBST([RUBY_SO_NAME]) AC_SUBST([RUBY_SHARED_LIB]) diff -Nru geos-3.6.2/Makefile.am geos-3.7.1/Makefile.am --- geos-3.6.2/Makefile.am 2017-04-04 09:13:52.000000000 +0000 +++ geos-3.7.1/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -24,10 +24,12 @@ BUILT_SOURCES = geos_revision.h -EXTRA_DIST = acsite.m4 makefile.vc nmake.opt autogen.bat CMakeLists.txt \ +EXTRA_DIST = acsite.m4 .editorconfig makefile.vc nmake.opt autogen.bat CMakeLists.txt \ cmake/modules/CheckPrototypeExists.cmake \ cmake/modules/COPYING-CMAKE-SCRIPTS \ - cmake/cmake_uninstall.cmake.in geos_revision.h + cmake/modules/GenerateSourceGroups.cmake \ + cmake/cmake_uninstall.cmake.in geos_revision.h \ + README.md ACLOCAL_AMFLAGS = -I macros @@ -37,14 +39,11 @@ cd $(distdir) && owd=`pwd` && \ cd ../ && cd $(srcdir) && \ if test -d .git; then \ - git2cl > $${owd}/ChangeLog; \ + git log --pretty --numstat --summary | git2cl > $${owd}/ChangeLog; \ elif test -d .svn; then \ svn2cl --authors=authors.svn -i -o $${owd}/ChangeLog; \ elif test -f ChangeLog; then \ - echo "NOTE: distributing ChangeLog found in source dir"; \ cp ChangeLog $${owd}/ChangeLog; \ - else \ - echo "WARNING: could not find a ChangeLog" >&2; \ fi apidoc doxygen: @@ -65,3 +64,8 @@ $(VALGRIND) tests/unit/geos_unit .PHONY: geos_revision.h + +check-local: + ! find . -name '*.cpp' -o -name '*.h' | \ + grep -v tests/xmltester/tinyxml | \ + xargs grep -n '[[:space:]]$$' diff -Nru geos-3.6.2/Makefile.in geos-3.7.1/Makefile.in --- geos-3.6.2/Makefile.in 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/Makefile.in 2018-11-29 23:05:16.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -102,6 +102,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -154,7 +157,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope distdir dist dist-all distcheck + cscope distdir distdir-am dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -177,8 +180,8 @@ CSCOPE = cscope DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in AUTHORS COPYING INSTALL NEWS \ - README TODO compile config.guess config.sub install-sh \ - ltmain.sh missing py-compile + TODO compile config.guess config.sub install-sh ltmain.sh \ + missing py-compile DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -262,6 +265,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +314,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +336,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +386,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -407,10 +413,12 @@ tools BUILT_SOURCES = geos_revision.h -EXTRA_DIST = acsite.m4 makefile.vc nmake.opt autogen.bat CMakeLists.txt \ +EXTRA_DIST = acsite.m4 .editorconfig makefile.vc nmake.opt autogen.bat CMakeLists.txt \ cmake/modules/CheckPrototypeExists.cmake \ cmake/modules/COPYING-CMAKE-SCRIPTS \ - cmake/cmake_uninstall.cmake.in geos_revision.h + cmake/modules/GenerateSourceGroups.cmake \ + cmake/cmake_uninstall.cmake.in geos_revision.h \ + README.md ACLOCAL_AMFLAGS = -I macros VALGRIND = $(LIBTOOL) --mode=execute valgrind --leak-check=full --error-exitcode=1 @@ -439,8 +447,8 @@ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -567,7 +575,10 @@ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -635,7 +646,7 @@ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir @@ -661,7 +672,7 @@ @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir @@ -679,7 +690,7 @@ distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ @@ -689,7 +700,7 @@ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac @@ -759,6 +770,7 @@ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-local check: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) check-recursive all-am: Makefile @@ -866,15 +878,15 @@ uninstall-am: -.MAKE: $(am__recursive_targets) all check install install-am \ +.MAKE: $(am__recursive_targets) all check check-am install install-am \ install-strip .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ - am--refresh check check-am clean clean-cscope clean-generic \ - clean-libtool cscope cscopelist-am ctags ctags-am dist \ - dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \ - dist-tarZ dist-xz dist-zip distcheck distclean \ - distclean-generic distclean-libtool distclean-tags \ + am--refresh check check-am check-local clean clean-cscope \ + clean-generic clean-libtool cscope cscopelist-am ctags \ + ctags-am dist dist-all dist-bzip2 dist-gzip dist-hook \ + dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \ + distclean distclean-generic distclean-libtool distclean-tags \ distcleancheck distdir distuninstallcheck dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ @@ -895,14 +907,11 @@ cd $(distdir) && owd=`pwd` && \ cd ../ && cd $(srcdir) && \ if test -d .git; then \ - git2cl > $${owd}/ChangeLog; \ + git log --pretty --numstat --summary | git2cl > $${owd}/ChangeLog; \ elif test -d .svn; then \ svn2cl --authors=authors.svn -i -o $${owd}/ChangeLog; \ elif test -f ChangeLog; then \ - echo "NOTE: distributing ChangeLog found in source dir"; \ cp ChangeLog $${owd}/ChangeLog; \ - else \ - echo "WARNING: could not find a ChangeLog" >&2; \ fi apidoc doxygen: @@ -922,6 +931,11 @@ .PHONY: geos_revision.h +check-local: + ! find . -name '*.cpp' -o -name '*.h' | \ + grep -v tests/xmltester/tinyxml | \ + xargs grep -n '[[:space:]]$$' + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru geos-3.6.2/missing geos-3.7.1/missing --- geos-3.6.2/missing 2017-07-25 09:27:28.000000000 +0000 +++ geos-3.7.1/missing 2018-11-29 23:05:16.000000000 +0000 @@ -1,9 +1,9 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2013-10-28.13; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program. If not, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -101,9 +101,9 @@ exit $st fi -perl_URL=http://www.perl.org/ -flex_URL=http://flex.sourceforge.net/ -gnu_software_URL=http://www.gnu.org/software +perl_URL=https://www.perl.org/ +flex_URL=https://github.com/westes/flex +gnu_software_URL=https://www.gnu.org/software program_details () { @@ -207,9 +207,9 @@ exit $st # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -Nru geos-3.6.2/NEWS geos-3.7.1/NEWS --- geos-3.6.2/NEWS 2017-07-25 09:11:04.000000000 +0000 +++ geos-3.7.1/NEWS 2018-11-29 23:31:11.000000000 +0000 @@ -1,17 +1,85 @@ -Changes in 3.6.2 -2017-07-25 +Changes in 3.7.1 +2018-11-29 - Bug fixes / improvements - - Fix exception in UnaryUnion of collection of touching polygons (#837) - - Allow building against python 3 (#774) - - Fix build with android-ndk and other compilers (#799) - - Allows compiling with -Wpointer-bool-conversion (#638) - - Fix unhandled exception on invalid fp operation (#811) - - Fix overloaded virtual print in DirectedEdge* (#812) - - AppVeyor CI build added (#813) - - Clean up numerous MSVC warnings, notably C4275 and C4589 (#814) - - Bump CMake version to 3.0.0 (#817) - - Fix leaks in WKT parser (#830) + - Fix crash in GEOSCoordSeq_isCCW with empty coordseq + (#927, Sergey Fedoseev) + - Fix crash in GEOSInterpolate with empty LineString + (#926, Sergey Fedoseev) + - Fix crash in GEOSUnaryUnion with empty LineString + (#928, Sergey Fedoseev) + - Fix memory leak in SIRtree::insert (#919, Dan Baston) + - Reduce required autoconf to 2.63 + (#56, John Harvey) + - Fix incorrect return values on error from GEOSLength + GEOSisValidDetail (#941, Dan Baston) + + +Changes in 3.7.0 +2018-09-10 + +- New things: + - CAPI: GEOSDistanceIndexed (#795, Dan Baston) + - CAPI: GEOSCoordSeq_isCCW (#870, Dan Baston) + - CAPI: GEOSGeom_getXMin, GEOSGeom_getXMax, + GEOSGeom_getYMin, GEOSGeom_getYMax (#871, Dan Baston) + - CAPI: GEOSFrechetDistance (#797, Shinichi SUGIYAMA) + - CAPI: GEOSReverse (#872, Dan Baston) + - CAPI: GEOSGeomGetZ (#581, J Smith) + +- Improvements + - Interruptible snap operation (Paul Ramsey) + - Numerous packaging, doc, and build changes + (Debian group: Bas Couwenberg, Francesco Paolo Lovergine) + (NetBSD: Greg Troxel) + - Allow static library with C API for CMake builds (#878, Dakota Hawkins) + +- C++ API changes: + - Require defining USE_UNSTABLE_GEOS_CPP_API for use without + warnings. + - Make C++11 required (Mateusz Loskot) + - Use C++11 unique_ptr, nullptr, and override constructs + (Mateusz Loskot) + - C++11 standard delete on noncopyable + (#851, Vicky Vergara) + - Fix CommonBits::getBit to correctly handle i >= 32 + (#834, Kurt Schwehr) + + +Changes in 3.7.0rc2 +2018-09-03 +Fixes / enhancements since 3.7.0rc1 + - Drop ? from extended regular expression, + so that the expression strictly conforms to the POSIX ERE rules. + (#917, Greg Troxel, Bas Couwenberg) + - include .editorconfig in tar ball, + fixes Cmake on VS (#920, Jeff Mckenna, Regina Obe) + - Ignore error in CoordinateArraySequenceFactoryTest + failing on FreeBSD/macOS Clang (#894) + +Changes in 3.7.0rc1 +2018-08-19 +Fixes / enhancements since 3.7.0beta2 + - Avoid segfault when querying empty tree (#730, framm) + - Collection with Empty components crashes overlay (#782, Dan Baston) + - Allow static library with C API for CMake builds (#878, Dakota Hawkins) + + +Changes in 3.7.0beta2 +2018-08-06 +Fixes since 3.7.0beta1 + - Fix infinite loop in GEOSClipByRect (#865, Dan Baston) + - Make GEOSException inherit from std::runtime_error + to address clang warnings (Dan Baston) + - Add missing CMake files to tarball (#895, Regina Obe) + +Changes in 3.7.0beta1 +2018-06-25 +See 3.7.0 latest notes + +Changes in 3.7.0alpha +2018-06-14 +See 3.7.0 notes Changes in 3.6.1 2016-12-24 @@ -224,7 +292,7 @@ - Fix memory leak on invalid geometry in InteriorPointArea (#475) - ValidOp abort in presence of 2 touching holes forming an island (#449) - Enable prepared intersects operation for points - - Fortify suspicious code found by static analisys tools + - Fortify suspicious code found by static analysis tools - Fix for SOLARIS build (#461) - Fix EMPTY result from GEOSOffsetCurve with distance 0 (#454) - Fix Geometry::clone to copy SRID (#464) diff -Nru geos-3.6.2/nmake.opt geos-3.7.1/nmake.opt --- geos-3.6.2/nmake.opt 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/nmake.opt 2018-10-19 22:32:06.000000000 +0000 @@ -22,7 +22,7 @@ # Set BUILD_DEBUG to YES if you want to make debug build # and to prepare not optimized binaries. -!IFNDEF BUILD_DEBUG +!IFNDEF BUILD_DEBUG BUILD_DEBUG = NO !ENDIF @@ -138,6 +138,9 @@ !ELSEIF "$(_NMAKE_VER)" == "14.00.23506.0" GEOS_MSVC = 14.0 GEOS_MSC = 1900 +!ELSEIF "$(_NMAKE_VER)" == "14.00.23918.0" +GEOS_MSVC = 14.0 +GEOS_MSC = 1900 !ELSEIF "$(_NMAKE_VER)" == "14.00.24210.0" GEOS_MSVC = 14.0 GEOS_MSC = 1900 @@ -147,6 +150,18 @@ !ELSEIF "$(_NMAKE_VER)" == "14.10.25019.0" GEOS_MSVC = 14.10 GEOS_MSC = 1910 +!ELSEIF "$(_NMAKE_VER)" == "14.11.25506.0" +GEOS_MSVC = 14.10 +GEOS_MSC = 1910 +!ELSEIF "$(_NMAKE_VER)" == "14.11.25507.1" +GEOS_MSVC = 14.10 +GEOS_MSC = 1910 +!ELSEIF "$(_NMAKE_VER)" == "14.11.25508.2" +GEOS_MSVC = 14.10 +GEOS_MSC = 1910 +!ELSEIF "$(_NMAKE_VER)" == "14.11.25547.0" +GEOS_MSVC = 14.1 +GEOS_MSC = 1910 !ELSE GEOS_MSVC = 0.0 GEOS_MSC = 0 diff -Nru geos-3.6.2/py-compile geos-3.7.1/py-compile --- geos-3.6.2/py-compile 2016-09-03 18:32:16.000000000 +0000 +++ geos-3.7.1/py-compile 2017-09-05 18:37:10.000000000 +0000 @@ -3,7 +3,7 @@ scriptversion=2011-06-08.12; # UTC -# Copyright (C) 2000-2013 Free Software Foundation, Inc. +# Copyright (C) 2000-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru geos-3.6.2/README geos-3.7.1/README --- geos-3.6.2/README 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/README 1970-01-01 00:00:00.000000000 +0000 @@ -1,116 +0,0 @@ -GEOS -- Geometry Engine, Open Source -==================================== - -Project homepage: http://geos.osgeo.org/ - -## Build status - -| branch / CI | Debbie | Winnie | Dronie | Travis CI | GitLab CI | AppVeyor | -|:--- |:--- |:--- |:--- |:--- |:--- |:--- | -| svn-trunk | [![debbie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Trunk)](https://debbie.postgis.net/view/GEOS/job/GEOS_Trunk/) | [![winnie](https://debbie.postgis.net:444/view/GEOS/job/GEOS_matrix_trunk/badge/icon)](https://debbie.postgis.net:444/view/GEOS/job/GEOS_matrix_trunk/) | [![dronie](https://drone.osgeo.org/api/badges/geos/geos/status.svg?branch=svn-trunk)](https://drone.osgeo.org/geos/geos?branch=svn-trunk) | [![travis](https://travis-ci.org/OSGeo/geos.svg?branch=svn-trunk)](https://travis-ci.org/OSGeo/geos?branch=svn-trunk) | [![gitlab-ci](https://gitlab.com/geos/libgeos/badges/svn-trunk/build.svg)](https://gitlab.com/geos/libgeos/commits/svn-trunk) | [![appveyor](https://ci.appveyor.com/api/projects/status/ao909hwpsb1yu062/branch/svn-trunk?svg=true)](https://ci.appveyor.com/project/OSGeo/geos/branch/svn-trunk) | -| svn-3.6 | [![debbie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Branch_3.6)](https://debbie.postgis.net/view/GEOS/job/GEOS_Branch_3.6/) | [![winnie](https://debbie.postgis.net:444/view/GEOS/job/GEOS_matrix_branch_3.6/badge/icon)](https://debbie.postgis.net:444/view/GEOS/job/GEOS_matrix_branch_3.6/) | [![dronie](https://drone.osgeo.org/api/badges/geos/geos/status.svg?branch=svn-3.6)](https://drone.osgeo.org/geos/geos?branch=svn-3.6) | [![travis](https://travis-ci.org/OSGeo/geos.svg?branch=svn-3.6)](https://travis-ci.org/OSGeo/geos?branch=svn-3.6) | [![gitlab-ci](https://gitlab.com/geos/libgeos/badges/svn-3.6/build.svg)](https://gitlab.com/geos/libgeos/commits/svn-3.6) | [![appveyor](https://ci.appveyor.com/api/projects/status/ao909hwpsb1yu062/branch/svn-3.6?svg=true)](https://ci.appveyor.com/project/OSGeo/geos/branch/svn-3.6) | - -More on: https://trac.osgeo.org/geos#BuildandInstall - -## Building, testing, installing - -### Unix - -Using Autotools: - - ./autogen.sh # in ${srcdir}, if obtained from SVN or GIT - ${srcdir}/configure # in build dir - -Using CMake: - - cmake ${srcdir} # in build dir - -Now, all versions: - - make - make check - make install # as root - ldconfig # as root - - -### Microsoft Windows - -If you use Microsoft Visual C++ (7.1 or later) compiler, you can build -GEOS using NMAKE program and provided `makefile.vc` files. - -If you are building from SVN or GIT checkout, first run: `autogen.bat` -Then: - - nmake /f makefile.vc MSVC_VER=1400 - -where 1400 is version number of Visual C++ compiler, here Visual C++ 8.0 -from Visual Studio 2005 (supported versions are 1300, 1310, 1400, 1500, -1600, 1700, 1800 and 1900). -The bootstrap.bat step is required to generate a couple of header files. - -In order to build debug configuration of GEOS, additional flag `DEBUG=1` -is required: - - nmake /f makefile.vc MSVC_VER=1400 DEBUG=1 - - -## Client applications - -### Using the C interface (recommended) - -To compile programs against the C lib (recommended): - - CFLAGS += `geos-config --cflags` - LDFLAGS += `geos-config --ldflags` -lgeos_c - #include - -Example usage: - - capi/geostest.c contains basic usage examples. - -### Using the C++ interface (discouraged) - -NB: The C++ interface should not be used directly; the GEOS project -views it as a bug for another program to use the C++ interface or even -to directly link against the C++ library. The C++ library name will -change on every minor release because it is too hard to know if there -have been ABI changes. (The C library uses the C++ interface, but the -C library follows normal ABI-change-sensitive versioning, so programs -that link only against the C library should work without relinking -when GEOS is upgraded.) - -To compile programs against the C++ lib: - - CFLAGS += `geos-config --cflags` - LDFLAGS += `geos-config --ldflags` -lgeos - #include - -Basic usage examples can be found in `doc/example.cpp`. - - -### Scripting language bindings - -Ruby bindings are fully supported. To build, use the `--enable-ruby` option -when configuring: - - ./configure ... --enable-ruby - -Since version 3.6.0 PHP bindings are not included in the core -library anymore but available as a separate project: - - https://git.osgeo.org/gogs/geos/php-geos - -Since version 3.0, the Python bindings are unsupported. Recommended options: - - 1. Become or recruit a new maintainer. - 2. Use [Shapely](http://pypi.python.org/pypi/Shapely) with Python - versions 2.4 or greater. - 3. Simply call functions from `libgeos_c` via Python ctypes. - -## Documentation - -To build Doxygen documentation: - - cd doc - make doxygen-html - diff -Nru geos-3.6.2/README.md geos-3.7.1/README.md --- geos-3.6.2/README.md 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/README.md 2018-11-29 22:42:00.000000000 +0000 @@ -0,0 +1,126 @@ +GEOS -- Geometry Engine, Open Source +==================================== + +Project homepage: http://geos.osgeo.org/ + +## Build status + +| branch / CI | Debbie | Winnie | Dronie | Travis CI | GitLab CI | AppVeyor | Bessie | Bessie32 | +|:--- |:--- |:--- |:--- |:--- |:--- |:--- |:--- |:--- | +| master | [![debbie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Master)](https://debbie.postgis.net/view/GEOS/job/GEOS_Master/) | [![winnie](https://winnie.postgis.net:444/view/GEOS/job/GEOS_Master/badge/icon)](https://winnie.postgis.net:444/view/GEOS/job/GEOS_Master/) | [![dronie](https://drone.osgeo.org/api/badges/geos/geos/status.svg?branch=master)](https://drone.osgeo.org/geos/geos?branch=master) | [![travis](https://travis-ci.com/libgeos/geos.svg?branch=master)](https://travis-ci.com/libgeos/geos?branch=master) | [![gitlab-ci](https://gitlab.com/geos/libgeos/badges/master/build.svg)](https://gitlab.com/geos/libgeos/commits/master) | [![appveyor](https://ci.appveyor.com/api/projects/status/ao909hwpsb1yu062/branch/master?svg=true)](https://ci.appveyor.com/project/OSGeo/geos/branch/master) | [![bessie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=bessie&BRANCH=master)](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=bessie) | [![bessie32](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Worker_Run/label=bessie32&BRANCH=master)](https://debbie.postgis.net/view/GEOS/job/GEOS_Worker_Run/label=bessie32) || +| svn-3.6 | [![debbie](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Branch_3.6)](https://debbie.postgis.net/view/GEOS/job/GEOS_Branch_3.6/) | [![winnie](https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.6/badge/icon)](https://winnie.postgis.net:444/view/GEOS/job/GEOS_Branch_3.6/) | [![dronie](https://drone.osgeo.org/api/badges/geos/geos/status.svg?branch=svn-3.6)](https://drone.osgeo.org/geos/geos?branch=svn-3.6) | [![travis](https://travis-ci.com/libgeos/geos.svg?branch=svn-3.6)](https://travis-ci.com/libgeos/geos?branch=svn-3.6) | [![gitlab-ci](https://gitlab.com/geos/libgeos/badges/svn-3.6/build.svg)](https://gitlab.com/geos/libgeos/commits/svn-3.6) | [![appveyor](https://ci.appveyor.com/api/projects/status/ao909hwpsb1yu062/branch/svn-3.6?svg=true)](https://ci.appveyor.com/project/OSGeo/geos/branch/svn-3.6) | + +More on: https://trac.osgeo.org/geos#BuildandInstall + +## Building, testing, installing + +### Prerequisites + +Building GEOS requires a C++11 compiler + +### Unix + +#### Using Autotools: + + ./autogen.sh # in ${srcdir}, if obtained from SVN or GIT + (mkdir obj && cd obj && ../configure) + +#### Using CMake: + + (mkdir build && cd build && cmake ..) + +#### Either Autotools or CMake + + make + make check + make install # (as root, assuming PREFIX is not writable by the build user) + + On a GNU/Linux system, if installed in a system prefix: + ldconfig # as root + +### Microsoft Windows + +If you use Microsoft Visual C++ (7.1 or later) compiler, you can build +GEOS using NMAKE program and provided `makefile.vc` files. + +If you are building from SVN or GIT checkout, first run: `autogen.bat` +Then: + + nmake /f makefile.vc MSVC_VER=1400 + +where 1400 is version number of Visual C++ compiler, here Visual C++ 8.0 +from Visual Studio 2005 (supported versions are 1300, 1310, 1400, 1500, +1600, 1700, 1800 and 1900). +The bootstrap.bat step is required to generate a couple of header files. + +In order to build debug configuration of GEOS, additional flag `DEBUG=1` +is required: + + nmake /f makefile.vc MSVC_VER=1400 DEBUG=1 + + +## Client applications + +### Using the C interface (recommended) + +GEOS promises long term stability of C API + +The C library uses the C++ interface, but the C library follows +normal ABI-change-sensitive versioning, so programs that link only +against the C library should work without relinking when GEOS is upgraded. + +To compile programs against the C lib (recommended): + + CFLAGS += `geos-config --cflags` + LDFLAGS += `geos-config --ldflags` -lgeos_c + #include + +Example usage: + + capi/geostest.c contains basic usage examples. + +### Using the C++ interface (no stability promise) + +Developers who decide to use the C++ interface should be aware GEOS +does not promise API or ABI stability of C++ API between releases. +Moreover C++ API/ABI breaking changes may not even be announced +or include in the NEWS file + +The C++ library name will change on every minor release because +it is too hard to know if there have been ABI changes. + +To compile programs against the C++ lib: + + CFLAGS += `geos-config --cflags` + LDFLAGS += `geos-config --ldflags` -lgeos + #include + +Basic usage examples can be found in `doc/example.cpp`. + + +### Scripting language bindings + +Ruby bindings are fully supported. To build, use the `--enable-ruby` option +when configuring: + + ./configure ... --enable-ruby + +Since version 3.6.0 PHP bindings are not included in the core +library anymore but available as a separate project: + + https://git.osgeo.org/gogs/geos/php-geos + +Since version 3.0, the Python bindings are unsupported. Recommended options: + + 1. Become or recruit a new maintainer. + 2. Use [Shapely](http://pypi.python.org/pypi/Shapely) with Python + versions 2.4 or greater. + 3. Simply call functions from `libgeos_c` via Python ctypes. + +## Documentation + +To build Doxygen documentation: + + cd doc + make doxygen-html + diff -Nru geos-3.6.2/src/algorithm/Angle.cpp geos-3.7.1/src/algorithm/Angle.cpp --- geos-3.6.2/src/algorithm/Angle.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/Angle.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2011 Sandro Santilli + * Copyright (C) 2009-2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -16,7 +16,7 @@ * **********************************************************************/ -#include +#include #include #include @@ -25,11 +25,11 @@ namespace geos { namespace algorithm { // geos.algorithm -namespace { +namespace { const double PI = 3.14159265358979323846; } -const double Angle::PI_TIMES_2 = 2.0 * PI; +const double Angle::PI_TIMES_2 = 2.0 * PI; const double Angle::PI_OVER_2 = PI / 2.0; const double Angle::PI_OVER_4 = PI / 4.0; diff -Nru geos-3.6.2/src/algorithm/BoundaryNodeRule.cpp geos-3.7.1/src/algorithm/BoundaryNodeRule.cpp --- geos-3.6.2/src/algorithm/BoundaryNodeRule.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/BoundaryNodeRule.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -25,7 +25,7 @@ // namespace. In GEOS they are hidden and only accessible as singleton // from BoundaryNodeRule static const references // -namespace { +namespace { /** * A {@link BoundaryNodeRule} specifies that points are in the @@ -44,7 +44,7 @@ class Mod2BoundaryNodeRule : public BoundaryNodeRule { public: - bool isInBoundary(int boundaryCount) const + bool isInBoundary(int boundaryCount) const override { // the "Mod-2 Rule" return boundaryCount % 2 == 1; @@ -81,7 +81,7 @@ */ class EndPointBoundaryNodeRule : public BoundaryNodeRule { - bool isInBoundary(int boundaryCount) const + bool isInBoundary(int boundaryCount) const override { return boundaryCount > 0; } @@ -99,7 +99,7 @@ */ class MultiValentEndPointBoundaryNodeRule : public BoundaryNodeRule { - bool isInBoundary(int boundaryCount) const + bool isInBoundary(int boundaryCount) const override { return boundaryCount > 1; } @@ -116,7 +116,7 @@ */ class MonoValentEndPointBoundaryNodeRule : public BoundaryNodeRule { - bool isInBoundary(int boundaryCount) const + bool isInBoundary(int boundaryCount) const override { return boundaryCount == 1; } diff -Nru geos-3.6.2/src/algorithm/CentroidArea.cpp geos-3.7.1/src/algorithm/CentroidArea.cpp --- geos-3.6.2/src/algorithm/CentroidArea.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/CentroidArea.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,7 +42,7 @@ setBasePoint(poly->getExteriorRing()->getCoordinateN(0)); add(poly); } - else if(const GeometryCollection *gc=dynamic_cast(geom)) + else if(const GeometryCollection *gc=dynamic_cast(geom)) { for(std::size_t i=0, n=gc->getNumGeometries(); i + * Copyright (C) 2013 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published diff -Nru geos-3.6.2/src/algorithm/CentroidLine.cpp geos-3.7.1/src/algorithm/CentroidLine.cpp --- geos-3.6.2/src/algorithm/CentroidLine.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/CentroidLine.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/algorithm/CentroidPoint.cpp geos-3.7.1/src/algorithm/CentroidPoint.cpp --- geos-3.6.2/src/algorithm/CentroidPoint.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/CentroidPoint.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/algorithm/CGAlgorithms.cpp geos-3.7.1/src/algorithm/CGAlgorithms.cpp --- geos-3.6.2/src/algorithm/CGAlgorithms.cpp 2017-04-04 09:13:52.000000000 +0000 +++ geos-3.7.1/src/algorithm/CGAlgorithms.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,15 +1,15 @@ -/********************************************************************** +/********************************************************************** * * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -87,7 +87,7 @@ const Coordinate *pp=&(pt->getAt(0)); for(size_t i=1; igetAt(i); + const Coordinate &p1=pt->getAt(i); if ( LineIntersector::hasIntersection(p, *pp, p1) ) return true; pp=&p1; @@ -99,15 +99,15 @@ bool CGAlgorithms::isCCW(const CoordinateSequence* ring) { - // # of points without closing endpoint - const std::size_t nPts=ring->getSize()-1; - // sanity check - if (nPts < 3) + if (ring->getSize() < 4) { throw util::IllegalArgumentException("Ring has fewer than 3 points, so orientation cannot be determined"); } + // # of points without closing endpoint + const std::size_t nPts=ring->getSize()-1; + // find highest point const Coordinate *hiPt=&ring->getAt(0); int hiIndex=0; @@ -156,7 +156,7 @@ int disc = computeOrientation(*prev, *hiPt, *next); /** - * If disc is exactly 0, lines are collinear. + * If disc is exactly 0, lines are collinear. * There are two possible cases: * (1) the lines lie along the x axis in opposite directions * (2) the lines lie on top of one another diff -Nru geos-3.6.2/src/algorithm/ConvexHull.cpp geos-3.7.1/src/algorithm/ConvexHull.cpp --- geos-3.6.2/src/algorithm/ConvexHull.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/ConvexHull.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include #include @@ -63,7 +63,7 @@ double dyq=q->y-o->y; int orient = CGAlgorithms::computeOrientation(*o, *p, *q); - + if (orient == CGAlgorithms::COUNTERCLOCKWISE) return 1; if (orient == CGAlgorithms::CLOCKWISE) return -1; @@ -97,10 +97,10 @@ CoordinateSequence * ConvexHull::toCoordinateSequence(Coordinate::ConstVect &cv) { - const CoordinateSequenceFactory *csf = + const CoordinateSequenceFactory *csf = geomFactory->getCoordinateSequenceFactory(); - // Create a new Coordinate::Vect for feeding it to + // Create a new Coordinate::Vect for feeding it to // the CoordinateSequenceFactory Coordinate::Vect *vect=new Coordinate::Vect(); @@ -161,13 +161,13 @@ Coordinate::ConstVect &dest) { computeOctPts(inputPts, dest); - + // Remove consecutive equal Coordinates // unique() returns an iterator to the end of the resulting // sequence, we erase from there to the end. dest.erase( std::unique(dest.begin(),dest.end()), dest.end() ); - // points must all lie in a line + // points must all lie in a line if ( dest.size() < 3 ) return false; // close ring @@ -230,7 +230,7 @@ if (nInputPts==0) // Return an empty geometry return geomFactory->createEmptyGeometry(); - if (nInputPts==1) // Return a Point + if (nInputPts==1) // Return a Point { // Copy the Coordinate from the ConstVect return geomFactory->createPoint(*(inputPts[0])); @@ -250,7 +250,7 @@ } GEOS_CHECK_FOR_INTERRUPTS(); - + // sort points for Graham scan. preSort(inputPts); @@ -291,7 +291,7 @@ /*private*/ void -ConvexHull::grahamScan(const Coordinate::ConstVect &c, +ConvexHull::grahamScan(const Coordinate::ConstVect &c, Coordinate::ConstVect &ps) { ps.push_back(c[0]); @@ -301,7 +301,7 @@ for(size_t i=3, n=c.size(); i 0) { @@ -412,7 +412,7 @@ // } //} - + /*private*/ bool @@ -481,7 +481,7 @@ } CoordinateSequence *cl2=toCoordinateSequence(cleaned); LinearRing *linearRing=geomFactory->createLinearRing(cl2); - return geomFactory->createPolygon(linearRing,NULL); + return geomFactory->createPolygon(linearRing,nullptr); } /*private*/ @@ -497,7 +497,7 @@ assert(last); assert(original[0]->equals2D(*last)); - const Coordinate *prev = NULL; + const Coordinate *prev = nullptr; for (size_t i=0; iequals2D(*next)) continue; - if ( prev != NULL && isBetween(*prev, *curr, *next) ) + if ( prev != nullptr && isBetween(*prev, *curr, *next) ) { continue; } diff -Nru geos-3.6.2/src/algorithm/distance/DiscreteFrechetDistance.cpp geos-3.7.1/src/algorithm/distance/DiscreteFrechetDistance.cpp --- geos-3.6.2/src/algorithm/distance/DiscreteFrechetDistance.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/src/algorithm/distance/DiscreteFrechetDistance.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -0,0 +1,156 @@ +/********************************************************************** + * + * GEOS - Geometry Engine Open Source + * http://geos.osgeo.org + * + * Copyright (C) 2016 Shinichi SUGIYAMA + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU Lesser General Public Licence as published + * by the Free Software Foundation. + * See the COPYING file for more information. + * + ********************************************************************** + * + * Last port: original work + * + **********************************************************************/ + +#include +#include + +#include +#include + +#include +#include +#include +#include +#include +using namespace geos::geom; + +namespace geos { +namespace algorithm { // geos.algorithm +namespace distance { // geos.algorithm.distance + +/* static public */ +double +DiscreteFrechetDistance::distance(const geom::Geometry& g0, + const geom::Geometry& g1) +{ + DiscreteFrechetDistance dist(g0, g1); + return dist.distance(); +} + +/* static public */ +double +DiscreteFrechetDistance::distance(const geom::Geometry& g0, + const geom::Geometry& g1, + double densifyFrac) +{ + DiscreteFrechetDistance dist(g0, g1); + dist.setDensifyFraction(densifyFrac); + return dist.distance(); +} + +/* private */ + +geom::Coordinate +DiscreteFrechetDistance::getSegementAt(const CoordinateSequence& seq, size_t index) +{ + if (densifyFrac > 0.0) + { + size_t numSubSegs = std::size_t(util::round(1.0/densifyFrac)); + size_t i = index / numSubSegs; + size_t j = index % numSubSegs; + if (i >= seq.size()-1) { + return seq.getAt(seq.size()-1); + } + const geom::Coordinate& p0 = seq.getAt(i); + const geom::Coordinate& p1 = seq.getAt(i+1); + + double delx = (p1.x - p0.x)/static_cast(numSubSegs); + double dely = (p1.y - p0.y)/static_cast(numSubSegs); + + double x = p0.x + static_cast(j)*delx; + double y = p0.y + static_cast(j)*dely; + Coordinate pt(x, y); + return pt; + } + else + { + return seq.getAt(index); + } +} + +PointPairDistance& +DiscreteFrechetDistance::getFrecheDistance(std::vector< std::vector >& ca, size_t i, size_t j, const CoordinateSequence& p, const CoordinateSequence& q) +{ + PointPairDistance ptDist; + if (! ca[i][j].getIsNull()) + { + return ca[i][j]; + } + ptDist.initialize(getSegementAt(p, i), getSegementAt(q, j)); + if (i == 0 && j == 0) + { + ca[i][j] = ptDist; + } + else if (i > 0 && j == 0) + { + PointPairDistance nextDist = getFrecheDistance(ca,i-1,0,p,q); + ca[i][j] = (nextDist.getDistance() > ptDist.getDistance()) ? nextDist : ptDist; + } + else if (i == 0 && j > 0) + { + PointPairDistance nextDist = getFrecheDistance(ca,0,j-1,p,q); + ca[i][j] = (nextDist.getDistance() > ptDist.getDistance()) ? nextDist : ptDist; + } + else + { + PointPairDistance d1 = getFrecheDistance(ca,i-1,j,p,q), + d2 = getFrecheDistance(ca,i-1,j-1,p,q), + d3 = getFrecheDistance(ca,i,j-1,p,q); + PointPairDistance& minDist = (d1.getDistance() < d2.getDistance()) ? d1 : d2; + if (d3.getDistance() < minDist.getDistance()) minDist = d3; + ca[i][j] = (minDist.getDistance() > ptDist.getDistance()) ? minDist : ptDist; + } + + return ca[i][j]; +} + +void +DiscreteFrechetDistance::compute( + const geom::Geometry& discreteGeom, + const geom::Geometry& geom) +{ + const CoordinateSequence* lp = discreteGeom.getCoordinates(); + const CoordinateSequence* lq = geom.getCoordinates(); + size_t pSize, qSize; + if (densifyFrac > 0) + { + size_t numSubSegs = std::size_t(util::round(1.0/densifyFrac)); + pSize = numSubSegs * (lp->size() - 1) + 1; + qSize = numSubSegs * (lq->size() - 1) + 1; + } + else + { + pSize = lp->size(); + qSize = lq->size(); + } + std::vector< std::vector > ca(pSize, std::vector(qSize)); + for (size_t i = 0; i < pSize; i++) + { + for (size_t j = 0; j < qSize; j++) + { + ca[i][j].initialize(); + } + } + ptDist = getFrecheDistance(ca, pSize-1, qSize-1, *lp, *lq); + delete lp; + delete lq; +} + +} // namespace geos.algorithm.distance +} // namespace geos.algorithm +} // namespace geos diff -Nru geos-3.6.2/src/algorithm/distance/DiscreteHausdorffDistance.cpp geos-3.7.1/src/algorithm/distance/DiscreteHausdorffDistance.cpp --- geos-3.6.2/src/algorithm/distance/DiscreteHausdorffDistance.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/distance/DiscreteHausdorffDistance.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -48,12 +48,12 @@ const geom::Coordinate& p0 = seq.getAt(index - 1); const geom::Coordinate& p1 = seq.getAt(index); - double delx = (p1.x - p0.x)/numSubSegs; - double dely = (p1.y - p0.y)/numSubSegs; + double delx = (p1.x - p0.x) / static_cast(numSubSegs); + double dely = (p1.y - p0.y) / static_cast(numSubSegs); for (size_t i = 0; i < numSubSegs; ++i) { - double x = p0.x + i*delx; - double y = p0.y + i*dely; + double x = p0.x + static_cast(i) * delx; + double y = p0.y + static_cast(i) * dely; Coordinate pt(x, y); minPtDist.initialize(); DistanceToPoint::computeDistance(geom, pt, minPtDist); diff -Nru geos-3.6.2/src/algorithm/distance/DistanceToPoint.cpp geos-3.7.1/src/algorithm/distance/DistanceToPoint.cpp --- geos-3.6.2/src/algorithm/distance/DistanceToPoint.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/distance/DistanceToPoint.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/algorithm/distance/Makefile.am geos-3.7.1/src/algorithm/distance/Makefile.am --- geos-3.6.2/src/algorithm/distance/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/distance/Makefile.am 2018-10-19 22:32:06.000000000 +0000 @@ -9,6 +9,7 @@ libdistance_la_SOURCES = \ DiscreteHausdorffDistance.cpp \ + DiscreteFrechetDistance.cpp \ DistanceToPoint.cpp libdistance_la_LIBADD = diff -Nru geos-3.6.2/src/algorithm/distance/Makefile.in geos-3.7.1/src/algorithm/distance/Makefile.in --- geos-3.6.2/src/algorithm/distance/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/algorithm/distance/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -111,7 +114,7 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) libdistance_la_DEPENDENCIES = am_libdistance_la_OBJECTS = DiscreteHausdorffDistance.lo \ - DistanceToPoint.lo + DiscreteFrechetDistance.lo DistanceToPoint.lo libdistance_la_OBJECTS = $(am_libdistance_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -131,7 +134,10 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/DiscreteFrechetDistance.Plo \ + ./$(DEPDIR)/DiscreteHausdorffDistance.Plo \ + ./$(DEPDIR)/DistanceToPoint.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +179,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +268,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +317,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +339,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +389,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -401,6 +410,7 @@ AM_CPPFLAGS = -I$(top_srcdir)/include libdistance_la_SOURCES = \ DiscreteHausdorffDistance.cpp \ + DiscreteFrechetDistance.cpp \ DistanceToPoint.cpp libdistance_la_LIBADD = @@ -425,8 +435,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -458,8 +468,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DiscreteHausdorffDistance.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DistanceToPoint.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DiscreteFrechetDistance.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DiscreteHausdorffDistance.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DistanceToPoint.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -587,7 +604,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -683,7 +703,9 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DiscreteFrechetDistance.Plo + -rm -f ./$(DEPDIR)/DiscreteHausdorffDistance.Plo + -rm -f ./$(DEPDIR)/DistanceToPoint.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -729,7 +751,9 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DiscreteFrechetDistance.Plo + -rm -f ./$(DEPDIR)/DiscreteHausdorffDistance.Plo + -rm -f ./$(DEPDIR)/DistanceToPoint.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -750,8 +774,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/algorithm/HCoordinate.cpp geos-3.7.1/src/algorithm/HCoordinate.cpp --- geos-3.6.2/src/algorithm/HCoordinate.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/HCoordinate.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * Copyright (C) 2005 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/algorithm/InteriorPointArea.cpp geos-3.7.1/src/algorithm/InteriorPointArea.cpp --- geos-3.6.2/src/algorithm/InteriorPointArea.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/algorithm/InteriorPointArea.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2013 Sandro Santilli + * Copyright (C) 2013 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -30,7 +30,7 @@ #include #include -#include // for auto_ptr +#include // for unique_ptr using namespace std; using namespace geos::geom; @@ -49,11 +49,11 @@ * and finding the Y-ordinate interval * which contains the centre of the Y extent. * The centre of this interval is returned as the bisector Y-ordinate. - * + * * @author mdavis * */ - class SafeBisectorFinder + class SafeBisectorFinder { public: static double getBisectorY(const Polygon& poly) @@ -80,14 +80,14 @@ return bisectY; } - - private: + + private: const Polygon& poly; - + double centreY; double hiY; double loY; - + void process(const LineString& line) { const CoordinateSequence* seq = line.getCoordinatesRO(); for (std::size_t i = 0, s = seq->size(); i < s; i++) { @@ -130,7 +130,7 @@ } /*public*/ -bool +bool InteriorPointArea::getInteriorPoint(Coordinate& ret) const { if ( ! foundInterior ) return false; @@ -167,13 +167,13 @@ Coordinate intPt; double width; - auto_ptr bisector ( horizontalBisector(geometry) ); + unique_ptr bisector ( horizontalBisector(geometry) ); if ( bisector->getLength() == 0.0 ) { width = 0; intPt = bisector->getCoordinateN(0); } else { - auto_ptr intersections ( bisector->intersection(geometry) ); + unique_ptr intersections ( bisector->intersection(geometry) ); const Geometry *widestIntersection = widestGeometry(intersections.get()); const Envelope *env = widestIntersection->getEnvelopeInternal(); width=env->getWidth(); diff -Nru geos-3.6.2/src/algorithm/InteriorPointLine.cpp geos-3.7.1/src/algorithm/InteriorPointLine.cpp --- geos-3.6.2/src/algorithm/InteriorPointLine.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/InteriorPointLine.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/algorithm/InteriorPointPoint.cpp geos-3.7.1/src/algorithm/InteriorPointPoint.cpp --- geos-3.6.2/src/algorithm/InteriorPointPoint.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/InteriorPointPoint.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/algorithm/LineIntersector.cpp geos-3.7.1/src/algorithm/LineIntersector.cpp --- geos-3.6.2/src/algorithm/LineIntersector.cpp 2017-04-04 09:13:52.000000000 +0000 +++ geos-3.7.1/src/algorithm/LineIntersector.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,4 +1,4 @@ -/********************************************************************** +/********************************************************************** * * GEOS - Geometry Engine Open Source * http://geos.osgeo.org @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -33,7 +33,7 @@ #include // for max() #include #include // for fabs() -#include +#include #ifndef GEOS_DEBUG @@ -404,7 +404,7 @@ int Pq1=CGAlgorithms::orientationIndex(p1,p2,q1); int Pq2=CGAlgorithms::orientationIndex(p1,p2,q2); - if ((Pq1>0 && Pq2>0) || (Pq1<0 && Pq2<0)) + if ((Pq1>0 && Pq2>0) || (Pq1<0 && Pq2<0)) { #if GEOS_DEBUG cerr<<" NO_INTERSECTION"<makePrecise(intPtOut); } @@ -848,17 +848,17 @@ double minY0 = n00.y < n01.y ? n00.y : n01.y; double maxX0 = n00.x > n01.x ? n00.x : n01.x; double maxY0 = n00.y > n01.y ? n00.y : n01.y; - + double minX1 = n10.x < n11.x ? n10.x : n11.x; double minY1 = n10.y < n11.y ? n10.y : n11.y; double maxX1 = n10.x > n11.x ? n10.x : n11.x; double maxY1 = n10.y > n11.y ? n10.y : n11.y; - + double intMinX = minX0 > minX1 ? minX0 : minX1; double intMaxX = maxX0 < maxX1 ? maxX0 : maxX1; double intMinY = minY0 > minY1 ? minY0 : minY1; double intMaxY = maxY0 < maxY1 ? maxY0 : maxY1; - + double intMidX = (intMinX + intMaxX) / 2.0; double intMidY = (intMinY + intMaxY) / 2.0; diff -Nru geos-3.6.2/src/algorithm/locate/IndexedPointInAreaLocator.cpp geos-3.7.1/src/algorithm/locate/IndexedPointInAreaLocator.cpp --- geos-3.6.2/src/algorithm/locate/IndexedPointInAreaLocator.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/algorithm/locate/IndexedPointInAreaLocator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -24,14 +24,14 @@ #include #include #include -#include +#include #include #include namespace geos { -namespace algorithm { -namespace locate { +namespace algorithm { +namespace locate { // // private: // @@ -45,13 +45,13 @@ { delete index; - for ( size_t i = 0, ni = allocatedSegments.size(); i < ni; ++i ) + for ( size_t i = 0, ni = allocatedSegments.size(); i < ni; ++i ) { delete allocatedSegments[i]; } } -void +void IndexedPointInAreaLocator::IntervalIndexedGeometry::init( const geom::Geometry & g) { geom::LineString::ConstVect lines; @@ -68,23 +68,23 @@ } } -void +void IndexedPointInAreaLocator::IntervalIndexedGeometry::addLine( geom::CoordinateSequence * pts) { - for ( size_t i = 1, ni = pts->size(); i < ni; i++ ) + for ( size_t i = 1, ni = pts->size(); i < ni; i++ ) { geom::LineSegment * seg = new geom::LineSegment( (*pts)[ i - 1 ], (*pts)[ i ]); double const min = std::min( seg->p0.y, seg->p1.y); double const max = std::max( seg->p0.y, seg->p1.y); - + // NOTE: seg ownership still ours allocatedSegments.push_back(seg); index->insert( min, max, seg); } -} +} -void +void IndexedPointInAreaLocator::buildIndex( const geom::Geometry & g) { index = new IndexedPointInAreaLocator::IntervalIndexedGeometry( g); @@ -102,11 +102,11 @@ : areaGeom( g) { if ( typeid( areaGeom) != typeid( geom::Polygon) - && typeid( areaGeom) != typeid( geom::MultiPolygon) ) + && typeid( areaGeom) != typeid( geom::MultiPolygon) ) throw new util::IllegalArgumentException("Argument must be Polygonal"); //areaGeom = g; - + buildIndex( areaGeom); } @@ -115,7 +115,7 @@ delete index; } -int +int IndexedPointInAreaLocator::locate( const geom::Coordinate * /*const*/ p) { algorithm::RayCrossingCounter rcc(*p); @@ -127,7 +127,7 @@ return rcc.getLocation(); } -void +void IndexedPointInAreaLocator::SegmentVisitor::visitItem( void * item) { geom::LineSegment * seg = (geom::LineSegment *)item; @@ -135,7 +135,7 @@ counter->countSegment( (*seg)[ 0 ], (*seg)[ 1 ]); } -void +void IndexedPointInAreaLocator::IntervalIndexedGeometry::query( double min, double max, index::ItemVisitor * visitor) { index->query( min, max, visitor); diff -Nru geos-3.6.2/src/algorithm/locate/Makefile.in geos-3.7.1/src/algorithm/locate/Makefile.in --- geos-3.6.2/src/algorithm/locate/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/algorithm/locate/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,10 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/IndexedPointInAreaLocator.Plo \ + ./$(DEPDIR)/PointOnGeometryLocator.Plo \ + ./$(DEPDIR)/SimplePointInAreaLocator.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +179,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +268,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +317,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +339,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +389,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -426,8 +435,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -459,9 +468,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IndexedPointInAreaLocator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointOnGeometryLocator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimplePointInAreaLocator.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IndexedPointInAreaLocator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointOnGeometryLocator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimplePointInAreaLocator.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -589,7 +604,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -685,7 +703,9 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/IndexedPointInAreaLocator.Plo + -rm -f ./$(DEPDIR)/PointOnGeometryLocator.Plo + -rm -f ./$(DEPDIR)/SimplePointInAreaLocator.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -731,7 +751,9 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/IndexedPointInAreaLocator.Plo + -rm -f ./$(DEPDIR)/PointOnGeometryLocator.Plo + -rm -f ./$(DEPDIR)/SimplePointInAreaLocator.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -752,8 +774,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/algorithm/locate/PointOnGeometryLocator.cpp geos-3.7.1/src/algorithm/locate/PointOnGeometryLocator.cpp --- geos-3.6.2/src/algorithm/locate/PointOnGeometryLocator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/locate/PointOnGeometryLocator.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/algorithm/locate/SimplePointInAreaLocator.cpp geos-3.7.1/src/algorithm/locate/SimplePointInAreaLocator.cpp --- geos-3.6.2/src/algorithm/locate/SimplePointInAreaLocator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/locate/SimplePointInAreaLocator.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -52,7 +52,7 @@ { return containsPointInPolygon(p, poly); } - + if (const GeometryCollection *col = dynamic_cast(geom)) { for (GeometryCollection::const_iterator @@ -61,7 +61,7 @@ ++it) { const Geometry *g2=*it; - assert (g2!=geom); + assert (g2!=geom); if (containsPoint(p,g2)) return true; } } diff -Nru geos-3.6.2/src/algorithm/Makefile.in geos-3.7.1/src/algorithm/Makefile.in --- geos-3.6.2/src/algorithm/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/algorithm/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -138,7 +141,23 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/Angle.Plo \ + ./$(DEPDIR)/BoundaryNodeRule.Plo ./$(DEPDIR)/CGAlgorithms.Plo \ + ./$(DEPDIR)/Centroid.Plo ./$(DEPDIR)/CentroidArea.Plo \ + ./$(DEPDIR)/CentroidLine.Plo ./$(DEPDIR)/CentroidPoint.Plo \ + ./$(DEPDIR)/ConvexHull.Plo ./$(DEPDIR)/HCoordinate.Plo \ + ./$(DEPDIR)/InteriorPointArea.Plo \ + ./$(DEPDIR)/InteriorPointLine.Plo \ + ./$(DEPDIR)/InteriorPointPoint.Plo \ + ./$(DEPDIR)/LineIntersector.Plo ./$(DEPDIR)/MCPointInRing.Plo \ + ./$(DEPDIR)/MinimumDiameter.Plo \ + ./$(DEPDIR)/NotRepresentableException.Plo \ + ./$(DEPDIR)/PointLocator.Plo \ + ./$(DEPDIR)/RayCrossingCounter.Plo \ + ./$(DEPDIR)/RobustDeterminant.Plo \ + ./$(DEPDIR)/SIRtreePointInRing.Plo \ + ./$(DEPDIR)/SimplePointInRing.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -180,7 +199,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -269,6 +288,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -317,6 +337,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -337,6 +359,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -386,7 +409,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -462,8 +484,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -495,27 +517,33 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Angle.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BoundaryNodeRule.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CGAlgorithms.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Centroid.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CentroidArea.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CentroidLine.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CentroidPoint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConvexHull.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HCoordinate.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InteriorPointArea.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InteriorPointLine.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InteriorPointPoint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineIntersector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCPointInRing.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MinimumDiameter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NotRepresentableException.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointLocator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RayCrossingCounter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RobustDeterminant.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SIRtreePointInRing.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimplePointInRing.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Angle.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BoundaryNodeRule.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CGAlgorithms.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Centroid.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CentroidArea.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CentroidLine.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CentroidPoint.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConvexHull.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HCoordinate.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InteriorPointArea.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InteriorPointLine.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InteriorPointPoint.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineIntersector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCPointInRing.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MinimumDiameter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NotRepresentableException.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointLocator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RayCrossingCounter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RobustDeterminant.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SIRtreePointInRing.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimplePointInRing.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -643,7 +671,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -739,7 +770,27 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Angle.Plo + -rm -f ./$(DEPDIR)/BoundaryNodeRule.Plo + -rm -f ./$(DEPDIR)/CGAlgorithms.Plo + -rm -f ./$(DEPDIR)/Centroid.Plo + -rm -f ./$(DEPDIR)/CentroidArea.Plo + -rm -f ./$(DEPDIR)/CentroidLine.Plo + -rm -f ./$(DEPDIR)/CentroidPoint.Plo + -rm -f ./$(DEPDIR)/ConvexHull.Plo + -rm -f ./$(DEPDIR)/HCoordinate.Plo + -rm -f ./$(DEPDIR)/InteriorPointArea.Plo + -rm -f ./$(DEPDIR)/InteriorPointLine.Plo + -rm -f ./$(DEPDIR)/InteriorPointPoint.Plo + -rm -f ./$(DEPDIR)/LineIntersector.Plo + -rm -f ./$(DEPDIR)/MCPointInRing.Plo + -rm -f ./$(DEPDIR)/MinimumDiameter.Plo + -rm -f ./$(DEPDIR)/NotRepresentableException.Plo + -rm -f ./$(DEPDIR)/PointLocator.Plo + -rm -f ./$(DEPDIR)/RayCrossingCounter.Plo + -rm -f ./$(DEPDIR)/RobustDeterminant.Plo + -rm -f ./$(DEPDIR)/SIRtreePointInRing.Plo + -rm -f ./$(DEPDIR)/SimplePointInRing.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -785,7 +836,27 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Angle.Plo + -rm -f ./$(DEPDIR)/BoundaryNodeRule.Plo + -rm -f ./$(DEPDIR)/CGAlgorithms.Plo + -rm -f ./$(DEPDIR)/Centroid.Plo + -rm -f ./$(DEPDIR)/CentroidArea.Plo + -rm -f ./$(DEPDIR)/CentroidLine.Plo + -rm -f ./$(DEPDIR)/CentroidPoint.Plo + -rm -f ./$(DEPDIR)/ConvexHull.Plo + -rm -f ./$(DEPDIR)/HCoordinate.Plo + -rm -f ./$(DEPDIR)/InteriorPointArea.Plo + -rm -f ./$(DEPDIR)/InteriorPointLine.Plo + -rm -f ./$(DEPDIR)/InteriorPointPoint.Plo + -rm -f ./$(DEPDIR)/LineIntersector.Plo + -rm -f ./$(DEPDIR)/MCPointInRing.Plo + -rm -f ./$(DEPDIR)/MinimumDiameter.Plo + -rm -f ./$(DEPDIR)/NotRepresentableException.Plo + -rm -f ./$(DEPDIR)/PointLocator.Plo + -rm -f ./$(DEPDIR)/RayCrossingCounter.Plo + -rm -f ./$(DEPDIR)/RobustDeterminant.Plo + -rm -f ./$(DEPDIR)/SIRtreePointInRing.Plo + -rm -f ./$(DEPDIR)/SimplePointInRing.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -806,8 +877,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/algorithm/MCPointInRing.cpp geos-3.7.1/src/algorithm/MCPointInRing.cpp --- geos-3.6.2/src/algorithm/MCPointInRing.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/MCPointInRing.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -21,8 +21,8 @@ #include #include #include -#include -#include +#include +#include #include @@ -53,8 +53,8 @@ : ring(newRing), interval(), - pts(NULL), - tree(NULL), + pts(nullptr), + tree(nullptr), crossings(0) { buildIndex(); diff -Nru geos-3.6.2/src/algorithm/MinimumDiameter.cpp geos-3.7.1/src/algorithm/MinimumDiameter.cpp --- geos-3.6.2/src/algorithm/MinimumDiameter.cpp 2017-01-18 08:25:50.000000000 +0000 +++ geos-3.7.1/src/algorithm/MinimumDiameter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -34,7 +34,7 @@ #include #include -#include /* fabs */ +#include // for fabs() using namespace geos::geom; @@ -68,12 +68,12 @@ MinimumDiameter::MinimumDiameter(const Geometry* newInputGeom) { minBaseSeg=new LineSegment(); - minWidthPt=NULL; + minWidthPt=nullptr; minPtIndex=0; minWidth=0.0; inputGeom=newInputGeom; isConvex=false; - convexHullPts=NULL; + convexHullPts=nullptr; } /** @@ -89,11 +89,11 @@ MinimumDiameter::MinimumDiameter(const Geometry* newInputGeom, const bool newIsConvex) { minBaseSeg=new LineSegment(); - minWidthPt=NULL; + minWidthPt=nullptr; minWidth=0.0; inputGeom=newInputGeom; isConvex=newIsConvex; - convexHullPts=NULL; + convexHullPts=nullptr; } MinimumDiameter::~MinimumDiameter() @@ -152,8 +152,8 @@ { computeMinimumDiameter(); // return empty linestring if no minimum width calculated - if (minWidthPt==NULL) - return inputGeom->getFactory()->createLineString(NULL); + if (minWidthPt==nullptr) + return inputGeom->getFactory()->createLineString(nullptr); Coordinate basePt; minBaseSeg->project(*minWidthPt, basePt); @@ -169,7 +169,7 @@ MinimumDiameter::computeMinimumDiameter() { // check if computation is cached - if (minWidthPt!=NULL) + if (minWidthPt!=nullptr) return; if (isConvex) computeWidthConvex(inputGeom); @@ -203,9 +203,9 @@ case 0: minWidth=0.0; delete minWidthPt; - minWidthPt=NULL; + minWidthPt=nullptr; delete minBaseSeg; - minBaseSeg=NULL; + minBaseSeg=nullptr; break; case 1: minWidth = 0.0; @@ -351,7 +351,7 @@ seq->setAt(p0, 4); // close LinearRing* shell = inputGeom->getFactory()->createLinearRing( seq ); - return inputGeom->getFactory()->createPolygon( shell, NULL ); + return inputGeom->getFactory()->createPolygon( shell, nullptr ); } double MinimumDiameter::computeC(double a, double b, const Coordinate& p) diff -Nru geos-3.6.2/src/algorithm/NotRepresentableException.cpp geos-3.7.1/src/algorithm/NotRepresentableException.cpp --- geos-3.6.2/src/algorithm/NotRepresentableException.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/NotRepresentableException.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -24,7 +24,7 @@ GEOSException( "NotRepresentableException", "Projective point not representable on the Cartesian plane.") - + { } diff -Nru geos-3.6.2/src/algorithm/PointLocator.cpp geos-3.7.1/src/algorithm/PointLocator.cpp --- geos-3.6.2/src/algorithm/PointLocator.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/algorithm/PointLocator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,12 +8,12 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** * - * Last port: algorithm/PointLocator.java r320 (JTS-1.12) + * Last port: algorithm/PointLocator.java 95fbe34b (JTS-1.15.2-SNAPSHOT) * **********************************************************************/ @@ -128,6 +128,9 @@ int PointLocator::locate(const Coordinate& p, const LineString *l) { + if (!l->getEnvelopeInternal()->intersects(p)) + return Location::EXTERIOR; + const CoordinateSequence* pt=l->getCoordinatesRO(); if (! l->isClosed()) { if ((p==pt->getAt(0)) || (p==pt->getAt(pt->getSize()-1))) { @@ -143,11 +146,13 @@ int PointLocator::locateInPolygonRing(const Coordinate& p, const LinearRing *ring) { - // can this test be folded into isPointInRing ? + if (!ring->getEnvelopeInternal()->intersects(p)) { + return Location::EXTERIOR; + } const CoordinateSequence *cl = ring->getCoordinatesRO(); - if (CGAlgorithms::isOnLine(p,cl)) + if (CGAlgorithms::isOnLine(p,cl)) return Location::BOUNDARY; if (CGAlgorithms::isPointInRing(p,cl)) return Location::INTERIOR; diff -Nru geos-3.6.2/src/algorithm/RayCrossingCounter.cpp geos-3.7.1/src/algorithm/RayCrossingCounter.cpp --- geos-3.6.2/src/algorithm/RayCrossingCounter.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/algorithm/RayCrossingCounter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -37,13 +37,13 @@ // // public: // -/*static*/ int +/*static*/ int RayCrossingCounter::locatePointInRing(const geom::Coordinate& point, - const geom::CoordinateSequence& ring) + const geom::CoordinateSequence& ring) { RayCrossingCounter rcc(point); - for (std::size_t i = 1, ni = ring.size(); i < ni; i++) + for (std::size_t i = 1, ni = ring.size(); i < ni; i++) { const geom::Coordinate & p1 = ring[ i - 1 ]; const geom::Coordinate & p2 = ring[ i ]; @@ -56,13 +56,13 @@ return rcc.getLocation(); } -/*static*/ int +/*static*/ int RayCrossingCounter::locatePointInRing(const geom::Coordinate& point, const std::vector& ring) { RayCrossingCounter rcc(point); - for (std::size_t i = 1, ni = ring.size(); i < ni; i++) + for (std::size_t i = 1, ni = ring.size(); i < ni; i++) { const geom::Coordinate & p1 = *ring[ i - 1 ]; const geom::Coordinate & p2 = *ring[ i ]; @@ -90,20 +90,20 @@ return RobustDeterminant::signOfDet2x2(dx1,dy1,dx2,dy2); } -void +void RayCrossingCounter::countSegment(const geom::Coordinate& p1, - const geom::Coordinate& p2) + const geom::Coordinate& p2) { - // For each segment, check if it crosses + // For each segment, check if it crosses // a horizontal ray running from the test point in // the positive x direction. - + // check if the segment is strictly to the left of the test point if (p1.x < point.x && p2.x < point.x) return; - + // check if the point is equal to the current ring vertex - if (point.x == p2.x && point.y == p2.y) + if (point.x == p2.x && point.y == p2.y) { isPointOnSegment = true; return; @@ -111,18 +111,18 @@ // For horizontal segments, check if the point is on the segment. // Otherwise, horizontal segments are not counted. - if (p1.y == point.y && p2.y == point.y) + if (p1.y == point.y && p2.y == point.y) { double minx = p1.x; double maxx = p2.x; - if (minx > maxx) + if (minx > maxx) { minx = p2.x; maxx = p1.x; } - - if (point.x >= minx && point.x <= maxx) + + if (point.x >= minx && point.x <= maxx) isPointOnSegment = true; return; @@ -136,7 +136,7 @@ // - a downward edge excludes its starting endpoint, and includes its // final endpoint if (((p1.y > point.y) && (p2.y <= point.y)) || - ((p2.y > point.y) && (p1.y <= point.y)) ) + ((p2.y > point.y) && (p1.y <= point.y)) ) { // For an upward edge, orientationIndex will be positive when p1->p2 // crosses ray. Conversely, downward edges should have negative sign. @@ -157,8 +157,8 @@ } -int -RayCrossingCounter::getLocation() +int +RayCrossingCounter::getLocation() { if (isPointOnSegment) return geom::Location::BOUNDARY; @@ -167,12 +167,12 @@ // of X-crossings is odd. if ((crossingCount % 2) == 1) return geom::Location::INTERIOR; - + return geom::Location::EXTERIOR; } -bool +bool RayCrossingCounter::isPointInPolygon() { return getLocation() != geom::Location::EXTERIOR; diff -Nru geos-3.6.2/src/algorithm/RobustDeterminant.cpp geos-3.7.1/src/algorithm/RobustDeterminant.cpp --- geos-3.6.2/src/algorithm/RobustDeterminant.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/algorithm/RobustDeterminant.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -9,7 +9,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ * * Author : Olivier Devillers * Olivier.Devillers@sophia.inria.fr - * http:/www.inria.fr:/prisme/personnel/devillers/anglais/determinant.html + * http://www-sop.inria.fr/prisme/logiciel/determinant.html * * Olivier Devillers has allowed the code to be distributed under * the LGPL (2012-02-16) saying "It is ok for LGPL distribution." @@ -244,7 +244,7 @@ k=std::floor(x1/x2); x1=x1-k*x2; y1=y1-k*y2; - + /* * testing if R (new U1) is in U2 rectangle */ diff -Nru geos-3.6.2/src/algorithm/SimplePointInRing.cpp geos-3.7.1/src/algorithm/SimplePointInRing.cpp --- geos-3.6.2/src/algorithm/SimplePointInRing.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/algorithm/SimplePointInRing.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/algorithm/SIRtreePointInRing.cpp geos-3.7.1/src/algorithm/SIRtreePointInRing.cpp --- geos-3.6.2/src/algorithm/SIRtreePointInRing.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/algorithm/SIRtreePointInRing.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,7 +35,7 @@ SIRtreePointInRing::SIRtreePointInRing(LinearRing *newRing): PointInRing(), ring(newRing), - sirTree(NULL), + sirTree(nullptr), crossings(0) { buildIndex(); diff -Nru geos-3.6.2/src/CMakeLists.txt geos-3.7.1/src/CMakeLists.txt --- geos-3.6.2/src/CMakeLists.txt 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/CMakeLists.txt 2018-11-29 22:42:00.000000000 +0000 @@ -14,15 +14,16 @@ file(GLOB_RECURSE geos_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp) file(GLOB_RECURSE geos_ALL_HEADERS ${CMAKE_SOURCE_DIR}/include/*.h) # fix source_group issue +# Include CAPI in OS X framework binary and in static libs +set(geos_c_SOURCES + ${CMAKE_CURRENT_SOURCE_DIR}/../capi/geos_c.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/../capi/geos_ts_c.cpp) + if(GEOS_ENABLE_MACOSX_FRAMEWORK) # OS X frameworks don't have static libs # also 1 binary, so include CAPI here # and, make name all caps - set(geos_c_SOURCES - ${CMAKE_CURRENT_SOURCE_DIR}/../capi/geos_c.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/../capi/geos_ts_c.cpp) - add_library(GEOS SHARED ${geos_SOURCES} ${geos_c_SOURCES}) math(EXPR CVERSION "${VERSION_MAJOR} + 1") @@ -77,7 +78,8 @@ endif() if(GEOS_BUILD_STATIC) - add_library(geos-static STATIC ${geos_SOURCES} ${geos_ALL_HEADERS}) + file(GLOB geos_capi_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/../capi/*.h) # fix source_group issue + add_library(geos-static STATIC ${geos_SOURCES} ${geos_c_SOURCES} ${geos_ALL_HEADERS} ${geos_capi_HEADERS}) set_target_properties(geos-static PROPERTIES @@ -85,6 +87,8 @@ PREFIX "lib" CLEAN_DIRECT_OUTPUT 1) + add_dependencies(geos-static geos_revision) + install(TARGETS geos-static RUNTIME DESTINATION bin LIBRARY DESTINATION lib diff -Nru geos-3.6.2/src/geom/CoordinateArraySequence.cpp geos-3.7.1/src/geom/CoordinateArraySequence.cpp --- geos-3.6.2/src/geom/CoordinateArraySequence.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/CoordinateArraySequence.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -36,7 +36,7 @@ { } -CoordinateArraySequence::CoordinateArraySequence(size_t n, +CoordinateArraySequence::CoordinateArraySequence(size_t n, size_t dimension_in ): vect(new vector(n)), dimension(dimension_in) @@ -89,13 +89,13 @@ return vect; //new vector(vect->begin(),vect->end()); } -std::size_t +std::size_t CoordinateArraySequence::getDimension() const { if( dimension != 0 ) return dimension; - if( vect->size() == 0 ) + if( vect->empty() ) return 3; if( ISNAN((*vect)[0].z) ) @@ -279,7 +279,7 @@ // We use == operator, which is 2D only vector::iterator new_end = \ std::unique(vect->begin(), vect->end()); - + vect->erase(new_end, vect->end()); return *this; diff -Nru geos-3.6.2/src/geom/CoordinateArraySequenceFactory.cpp geos-3.7.1/src/geom/CoordinateArraySequenceFactory.cpp --- geos-3.6.2/src/geom/CoordinateArraySequenceFactory.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/CoordinateArraySequenceFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geom/CoordinateSequence.cpp geos-3.7.1/src/geom/CoordinateSequence.cpp --- geos-3.6.2/src/geom/CoordinateSequence.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/geom/CoordinateSequence.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -64,7 +64,7 @@ // FIXME: return NULL rather then empty coordinate array return CoordinateArraySequenceFactory::instance()->create(); } -} +} bool @@ -82,10 +82,10 @@ const Coordinate* CoordinateSequence::minCoordinate() const { - const Coordinate* minCoord=NULL; + const Coordinate* minCoord=nullptr; const std::size_t size=getSize(); for(std::size_t i=0; icompareTo(getAt(i))>0) { + if(minCoord==nullptr || minCoord->compareTo(getAt(i))>0) { minCoord=&getAt(i); } } @@ -95,10 +95,10 @@ const Coordinate* CoordinateSequence::minCoordinate(CoordinateSequence *cl) { - const Coordinate* minCoord=NULL; + const Coordinate* minCoord=nullptr; const std::size_t size=cl->getSize(); for(std::size_t i=0;icompareTo(cl->getAt(i))>0) { + if(minCoord==nullptr || minCoord->compareTo(cl->getAt(i))>0) { minCoord=&(cl->getAt(i)); } } @@ -177,7 +177,7 @@ // FIXME: use std::equals() if (cl1==cl2) return true; - if (cl1==NULL||cl2==NULL) return false; + if (cl1==nullptr||cl2==nullptr) return false; size_t npts1=cl1->getSize(); if (npts1!=cl2->getSize()) return false; for (size_t i=0; i= minx && other.getMaxX() <= maxx && other.getMinY() >= miny && @@ -332,12 +332,21 @@ other->getMaxY() == maxy; } +/* public */ +std::ostream& operator<< (std::ostream& os, const Envelope& o) +{ + os << "Env[" << o.minx << ":" << o.maxx << "," + << o.miny << ":" << o.maxy << "]"; + return os; +} + + /*public*/ string Envelope::toString() const { ostringstream s; - s<<"Env["< #include #include +#include #include #include #include @@ -61,7 +62,7 @@ GeometryCollection::GeometryCollection(vector *newGeoms, const GeometryFactory *factory): Geometry(factory) { - if (newGeoms==NULL) { + if (newGeoms==nullptr) { geometries=new vector(); return; } @@ -81,7 +82,7 @@ /* * Collects all coordinates of all subgeometries into a CoordinateSequence. - * + * * Returns a newly the collected coordinates * */ @@ -98,7 +99,7 @@ k++; (*coordinates)[k] = childCoordinates->getAt(j); } - delete childCoordinates; + delete childCoordinates; } return CoordinateArraySequenceFactory::instance()->create(coordinates); } @@ -135,7 +136,7 @@ return dimension; } -int +int GeometryCollection::getCoordinateDimension() const { int dimension=2; @@ -249,10 +250,10 @@ sort(geometries->begin(), geometries->end(), GeometryGreaterThen()); } -Envelope::AutoPtr +Envelope::Ptr GeometryCollection::computeEnvelopeInternal() const { - Envelope::AutoPtr envelope(new Envelope()); + Envelope::Ptr envelope(new Envelope()); for (size_t i=0; isize(); i++) { const Envelope *env=(*geometries)[i]->getEnvelopeInternal(); envelope->expandToInclude(env); @@ -270,7 +271,7 @@ const Coordinate* GeometryCollection::getCoordinate() const { - // should use auto_ptr here or return NULL or throw an exception ! + // should use unique_ptr here or return NULL or throw an exception ! // --strk; if (isEmpty()) return new Coordinate(); return (*geometries)[0]->getCoordinate(); @@ -367,5 +368,24 @@ return GEOS_GEOMETRYCOLLECTION; } +Geometry* +GeometryCollection::reverse() const +{ + if (isEmpty()) { + return clone(); + } + + auto* reversed = new std::vector{geometries->size()}; + + std::transform(geometries->begin(), + geometries->end(), + reversed->begin(), + [](const Geometry* g) { + return g->reverse(); + }); + + return getFactory()->createGeometryCollection(reversed); +} + } // namespace geos::geom } // namespace geos diff -Nru geos-3.6.2/src/geom/GeometryComponentFilter.cpp geos-3.7.1/src/geom/GeometryComponentFilter.cpp --- geos-3.6.2/src/geom/GeometryComponentFilter.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/GeometryComponentFilter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geom/Geometry.cpp geos-3.7.1/src/geom/Geometry.cpp --- geos-3.6.2/src/geom/Geometry.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/Geometry.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 2011 Sandro Santilli + * Copyright (C) 2009 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -86,7 +86,7 @@ /* - * Return current GEOS version + * Return current GEOS version */ string geosversion() @@ -108,13 +108,13 @@ Geometry::Geometry(const GeometryFactory *newFactory) : - envelope(NULL), + envelope(nullptr), _factory(newFactory), - _userData(NULL) + _userData(nullptr) { - if ( _factory == NULL ) { + if ( _factory == nullptr ) { _factory = GeometryFactory::getDefaultInstance(); - } + } SRID=_factory->getSRID(); _factory->addRef(); } @@ -123,13 +123,13 @@ : SRID(geom.getSRID()), _factory(geom._factory), - _userData(NULL) + _userData(nullptr) { if ( geom.envelope.get() ) { envelope.reset(new Envelope(*(geom.envelope))); } - //factory=geom.factory; + //factory=geom.factory; //envelope(new Envelope(*(geom.envelope.get()))); //SRID=geom.getSRID(); //_userData=NULL; @@ -137,7 +137,7 @@ } bool -Geometry::hasNonEmptyElements(const vector* geometries) +Geometry::hasNonEmptyElements(const vector* geometries) { for (size_t i=0; isize(); i++) { if (!(*geometries)[i]->isEmpty()) { @@ -148,7 +148,7 @@ } bool -Geometry::hasNullElements(const CoordinateSequence* list) +Geometry::hasNullElements(const CoordinateSequence* list) { size_t npts=list->getSize(); for (size_t i=0; i* lrs) +Geometry::hasNullElements(const vector* lrs) { size_t n=lrs->size(); for (size_t i=0; icreatePointFromInternalCoord(&interiorPt, this); return p; @@ -256,7 +256,7 @@ Geometry::geometryChangedAction() { //delete envelope; - envelope.reset(NULL); + envelope.reset(nullptr); } bool @@ -288,7 +288,7 @@ if (! getEnvelopeInternal()->intersects(g->getEnvelopeInternal())) return true; #endif - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isDisjoint(); return res; } @@ -301,7 +301,7 @@ if (! getEnvelopeInternal()->intersects(g->getEnvelopeInternal())) return false; #endif - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isTouches(getDimension(), g->getDimension()); return res; } @@ -341,7 +341,7 @@ return predicate::RectangleIntersects::intersects(*p, *this); } - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isIntersects(); return res; } @@ -363,7 +363,7 @@ return true; } - auto_ptr im(relate(g)); + unique_ptr im(relate(g)); return im->isCovers(); } @@ -376,7 +376,7 @@ if (! getEnvelopeInternal()->intersects(g->getEnvelopeInternal())) return false; #endif - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isCrosses(getDimension(), g->getDimension()); return res; } @@ -406,7 +406,7 @@ // return predicate::RectangleContains::contains((const Polygon&)*g, *this); //} - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isContains(); return res; } @@ -419,7 +419,7 @@ if (! getEnvelopeInternal()->intersects(g->getEnvelopeInternal())) return false; #endif - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isOverlaps(getDimension(), g->getDimension()); return res; } @@ -427,7 +427,7 @@ bool Geometry::relate(const Geometry *g, const string &intersectionPattern) const { - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->matches(intersectionPattern); return res; } @@ -444,7 +444,7 @@ if (isEmpty()) return g->isEmpty(); else if (g->isEmpty()) return isEmpty(); - auto_ptr im ( relate(g) ); + unique_ptr im ( relate(g) ); bool res=im->isEquals(getDimension(), g->getDimension()); return res; } @@ -544,7 +544,7 @@ if ( isEmpty() ) return other->clone(); if ( other->isEmpty() ) return clone(); - Geometry *out = NULL; + Geometry *out = nullptr; #ifdef SHORTCIRCUIT_PREDICATES // if envelopes are disjoint return a MULTI geom or @@ -562,7 +562,7 @@ v->reserve(ngeomsThis+ngeomsOther); - if ( NULL != (coll = dynamic_cast(this)) ) + if ( nullptr != (coll = dynamic_cast(this)) ) { for (size_t i=0; ipush_back(coll->getGeometryN(i)->clone()); @@ -570,7 +570,7 @@ v->push_back(this->clone()); } - if ( NULL != (coll = dynamic_cast(other)) ) + if ( nullptr != (coll = dynamic_cast(other)) ) { for (size_t i=0; ipush_back(coll->getGeometryN(i)->clone()); @@ -587,7 +587,7 @@ } /* public */ -Geometry::AutoPtr +Geometry::Ptr Geometry::Union() const { using geos::operation::geounion::UnaryUnionOp; @@ -626,7 +626,7 @@ v->reserve(ngeomsThis+ngeomsOther); - if ( NULL != (coll = dynamic_cast(this)) ) + if ( nullptr != (coll = dynamic_cast(this)) ) { for (size_t i=0; ipush_back(coll->getGeometryN(i)->clone()); @@ -634,7 +634,7 @@ v->push_back(this->clone()); } - if ( NULL != (coll = dynamic_cast(other)) ) + if ( nullptr != (coll = dynamic_cast(other)) ) { for (size_t i=0; ipush_back(coll->getGeometryN(i)->clone()); @@ -699,7 +699,7 @@ else if ( typeid(*this) == typeid(MultiLineString) ) return 4; else if ( typeid(*this) == typeid(Polygon) ) return 5; else if ( typeid(*this) == typeid(MultiPolygon) ) return 6; - else + else { assert(typeid(*this) == typeid(GeometryCollection)); // unsupported class return 7; @@ -769,7 +769,7 @@ /** * Returns the minimum distance between this Geometry - * and the other Geometry + * and the other Geometry * * @param other the Geometry from which to compute the distance */ diff -Nru geos-3.6.2/src/geom/GeometryFactory.cpp geos-3.7.1/src/geom/GeometryFactory.cpp --- geos-3.6.2/src/geom/GeometryFactory.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/GeometryFactory.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * Copyright (C) 2005 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -58,7 +58,7 @@ namespace geos { namespace geom { // geos::geom -namespace { +namespace { class gfCoordinateOperation: public util::CoordinateOperation { using CoordinateOperation::edit; @@ -68,7 +68,7 @@ : _gsf(gsf) {} CoordinateSequence* edit( const CoordinateSequence *coordSeq, - const Geometry * ) + const Geometry * ) override { return _gsf->create(*coordSeq); } @@ -93,8 +93,8 @@ } /*public static*/ -GeometryFactory::unique_ptr -GeometryFactory::create() { return GeometryFactory::unique_ptr(new GeometryFactory()); } +GeometryFactory::Ptr +GeometryFactory::create() { return GeometryFactory::Ptr(new GeometryFactory()); } /*protected*/ GeometryFactory::GeometryFactory(const PrecisionModel* pm, int newSRID, @@ -120,11 +120,11 @@ } /*public static*/ -GeometryFactory::unique_ptr +GeometryFactory::Ptr GeometryFactory::create(const PrecisionModel* pm, int newSRID, CoordinateSequenceFactory* nCoordinateSequenceFactory) { - return GeometryFactory::unique_ptr( + return GeometryFactory::Ptr( new GeometryFactory(pm, newSRID, nCoordinateSequenceFactory) ); } @@ -148,11 +148,11 @@ } /*public static*/ -GeometryFactory::unique_ptr +GeometryFactory::Ptr GeometryFactory::create( CoordinateSequenceFactory* nCoordinateSequenceFactory) { - return GeometryFactory::unique_ptr( + return GeometryFactory::Ptr( new GeometryFactory(nCoordinateSequenceFactory) ); } @@ -175,10 +175,10 @@ } /*public static*/ -GeometryFactory::unique_ptr +GeometryFactory::Ptr GeometryFactory::create(const PrecisionModel *pm) { - return GeometryFactory::unique_ptr( + return GeometryFactory::Ptr( new GeometryFactory(pm) ); } @@ -201,10 +201,10 @@ } /*public static*/ -GeometryFactory::unique_ptr +GeometryFactory::Ptr GeometryFactory::create(const PrecisionModel* pm, int newSRID) { - return GeometryFactory::unique_ptr( + return GeometryFactory::Ptr( new GeometryFactory(pm, newSRID) ); } @@ -221,10 +221,10 @@ } /*public static*/ -GeometryFactory::unique_ptr +GeometryFactory::Ptr GeometryFactory::create(const GeometryFactory &gf) { - return GeometryFactory::unique_ptr( + return GeometryFactory::Ptr( new GeometryFactory(gf) ); } @@ -236,7 +236,7 @@ #endif delete precisionModel; } - + /*public*/ Point* GeometryFactory::createPointFromInternalCoord(const Coordinate* coord, @@ -281,7 +281,7 @@ coord.y = envelope->getMinY(); cl->add(coord); - Polygon *p = createPolygon(createLinearRing(cl), NULL); + Polygon *p = createPolygon(createLinearRing(cl), nullptr); return p; } @@ -296,7 +296,7 @@ Point* GeometryFactory::createPoint() const { - return new Point(NULL, this); + return new Point(nullptr, this); } /*public*/ @@ -326,9 +326,9 @@ GeometryFactory::createPoint(const CoordinateSequence &fromCoords) const { CoordinateSequence *newCoords = fromCoords.clone(); - Point *g = NULL; + Point *g = nullptr; try { - g = new Point(newCoords,this); + g = new Point(newCoords,this); } catch (...) { delete newCoords; throw; @@ -341,7 +341,7 @@ MultiLineString* GeometryFactory::createMultiLineString() const { - return new MultiLineString(NULL,this); + return new MultiLineString(nullptr,this); } /*public*/ @@ -364,7 +364,7 @@ if ( ! line ) throw geos::util::IllegalArgumentException("createMultiLineString called with a vector containing non-LineStrings"); (*newGeoms)[i] = new LineString(*line); } - MultiLineString *g = NULL; + MultiLineString *g = nullptr; try { g = new MultiLineString(newGeoms,this); } catch (...) { @@ -381,14 +381,14 @@ GeometryCollection* GeometryFactory::createGeometryCollection() const { - return new GeometryCollection(NULL,this); + return new GeometryCollection(nullptr,this); } /*public*/ Geometry* GeometryFactory::createEmptyGeometry() const { - return new GeometryCollection(NULL,this); + return new GeometryCollection(nullptr,this); } /*public*/ @@ -406,7 +406,7 @@ for (size_t i=0; iclone(); } - GeometryCollection *g = NULL; + GeometryCollection *g = nullptr; try { g = new GeometryCollection(newGeoms,this); } catch (...) { @@ -423,7 +423,7 @@ MultiPolygon* GeometryFactory::createMultiPolygon() const { - return new MultiPolygon(NULL,this); + return new MultiPolygon(nullptr,this); } /*public*/ @@ -442,7 +442,7 @@ { (*newGeoms)[i] = fromPolys[i]->clone(); } - MultiPolygon *g = NULL; + MultiPolygon *g = nullptr; try { g = new MultiPolygon(newGeoms,this); } catch (...) { @@ -459,7 +459,7 @@ LinearRing* GeometryFactory::createLinearRing() const { - return new LinearRing(NULL,this); + return new LinearRing(nullptr,this); } /*public*/ @@ -470,10 +470,10 @@ } /*public*/ -Geometry::AutoPtr -GeometryFactory::createLinearRing(CoordinateSequence::AutoPtr newCoords) const +Geometry::Ptr +GeometryFactory::createLinearRing(CoordinateSequence::Ptr newCoords) const { - return Geometry::AutoPtr(new LinearRing(newCoords, this)); + return Geometry::Ptr(new LinearRing(std::move(newCoords), this)); } /*public*/ @@ -481,7 +481,7 @@ GeometryFactory::createLinearRing(const CoordinateSequence& fromCoords) const { CoordinateSequence *newCoords = fromCoords.clone(); - LinearRing *g = NULL; + LinearRing *g = nullptr; // construction failure will delete newCoords g = new LinearRing(newCoords, this); return g; @@ -504,7 +504,7 @@ (*newGeoms)[i] = fromPoints[i]->clone(); } - MultiPoint *g = NULL; + MultiPoint *g = nullptr; try { g = new MultiPoint(newGeoms,this); } catch (...) { @@ -521,7 +521,7 @@ MultiPoint* GeometryFactory::createMultiPoint() const { - return new MultiPoint(NULL, this); + return new MultiPoint(nullptr, this); } /*public*/ @@ -535,7 +535,7 @@ Point *pt=createPoint(fromCoords.getAt(i)); pts->push_back(pt); } - MultiPoint *mp = NULL; + MultiPoint *mp = nullptr; try { mp = createMultiPoint(pts); } catch (...) { @@ -557,7 +557,7 @@ Point *pt=createPoint(fromCoords[i]); pts->push_back(pt); } - MultiPoint *mp = NULL; + MultiPoint *mp = nullptr; try { mp = createMultiPoint(pts); } catch (...) { @@ -572,7 +572,7 @@ Polygon* GeometryFactory::createPolygon() const { - return new Polygon(NULL, NULL, this); + return new Polygon(nullptr, nullptr, this); } /*public*/ @@ -594,7 +594,7 @@ { (*newHoles)[i] = holes[i]->clone(); } - Polygon *g = NULL; + Polygon *g = nullptr; try { g = new Polygon(newRing, newHoles, this); } catch (...) { @@ -611,14 +611,14 @@ LineString * GeometryFactory::createLineString() const { - return new LineString(NULL, this); + return new LineString(nullptr, this); } /*public*/ -std::auto_ptr +std::unique_ptr GeometryFactory::createLineString(const LineString& ls) const { - return std::auto_ptr(new LineString(ls)); + return std::unique_ptr(new LineString(ls)); } /*public*/ @@ -630,11 +630,11 @@ } /*public*/ -Geometry::AutoPtr -GeometryFactory::createLineString(CoordinateSequence::AutoPtr newCoords) +Geometry::Ptr +GeometryFactory::createLineString(CoordinateSequence::Ptr newCoords) const { - return Geometry::AutoPtr(new LineString(newCoords, this)); + return Geometry::Ptr(new LineString(std::move(newCoords), this)); } /*public*/ @@ -643,7 +643,7 @@ const { CoordinateSequence *newCoords = fromCoords.clone(); - LineString *g = NULL; + LineString *g = nullptr; // construction failure will delete newCoords g = new LineString(newCoords, this); return g; @@ -656,7 +656,7 @@ string geomClass("NULL"); bool isHeterogeneous=false; bool hasGeometryCollection=false; - + for (size_t i=0, n=newGeoms->size(); i1; size_t i; - + for (i=0; i -#include // for auto_ptr - -#include // for auto_ptr -#include - -namespace geos { -namespace geom { // geos.geom - - -/*private*/ -GeometryList::GeometryList() -{ -} - -/*private*/ -GeometryList::~GeometryList() -{ - for (std::vector::size_type i=0, n=geoms.size(); i= 0 && row < firstDim ); assert( col >= 0 && col < secondDim ); - + matrix[row][col] = dimensionValue; } @@ -174,7 +174,7 @@ { assert( row >= 0 && row < firstDim ); assert( col >= 0 && col < secondDim ); - + if (matrix[row][col] < minimumDimensionValue) { matrix[row][col] = minimumDimensionValue; @@ -187,7 +187,7 @@ { assert( row >= 0 && row < firstDim ); assert( col >= 0 && col < secondDim ); - + if (row >= 0 && col >= 0) { setAtLeast(row, col, minimumDimensionValue); @@ -225,7 +225,7 @@ { assert( row >= 0 && row < firstDim ); assert( col >= 0 && col < secondDim ); - + return matrix[row][col]; } @@ -401,7 +401,7 @@ //Not sure IntersectionMatrix* IntersectionMatrix::transpose() -{ +{ int temp = matrix[1][0]; matrix[1][0] = matrix[0][1]; matrix[0][1] = temp; diff -Nru geos-3.6.2/src/geom/LinearRing.cpp geos-3.7.1/src/geom/LinearRing.cpp --- geos-3.6.2/src/geom/LinearRing.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/LinearRing.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -43,17 +43,17 @@ Geometry(newFactory), LineString(newCoords, newFactory) { - validateConstruction(); + validateConstruction(); } /*public*/ -LinearRing::LinearRing(CoordinateSequence::AutoPtr newCoords, +LinearRing::LinearRing(CoordinateSequence::Ptr newCoords, const GeometryFactory *newFactory) : Geometry(newFactory), - LineString(newCoords, newFactory) + LineString(std::move(newCoords), newFactory) { - validateConstruction(); + validateConstruction(); } @@ -80,7 +80,7 @@ } - + // superclass LineString will delete internal CoordinateSequence LinearRing::~LinearRing(){ } @@ -125,6 +125,10 @@ Geometry* LinearRing::reverse() const { + if (isEmpty()) { + return clone(); + } + assert(points.get()); CoordinateSequence* seq = points->clone(); CoordinateSequence::reverse(seq); diff -Nru geos-3.6.2/src/geom/LineSegment.cpp geos-3.7.1/src/geom/LineSegment.cpp --- geos-3.6.2/src/geom/LineSegment.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/LineSegment.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 2011 Sandro Santilli + * Copyright (C) 2009 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ #include // for toGeometry #include #include -#include +#include #include // should we really be using this? #include #include @@ -213,7 +213,7 @@ closestPt->setAt(close01,0); closestPt->setAt(line.p1,1); //(*cv)[0] = close01; - //(*cv)[1] = line.p1; + //(*cv)[1] = line.p1; } Coordinate close10; @@ -303,13 +303,13 @@ } /* public */ -std::auto_ptr +std::unique_ptr LineSegment::toGeometry(const GeometryFactory& gf) const { CoordinateSequence *cl=new CoordinateArraySequence(); cl->add(p0); cl->add(p1); - return std::auto_ptr( + return std::unique_ptr( gf.createLineString(cl) // ownership transferred ); } diff -Nru geos-3.6.2/src/geom/LineString.cpp geos-3.7.1/src/geom/LineString.cpp --- geos-3.6.2/src/geom/LineString.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/LineString.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -18,7 +18,7 @@ * **********************************************************************/ -#include +#include #include #include #include @@ -57,6 +57,10 @@ Geometry* LineString::reverse() const { + if (isEmpty()) { + return clone(); + } + assert(points.get()); CoordinateSequence* seq = points->clone(); CoordinateSequence::reverse(seq); @@ -69,7 +73,7 @@ void LineString::validateConstruction() { - if (points.get()==NULL) + if (points.get()==nullptr) { points.reset(getFactory()->getCoordinateSequenceFactory()->create()); return; @@ -92,11 +96,11 @@ } /*public*/ -LineString::LineString(CoordinateSequence::AutoPtr newCoords, +LineString::LineString(CoordinateSequence::Ptr newCoords, const GeometryFactory *factory) : Geometry(factory), - points(newCoords) + points(std::move(newCoords)) { validateConstruction(); } @@ -118,7 +122,7 @@ const CoordinateSequence* LineString::getCoordinatesRO() const { - assert(0 != points.get()); + assert(nullptr != points.get()); return points.get(); } @@ -176,7 +180,7 @@ LineString::getStartPoint() const { if (isEmpty()) { - return NULL; + return nullptr; //return new Point(NULL,NULL); } return getPointN(0); @@ -186,7 +190,7 @@ LineString::getEndPoint() const { if (isEmpty()) { - return NULL; + return nullptr; //return new Point(NULL,NULL); } return getPointN(getNumPoints() - 1); @@ -198,7 +202,7 @@ if (isEmpty()) { return false; } - return getCoordinateN(0).equals2D(getCoordinateN(getNumPoints()-1)); + return getCoordinateN(0).equals2D(getCoordinateN(static_cast(getNumPoints()-1))); } bool @@ -246,7 +250,7 @@ } /*protected*/ -Envelope::AutoPtr +Envelope::Ptr LineString::computeEnvelopeInternal() const { if (isEmpty()) { @@ -254,7 +258,7 @@ // as it would indicate "unknown" // envelope. In this case we // *know* the envelope is EMPTY. - return Envelope::AutoPtr(new Envelope()); + return Envelope::Ptr(new Envelope()); } assert(points.get()); @@ -275,7 +279,7 @@ // caller expects a newly allocated Envelope. // this function won't be called twice, unless // cached Envelope is invalidated (set to NULL) - return Envelope::AutoPtr(new Envelope(minx, maxx, miny, maxy)); + return Envelope::Ptr(new Envelope(minx, maxx, miny, maxy)); } bool @@ -364,7 +368,7 @@ const Coordinate* LineString::getCoordinate() const { - if (isEmpty()) return NULL; + if (isEmpty()) return nullptr; return &(points->getAt(0)); } diff -Nru geos-3.6.2/src/geom/Location.cpp geos-3.7.1/src/geom/Location.cpp --- geos-3.6.2/src/geom/Location.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/Location.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geom/Makefile.am geos-3.7.1/src/geom/Makefile.am --- geos-3.6.2/src/geom/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/Makefile.am 2018-10-19 22:32:06.000000000 +0000 @@ -1,5 +1,5 @@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # SUBDIRS=\ util \ @@ -8,7 +8,7 @@ noinst_LTLIBRARIES = \ libgeom.la -AM_CPPFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include libgeom_la_SOURCES = \ Coordinate.cpp \ @@ -19,7 +19,6 @@ Dimension.cpp \ Envelope.cpp \ Geometry.cpp \ - GeometryList.cpp \ GeometryCollection.cpp \ GeometryComponentFilter.cpp \ GeometryFactory.cpp \ diff -Nru geos-3.6.2/src/geom/Makefile.in geos-3.7.1/src/geom/Makefile.in --- geos-3.6.2/src/geom/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/geom/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -113,12 +116,11 @@ am_libgeom_la_OBJECTS = Coordinate.lo CoordinateSequence.lo \ CoordinateSequenceFactory.lo CoordinateArraySequence.lo \ CoordinateArraySequenceFactory.lo Dimension.lo Envelope.lo \ - Geometry.lo GeometryList.lo GeometryCollection.lo \ - GeometryComponentFilter.lo GeometryFactory.lo \ - IntersectionMatrix.lo LinearRing.lo LineSegment.lo \ - LineString.lo Location.lo MultiLineString.lo MultiPoint.lo \ - MultiPolygon.lo Point.lo Polygon.lo PrecisionModel.lo \ - Triangle.lo + Geometry.lo GeometryCollection.lo GeometryComponentFilter.lo \ + GeometryFactory.lo IntersectionMatrix.lo LinearRing.lo \ + LineSegment.lo LineString.lo Location.lo MultiLineString.lo \ + MultiPoint.lo MultiPolygon.lo Point.lo Polygon.lo \ + PrecisionModel.lo Triangle.lo libgeom_la_OBJECTS = $(am_libgeom_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -138,7 +140,22 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/Coordinate.Plo \ + ./$(DEPDIR)/CoordinateArraySequence.Plo \ + ./$(DEPDIR)/CoordinateArraySequenceFactory.Plo \ + ./$(DEPDIR)/CoordinateSequence.Plo \ + ./$(DEPDIR)/CoordinateSequenceFactory.Plo \ + ./$(DEPDIR)/Dimension.Plo ./$(DEPDIR)/Envelope.Plo \ + ./$(DEPDIR)/Geometry.Plo ./$(DEPDIR)/GeometryCollection.Plo \ + ./$(DEPDIR)/GeometryComponentFilter.Plo \ + ./$(DEPDIR)/GeometryFactory.Plo \ + ./$(DEPDIR)/IntersectionMatrix.Plo ./$(DEPDIR)/LineSegment.Plo \ + ./$(DEPDIR)/LineString.Plo ./$(DEPDIR)/LinearRing.Plo \ + ./$(DEPDIR)/Location.Plo ./$(DEPDIR)/MultiLineString.Plo \ + ./$(DEPDIR)/MultiPoint.Plo ./$(DEPDIR)/MultiPolygon.Plo \ + ./$(DEPDIR)/Point.Plo ./$(DEPDIR)/Polygon.Plo \ + ./$(DEPDIR)/PrecisionModel.Plo ./$(DEPDIR)/Triangle.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -180,7 +197,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -269,6 +286,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -317,6 +335,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -337,6 +357,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -386,7 +407,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -401,7 +421,7 @@ top_srcdir = @top_srcdir@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # SUBDIRS = \ util \ @@ -410,7 +430,7 @@ noinst_LTLIBRARIES = \ libgeom.la -AM_CPPFLAGS = -I$(top_srcdir)/include +AM_CPPFLAGS = -I$(top_srcdir)/include libgeom_la_SOURCES = \ Coordinate.cpp \ CoordinateSequence.cpp \ @@ -420,7 +440,6 @@ Dimension.cpp \ Envelope.cpp \ Geometry.cpp \ - GeometryList.cpp \ GeometryCollection.cpp \ GeometryComponentFilter.cpp \ GeometryFactory.cpp \ @@ -462,8 +481,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -495,30 +514,35 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Coordinate.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateArraySequence.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateArraySequenceFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateSequence.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateSequenceFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Dimension.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Envelope.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Geometry.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryCollection.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryComponentFilter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryList.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntersectionMatrix.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineSegment.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearRing.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Location.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiLineString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiPoint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiPolygon.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Point.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Polygon.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PrecisionModel.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Triangle.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Coordinate.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateArraySequence.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateArraySequenceFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateSequence.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateSequenceFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Dimension.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Envelope.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Geometry.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryCollection.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryComponentFilter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntersectionMatrix.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineSegment.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearRing.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Location.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiLineString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiPoint.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiPolygon.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Point.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Polygon.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PrecisionModel.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Triangle.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -646,7 +670,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -742,7 +769,29 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Coordinate.Plo + -rm -f ./$(DEPDIR)/CoordinateArraySequence.Plo + -rm -f ./$(DEPDIR)/CoordinateArraySequenceFactory.Plo + -rm -f ./$(DEPDIR)/CoordinateSequence.Plo + -rm -f ./$(DEPDIR)/CoordinateSequenceFactory.Plo + -rm -f ./$(DEPDIR)/Dimension.Plo + -rm -f ./$(DEPDIR)/Envelope.Plo + -rm -f ./$(DEPDIR)/Geometry.Plo + -rm -f ./$(DEPDIR)/GeometryCollection.Plo + -rm -f ./$(DEPDIR)/GeometryComponentFilter.Plo + -rm -f ./$(DEPDIR)/GeometryFactory.Plo + -rm -f ./$(DEPDIR)/IntersectionMatrix.Plo + -rm -f ./$(DEPDIR)/LineSegment.Plo + -rm -f ./$(DEPDIR)/LineString.Plo + -rm -f ./$(DEPDIR)/LinearRing.Plo + -rm -f ./$(DEPDIR)/Location.Plo + -rm -f ./$(DEPDIR)/MultiLineString.Plo + -rm -f ./$(DEPDIR)/MultiPoint.Plo + -rm -f ./$(DEPDIR)/MultiPolygon.Plo + -rm -f ./$(DEPDIR)/Point.Plo + -rm -f ./$(DEPDIR)/Polygon.Plo + -rm -f ./$(DEPDIR)/PrecisionModel.Plo + -rm -f ./$(DEPDIR)/Triangle.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -788,7 +837,29 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Coordinate.Plo + -rm -f ./$(DEPDIR)/CoordinateArraySequence.Plo + -rm -f ./$(DEPDIR)/CoordinateArraySequenceFactory.Plo + -rm -f ./$(DEPDIR)/CoordinateSequence.Plo + -rm -f ./$(DEPDIR)/CoordinateSequenceFactory.Plo + -rm -f ./$(DEPDIR)/Dimension.Plo + -rm -f ./$(DEPDIR)/Envelope.Plo + -rm -f ./$(DEPDIR)/Geometry.Plo + -rm -f ./$(DEPDIR)/GeometryCollection.Plo + -rm -f ./$(DEPDIR)/GeometryComponentFilter.Plo + -rm -f ./$(DEPDIR)/GeometryFactory.Plo + -rm -f ./$(DEPDIR)/IntersectionMatrix.Plo + -rm -f ./$(DEPDIR)/LineSegment.Plo + -rm -f ./$(DEPDIR)/LineString.Plo + -rm -f ./$(DEPDIR)/LinearRing.Plo + -rm -f ./$(DEPDIR)/Location.Plo + -rm -f ./$(DEPDIR)/MultiLineString.Plo + -rm -f ./$(DEPDIR)/MultiPoint.Plo + -rm -f ./$(DEPDIR)/MultiPolygon.Plo + -rm -f ./$(DEPDIR)/Point.Plo + -rm -f ./$(DEPDIR)/Polygon.Plo + -rm -f ./$(DEPDIR)/PrecisionModel.Plo + -rm -f ./$(DEPDIR)/Triangle.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -809,8 +880,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/geom/MultiLineString.cpp geos-3.7.1/src/geom/MultiLineString.cpp --- geos-3.6.2/src/geom/MultiLineString.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/MultiLineString.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -84,7 +84,7 @@ MultiLineString::getBoundary() const { if (isEmpty()) { - return getFactory()->createGeometryCollection(NULL); + return getFactory()->createGeometryCollection(nullptr); } //Geometry *in = toInternalGeometry(this); GeometryGraph gg(0, this); @@ -106,9 +106,13 @@ return GEOS_MULTILINESTRING; } -MultiLineString* +Geometry* MultiLineString::reverse() const { + if (isEmpty()) { + return clone(); + } + size_t nLines = geometries->size(); Geometry::NonConstVect *revLines = new Geometry::NonConstVect(nLines); for (size_t i=0; i + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/geom/MultiPolygon.cpp geos-3.7.1/src/geom/MultiPolygon.cpp --- geos-3.6.2/src/geom/MultiPolygon.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/MultiPolygon.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -28,6 +28,7 @@ #include #include #include +#include #ifndef GEOS_INLINE # include "geos/geom/MultiPolygon.inl" @@ -108,5 +109,24 @@ return GEOS_MULTIPOLYGON; } +Geometry* +MultiPolygon::reverse() const +{ + if (isEmpty()) { + return clone(); + } + + auto* reversed = new std::vector{geometries->size()}; + + std::transform(geometries->begin(), + geometries->end(), + reversed->begin(), + [](const Geometry* g) { + return g->reverse(); + }); + + return getFactory()->createMultiPolygon(reversed); +} + } // namespace geos::geom } // namespace geos diff -Nru geos-3.6.2/src/geom/Point.cpp geos-3.7.1/src/geom/Point.cpp --- geos-3.6.2/src/geom/Point.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/Point.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * Copyright (C) 2005 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -48,10 +48,10 @@ Geometry(factory), coordinates(newCoords) { - if (coordinates.get()==NULL) { + if (coordinates.get()==nullptr) { coordinates.reset(factory->getCoordinateSequenceFactory()->create()); return; - } + } if (coordinates->getSize() != 1) { throw util::IllegalArgumentException("Point coordinate list must contain a single element"); @@ -126,10 +126,19 @@ return getCoordinate()->y; } +double +Point::getZ() const +{ + if (isEmpty()) { + throw util::UnsupportedOperationException("getZ called on empty Point\n"); + } + return getCoordinate()->z; +} + const Coordinate * Point::getCoordinate() const { - return coordinates->getSize()!=0 ? &(coordinates->getAt(0)) : NULL; + return coordinates->getSize()!=0 ? &(coordinates->getAt(0)) : nullptr; } string @@ -141,17 +150,17 @@ Geometry * Point::getBoundary() const { - return getFactory()->createGeometryCollection(NULL); + return getFactory()->createGeometryCollection(nullptr); } -Envelope::AutoPtr +Envelope::Ptr Point::computeEnvelopeInternal() const { if (isEmpty()) { - return Envelope::AutoPtr(new Envelope()); + return Envelope::Ptr(new Envelope()); } - return Envelope::AutoPtr(new Envelope(getCoordinate()->x, + return Envelope::Ptr(new Envelope(getCoordinate()->x, getCoordinate()->x, getCoordinate()->y, getCoordinate()->y)); } @@ -219,8 +228,8 @@ return false; } - // assume the isEquivalentClass would return false - // if other is not a point + // assume the isEquivalentClass would return false + // if other is not a point assert(dynamic_cast(other)); if ( isEmpty() ) return other->isEmpty(); diff -Nru geos-3.6.2/src/geom/Polygon.cpp geos-3.7.1/src/geom/Polygon.cpp --- geos-3.6.2/src/geom/Polygon.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/Polygon.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,8 +35,8 @@ #include #include // for fabs -#include -#include +#include +#include #include #ifndef GEOS_DEBUG @@ -73,18 +73,18 @@ const GeometryFactory *newFactory): Geometry(newFactory) { - if (newShell==NULL) { - shell=getFactory()->createLinearRing(NULL); + if (newShell==nullptr) { + shell=getFactory()->createLinearRing(nullptr); } else { - if (newHoles != NULL && newShell->isEmpty() && hasNonEmptyElements(newHoles)) { + if (newHoles != nullptr && newShell->isEmpty() && hasNonEmptyElements(newHoles)) { throw util::IllegalArgumentException("shell is empty but holes are not"); } shell=newShell; } - if (newHoles==NULL) + if (newHoles==nullptr) { holes=new vector(); } @@ -151,8 +151,8 @@ { int dimension=2; - if( shell != NULL ) - dimension = max(dimension,shell->getCoordinateDimension()); + if( shell != nullptr ) + dimension = max(dimension,shell->getCoordinateDimension()); size_t nholes=holes->size(); for (size_t i=0; igetEnvelopeInternal()))); + return Envelope::Ptr(new Envelope(*(shell->getEnvelopeInternal()))); } bool @@ -476,7 +476,7 @@ Polygon::isRectangle() const { if ( getNumInteriorRing() != 0 ) return false; - assert(shell!=NULL); + assert(shell!=nullptr); if ( shell->getNumPoints() != 5 ) return false; const CoordinateSequence &seq = *(shell->getCoordinatesRO()); @@ -505,5 +505,25 @@ return true; } +Geometry* +Polygon::reverse() const +{ + if (isEmpty()) { + return clone(); + } + + auto* exteriorRingReversed = dynamic_cast(shell->reverse()); + auto* interiorRingsReversed = new std::vector{holes->size()}; + + std::transform(holes->begin(), + holes->end(), + interiorRingsReversed->begin(), + [](const Geometry * g) { + return g->reverse(); + }); + + return getFactory()->createPolygon(exteriorRingReversed, interiorRingsReversed); +} + } // namespace geos::geom } // namespace geos diff -Nru geos-3.6.2/src/geom/PrecisionModel.cpp geos-3.7.1/src/geom/PrecisionModel.cpp --- geos-3.6.2/src/geom/PrecisionModel.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/PrecisionModel.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -68,7 +68,7 @@ void PrecisionModel::makePrecise(Coordinate& coord) const { - // optimization for full precision + // optimization for full precision if (modelType==FLOATING) return; coord.x=makePrecise(coord.x); @@ -179,7 +179,7 @@ // throw IllegalArgumentException { if ( newScale <= 0 ) - throw util::IllegalArgumentException("PrecisionModel scale cannot be 0"); + throw util::IllegalArgumentException("PrecisionModel scale cannot be 0"); scale = std::fabs(newScale); } @@ -197,7 +197,7 @@ return 0; } - + string PrecisionModel::toString() const { diff -Nru geos-3.6.2/src/geom/prep/AbstractPreparedPolygonContains.cpp geos-3.7.1/src/geom/prep/AbstractPreparedPolygonContains.cpp --- geos-3.6.2/src/geom/prep/AbstractPreparedPolygonContains.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/AbstractPreparedPolygonContains.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,31 +35,31 @@ // // private: // -bool +bool AbstractPreparedPolygonContains::isProperIntersectionImpliesNotContainedSituation( const geom::Geometry * testGeom) { // If the test geometry is polygonal we have the A/A situation. - // In this case, a proper intersection indicates that + // In this case, a proper intersection indicates that // the Epsilon-Neighbourhood Exterior Intersection condition exists. // This condition means that in some small // area around the intersection point, there must exist a situation // where the interior of the test intersects the exterior of the target. - // This implies the test is NOT contained in the target. - if ( testGeom->getGeometryTypeId() == geos::geom::GEOS_MULTIPOLYGON + // This implies the test is NOT contained in the target. + if ( testGeom->getGeometryTypeId() == geos::geom::GEOS_MULTIPOLYGON || testGeom->getGeometryTypeId() == geos::geom::GEOS_POLYGON ) return true; - // A single shell with no holes allows concluding that - // a proper intersection implies not contained - // (due to the Epsilon-Neighbourhood Exterior Intersection condition) - if ( isSingleShell( prepPoly->getGeometry()) ) + // A single shell with no holes allows concluding that + // a proper intersection implies not contained + // (due to the Epsilon-Neighbourhood Exterior Intersection condition) + if ( isSingleShell( prepPoly->getGeometry()) ) return true; - + return false; } -bool +bool AbstractPreparedPolygonContains::isSingleShell(const geom::Geometry& geom) { // handles single-element MultiPolygons, as well as Polygons @@ -67,7 +67,7 @@ { return false; } - + const geom::Geometry* g = geom.getGeometryN(0); const geom::Polygon* poly = dynamic_cast(g); assert(poly); @@ -75,12 +75,12 @@ std::size_t numHoles = poly->getNumInteriorRing(); return (0 == numHoles); } - -void + +void AbstractPreparedPolygonContains::findAndClassifyIntersections(const geom::Geometry* geom) { - noding::SegmentString::ConstVect lineSegStr; + noding::SegmentString::ConstVect lineSegStr; noding::SegmentStringUtil::extractSegmentStrings(geom, lineSegStr); algorithm::LineIntersector li; @@ -104,25 +104,25 @@ // // protected: // -bool +bool AbstractPreparedPolygonContains::eval( const geom::Geometry * geom) { // Do point-in-poly tests first, since they are cheaper and may result // in a quick negative result. - // + // // If a point of any test components does not lie in target, // result is false bool isAllInTargetArea = isAllTestComponentsInTarget( geom); - if ( !isAllInTargetArea ) + if ( !isAllInTargetArea ) return false; - // If the test geometry consists of only Points, + // If the test geometry consists of only Points, // then it is now sufficient to test if any of those // points lie in the interior of the target geometry. // If so, the test is contained. // If not, all points are on the boundary of the area, // which implies not contained. - if ( requireSomePointInInterior && geom->getDimension() == 0 ) + if ( requireSomePointInInterior && geom->getDimension() == 0 ) { bool isAnyInTargetInterior = isAnyTestComponentInTargetInterior( geom); return isAnyInTargetInterior; @@ -130,7 +130,7 @@ // Check if there is any intersection between the line segments // in target and test. - // In some important cases, finding a proper interesection implies that the + // In some important cases, finding a proper interesection implies that the // test geometry is NOT contained. // These cases are: // - If the test geometry is polygonal @@ -146,15 +146,15 @@ if ( properIntersectionImpliesNotContained && hasProperIntersection ) return false; - // If all intersections are proper + // If all intersections are proper // (i.e. no non-proper intersections occur) // we can conclude that the test geometry is not contained in the target area, // by the Epsilon-Neighbourhood Exterior Intersection condition. - // In real-world data this is likely to be by far the most common situation, + // In real-world data this is likely to be by far the most common situation, // since natural data is unlikely to have many exact vertex segment intersections. // Thus this check is very worthwhile, since it avoid having to perform // a full topological check. - // + // // (If non-proper (vertex) intersections ARE found, this may indicate // a situation where two shells touch at a single vertex, which admits // the case where a line could cross between the shells and still be wholely contained in them. @@ -163,7 +163,7 @@ // If there is a segment intersection and the situation is not one // of the ones above, the only choice is to compute the full topological - // relationship. This is because contains/covers is very sensitive + // relationship. This is because contains/covers is very sensitive // to the situation along the boundary of the target. if ( hasSegmentIntersection ) return fullTopologicalPredicate( geom); @@ -171,13 +171,13 @@ // This tests for the case where a ring of the target lies inside // a test polygon - which implies the exterior of the Target // intersects the interior of the Test, and hence the result is false - if ( geom->getGeometryTypeId() == geos::geom::GEOS_MULTIPOLYGON + if ( geom->getGeometryTypeId() == geos::geom::GEOS_MULTIPOLYGON || geom->getGeometryTypeId() == geos::geom::GEOS_POLYGON ) { // TODO: generalize this to handle GeometryCollections bool isTargetInTestArea = isAnyTargetComponentInAreaTest( geom, prepPoly->getRepresentativePoints()); - - if ( isTargetInTestArea ) + + if ( isTargetInTestArea ) return false; } diff -Nru geos-3.6.2/src/geom/prep/BasicPreparedGeometry.cpp geos-3.7.1/src/geom/prep/BasicPreparedGeometry.cpp --- geos-3.6.2/src/geom/prep/BasicPreparedGeometry.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/BasicPreparedGeometry.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -18,9 +18,9 @@ #include -#include -#include -#include +#include +#include +#include namespace geos { namespace geom { // geos.geom @@ -30,20 +30,20 @@ * protected: * * */ -void -BasicPreparedGeometry::setGeometry( const geom::Geometry * geom ) +void +BasicPreparedGeometry::setGeometry( const geom::Geometry * geom ) { baseGeom = geom; geom::util::ComponentCoordinateExtracter::getCoordinates(*baseGeom, representativePts); } -bool +bool BasicPreparedGeometry::envelopesIntersect( const geom::Geometry* g) const { return baseGeom->getEnvelopeInternal()->intersects(g->getEnvelopeInternal()); } -bool +bool BasicPreparedGeometry::envelopeCovers( const geom::Geometry* g) const { return baseGeom->getEnvelopeInternal()->covers(g->getEnvelopeInternal()); @@ -62,7 +62,7 @@ } -bool +bool BasicPreparedGeometry::isAnyTargetComponentInTest( const geom::Geometry * testGeom) const { algorithm::PointLocator locator; @@ -76,13 +76,13 @@ return false; } -bool +bool BasicPreparedGeometry::contains(const geom::Geometry * g) const { return baseGeom->contains(g); } -bool +bool BasicPreparedGeometry::containsProperly(const geom::Geometry * g) const { // since raw relate is used, provide some optimizations @@ -97,55 +97,55 @@ return baseGeom->relate(g, "T**FF*FF*"); } -bool +bool BasicPreparedGeometry::coveredBy(const geom::Geometry * g) const { return baseGeom->coveredBy(g); } -bool +bool BasicPreparedGeometry::covers(const geom::Geometry * g) const { return baseGeom->covers(g); } -bool +bool BasicPreparedGeometry::crosses(const geom::Geometry * g) const { return baseGeom->crosses(g); } -bool +bool BasicPreparedGeometry::disjoint(const geom::Geometry * g) const { return ! intersects(g); } -bool +bool BasicPreparedGeometry::intersects(const geom::Geometry * g) const { return baseGeom->intersects(g); } -bool +bool BasicPreparedGeometry::overlaps(const geom::Geometry * g) const { return baseGeom->overlaps(g); } -bool +bool BasicPreparedGeometry::touches(const geom::Geometry * g) const { return baseGeom->touches(g); } -bool +bool BasicPreparedGeometry::within(const geom::Geometry * g) const { return baseGeom->within(g); } -std::string +std::string BasicPreparedGeometry::toString() { return baseGeom->toString(); diff -Nru geos-3.6.2/src/geom/prep/Makefile.in geos-3.7.1/src/geom/prep/Makefile.in --- geos-3.6.2/src/geom/prep/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/geom/prep/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -136,7 +139,19 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/AbstractPreparedPolygonContains.Plo \ + ./$(DEPDIR)/BasicPreparedGeometry.Plo \ + ./$(DEPDIR)/PreparedGeometry.Plo \ + ./$(DEPDIR)/PreparedGeometryFactory.Plo \ + ./$(DEPDIR)/PreparedLineString.Plo \ + ./$(DEPDIR)/PreparedLineStringIntersects.Plo \ + ./$(DEPDIR)/PreparedPoint.Plo ./$(DEPDIR)/PreparedPolygon.Plo \ + ./$(DEPDIR)/PreparedPolygonContains.Plo \ + ./$(DEPDIR)/PreparedPolygonContainsProperly.Plo \ + ./$(DEPDIR)/PreparedPolygonCovers.Plo \ + ./$(DEPDIR)/PreparedPolygonIntersects.Plo \ + ./$(DEPDIR)/PreparedPolygonPredicate.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -225,6 +240,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -273,6 +289,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -293,6 +311,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -342,7 +361,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -401,8 +419,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -434,19 +452,25 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AbstractPreparedPolygonContains.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BasicPreparedGeometry.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedGeometry.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedGeometryFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedLineString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedLineStringIntersects.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPoint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygon.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonContains.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonContainsProperly.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonCovers.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonIntersects.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonPredicate.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AbstractPreparedPolygonContains.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BasicPreparedGeometry.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedGeometry.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedGeometryFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedLineString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedLineStringIntersects.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPoint.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygon.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonContains.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonContainsProperly.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonCovers.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonIntersects.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PreparedPolygonPredicate.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -527,7 +551,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -597,7 +624,19 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/AbstractPreparedPolygonContains.Plo + -rm -f ./$(DEPDIR)/BasicPreparedGeometry.Plo + -rm -f ./$(DEPDIR)/PreparedGeometry.Plo + -rm -f ./$(DEPDIR)/PreparedGeometryFactory.Plo + -rm -f ./$(DEPDIR)/PreparedLineString.Plo + -rm -f ./$(DEPDIR)/PreparedLineStringIntersects.Plo + -rm -f ./$(DEPDIR)/PreparedPoint.Plo + -rm -f ./$(DEPDIR)/PreparedPolygon.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonContains.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonContainsProperly.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonCovers.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonIntersects.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonPredicate.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -643,7 +682,19 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/AbstractPreparedPolygonContains.Plo + -rm -f ./$(DEPDIR)/BasicPreparedGeometry.Plo + -rm -f ./$(DEPDIR)/PreparedGeometry.Plo + -rm -f ./$(DEPDIR)/PreparedGeometryFactory.Plo + -rm -f ./$(DEPDIR)/PreparedLineString.Plo + -rm -f ./$(DEPDIR)/PreparedLineStringIntersects.Plo + -rm -f ./$(DEPDIR)/PreparedPoint.Plo + -rm -f ./$(DEPDIR)/PreparedPolygon.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonContains.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonContainsProperly.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonCovers.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonIntersects.Plo + -rm -f ./$(DEPDIR)/PreparedPolygonPredicate.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -664,16 +715,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/geom/prep/PreparedGeometry.cpp geos-3.7.1/src/geom/prep/PreparedGeometry.cpp --- geos-3.6.2/src/geom/prep/PreparedGeometry.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedGeometry.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/geom/prep/PreparedGeometryFactory.cpp geos-3.7.1/src/geom/prep/PreparedGeometryFactory.cpp --- geos-3.6.2/src/geom/prep/PreparedGeometryFactory.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedGeometryFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -41,12 +41,12 @@ { using geos::geom::GeometryTypeId; - if (0 == g) + if (nullptr == g) { throw util::IllegalArgumentException("PreparedGeometry constructd with null Geometry object"); } - PreparedGeometry* pg = 0; + PreparedGeometry* pg = nullptr; switch ( g->getGeometryTypeId() ) { diff -Nru geos-3.6.2/src/geom/prep/PreparedLineString.cpp geos-3.7.1/src/geom/prep/PreparedLineString.cpp --- geos-3.6.2/src/geom/prep/PreparedLineString.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedLineString.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -40,7 +40,7 @@ } } -noding::FastSegmentSetIntersectionFinder * +noding::FastSegmentSetIntersectionFinder * PreparedLineString::getIntersectionFinder() { if (! segIntFinder) @@ -52,16 +52,16 @@ return segIntFinder; } -bool +bool PreparedLineString::intersects(const geom::Geometry * g) const { if (! envelopesIntersect(g)) { return false; } - + PreparedLineString& prep = *(const_cast(this)); - + return PreparedLineStringIntersects::intersects(prep, g); } diff -Nru geos-3.6.2/src/geom/prep/PreparedLineStringIntersects.cpp geos-3.7.1/src/geom/prep/PreparedLineStringIntersects.cpp --- geos-3.6.2/src/geom/prep/PreparedLineStringIntersects.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedLineStringIntersects.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -17,11 +17,11 @@ **********************************************************************/ -#include +#include #include #include -#include -#include +#include +#include #include #include @@ -65,20 +65,20 @@ } if ( segsIntersect ) return true; - + // For L/L case we are done - if ( g->getDimension() == 1 ) + if ( g->getDimension() == 1 ) return false; - + // For L/A case, need to check for proper inclusion of the target in the test if ( g->getDimension() == 2 - && prepLine.isAnyTargetComponentInTest(g) ) + && prepLine.isAnyTargetComponentInTest(g) ) return true; - + // For L/P case, need to check if any points lie on line(s) if ( g->getDimension() == 0 ) return isAnyTestPointInTarget(g); - + return false; } diff -Nru geos-3.6.2/src/geom/prep/PreparedPoint.cpp geos-3.7.1/src/geom/prep/PreparedPoint.cpp --- geos-3.6.2/src/geom/prep/PreparedPoint.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPoint.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,7 +23,7 @@ namespace geom { // geos.geom namespace prep { // geos.geom.prep -bool +bool PreparedPoint::intersects(const geom::Geometry* g) const { if (! envelopesIntersect( g)) return false; diff -Nru geos-3.6.2/src/geom/prep/PreparedPolygonContains.cpp geos-3.7.1/src/geom/prep/PreparedPolygonContains.cpp --- geos-3.6.2/src/geom/prep/PreparedPolygonContains.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPolygonContains.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -36,7 +36,7 @@ // // protected: // -bool +bool PreparedPolygonContains::fullTopologicalPredicate( const geom::Geometry * geom) { bool isContained = prepPoly->getGeometry().contains( geom); diff -Nru geos-3.6.2/src/geom/prep/PreparedPolygonContainsProperly.cpp geos-3.7.1/src/geom/prep/PreparedPolygonContainsProperly.cpp --- geos-3.6.2/src/geom/prep/PreparedPolygonContainsProperly.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPolygonContainsProperly.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,7 +42,7 @@ // // public: // -bool +bool PreparedPolygonContainsProperly::containsProperly( const geom::Geometry * geom) { // Do point-in-poly tests first, since they are cheaper and may result @@ -50,9 +50,9 @@ // If a point of any test components does not lie in target, // result is false bool isAllInPrepGeomArea = isAllTestComponentsInTargetInterior( geom); - if ( !isAllInPrepGeomArea ) + if ( !isAllInPrepGeomArea ) return false; - + // If any segments intersect, result is false noding::SegmentString::ConstVect lineSegStr; noding::SegmentStringUtil::extractSegmentStrings( geom, lineSegStr); @@ -62,23 +62,23 @@ delete lineSegStr[ i ]; } - if (segsIntersect) + if (segsIntersect) return false; - + /** * Given that no segments intersect, if any vertex of the target * is contained in some test component. * the test is NOT properly contained. */ - if ( geom->getGeometryTypeId() == geos::geom::GEOS_MULTIPOLYGON + if ( geom->getGeometryTypeId() == geos::geom::GEOS_MULTIPOLYGON || geom->getGeometryTypeId() == geos::geom::GEOS_POLYGON ) { // TODO: generalize this to handle GeometryCollections bool isTargetGeomInTestArea = isAnyTargetComponentInAreaTest( geom, prepPoly->getRepresentativePoints()); - if (isTargetGeomInTestArea) + if (isTargetGeomInTestArea) return false; } - + return true; } diff -Nru geos-3.6.2/src/geom/prep/PreparedPolygonCovers.cpp geos-3.7.1/src/geom/prep/PreparedPolygonCovers.cpp --- geos-3.6.2/src/geom/prep/PreparedPolygonCovers.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPolygonCovers.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -32,7 +32,7 @@ // // protected: // -bool +bool PreparedPolygonCovers::fullTopologicalPredicate( const geom::Geometry * geom) { bool result = prepPoly->getGeometry().covers( geom); diff -Nru geos-3.6.2/src/geom/prep/PreparedPolygon.cpp geos-3.7.1/src/geom/prep/PreparedPolygon.cpp --- geos-3.6.2/src/geom/prep/PreparedPolygon.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPolygon.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -38,8 +38,8 @@ // // public: // -PreparedPolygon::PreparedPolygon(const geom::Geometry * geom) - : BasicPreparedGeometry(geom), segIntFinder(0), ptOnGeomLoc(0) +PreparedPolygon::PreparedPolygon(const geom::Geometry * geom) + : BasicPreparedGeometry(geom), segIntFinder(nullptr), ptOnGeomLoc(nullptr) { isRectangle = getGeometry().isRectangle(); } @@ -56,7 +56,7 @@ } -noding::FastSegmentSetIntersectionFinder * +noding::FastSegmentSetIntersectionFinder * PreparedPolygon:: getIntersectionFinder() const { @@ -68,79 +68,79 @@ return segIntFinder; } -algorithm::locate::PointOnGeometryLocator * +algorithm::locate::PointOnGeometryLocator * PreparedPolygon:: getPointLocator() const { - if (! ptOnGeomLoc) + if (! ptOnGeomLoc) ptOnGeomLoc = new algorithm::locate::IndexedPointInAreaLocator( getGeometry() ); return ptOnGeomLoc; } -bool +bool PreparedPolygon:: contains( const geom::Geometry * g) const { // short-circuit test - if ( !envelopeCovers( g) ) + if ( !envelopeCovers( g) ) return false; - + // optimization for rectangles if ( isRectangle ) { geom::Geometry const& geom = getGeometry(); geom::Polygon const& poly = dynamic_cast(geom); - + return operation::predicate::RectangleContains::contains(poly, *g); } return PreparedPolygonContains::contains(this, g); } -bool +bool PreparedPolygon:: containsProperly( const geom::Geometry* g) const { // short-circuit test - if ( !envelopeCovers( g) ) + if ( !envelopeCovers( g) ) return false; return PreparedPolygonContainsProperly::containsProperly( this, g); } -bool +bool PreparedPolygon:: covers( const geom::Geometry* g) const { // short-circuit test - if ( !envelopeCovers( g) ) + if ( !envelopeCovers( g) ) return false; // optimization for rectangle arguments - if ( isRectangle) + if ( isRectangle) return true; return PreparedPolygonCovers::covers( this, g); } -bool +bool PreparedPolygon:: intersects( const geom::Geometry* g) const { // envelope test - if ( !envelopesIntersect( g) ) + if ( !envelopesIntersect( g) ) return false; - + // optimization for rectangles if ( isRectangle ) { geom::Geometry const& geom = getGeometry(); geom::Polygon const& poly = dynamic_cast(geom); - + return operation::predicate::RectangleIntersects::intersects(poly, *g); } - + return PreparedPolygonIntersects::intersects( this, g); } diff -Nru geos-3.6.2/src/geom/prep/PreparedPolygonIntersects.cpp geos-3.7.1/src/geom/prep/PreparedPolygonIntersects.cpp --- geos-3.6.2/src/geom/prep/PreparedPolygonIntersects.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPolygonIntersects.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -43,14 +43,14 @@ // // public: // -bool +bool PreparedPolygonIntersects::intersects( const geom::Geometry * geom) { // Do point-in-poly tests first, since they are cheaper and may result // in a quick positive result. // If a point of any test components lie in target, result is true bool isInPrepGeomArea = isAnyTestComponentInTarget( geom); - if ( isInPrepGeomArea ) + if ( isInPrepGeomArea ) return true; if ( dynamic_cast(geom) ) { @@ -58,31 +58,31 @@ // (NOTE: isAnyTestComponentInTarget also checks for boundary) return false; } - + // If any segments intersect, result is true noding::SegmentString::ConstVect lineSegStr; noding::SegmentStringUtil::extractSegmentStrings( geom, lineSegStr ); bool segsIntersect = prepPoly->getIntersectionFinder()->intersects( &lineSegStr); - for ( size_t i = 0, ni = lineSegStr.size(); i < ni; i++ ) + for ( size_t i = 0, ni = lineSegStr.size(); i < ni; i++ ) { delete lineSegStr[ i ]; } - - if (segsIntersect) + + if (segsIntersect) return true; - + // If the test has dimension = 2 as well, it is necessary to // test for proper inclusion of the target. // Since no segments intersect, it is sufficient to test representative points. - if ( geom->getDimension() == 2) + if ( geom->getDimension() == 2) { // TODO: generalize this to handle GeometryCollections bool isPrepGeomInArea = isAnyTargetComponentInAreaTest( geom, prepPoly->getRepresentativePoints()); - if ( isPrepGeomInArea ) + if ( isPrepGeomInArea ) return true; } - + return false; } diff -Nru geos-3.6.2/src/geom/prep/PreparedPolygonPredicate.cpp geos-3.7.1/src/geom/prep/PreparedPolygonPredicate.cpp --- geos-3.6.2/src/geom/prep/PreparedPolygonPredicate.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/prep/PreparedPolygonPredicate.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -37,7 +37,7 @@ // // protected: // -bool +bool PreparedPolygonPredicate::isAllTestComponentsInTarget(const geom::Geometry* testGeom) const { geom::Coordinate::ConstVect pts; @@ -55,7 +55,7 @@ return true; } -bool +bool PreparedPolygonPredicate::isAllTestComponentsInTargetInterior( const geom::Geometry* testGeom) const { @@ -74,7 +74,7 @@ return true; } -bool +bool PreparedPolygonPredicate::isAnyTestComponentInTarget( const geom::Geometry* testGeom) const { @@ -93,7 +93,7 @@ return false; } -bool +bool PreparedPolygonPredicate::isAnyTestComponentInTargetInterior( const geom::Geometry * testGeom) const { @@ -104,7 +104,7 @@ { const Coordinate * pt = pts[i]; const int loc = prepPoly->getPointLocator()->locate(pt); - if (geom::Location::INTERIOR == loc) + if (geom::Location::INTERIOR == loc) { return true; } diff -Nru geos-3.6.2/src/geom/Triangle.cpp geos-3.7.1/src/geom/Triangle.cpp --- geos-3.6.2/src/geom/Triangle.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/Triangle.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -37,10 +37,10 @@ { double cx = p2.x; double cy = p2.y; - double ax = p0.x - cx; - double ay = p0.y - cy; - double bx = p1.x - cx; - double by = p1.y - cy; + double ax = p0.x - cx; + double ay = p0.y - cy; + double bx = p1.x - cx; + double by = p1.y - cy; double denom = 2 * det(ax,ay,bx,by); double numx = det(ay , ax * ax + ay * ay , by , bx * bx + by * by); diff -Nru geos-3.6.2/src/geom/util/ComponentCoordinateExtracter.cpp geos-3.7.1/src/geom/util/ComponentCoordinateExtracter.cpp --- geos-3.6.2/src/geom/util/ComponentCoordinateExtracter.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/ComponentCoordinateExtracter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -27,9 +27,9 @@ void ComponentCoordinateExtracter::filter_rw( Geometry * geom) { - if ( geom->getGeometryTypeId() == geos::geom::GEOS_LINEARRING + if ( geom->getGeometryTypeId() == geos::geom::GEOS_LINEARRING || geom->getGeometryTypeId() == geos::geom::GEOS_LINESTRING - || geom->getGeometryTypeId() == geos::geom::GEOS_POINT ) + || geom->getGeometryTypeId() == geos::geom::GEOS_POINT ) comps.push_back( geom->getCoordinate() ); //if ( typeid( *geom ) == typeid( LineString ) // || typeid( *geom ) == typeid( Point ) ) @@ -41,9 +41,9 @@ { //if ( typeid( *geom ) == typeid( LineString ) // || typeid( *geom ) == typeid( Point ) ) - if ( geom->getGeometryTypeId() == geos::geom::GEOS_LINEARRING + if ( geom->getGeometryTypeId() == geos::geom::GEOS_LINEARRING || geom->getGeometryTypeId() == geos::geom::GEOS_LINESTRING - || geom->getGeometryTypeId() == geos::geom::GEOS_POINT ) + || geom->getGeometryTypeId() == geos::geom::GEOS_POINT ) comps.push_back( geom->getCoordinate() ); //if ( const Coordinate *ls=dynamic_cast(geom) ) // comps.push_back(ls); diff -Nru geos-3.6.2/src/geom/util/CoordinateOperation.cpp geos-3.7.1/src/geom/util/CoordinateOperation.cpp --- geos-3.6.2/src/geom/util/CoordinateOperation.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/CoordinateOperation.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geom/util/GeometryCombiner.cpp geos-3.7.1/src/geom/util/GeometryCombiner.cpp --- geos-3.6.2/src/geom/util/GeometryCombiner.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/GeometryCombiner.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -58,10 +58,10 @@ { } -GeometryFactory const* -GeometryCombiner::extractFactory(std::vector const& geoms) +GeometryFactory const* +GeometryCombiner::extractFactory(std::vector const& geoms) { - return geoms.empty() ? NULL : geoms.front()->getFactory(); + return geoms.empty() ? nullptr : geoms.front()->getFactory(); } Geometry* GeometryCombiner::combine() @@ -69,27 +69,27 @@ std::vector elems; std::vector::const_iterator end = inputGeoms.end(); - for (std::vector::const_iterator i = inputGeoms.begin(); - i != end; ++i) + for (std::vector::const_iterator i = inputGeoms.begin(); + i != end; ++i) { extractElements(*i, elems); } if (elems.empty()) { - if (geomFactory != NULL) { - return geomFactory->createGeometryCollection(NULL); + if (geomFactory != nullptr) { + return geomFactory->createGeometryCollection(nullptr); } - return NULL; + return nullptr; } // return the "simplest possible" geometry return geomFactory->buildGeometry(elems); } -void +void GeometryCombiner::extractElements(Geometry* geom, std::vector& elems) { - if (geom == NULL) + if (geom == nullptr) return; for (std::size_t i = 0; i < geom->getNumGeometries(); ++i) { diff -Nru geos-3.6.2/src/geom/util/GeometryEditor.cpp geos-3.7.1/src/geom/util/GeometryEditor.cpp --- geos-3.6.2/src/geom/util/GeometryEditor.cpp 2017-02-01 17:30:14.000000000 +0000 +++ geos-3.7.1/src/geom/util/GeometryEditor.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -48,7 +48,7 @@ * an edited Geometry with the same GeometryFactory as the input Geometry. */ GeometryEditor::GeometryEditor(){ - factory=NULL; + factory=nullptr; } /** @@ -74,7 +74,7 @@ GeometryEditor::edit(const Geometry *geometry, GeometryEditorOperation *operation) { // if client did not supply a GeometryFactory, use the one from the input Geometry - if (factory == NULL) + if (factory == nullptr) factory=geometry->getFactory(); if ( const GeometryCollection *gc = @@ -100,7 +100,7 @@ // Unsupported Geometry classes should be caught in the GeometryEditorOperation. assert(!static_cast("SHOULD NEVER GET HERE")); - return NULL; + return nullptr; } Polygon* @@ -112,7 +112,7 @@ if (newPolygon->isEmpty()) { //RemoveSelectedPlugIn relies on this behaviour. [Jon Aquino] if ( newPolygon->getFactory() != factory ) { - Polygon *ret = factory->createPolygon(NULL, NULL); + Polygon *ret = factory->createPolygon(nullptr, nullptr); delete newPolygon; return ret; } else { @@ -127,7 +127,7 @@ //RemoveSelectedPlugIn relies on this behaviour. [Jon Aquino] delete shell; delete newPolygon; - return factory->createPolygon(NULL,NULL); + return factory->createPolygon(nullptr,nullptr); } vector *holes=new vector; @@ -155,7 +155,7 @@ { GeometryCollection *newCollection = dynamic_cast( operation->edit(collection,factory) ); vector *geometries = new vector(); - for (unsigned int i=0, n=newCollection->getNumGeometries(); igetNumGeometries(); igetGeometryN(i), operation); diff -Nru geos-3.6.2/src/geom/util/GeometryTransformer.cpp geos-3.7.1/src/geom/util/GeometryTransformer.cpp --- geos-3.6.2/src/geom/util/GeometryTransformer.cpp 2016-12-02 13:59:59.000000000 +0000 +++ geos-3.7.1/src/geom/util/GeometryTransformer.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -54,8 +54,8 @@ /*public*/ GeometryTransformer::GeometryTransformer() : - factory(NULL), - inputGeom(NULL), + factory(nullptr), + inputGeom(nullptr), pruneEmptyGeometry(true), preserveGeometryCollectionType(true), preserveCollections(false), @@ -73,7 +73,7 @@ } /*public*/ -auto_ptr +unique_ptr GeometryTransformer::transform(const Geometry* nInputGeom) { using geos::util::IllegalArgumentException; @@ -86,36 +86,36 @@ factory = inputGeom->getFactory(); if ( const Point* p=dynamic_cast(inputGeom) ) - return transformPoint(p, NULL); + return transformPoint(p, nullptr); if ( const MultiPoint* mp=dynamic_cast(inputGeom) ) - return transformMultiPoint(mp, NULL); + return transformMultiPoint(mp, nullptr); if ( const LinearRing* lr=dynamic_cast(inputGeom) ) - return transformLinearRing(lr, NULL); + return transformLinearRing(lr, nullptr); if ( const LineString* ls=dynamic_cast(inputGeom) ) - return transformLineString(ls, NULL); + return transformLineString(ls, nullptr); if ( const MultiLineString* mls=dynamic_cast(inputGeom) ) - return transformMultiLineString(mls, NULL); + return transformMultiLineString(mls, nullptr); if ( const Polygon* p=dynamic_cast(inputGeom) ) - return transformPolygon(p, NULL); + return transformPolygon(p, nullptr); if ( const MultiPolygon* mp=dynamic_cast(inputGeom) ) - return transformMultiPolygon(mp, NULL); + return transformMultiPolygon(mp, nullptr); if ( const GeometryCollection* gc=dynamic_cast(inputGeom) ) - return transformGeometryCollection(gc, NULL); + return transformGeometryCollection(gc, nullptr); throw IllegalArgumentException("Unknown Geometry subtype."); } -std::auto_ptr +std::unique_ptr GeometryTransformer::createCoordinateSequence( - std::auto_ptr< std::vector > coords) + std::unique_ptr< std::vector > coords) { - return std::auto_ptr( + return std::unique_ptr( factory->getCoordinateSequenceFactory()->create( coords.release()) ); } -std::auto_ptr +std::unique_ptr GeometryTransformer::transformCoordinates( const CoordinateSequence* coords, const Geometry* parent) @@ -126,10 +126,10 @@ std::cerr << "GeometryTransformer::transformCoordinates(CoordinateSequence " << coords <<", Geometry " << parent << ");" << std::endl; #endif - return std::auto_ptr(coords->clone()); + return std::unique_ptr(coords->clone()); } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformPoint( const Point* geom, const Geometry* parent) @@ -140,13 +140,13 @@ std::cerr << "GeometryTransformer::transformPoint(Point " << geom <<", Geometry " << parent << ");" << std::endl; #endif - CoordinateSequence::AutoPtr cs(transformCoordinates( + CoordinateSequence::Ptr cs(transformCoordinates( geom->getCoordinatesRO(), geom)); - return Geometry::AutoPtr(factory->createPoint(cs.release())); + return Geometry::Ptr(factory->createPoint(cs.release())); } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformMultiPoint( const MultiPoint* geom, const Geometry* parent) @@ -159,24 +159,24 @@ vector* transGeomList = new vector(); - for (unsigned int i=0, n=geom->getNumGeometries(); i(geom->getNumGeometries()); i(geom->getGeometryN(i)); assert(p); - Geometry::AutoPtr transformGeom = transformPoint(p, geom); - if ( transformGeom.get() == NULL ) continue; + Geometry::Ptr transformGeom = transformPoint(p, geom); + if ( transformGeom.get() == nullptr ) continue; if ( transformGeom->isEmpty() ) continue; // If an exception is thrown we'll leak transGeomList->push_back(transformGeom.release()); } - return Geometry::AutoPtr(factory->buildGeometry(transGeomList)); + return Geometry::Ptr(factory->buildGeometry(transGeomList)); } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformLinearRing( const LinearRing* geom, const Geometry* parent) @@ -187,22 +187,23 @@ std::cerr << "GeometryTransformer::transformLinearRing(LinearRing " << geom <<", Geometry " << parent << ");" << std::endl; #endif - CoordinateSequence::AutoPtr seq(transformCoordinates( + CoordinateSequence::Ptr seq(transformCoordinates( geom->getCoordinatesRO(), geom)); - unsigned int seqSize = seq->size(); + auto seqSize = seq->size(); // ensure a valid LinearRing if ( seqSize > 0 && seqSize < 4 && ! preserveType ) { - return factory->createLineString(seq); + return factory->createLineString(std::move(seq)); + } + else + { + return factory->createLinearRing(std::move(seq)); } - - return factory->createLinearRing(seq); - } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformLineString( const LineString* geom, const Geometry* parent) @@ -218,7 +219,7 @@ transformCoordinates(geom->getCoordinatesRO(), geom)); } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformMultiLineString( const MultiLineString* geom, const Geometry* parent) @@ -231,25 +232,25 @@ vector* transGeomList = new vector(); - for (unsigned int i=0, n=geom->getNumGeometries(); i(geom->getNumGeometries()); i( geom->getGeometryN(i)); assert(l); - Geometry::AutoPtr transformGeom = transformLineString(l, geom); - if ( transformGeom.get() == NULL ) continue; + Geometry::Ptr transformGeom = transformLineString(l, geom); + if ( transformGeom.get() == nullptr ) continue; if ( transformGeom->isEmpty() ) continue; // If an exception is thrown we'll leak transGeomList->push_back(transformGeom.release()); } - return Geometry::AutoPtr(factory->buildGeometry(transGeomList)); + return Geometry::Ptr(factory->buildGeometry(transGeomList)); } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformPolygon( const Polygon* geom, const Geometry* parent) @@ -266,8 +267,8 @@ geom->getExteriorRing()); assert(lr); - Geometry::AutoPtr shell = transformLinearRing(lr, geom); - if ( shell.get() == NULL + Geometry::Ptr shell = transformLinearRing(lr, geom); + if ( shell.get() == nullptr || ! dynamic_cast(shell.get()) || shell->isEmpty() ) { @@ -275,15 +276,15 @@ } vector* holes = new vector(); - for (unsigned int i=0, n=geom->getNumInteriorRing(); i(geom->getNumInteriorRing()); i( geom->getInteriorRingN(i)); assert(lr); - Geometry::AutoPtr hole(transformLinearRing(lr, geom)); + Geometry::Ptr hole(transformLinearRing(lr, geom)); - if ( hole.get() == NULL || hole->isEmpty() ) { + if ( hole.get() == nullptr || hole->isEmpty() ) { continue; } @@ -302,13 +303,13 @@ Geometry* sh = shell.release(); LinearRing* lr = dynamic_cast(sh); assert(lr); - return Geometry::AutoPtr(factory->createPolygon(lr, holes)); + return Geometry::Ptr(factory->createPolygon(lr, holes)); } else { // would like to use a manager constructor here vector* components = new vector(); - if ( shell.get() != NULL ) { + if ( shell.get() != nullptr ) { components->push_back(shell.release()); } @@ -317,12 +318,12 @@ delete holes; // :( - return Geometry::AutoPtr(factory->buildGeometry(components)); + return Geometry::Ptr(factory->buildGeometry(components)); } } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformMultiPolygon( const MultiPolygon* geom, const Geometry* parent) @@ -333,27 +334,27 @@ std::cerr << "GeometryTransformer::transformMultiPolygon(MultiPolygon " << geom <<", Geometry " << parent << ");" << std::endl; #endif - auto_ptr< vector > transGeomList( new vector() ); + unique_ptr< vector > transGeomList( new vector() ); - for (unsigned int i=0, n=geom->getNumGeometries(); igetNumGeometries(); i( geom->getGeometryN(i)); assert(p); - Geometry::AutoPtr transformGeom = transformPolygon(p, geom); - if ( transformGeom.get() == NULL ) continue; + Geometry::Ptr transformGeom = transformPolygon(p, geom); + if ( transformGeom.get() == nullptr ) continue; if ( transformGeom->isEmpty() ) continue; // If an exception is thrown we'll leak transGeomList->push_back(transformGeom.release()); } - return Geometry::AutoPtr(factory->buildGeometry(transGeomList.release())); + return Geometry::Ptr(factory->buildGeometry(transGeomList.release())); } -Geometry::AutoPtr +Geometry::Ptr GeometryTransformer::transformGeometryCollection( const GeometryCollection* geom, const Geometry* parent) @@ -366,11 +367,11 @@ vector* transGeomList = new vector(); - for (unsigned int i=0, n=geom->getNumGeometries(); igetNumGeometries(); igetGeometryN(i)); // no parent ? - if ( transformGeom.get() == NULL ) continue; + if ( transformGeom.get() == nullptr ) continue; if ( pruneEmptyGeometry && transformGeom->isEmpty() ) continue; // If an exception is thrown we'll leak @@ -379,12 +380,12 @@ if ( preserveGeometryCollectionType ) { - return Geometry::AutoPtr(factory->createGeometryCollection( + return Geometry::Ptr(factory->createGeometryCollection( transGeomList)); } else { - return Geometry::AutoPtr(factory->buildGeometry(transGeomList)); + return Geometry::Ptr(factory->buildGeometry(transGeomList)); } } diff -Nru geos-3.6.2/src/geom/util/LinearComponentExtracter.cpp geos-3.7.1/src/geom/util/LinearComponentExtracter.cpp --- geos-3.6.2/src/geom/util/LinearComponentExtracter.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/LinearComponentExtracter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geom/util/Makefile.in geos-3.7.1/src/geom/util/Makefile.in --- geos-3.6.2/src/geom/util/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/geom/util/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -135,7 +138,17 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ComponentCoordinateExtracter.Plo \ + ./$(DEPDIR)/CoordinateOperation.Plo \ + ./$(DEPDIR)/GeometryCombiner.Plo \ + ./$(DEPDIR)/GeometryEditor.Plo \ + ./$(DEPDIR)/GeometryTransformer.Plo \ + ./$(DEPDIR)/LinearComponentExtracter.Plo \ + ./$(DEPDIR)/PointExtracter.Plo \ + ./$(DEPDIR)/PolygonExtracter.Plo \ + ./$(DEPDIR)/ShortCircuitedGeometryVisitor.Plo \ + ./$(DEPDIR)/SineStarFactory.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -224,6 +237,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -272,6 +286,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -292,6 +308,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -341,7 +358,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -393,8 +409,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -426,16 +442,22 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ComponentCoordinateExtracter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateOperation.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryCombiner.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryEditor.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryTransformer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearComponentExtracter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointExtracter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PolygonExtracter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ShortCircuitedGeometryVisitor.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SineStarFactory.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ComponentCoordinateExtracter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CoordinateOperation.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryCombiner.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryEditor.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryTransformer.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearComponentExtracter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointExtracter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PolygonExtracter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ShortCircuitedGeometryVisitor.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SineStarFactory.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -516,7 +538,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -586,7 +611,16 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ComponentCoordinateExtracter.Plo + -rm -f ./$(DEPDIR)/CoordinateOperation.Plo + -rm -f ./$(DEPDIR)/GeometryCombiner.Plo + -rm -f ./$(DEPDIR)/GeometryEditor.Plo + -rm -f ./$(DEPDIR)/GeometryTransformer.Plo + -rm -f ./$(DEPDIR)/LinearComponentExtracter.Plo + -rm -f ./$(DEPDIR)/PointExtracter.Plo + -rm -f ./$(DEPDIR)/PolygonExtracter.Plo + -rm -f ./$(DEPDIR)/ShortCircuitedGeometryVisitor.Plo + -rm -f ./$(DEPDIR)/SineStarFactory.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -632,7 +666,16 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ComponentCoordinateExtracter.Plo + -rm -f ./$(DEPDIR)/CoordinateOperation.Plo + -rm -f ./$(DEPDIR)/GeometryCombiner.Plo + -rm -f ./$(DEPDIR)/GeometryEditor.Plo + -rm -f ./$(DEPDIR)/GeometryTransformer.Plo + -rm -f ./$(DEPDIR)/LinearComponentExtracter.Plo + -rm -f ./$(DEPDIR)/PointExtracter.Plo + -rm -f ./$(DEPDIR)/PolygonExtracter.Plo + -rm -f ./$(DEPDIR)/ShortCircuitedGeometryVisitor.Plo + -rm -f ./$(DEPDIR)/SineStarFactory.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -653,16 +696,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/geom/util/PointExtracter.cpp geos-3.7.1/src/geom/util/PointExtracter.cpp --- geos-3.6.2/src/geom/util/PointExtracter.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/PointExtracter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geom/util/PolygonExtracter.cpp geos-3.7.1/src/geom/util/PolygonExtracter.cpp --- geos-3.6.2/src/geom/util/PolygonExtracter.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/PolygonExtracter.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -43,7 +43,7 @@ } void PolygonExtracter::filter_ro(const Geometry *geom) - { + { if ( const Polygon *p=dynamic_cast(geom) ) { comps.push_back(p); diff -Nru geos-3.6.2/src/geom/util/ShortCircuitedGeometryVisitor.cpp geos-3.7.1/src/geom/util/ShortCircuitedGeometryVisitor.cpp --- geos-3.6.2/src/geom/util/ShortCircuitedGeometryVisitor.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geom/util/ShortCircuitedGeometryVisitor.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -30,7 +30,7 @@ void ShortCircuitedGeometryVisitor::applyTo(const Geometry &geom) { - for (unsigned int i=0, n=geom.getNumGeometries(); i(element)) diff -Nru geos-3.6.2/src/geom/util/SineStarFactory.cpp geos-3.7.1/src/geom/util/SineStarFactory.cpp --- geos-3.6.2/src/geom/util/SineStarFactory.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geom/util/SineStarFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli +unique_ptr SineStarFactory::createSineStar() const { - auto_ptr env ( dim.getEnvelope() ); + unique_ptr env ( dim.getEnvelope() ); double radius = env->getWidth() / 2.0; double armRatio = armLengthRatio; @@ -57,7 +57,7 @@ double centreX = env->getMinX() + radius; double centreY = env->getMinY() + radius; - auto_ptr< vector > pts ( new vector(nPts+1) ); + unique_ptr< vector > pts ( new vector(nPts+1) ); int iPt = 0; for (int i = 0; i < nPts; i++) { // the fraction of the way thru the current arm - in [0,1] @@ -81,11 +81,11 @@ } (*pts)[iPt] = Coordinate((*pts)[0]); - auto_ptr cs ( + unique_ptr cs ( geomFact->getCoordinateSequenceFactory()->create( pts.release() ) ); - auto_ptr ring ( geomFact->createLinearRing( cs.release() ) ); - auto_ptr poly ( geomFact->createPolygon(ring.release(), 0) ); + unique_ptr ring ( geomFact->createLinearRing( cs.release() ) ); + unique_ptr poly ( geomFact->createPolygon(ring.release(), nullptr) ); return poly; } diff -Nru geos-3.6.2/src/geomgraph/Depth.cpp geos-3.7.1/src/geomgraph/Depth.cpp --- geos-3.6.2/src/geomgraph/Depth.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/Depth.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/geomgraph/DirectedEdge.cpp geos-3.7.1/src/geomgraph/DirectedEdge.cpp --- geos-3.6.2/src/geomgraph/DirectedEdge.cpp 2017-02-14 16:37:00.000000000 +0000 +++ geos-3.7.1/src/geomgraph/DirectedEdge.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -76,11 +76,11 @@ isForwardVar(newIsForward), isInResultVar(false), isVisitedVar(false), - sym(NULL), - next(NULL), - nextMin(NULL), - edgeRing(NULL), - minEdgeRing(NULL) + sym(nullptr), + next(nullptr), + nextMin(nullptr), + edgeRing(nullptr), + minEdgeRing(nullptr) { depth[0]=0; depth[1]=-999; diff -Nru geos-3.6.2/src/geomgraph/DirectedEdgeStar.cpp geos-3.7.1/src/geomgraph/DirectedEdgeStar.cpp --- geos-3.6.2/src/geomgraph/DirectedEdgeStar.cpp 2017-02-14 16:37:00.000000000 +0000 +++ geos-3.7.1/src/geomgraph/DirectedEdgeStar.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -90,7 +90,7 @@ DirectedEdgeStar::getRightmostEdge() { EdgeEndStar::iterator it=begin(); - if ( it==end() ) return NULL; + if ( it==end() ) return nullptr; assert(*it); assert(dynamic_cast(*it)); @@ -121,7 +121,7 @@ return deLast; } assert(0); // found two horizontal edges incident on node - return NULL; + return nullptr; } /*public*/ @@ -129,7 +129,7 @@ DirectedEdgeStar::computeLabelling(std::vector *geom) //throw(TopologyException *) { - // this call can throw a TopologyException + // this call can throw a TopologyException // we don't have any cleanup to do... EdgeEndStar::computeLabelling(geom); @@ -156,7 +156,7 @@ void DirectedEdgeStar::mergeSymLabels() { - EdgeEndStar::iterator endIt=end(); + EdgeEndStar::iterator endIt=end(); for (EdgeEndStar::iterator it=begin(); it!=endIt; ++it) { assert(*it); @@ -192,7 +192,7 @@ std::vector* DirectedEdgeStar::getResultAreaEdges() { - if (resultAreaEdgeList!=NULL) return resultAreaEdgeList; + if (resultAreaEdgeList!=nullptr) return resultAreaEdgeList; resultAreaEdgeList=new std::vector(); @@ -210,14 +210,14 @@ /*public*/ void -DirectedEdgeStar::linkResultDirectedEdges() +DirectedEdgeStar::linkResultDirectedEdges() // throw(TopologyException *) { // make sure edges are copied to resultAreaEdges list getResultAreaEdges(); // find first area edge (if any) to start linking at - DirectedEdge *firstOut=NULL; - DirectedEdge *incoming=NULL; + DirectedEdge *firstOut=nullptr; + DirectedEdge *incoming=nullptr; int state=SCANNING_FOR_INCOMING; // link edges in CCW order for (std::vector::iterator @@ -235,7 +235,7 @@ assert(nextIn); // record first outgoing edge, in order to link the last incoming edge - if (firstOut==NULL && nextOut->isInResult()) firstOut=nextOut; + if (firstOut==nullptr && nextOut->isInResult()) firstOut=nextOut; switch (state) { case SCANNING_FOR_INCOMING: @@ -251,7 +251,7 @@ } } if (state==LINKING_TO_OUTGOING) { - if (firstOut==NULL) + if (firstOut==nullptr) { throw util::TopologyException("no outgoing dirEdge found", getCoordinate()); @@ -267,8 +267,8 @@ DirectedEdgeStar::linkMinimalDirectedEdges(EdgeRing *er) { // find first area edge (if any) to start linking at - DirectedEdge *firstOut=NULL; - DirectedEdge *incoming=NULL; + DirectedEdge *firstOut=nullptr; + DirectedEdge *incoming=nullptr; int state=SCANNING_FOR_INCOMING; // link edges in CW order @@ -285,7 +285,7 @@ assert(nextIn); // record first outgoing edge, in order to link the last incoming edge - if (firstOut==NULL && nextOut->getEdgeRing()==er) firstOut=nextOut; + if (firstOut==nullptr && nextOut->getEdgeRing()==er) firstOut=nextOut; switch (state) { case SCANNING_FOR_INCOMING: if (nextIn->getEdgeRing()!=er) continue; @@ -301,7 +301,7 @@ } } if (state==LINKING_TO_OUTGOING) { - assert(firstOut!=NULL); // found null for first outgoing dirEdge + assert(firstOut!=nullptr); // found null for first outgoing dirEdge assert(firstOut->getEdgeRing()==er); // unable to link last incoming dirEdge assert(incoming); incoming->setNextMin(firstOut); @@ -315,12 +315,12 @@ //getEdges(); // find first area edge (if any) to start linking at - DirectedEdge *prevOut=NULL; - DirectedEdge *firstIn=NULL; + DirectedEdge *prevOut=nullptr; + DirectedEdge *firstIn=nullptr; // link edges in CW order - EdgeEndStar::reverse_iterator rbeginIt=rbegin(); - EdgeEndStar::reverse_iterator rendIt=rend(); + EdgeEndStar::reverse_iterator rbeginIt=rbegin(); + EdgeEndStar::reverse_iterator rendIt=rend(); for(EdgeEndStar::reverse_iterator it=rbeginIt; it!=rendIt; ++it) { assert(*it); @@ -330,8 +330,8 @@ DirectedEdge *nextIn=nextOut->getSym(); assert(nextIn); - if (firstIn==NULL) firstIn=nextIn; - if (prevOut!=NULL) nextIn->setNext(prevOut); + if (firstIn==nullptr) firstIn=nextIn; + if (prevOut!=nullptr) nextIn->setNext(prevOut); // record outgoing edge, in order to link the last incoming edge prevOut=nextOut; } diff -Nru geos-3.6.2/src/geomgraph/Edge.cpp geos-3.7.1/src/geomgraph/Edge.cpp --- geos-3.6.2/src/geomgraph/Edge.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/Edge.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,9 +27,9 @@ #include #include -#include -#include -#include +#include +#include +#include #include #include #include @@ -59,7 +59,7 @@ * Handles edges from both L and A geometrys. */ void -Edge::updateIM(const Label& lbl, IntersectionMatrix& im) +Edge::updateIM(const Label& lbl, IntersectionMatrix& im) { im.setAtLeastIfValid(lbl.getLocation(0,Position::ON), lbl.getLocation(1,Position::ON), @@ -89,8 +89,8 @@ Edge::Edge(CoordinateSequence* newPts, const Label& newLabel) : GraphComponent(newLabel), - mce(NULL), - env(NULL), + mce(nullptr), + env(nullptr), isIsolatedVar(true), depth(), depthDelta(0), @@ -104,8 +104,8 @@ Edge::Edge(CoordinateSequence* newPts) : GraphComponent(), - mce(NULL), - env(NULL), + mce(nullptr), + env(nullptr), isIsolatedVar(true), depth(), depthDelta(0), @@ -120,7 +120,7 @@ Edge::getMonotoneChainEdge() { testInvariant(); - if (mce==NULL) mce=new MonotoneChainEdge(this); + if (mce==nullptr) mce=new MonotoneChainEdge(this); return mce; } @@ -203,8 +203,8 @@ { testInvariant(); - unsigned int npts1=getNumPoints(); - unsigned int npts2=e.getNumPoints(); + unsigned int npts1=getNumPoints(); + unsigned int npts2=e.getNumPoints(); if (npts1 != npts2 ) return false; @@ -257,7 +257,7 @@ ss << *this; return ss.str(); } - + // Dunno how to implemente this in terms of operator<< string Edge::printReverse() const @@ -288,7 +288,7 @@ Edge::getEnvelope() { // compute envelope lazily - if (env==NULL) + if (env==nullptr) { env=new Envelope(); unsigned int npts=getNumPoints(); diff -Nru geos-3.6.2/src/geomgraph/EdgeEnd.cpp geos-3.7.1/src/geomgraph/EdgeEnd.cpp --- geos-3.6.2/src/geomgraph/EdgeEnd.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/EdgeEnd.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -19,7 +19,7 @@ **********************************************************************/ #include -#include // for assertions +#include // for assertions #include #include #include @@ -42,9 +42,9 @@ /*public*/ EdgeEnd::EdgeEnd() : - edge(NULL), + edge(nullptr), label(), - node(NULL), + node(nullptr), dx(0.0), dy(0.0), quadrant(0) @@ -56,7 +56,7 @@ : edge(newEdge), label(), - node(NULL), + node(nullptr), dx(0.0), dy(0.0), quadrant(0) @@ -69,7 +69,7 @@ : edge(newEdge), label(newLabel), - node(NULL), + node(nullptr), dx(0.0), dy(0.0), quadrant(0) @@ -83,7 +83,7 @@ : edge(newEdge), label(), - node(NULL), + node(nullptr), dx(0.0), dy(0.0), quadrant(0) diff -Nru geos-3.6.2/src/geomgraph/EdgeEndStar.cpp geos-3.7.1/src/geomgraph/EdgeEndStar.cpp --- geos-3.6.2/src/geomgraph/EdgeEndStar.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/EdgeEndStar.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -56,7 +56,7 @@ EdgeEndStar::getCoordinate() { static Coordinate nullCoord(DoubleNotANumber, DoubleNotANumber, DoubleNotANumber); - if (edgeMap.size()==0) return nullCoord; + if (edgeMap.empty()) return nullCoord; EdgeEndStar::iterator it=begin(); EdgeEnd *e=*it; @@ -76,7 +76,7 @@ EdgeEndStar::getNextCW(EdgeEnd *ee) { EdgeEndStar::iterator it=find(ee); - if ( it==end() ) return NULL; + if ( it==end() ) return nullptr; if ( it==begin() ) { it=end(); --it; } else --it; return *it; @@ -215,7 +215,7 @@ // the left side of the edge // if no edges, trivially consistent - if (edgeMap.size()==0) return true; + if (edgeMap.empty()) return true; // initialize startLoc to location of last L side (if any) assert(*rbegin()); @@ -366,4 +366,3 @@ } // namespace geos.geomgraph } // namespace geos - diff -Nru geos-3.6.2/src/geomgraph/EdgeIntersectionList.cpp geos-3.7.1/src/geomgraph/EdgeIntersectionList.cpp --- geos-3.6.2/src/geomgraph/EdgeIntersectionList.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/EdgeIntersectionList.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,16 +3,16 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * - ********************************************************************** + ********************************************************************** * * Last port: geomgraph/EdgeIntersectionList.java r428 (JTS-1.12+) * diff -Nru geos-3.6.2/src/geomgraph/EdgeList.cpp geos-3.7.1/src/geomgraph/EdgeList.cpp --- geos-3.6.2/src/geomgraph/EdgeList.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/EdgeList.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -22,7 +22,7 @@ #include #include -#include +#include #include #ifndef GEOS_DEBUG @@ -80,7 +80,7 @@ #endif if ( it != ocaMap.end() ) return it->second; - return 0; + return nullptr; } Edge* @@ -139,7 +139,7 @@ for(std::size_t j=0, s=el.edges.size(); j + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -64,9 +64,9 @@ edges(), pts(newGeometryFactory->getCoordinateSequenceFactory()->create()), label(Location::UNDEF), // new Label(Location::UNDEF)), - ring(NULL), + ring(nullptr), isHoleVar(false), - shell(NULL) + shell(nullptr) { /* * Commented out to fix different polymorphism in C++ (from Java) @@ -90,11 +90,11 @@ * destroyed by `ring' dtor and we must not destroy * it twice. */ - if ( ring == NULL ) + if ( ring == nullptr ) { delete pts; } - else + else { delete ring; } @@ -149,7 +149,7 @@ EdgeRing::isShell() { testInvariant(); - return (shell==NULL); + return (shell==nullptr); } EdgeRing* @@ -163,7 +163,7 @@ EdgeRing::setShell(EdgeRing *newShell) { shell=newShell; - if (shell!=NULL) shell->addHole(this); + if (shell!=nullptr) shell->addHole(this); testInvariant(); } @@ -202,7 +202,7 @@ { testInvariant(); - if (ring!=NULL) return; // don't compute more than once + if (ring!=nullptr) return; // don't compute more than once ring=geometryFactory->createLinearRing(pts); isHoleVar=CGAlgorithms::isCCW(pts); @@ -230,7 +230,7 @@ do { //util::Assert::isTrue(de!=NULL,"EdgeRing::computePoints: found null Directed Edge"); //assert(de!=NULL); // EdgeRing::computePoints: found null Directed Edge - if(de==NULL) + if(de==nullptr) throw util::TopologyException( "EdgeRing::computePoints: found null Directed Edge"); @@ -333,7 +333,7 @@ EdgeRing::addPoints(Edge *edge, bool isForward, bool isFirstEdge) { // EdgeRing::addPoints: can't add points after LinearRing construction - assert(ring==NULL); + assert(ring==nullptr); assert(edge); const CoordinateSequence* edgePts=edge->getCoordinates(); @@ -351,11 +351,11 @@ pts->add(edgePts->getAt(i)); } } - + else { // is backward size_t startIndex=numEdgePts-1; if (isFirstEdge) startIndex=numEdgePts; - //for (int i=startIndex;i>=0;i--) + //for (int i=startIndex;i>=0;i--) for (size_t i=startIndex; i>0; --i) { pts->add(edgePts->getAt(i-1)); diff -Nru geos-3.6.2/src/geomgraph/GeometryGraph.cpp geos-3.7.1/src/geomgraph/GeometryGraph.cpp --- geos-3.6.2/src/geomgraph/GeometryGraph.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/GeometryGraph.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -29,11 +29,11 @@ #include #include -#include -#include +#include +#include #include -#include +#include #include #include #include @@ -50,7 +50,7 @@ #include #include -#include // auto_ptr +#include // unique_ptr #include #include @@ -75,9 +75,9 @@ * for determining whether * a component (node or edge) that appears multiple times in elements * of a MultiGeometry is in the boundary or the interior of the Geometry - * + * * The SFS uses the "Mod-2 Rule", which this function implements - * + * * An alternative (and possibly more intuitive) rule would be * the "At Most One Rule": * isInBoundary = (componentCount == 1) @@ -128,7 +128,7 @@ GeometryGraph::getBoundaryPoints() { - if ( ! boundaryPoints.get() ) + if ( ! boundaryPoints.get() ) { // Collection will be destroied by GeometryGraph dtor vector* coll = getBoundaryNodes(); @@ -372,7 +372,7 @@ { SegmentIntersector *si = new SegmentIntersector(&li, true, false); si->setIsDoneIfProperInt(isDoneIfProperInt); - auto_ptr esi(createEdgeSetIntersector()); + unique_ptr esi(createEdgeSetIntersector()); typedef vector EC; EC *se = edges; @@ -389,7 +389,7 @@ || dynamic_cast(parentGeom); bool computeAllSegments = computeRingSelfNodes || ! isRings; - + esi->computeIntersections(se, si, computeAllSegments); #if GEOS_DEBUG @@ -410,7 +410,7 @@ SegmentIntersector *si=new SegmentIntersector(li, includeProper, true); si->setBoundaryNodes(getBoundaryNodes(), g->getBoundaryNodes()); - auto_ptr esi(createEdgeSetIntersector()); + unique_ptr esi(createEdgeSetIntersector()); typedef vector EC; @@ -547,7 +547,7 @@ argIndex(newArgIndex), hasTooFewPointsVar(false) { - if (parentGeom!=NULL) add(parentGeom); + if (parentGeom!=nullptr) add(parentGeom); } GeometryGraph::GeometryGraph(int newArgIndex, @@ -561,13 +561,13 @@ argIndex(newArgIndex), hasTooFewPointsVar(false) { - if (parentGeom!=NULL) add(parentGeom); + if (parentGeom!=nullptr) add(parentGeom); } GeometryGraph::GeometryGraph() : PlanarGraph(), - parentGeom(NULL), + parentGeom(nullptr), useBoundaryDeterminationRule(true), boundaryNodeRule(algorithm::BoundaryNodeRule::getBoundaryOGCSFS()), argIndex(-1), diff -Nru geos-3.6.2/src/geomgraph/GraphComponent.cpp geos-3.7.1/src/geomgraph/GraphComponent.cpp --- geos-3.6.2/src/geomgraph/GraphComponent.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/GraphComponent.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/geomgraph/index/Makefile.in geos-3.7.1/src/geomgraph/index/Makefile.in --- geos-3.6.2/src/geomgraph/index/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -134,7 +137,15 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/MonotoneChainEdge.Plo \ + ./$(DEPDIR)/MonotoneChainIndexer.Plo \ + ./$(DEPDIR)/SegmentIntersector.Plo \ + ./$(DEPDIR)/SimpleEdgeSetIntersector.Plo \ + ./$(DEPDIR)/SimpleMCSweepLineIntersector.Plo \ + ./$(DEPDIR)/SimpleSweepLineIntersector.Plo \ + ./$(DEPDIR)/SweepLineEvent.Plo \ + ./$(DEPDIR)/SweepLineSegment.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -223,6 +234,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -271,6 +283,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -291,6 +305,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -340,7 +355,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -390,8 +404,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -423,14 +437,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainEdge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainIndexer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentIntersector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleEdgeSetIntersector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleMCSweepLineIntersector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleSweepLineIntersector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineSegment.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainEdge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainIndexer.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentIntersector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleEdgeSetIntersector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleMCSweepLineIntersector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleSweepLineIntersector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineEvent.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineSegment.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -511,7 +531,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -581,7 +604,14 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/MonotoneChainEdge.Plo + -rm -f ./$(DEPDIR)/MonotoneChainIndexer.Plo + -rm -f ./$(DEPDIR)/SegmentIntersector.Plo + -rm -f ./$(DEPDIR)/SimpleEdgeSetIntersector.Plo + -rm -f ./$(DEPDIR)/SimpleMCSweepLineIntersector.Plo + -rm -f ./$(DEPDIR)/SimpleSweepLineIntersector.Plo + -rm -f ./$(DEPDIR)/SweepLineEvent.Plo + -rm -f ./$(DEPDIR)/SweepLineSegment.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -627,7 +657,14 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/MonotoneChainEdge.Plo + -rm -f ./$(DEPDIR)/MonotoneChainIndexer.Plo + -rm -f ./$(DEPDIR)/SegmentIntersector.Plo + -rm -f ./$(DEPDIR)/SimpleEdgeSetIntersector.Plo + -rm -f ./$(DEPDIR)/SimpleMCSweepLineIntersector.Plo + -rm -f ./$(DEPDIR)/SimpleSweepLineIntersector.Plo + -rm -f ./$(DEPDIR)/SweepLineEvent.Plo + -rm -f ./$(DEPDIR)/SweepLineSegment.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -648,16 +685,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/geomgraph/index/MonotoneChainEdge.cpp geos-3.7.1/src/geomgraph/index/MonotoneChainEdge.cpp --- geos-3.6.2/src/geomgraph/index/MonotoneChainEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/MonotoneChainEdge.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -34,11 +34,11 @@ * MonotoneChains are a way of partitioning the segments of an edge to * allow for fast searching of intersections. * They have the following properties: - * + * * - the segments within a monotone chain will never intersect each other * - the envelope of any contiguous subset of the segments in a monotone * chain is simply the envelope of the endpoints of the subset. - * + * * Property 1 means that there is no need to test pairs of segments from * within the same monotone chain for intersection. * Property 2 allows binary search to be used to find the intersection @@ -101,7 +101,7 @@ { for(size_t j=0; j(i),mce,static_cast(j),si); } } } @@ -139,7 +139,7 @@ env2.init(p10,p11); if (!env1.intersects(&env2)) return; - // the chains overlap, so split each in half and iterate + // the chains overlap, so split each in half and iterate // (binary search) int mid0=(start0+end0)/2; int mid1=(start1+end1)/2; diff -Nru geos-3.6.2/src/geomgraph/index/MonotoneChainIndexer.cpp geos-3.7.1/src/geomgraph/index/MonotoneChainIndexer.cpp --- geos-3.6.2/src/geomgraph/index/MonotoneChainIndexer.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/MonotoneChainIndexer.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geomgraph/index/SegmentIntersector.cpp geos-3.7.1/src/geomgraph/index/SegmentIntersector.cpp --- geos-3.6.2/src/geomgraph/index/SegmentIntersector.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/SegmentIntersector.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -73,14 +73,14 @@ return hasIntersectionVar; } -void -SegmentIntersector::setIsDoneIfProperInt(bool idwpi) +void +SegmentIntersector::setIsDoneIfProperInt(bool idwpi) { isDoneWhenProperInt = idwpi; } -bool -SegmentIntersector::getIsDone() +bool +SegmentIntersector::getIsDone() { return isDone; } @@ -117,7 +117,7 @@ bool SegmentIntersector::isTrivialIntersection(Edge *e0,int segIndex0,Edge *e1,int segIndex1) { -// if (e0->equals(e1)) +// if (e0->equals(e1)) if (e0==e1) { if (li->getIntersectionNum()==1) { if (isAdjacentSegments(segIndex0,segIndex1)) @@ -196,7 +196,7 @@ cerr<<"SegmentIntersector::addIntersections(): properIntersectionPoint: "<getCoordinates(); const CoordinateSequence *pts1=e1->getCoordinates(); - size_t npts0=pts0->getSize(); - size_t npts1=pts1->getSize(); + auto npts0 = static_cast(pts0->getSize()); + auto npts1 = static_cast(pts1->getSize()); - for(size_t i0=0; i0addIntersections(e0, i0, e1, i1); } diff -Nru geos-3.6.2/src/geomgraph/index/SimpleMCSweepLineIntersector.cpp geos-3.7.1/src/geomgraph/index/SimpleMCSweepLineIntersector.cpp --- geos-3.6.2/src/geomgraph/index/SimpleMCSweepLineIntersector.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/SimpleMCSweepLineIntersector.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -49,7 +49,7 @@ SegmentIntersector *si, bool testAllSegments) { if (testAllSegments) - add(edges,NULL); + add(edges,nullptr); else add(edges); computeIntersections(si); @@ -95,10 +95,10 @@ for(size_t i=0; igetMinX(i),NULL,mc); + MonotoneChain *mc=new MonotoneChain(mce, static_cast(i)); + SweepLineEvent *insertEvent=new SweepLineEvent(edgeSet,mce->getMinX(static_cast(i)),nullptr,mc); events.push_back(insertEvent); - events.push_back(new SweepLineEvent(edgeSet,mce->getMaxX(i),insertEvent,mc)); + events.push_back(new SweepLineEvent(edgeSet,mce->getMaxX(static_cast(i)),insertEvent,mc)); } } @@ -117,7 +117,7 @@ SweepLineEvent *ev=events[i]; if (ev->isDelete()) { - ev->getInsertEvent()->setDeleteEventIndex(i); + ev->getInsertEvent()->setDeleteEventIndex(static_cast(i)); } } } @@ -133,12 +133,12 @@ SweepLineEvent *ev=events[i]; if (ev->isInsert()) { - processOverlaps(i,ev->getDeleteEventIndex(),ev,si); + processOverlaps(static_cast(i),ev->getDeleteEventIndex(),ev,si); } - if (si->getIsDone()) + if (si->getIsDone()) { break; - } + } } } @@ -161,7 +161,7 @@ MonotoneChain *mc1=(MonotoneChain*) ev1->getObject(); // don't compare edges in same group // null group indicates that edges should be compared - if (ev0->edgeSet==NULL || (ev0->edgeSet!=ev1->edgeSet)) + if (ev0->edgeSet==nullptr || (ev0->edgeSet!=ev1->edgeSet)) { mc0->computeIntersections(mc1,si); nOverlaps++; diff -Nru geos-3.6.2/src/geomgraph/index/SimpleSweepLineIntersector.cpp geos-3.7.1/src/geomgraph/index/SimpleSweepLineIntersector.cpp --- geos-3.6.2/src/geomgraph/index/SimpleSweepLineIntersector.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/SimpleSweepLineIntersector.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -47,7 +47,7 @@ SegmentIntersector *si, bool testAllSegments) { if (testAllSegments) - add(edges,NULL); + add(edges,nullptr); else add(edges); computeIntersections(si); @@ -89,8 +89,8 @@ std::size_t n=pts->getSize()-1; for(std::size_t i=0; igetMinX(), NULL, ss); + SweepLineSegment *ss=new SweepLineSegment(edge, static_cast(i)); + SweepLineEvent *insertEvent=new SweepLineEvent(edgeSet, ss->getMinX(), nullptr, ss); events.push_back(insertEvent); events.push_back(new SweepLineEvent(edgeSet, ss->getMaxX(), insertEvent, ss)); } @@ -148,7 +148,7 @@ if (ev1->isInsert()) { SweepLineSegment *ss1=(SweepLineSegment*) ev1->getObject(); - if (ev0->edgeSet==NULL || (ev0->edgeSet!=ev1->edgeSet)) + if (ev0->edgeSet==nullptr || (ev0->edgeSet!=ev1->edgeSet)) { ss0->computeIntersections(ss1,si); nOverlaps++; diff -Nru geos-3.6.2/src/geomgraph/index/SweepLineEvent.cpp geos-3.7.1/src/geomgraph/index/SweepLineEvent.cpp --- geos-3.6.2/src/geomgraph/index/SweepLineEvent.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/SweepLineEvent.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -32,14 +32,14 @@ insertEvent(newInsertEvent), deleteEventIndex(0) { - if(insertEvent!=NULL) eventType=DELETE_EVENT; + if(insertEvent!=nullptr) eventType=DELETE_EVENT; else eventType=INSERT_EVENT; } SweepLineEvent::~SweepLineEvent(){ if (eventType==DELETE_EVENT) { delete insertEvent; - delete obj; + delete obj; } } diff -Nru geos-3.6.2/src/geomgraph/index/SweepLineSegment.cpp geos-3.7.1/src/geomgraph/index/SweepLineSegment.cpp --- geos-3.6.2/src/geomgraph/index/SweepLineSegment.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/index/SweepLineSegment.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/geomgraph/Label.cpp geos-3.7.1/src/geomgraph/Label.cpp --- geos-3.6.2/src/geomgraph/Label.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/geomgraph/Label.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -232,7 +232,7 @@ bool Label::isEqualOnSide(const Label& lbl, int side) const { - return + return elt[0].isEqualOnSide(lbl.elt[0], side) && elt[1].isEqualOnSide(lbl.elt[1], side); } diff -Nru geos-3.6.2/src/geomgraph/Makefile.in geos-3.7.1/src/geomgraph/Makefile.in --- geos-3.6.2/src/geomgraph/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/geomgraph/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -135,7 +138,18 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/Depth.Plo \ + ./$(DEPDIR)/DirectedEdge.Plo ./$(DEPDIR)/DirectedEdgeStar.Plo \ + ./$(DEPDIR)/Edge.Plo ./$(DEPDIR)/EdgeEnd.Plo \ + ./$(DEPDIR)/EdgeEndStar.Plo \ + ./$(DEPDIR)/EdgeIntersectionList.Plo ./$(DEPDIR)/EdgeList.Plo \ + ./$(DEPDIR)/EdgeNodingValidator.Plo ./$(DEPDIR)/EdgeRing.Plo \ + ./$(DEPDIR)/GeometryGraph.Plo ./$(DEPDIR)/GraphComponent.Plo \ + ./$(DEPDIR)/Label.Plo ./$(DEPDIR)/Node.Plo \ + ./$(DEPDIR)/NodeFactory.Plo ./$(DEPDIR)/NodeMap.Plo \ + ./$(DEPDIR)/PlanarGraph.Plo ./$(DEPDIR)/Position.Plo \ + ./$(DEPDIR)/Quadrant.Plo ./$(DEPDIR)/TopologyLocation.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -177,7 +191,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -266,6 +280,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -314,6 +329,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -334,6 +351,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -383,7 +401,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -447,8 +464,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -480,26 +497,32 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Depth.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdgeStar.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Edge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEnd.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndStar.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeIntersectionList.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeList.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeNodingValidator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeRing.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryGraph.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GraphComponent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Label.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Node.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeMap.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PlanarGraph.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Position.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Quadrant.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TopologyLocation.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Depth.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdgeStar.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Edge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEnd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndStar.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeIntersectionList.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeList.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeNodingValidator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeRing.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryGraph.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GraphComponent.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Label.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Node.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeMap.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PlanarGraph.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Position.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Quadrant.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TopologyLocation.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -627,7 +650,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -723,7 +749,26 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Depth.Plo + -rm -f ./$(DEPDIR)/DirectedEdge.Plo + -rm -f ./$(DEPDIR)/DirectedEdgeStar.Plo + -rm -f ./$(DEPDIR)/Edge.Plo + -rm -f ./$(DEPDIR)/EdgeEnd.Plo + -rm -f ./$(DEPDIR)/EdgeEndStar.Plo + -rm -f ./$(DEPDIR)/EdgeIntersectionList.Plo + -rm -f ./$(DEPDIR)/EdgeList.Plo + -rm -f ./$(DEPDIR)/EdgeNodingValidator.Plo + -rm -f ./$(DEPDIR)/EdgeRing.Plo + -rm -f ./$(DEPDIR)/GeometryGraph.Plo + -rm -f ./$(DEPDIR)/GraphComponent.Plo + -rm -f ./$(DEPDIR)/Label.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeFactory.Plo + -rm -f ./$(DEPDIR)/NodeMap.Plo + -rm -f ./$(DEPDIR)/PlanarGraph.Plo + -rm -f ./$(DEPDIR)/Position.Plo + -rm -f ./$(DEPDIR)/Quadrant.Plo + -rm -f ./$(DEPDIR)/TopologyLocation.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -769,7 +814,26 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Depth.Plo + -rm -f ./$(DEPDIR)/DirectedEdge.Plo + -rm -f ./$(DEPDIR)/DirectedEdgeStar.Plo + -rm -f ./$(DEPDIR)/Edge.Plo + -rm -f ./$(DEPDIR)/EdgeEnd.Plo + -rm -f ./$(DEPDIR)/EdgeEndStar.Plo + -rm -f ./$(DEPDIR)/EdgeIntersectionList.Plo + -rm -f ./$(DEPDIR)/EdgeList.Plo + -rm -f ./$(DEPDIR)/EdgeNodingValidator.Plo + -rm -f ./$(DEPDIR)/EdgeRing.Plo + -rm -f ./$(DEPDIR)/GeometryGraph.Plo + -rm -f ./$(DEPDIR)/GraphComponent.Plo + -rm -f ./$(DEPDIR)/Label.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeFactory.Plo + -rm -f ./$(DEPDIR)/NodeMap.Plo + -rm -f ./$(DEPDIR)/PlanarGraph.Plo + -rm -f ./$(DEPDIR)/Position.Plo + -rm -f ./$(DEPDIR)/Quadrant.Plo + -rm -f ./$(DEPDIR)/TopologyLocation.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -790,8 +854,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/geomgraph/Node.cpp geos-3.7.1/src/geomgraph/Node.cpp --- geos-3.6.2/src/geomgraph/Node.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/geomgraph/Node.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -261,7 +261,7 @@ } zvals.push_back(z); ztot+=z; - coord.z=ztot/zvals.size(); + coord.z = ztot / static_cast(zvals.size()); #if GEOS_DEBUG cerr<<" added "<(&n->getCoordinate()); Node *node=find(*c); - if (node==NULL) { + if (node==nullptr) { #if GEOS_DEBUG cerr<<" is new"<second; } diff -Nru geos-3.6.2/src/geomgraph/PlanarGraph.cpp geos-3.7.1/src/geomgraph/PlanarGraph.cpp --- geos-3.6.2/src/geomgraph/PlanarGraph.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/geomgraph/PlanarGraph.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -111,7 +111,7 @@ assert(nodes); Node *node=nodes->find(coord); - if (node==NULL) return false; + if (node==nullptr) return false; const Label& label = node->getLabel(); if (! label.isNull() && label.getLocation(geomIndex)==Location::BOUNDARY) @@ -172,7 +172,7 @@ { assert(nodes); #if GEOS_DEBUG > 1 - cerr << "PlanarGraph::addNode(Node * " << *node + cerr << "PlanarGraph::addNode(Node * " << *node << ")" << endl; #endif return nodes->addNode(node); @@ -209,11 +209,11 @@ assert(e); edges->push_back(e); - // PlanarGraph destructor will delete all DirectedEdges + // PlanarGraph destructor will delete all DirectedEdges // in edgeEndList, which is where these are added // by the ::add(EdgeEnd) call - std::auto_ptr de1(new DirectedEdge(e, true)); - std::auto_ptr de2(new DirectedEdge(e, false)); + std::unique_ptr de1(new DirectedEdge(e, true)); + std::unique_ptr de2(new DirectedEdge(e, false)); de1->setSym(de2.get()); de2->setSym(de1.get()); @@ -290,7 +290,7 @@ // should test using values rather then pointers ? if (ee->getEdge()==e) return ee; } - return NULL; + return nullptr; } /*public*/ @@ -308,7 +308,7 @@ if (p0==eCoord->getAt(0) && p1==eCoord->getAt(1)) return e; } - return NULL; + return nullptr; } /*public*/ @@ -342,7 +342,7 @@ } } - return NULL; + return nullptr; } /*private*/ @@ -362,7 +362,7 @@ string PlanarGraph::printEdges() { - + std::ostringstream oss; oss << "Edges: "; for(size_t i=0, n=edges->size(); idepth(); + if (root!=nullptr) return root->depth(); return 0; } int Bintree::size() { - if (root!=NULL) return root->size(); + if (root!=nullptr) return root->size(); return 0; } @@ -85,7 +85,7 @@ int Bintree::nodeSize() { - if (root!=NULL) return root->nodeSize(); + if (root!=nullptr) return root->nodeSize(); return 0; } diff -Nru geos-3.6.2/src/index/bintree/Interval.cpp geos-3.7.1/src/index/bintree/Interval.cpp --- geos-3.6.2/src/index/bintree/Interval.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/bintree/Interval.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -49,7 +49,7 @@ max=nmin; } } - + double Interval::getMin() const { @@ -67,27 +67,27 @@ { return max-min; } - + void Interval::expandToInclude(Interval *interval) { if (interval->max>max) max=interval->max; if (interval->minmin; } - + bool Interval::overlaps(const Interval *interval) const { return overlaps(interval->min,interval->max); } - + bool Interval::overlaps(double nmin, double nmax) const { if (min>nmax || max$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -505,7 +520,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -575,7 +593,12 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Bintree.Plo + -rm -f ./$(DEPDIR)/Interval.Plo + -rm -f ./$(DEPDIR)/Key.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeBase.Plo + -rm -f ./$(DEPDIR)/Root.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -621,7 +644,12 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Bintree.Plo + -rm -f ./$(DEPDIR)/Interval.Plo + -rm -f ./$(DEPDIR)/Key.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeBase.Plo + -rm -f ./$(DEPDIR)/Root.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -642,16 +670,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/index/bintree/NodeBase.cpp geos-3.7.1/src/index/bintree/NodeBase.cpp --- geos-3.6.2/src/index/bintree/NodeBase.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/bintree/NodeBase.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -44,8 +44,8 @@ NodeBase::NodeBase() { items=new vector(); - subnode[0]=NULL; - subnode[1]=NULL; + subnode[0]=nullptr; + subnode[1]=nullptr; } NodeBase::~NodeBase() { @@ -55,8 +55,8 @@ delete items; delete subnode[0]; delete subnode[1]; - subnode[0]=NULL; - subnode[1]=NULL; + subnode[0]=nullptr; + subnode[1]=nullptr; } vector* @@ -72,7 +72,7 @@ vector* NodeBase::addAllItems(vector *newItems) { items->insert(items->end(),newItems->begin(),newItems->end()); for(int i=0;i<2;i++) { - if (subnode[i]!=NULL) { + if (subnode[i]!=nullptr) { subnode[i]->addAllItems(newItems); } } @@ -86,7 +86,7 @@ return items; resultItems->insert(resultItems->end(),items->begin(),items->end()); for (int i=0;i<2;i++) { - if (subnode[i]!=NULL) { + if (subnode[i]!=nullptr) { subnode[i]->addAllItemsFromOverlapping(interval,resultItems); } } @@ -98,7 +98,7 @@ { int maxSubDepth=0; for (int i=0;i<2;i++) { - if (subnode[i]!=NULL) { + if (subnode[i]!=nullptr) { int sqd=subnode[i]->depth(); if (sqd>maxSubDepth) maxSubDepth=sqd; @@ -112,7 +112,7 @@ { int subSize=0; for (int i=0;i<2;i++) { - if (subnode[i]!=NULL) { + if (subnode[i]!=nullptr) { subSize+=subnode[i]->size(); } } @@ -124,7 +124,7 @@ { int subSize=0; for (int i=0;i<2;i++) { - if (subnode[i]!=NULL) { + if (subnode[i]!=nullptr) { subSize+=subnode[i]->nodeSize(); } } diff -Nru geos-3.6.2/src/index/bintree/Node.cpp geos-3.7.1/src/index/bintree/Node.cpp --- geos-3.6.2/src/index/bintree/Node.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/bintree/Node.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -38,9 +38,9 @@ Node::createExpanded(Node *node,Interval *addInterval) { Interval *expandInt=new Interval(addInterval); - if (node!=NULL) expandInt->expandToInclude(node->interval); + if (node!=nullptr) expandInt->expandToInclude(node->interval); Node *largerNode=createNode(expandInt); - if (node!=NULL) largerNode->insert(node); + if (node!=nullptr) largerNode->insert(node); delete expandInt; return largerNode; } @@ -99,7 +99,7 @@ int subnodeIndex=getSubnodeIndex(searchInterval,centre); if (subnodeIndex==-1) return this; - if (subnode[subnodeIndex]!=NULL) { + if (subnode[subnodeIndex]!=nullptr) { // query lies in subnode, so search it Node *node=subnode[subnodeIndex]; return node->find(searchInterval); @@ -111,7 +111,7 @@ void Node::insert(Node *node) { - assert(interval==NULL || interval->contains(node->interval)); + assert(interval==nullptr || interval->contains(node->interval)); int index=getSubnodeIndex(node->interval,centre); assert(index >= 0); if (node->level==level-1) { @@ -132,7 +132,7 @@ Node* Node::getSubnode(int index) { - if (subnode[index]==NULL) { + if (subnode[index]==nullptr) { subnode[index]=createSubnode(index); } return subnode[index]; diff -Nru geos-3.6.2/src/index/bintree/Root.cpp geos-3.7.1/src/index/bintree/Root.cpp --- geos-3.6.2/src/index/bintree/Root.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/bintree/Root.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -47,7 +47,7 @@ * If the subnode doesn't exist or this item is not contained in it, * have to expand the tree upward to contain the item. */ - if (node==NULL || !node->getInterval()->contains(itemInterval)) + if (node==nullptr || !node->getInterval()->contains(itemInterval)) { Node* largerNode=Node::createExpanded(node,itemInterval); // delete subnode[index]; @@ -64,7 +64,7 @@ void Root::insertContained(Node *tree, Interval *itemInterval, void* item) { - using geos::index::quadtree::IntervalSize; + using geos::index::quadtree::IntervalSize; assert(tree->getInterval()->contains(itemInterval)); diff -Nru geos-3.6.2/src/index/chain/Makefile.in geos-3.7.1/src/index/chain/Makefile.in --- geos-3.6.2/src/index/chain/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/index/chain/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/MonotoneChain.Plo \ + ./$(DEPDIR)/MonotoneChainBuilder.Plo \ + ./$(DEPDIR)/MonotoneChainOverlapAction.Plo \ + ./$(DEPDIR)/MonotoneChainSelectAction.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -220,6 +227,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -268,6 +276,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -288,6 +298,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -337,7 +348,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -383,8 +393,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -416,10 +426,16 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChain.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainOverlapAction.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainSelectAction.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChain.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainOverlapAction.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MonotoneChainSelectAction.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -500,7 +516,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -570,7 +589,10 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/MonotoneChain.Plo + -rm -f ./$(DEPDIR)/MonotoneChainBuilder.Plo + -rm -f ./$(DEPDIR)/MonotoneChainOverlapAction.Plo + -rm -f ./$(DEPDIR)/MonotoneChainSelectAction.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -616,7 +638,10 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/MonotoneChain.Plo + -rm -f ./$(DEPDIR)/MonotoneChainBuilder.Plo + -rm -f ./$(DEPDIR)/MonotoneChainOverlapAction.Plo + -rm -f ./$(DEPDIR)/MonotoneChainSelectAction.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -637,16 +662,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/index/chain/MonotoneChainBuilder.cpp geos-3.7.1/src/index/chain/MonotoneChainBuilder.cpp --- geos-3.6.2/src/index/chain/MonotoneChainBuilder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/chain/MonotoneChainBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -16,8 +16,8 @@ * **********************************************************************/ -#include -#include +#include +#include #include #include @@ -104,7 +104,7 @@ // skip any zero-length segments at the start of the sequence // (since they cannot be used to establish a quadrant) while ( safeStart < npts - 1 - && pts[safeStart].equals2D(pts[safeStart+1]) ) + && pts[safeStart].equals2D(pts[safeStart+1]) ) { ++safeStart; } @@ -129,7 +129,7 @@ pts[last] ); if (quad != chainQuad) break; } - ++last; + ++last; } #if GEOS_DEBUG std::cerr<<"MonotoneChainBuilder::findChainEnd() returning"< +std::unique_ptr MonotoneChain::getCoordinates() const { - return std::auto_ptr(pts.clone()); + return std::unique_ptr(pts.clone()); } void @@ -92,14 +92,14 @@ if(end0-start0==1) { //Debug.println("computeSelect:"+p0+p1); - mcs.select(*this,start0); + mcs.select(*this, static_cast(start0)); return; } // nothing to do if the envelopes don't overlap if (!searchEnv.intersects(mcs.tempEnv1)) return; // the chains overlap,so split each in half and iterate (binary search) - unsigned int mid=(start0+end0)/2; + unsigned int mid= static_cast((start0 + end0) / 2); // Assert: mid != start or end (since we checked above for end-start <= 1) // check terminating conditions before recursing @@ -107,7 +107,7 @@ { computeSelect(searchEnv,start0,mid,mcs); } - + if (mid < end0) { computeSelect(searchEnv,mid,end0,mcs); @@ -161,7 +161,7 @@ if (mid1query( queryMin, queryMax, visitor); - if (node2) + if (node2) node2->query( queryMin, queryMax, visitor); } diff -Nru geos-3.6.2/src/index/intervalrtree/IntervalRTreeLeafNode.cpp geos-3.7.1/src/index/intervalrtree/IntervalRTreeLeafNode.cpp --- geos-3.6.2/src/index/intervalrtree/IntervalRTreeLeafNode.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/intervalrtree/IntervalRTreeLeafNode.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -30,12 +30,12 @@ // // public: // -void +void IntervalRTreeLeafNode::query( double queryMin, double queryMax, index::ItemVisitor * visitor) const { - if (! intersects( queryMin, queryMax)) + if (! intersects( queryMin, queryMax)) return; - + visitor->visitItem( item); } diff -Nru geos-3.6.2/src/index/intervalrtree/IntervalRTreeNode.cpp geos-3.7.1/src/index/intervalrtree/IntervalRTreeNode.cpp --- geos-3.6.2/src/index/intervalrtree/IntervalRTreeNode.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/intervalrtree/IntervalRTreeNode.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/index/intervalrtree/Makefile.in geos-3.7.1/src/index/intervalrtree/Makefile.in --- geos-3.6.2/src/index/intervalrtree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/index/intervalrtree/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -132,7 +135,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/IntervalRTreeBranchNode.Plo \ + ./$(DEPDIR)/IntervalRTreeLeafNode.Plo \ + ./$(DEPDIR)/IntervalRTreeNode.Plo \ + ./$(DEPDIR)/SortedPackedIntervalRTree.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -221,6 +228,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -269,6 +277,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -289,6 +299,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -338,7 +349,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -384,8 +394,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -417,10 +427,16 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalRTreeBranchNode.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalRTreeLeafNode.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalRTreeNode.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SortedPackedIntervalRTree.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalRTreeBranchNode.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalRTreeLeafNode.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalRTreeNode.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SortedPackedIntervalRTree.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -501,7 +517,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -571,7 +590,10 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/IntervalRTreeBranchNode.Plo + -rm -f ./$(DEPDIR)/IntervalRTreeLeafNode.Plo + -rm -f ./$(DEPDIR)/IntervalRTreeNode.Plo + -rm -f ./$(DEPDIR)/SortedPackedIntervalRTree.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -617,7 +639,10 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/IntervalRTreeBranchNode.Plo + -rm -f ./$(DEPDIR)/IntervalRTreeLeafNode.Plo + -rm -f ./$(DEPDIR)/IntervalRTreeNode.Plo + -rm -f ./$(DEPDIR)/SortedPackedIntervalRTree.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -638,16 +663,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/index/intervalrtree/SortedPackedIntervalRTree.cpp geos-3.7.1/src/index/intervalrtree/SortedPackedIntervalRTree.cpp --- geos-3.6.2/src/index/intervalrtree/SortedPackedIntervalRTree.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/intervalrtree/SortedPackedIntervalRTree.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -31,15 +31,15 @@ // // private: // -void +void SortedPackedIntervalRTree::init() { - if (root != NULL) return; + if (root != nullptr) return; root = buildTree(); } -const IntervalRTreeNode * +const IntervalRTreeNode * SortedPackedIntervalRTree::buildTree() { // sort the leaf nodes @@ -49,10 +49,10 @@ IntervalRTreeNode::ConstVect * src = leaves; IntervalRTreeNode::ConstVect * dest = new IntervalRTreeNode::ConstVect(); - while (true) + while (true) { buildLevel( src, dest); - + if (dest->size() == 1) { const IntervalRTreeNode * r = (*dest)[ 0 ]; @@ -68,14 +68,14 @@ } } -void -SortedPackedIntervalRTree::buildLevel( IntervalRTreeNode::ConstVect * src, IntervalRTreeNode::ConstVect * dest) +void +SortedPackedIntervalRTree::buildLevel( IntervalRTreeNode::ConstVect * src, IntervalRTreeNode::ConstVect * dest) { level++; dest->clear(); - - for (size_t i = 0, ni = src->size(); i < ni; i += 2) + + for (size_t i = 0, ni = src->size(); i < ni; i += 2) { const IntervalRTreeNode * n1 = (*src)[ i ]; @@ -104,13 +104,13 @@ SortedPackedIntervalRTree::SortedPackedIntervalRTree() : leaves( new IntervalRTreeNode::ConstVect()), - root( NULL), + root( nullptr), level( 0) { } SortedPackedIntervalRTree::~SortedPackedIntervalRTree() { - if ( root != NULL ) + if ( root != nullptr ) { // deleting root cascades to all IntervalRTreeNode's delete root; @@ -125,16 +125,16 @@ } -void +void SortedPackedIntervalRTree::insert( double min, double max, void * item) { - if (root != NULL) + if (root != nullptr) throw new util::UnsupportedOperationException( "Index cannot be added to once it has been queried"); leaves->push_back( new IntervalRTreeLeafNode( min, max, item)); } -void +void SortedPackedIntervalRTree::query( double min, double max, index::ItemVisitor * visitor) { init(); diff -Nru geos-3.6.2/src/index/Makefile.in geos-3.7.1/src/index/Makefile.in --- geos-3.6.2/src/index/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/index/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -172,7 +175,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -261,6 +264,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -309,6 +313,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -329,6 +335,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -378,7 +385,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -433,8 +439,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -571,7 +577,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/src/index/quadtree/DoubleBits.cpp geos-3.7.1/src/index/quadtree/DoubleBits.cpp --- geos-3.6.2/src/index/quadtree/DoubleBits.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/DoubleBits.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -118,7 +118,7 @@ DoubleBits::getExponent() const { #if ASSUME_IEEE_DOUBLE - return biasedExponent()-EXPONENT_BIAS; + return static_cast(biasedExponent() - EXPONENT_BIAS); #else if ( x <= 0 ) return 0; // EDOM || ERANGE return (int)((log(x)/log(2.0))+(x<1?-0.9:0.00000000001)); diff -Nru geos-3.6.2/src/index/quadtree/IntervalSize.cpp geos-3.7.1/src/index/quadtree/IntervalSize.cpp --- geos-3.6.2/src/index/quadtree/IntervalSize.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/IntervalSize.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/index/quadtree/Key.cpp geos-3.7.1/src/index/quadtree/Key.cpp --- geos-3.6.2/src/index/quadtree/Key.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/Key.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -98,7 +98,7 @@ Key::computeKey(const Envelope& itemEnv) { level=computeQuadLevel(itemEnv); - env.init(); // reset to null + env.init(); // reset to null computeKey(level, itemEnv); // MD - would be nice to have a non-iterative form of this algorithm while (!env.contains(itemEnv)) { diff -Nru geos-3.6.2/src/index/quadtree/Makefile.in geos-3.7.1/src/index/quadtree/Makefile.in --- geos-3.6.2/src/index/quadtree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/DoubleBits.Plo \ + ./$(DEPDIR)/IntervalSize.Plo ./$(DEPDIR)/Key.Plo \ + ./$(DEPDIR)/Node.Plo ./$(DEPDIR)/NodeBase.Plo \ + ./$(DEPDIR)/Quadtree.Plo ./$(DEPDIR)/Root.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -220,6 +227,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -268,6 +276,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -288,6 +298,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -337,7 +348,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -386,8 +396,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -419,13 +429,19 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DoubleBits.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalSize.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Key.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Node.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeBase.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Quadtree.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Root.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DoubleBits.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntervalSize.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Key.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Node.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeBase.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Quadtree.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Root.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -506,7 +522,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -576,7 +595,13 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DoubleBits.Plo + -rm -f ./$(DEPDIR)/IntervalSize.Plo + -rm -f ./$(DEPDIR)/Key.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeBase.Plo + -rm -f ./$(DEPDIR)/Quadtree.Plo + -rm -f ./$(DEPDIR)/Root.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -622,7 +647,13 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DoubleBits.Plo + -rm -f ./$(DEPDIR)/IntervalSize.Plo + -rm -f ./$(DEPDIR)/Key.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeBase.Plo + -rm -f ./$(DEPDIR)/Quadtree.Plo + -rm -f ./$(DEPDIR)/Root.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -643,16 +674,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/index/quadtree/NodeBase.cpp geos-3.7.1/src/index/quadtree/NodeBase.cpp --- geos-3.6.2/src/index/quadtree/NodeBase.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/NodeBase.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -17,9 +17,9 @@ * **********************************************************************/ -#include -#include -#include +#include +#include +#include #include #include #include @@ -63,10 +63,10 @@ NodeBase::NodeBase() { - subnode[0]=0; - subnode[1]=0; - subnode[2]=0; - subnode[3]=0; + subnode[0]=nullptr; + subnode[1]=nullptr; + subnode[2]=nullptr; + subnode[3]=nullptr; } NodeBase::~NodeBase() @@ -75,10 +75,10 @@ delete subnode[1]; delete subnode[2]; delete subnode[3]; - subnode[0]=NULL; - subnode[1]=NULL; - subnode[2]=NULL; - subnode[3]=NULL; + subnode[0]=nullptr; + subnode[1]=nullptr; + subnode[2]=nullptr; + subnode[3]=nullptr; } vector& @@ -141,7 +141,7 @@ unsigned int maxSubDepth=0; for (int i=0; i<4; ++i) { - if (subnode[i] != NULL) + if (subnode[i] != nullptr) { unsigned int sqd=subnode[i]->depth(); if ( sqd > maxSubDepth ) @@ -157,12 +157,12 @@ unsigned int subSize=0; for(int i=0; i<4; i++) { - if (subnode[i] != NULL) + if (subnode[i] != nullptr) { subSize += subnode[i]->size(); } } - return subSize + items.size(); + return subSize + static_cast(items.size()); } unsigned int @@ -171,7 +171,7 @@ unsigned int subSize=0; for(int i=0; i<4; ++i) { - if (subnode[i] != NULL) + if (subnode[i] != nullptr) { subSize += subnode[i]->size(); } @@ -188,7 +188,7 @@ for (int i=0; i<4; i++) { s<<"subnode["<toString(); s<visit(searchEnv, visitor); } } @@ -246,7 +246,7 @@ if (subnode[i]->isPrunable()) { delete subnode[i]; - subnode[i] = NULL; + subnode[i] = nullptr; } break; } @@ -257,7 +257,7 @@ // otherwise, try and remove the item from the list of items // in this node - vector::iterator foundIter = + vector::iterator foundIter = find(items.begin(), items.end(), item); if ( foundIter != items.end() ) { items.erase(foundIter); diff -Nru geos-3.6.2/src/index/quadtree/Node.cpp geos-3.7.1/src/index/quadtree/Node.cpp --- geos-3.6.2/src/index/quadtree/Node.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/Node.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -17,8 +17,8 @@ * **********************************************************************/ -#include -#include +#include +#include #include #include @@ -41,21 +41,20 @@ namespace quadtree { // geos.index.quadtree /* public static */ -std::auto_ptr +std::unique_ptr Node::createNode(const Envelope& env) { Key key(env); - - std::auto_ptr nenv ( new Envelope(key.getEnvelope()) ); - std::auto_ptr node ( - new Node(nenv, key.getLevel()) + std::unique_ptr envelope(new Envelope(key.getEnvelope())); + std::unique_ptr node ( + new Node(std::move(envelope), key.getLevel()) ); - return node; + return std::move(node); } /* static public */ -std::auto_ptr -Node::createExpanded(std::auto_ptr node, const Envelope& addEnv) +std::unique_ptr +Node::createExpanded(std::unique_ptr node, const Envelope& addEnv) { Envelope expandEnv(addEnv); if ( node.get() ) // should this be asserted ? @@ -67,10 +66,10 @@ cerr<<"Node::createExpanded computed "< largerNode = createNode(expandEnv); + std::unique_ptr largerNode = createNode(expandEnv); if ( node.get() ) // should this be asserted ? { - largerNode->insertNode(node); + largerNode->insertNode(std::move(node)); } return largerNode; @@ -102,7 +101,7 @@ int subnodeIndex=getSubnodeIndex(searchEnv, centre); if (subnodeIndex==-1) return this; - if (subnode[subnodeIndex]!=NULL) { + if (subnode[subnodeIndex]!=nullptr) { // query lies in subquad, so search it Node *node=subnode[subnodeIndex]; return node->find(searchEnv); @@ -112,7 +111,7 @@ } void -Node::insertNode(std::auto_ptr node) +Node::insertNode(std::unique_ptr node) { assert( env->contains(node->getEnvelope()) ); @@ -121,7 +120,7 @@ if (node->level == level-1) { - // We take ownership of node + // We take ownership of node delete subnode[index]; subnode[index] = node.release(); @@ -131,12 +130,12 @@ { // the quad is not a direct child, so make a new child // quad to contain it and recursively insert the quad - std::auto_ptr childNode ( createSubnode(index) ); + std::unique_ptr childNode ( createSubnode(index) ); // childNode takes ownership of node - childNode->insertNode(node); + childNode->insertNode(std::move(node)); - // We take ownership of childNode + // We take ownership of childNode delete subnode[index]; subnode[index] = childNode.release(); } @@ -146,14 +145,14 @@ Node::getSubnode(int index) { assert(index >=0 && index < 4); - if (subnode[index] == NULL) + if (subnode[index] == nullptr) { subnode[index] = createSubnode(index).release(); } return subnode[index]; } -std::auto_ptr +std::unique_ptr Node::createSubnode(int index) { // create a new subquad in the appropriate quadrant @@ -188,8 +187,8 @@ maxy=env->getMaxY(); break; } - std::auto_ptr sqEnv ( new Envelope(minx,maxx,miny,maxy) ); - std::auto_ptr node ( new Node(sqEnv, level-1) ); + std::unique_ptr sqEnv ( new Envelope(minx,maxx,miny,maxy) ); + std::unique_ptr node ( new Node(std::move(sqEnv), level-1) ); return node; } diff -Nru geos-3.6.2/src/index/quadtree/Quadtree.cpp geos-3.7.1/src/index/quadtree/Quadtree.cpp --- geos-3.6.2/src/index/quadtree/Quadtree.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/Quadtree.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/index/quadtree/Root.cpp geos-3.7.1/src/index/quadtree/Root.cpp --- geos-3.6.2/src/index/quadtree/Root.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/quadtree/Root.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -76,13 +76,13 @@ * If the subquad doesn't exist or this item is not contained in it, * have to expand the tree upward to contain the item. */ - if (node==NULL || !node->getEnvelope()->contains(itemEnv)) + if (node==nullptr || !node->getEnvelope()->contains(itemEnv)) { - std::auto_ptr snode (node); // may be NULL - node = 0; subnode[index] = 0; + std::unique_ptr snode (node); // may be NULL + node = nullptr; subnode[index] = nullptr; - std::auto_ptr largerNode = - Node::createExpanded(snode, *itemEnv); + std::unique_ptr largerNode = + Node::createExpanded(std::move(snode), *itemEnv); #if GEOS_DEBUG std::cerr<<"("<begin(); BoundableList::iterator end = itemBoundables->end(); while (it != end) { - delete *it; + delete *it; ++it; } delete itemBoundables; - assert(0 != nodes); + assert(nullptr != nodes); for (std::size_t i = 0, nsize = nodes->size(); i < nsize; i++) { delete (*nodes)[i]; @@ -63,15 +63,15 @@ } /*protected*/ -std::auto_ptr +std::unique_ptr AbstractSTRtree::createParentBoundables(BoundableList* childBoundables, int newLevel) { assert(!childBoundables->empty()); - std::auto_ptr< BoundableList > parentBoundables ( new BoundableList() ); + std::unique_ptr< BoundableList > parentBoundables ( new BoundableList() ); parentBoundables->push_back(createNode(newLevel)); - std::auto_ptr< BoundableList > sortedChildBoundables ( sortBoundables(childBoundables) ); + std::unique_ptr< BoundableList > sortedChildBoundables ( sortBoundables(childBoundables) ); for (BoundableList::iterator i=sortedChildBoundables->begin(), e=sortedChildBoundables->end(); @@ -96,7 +96,7 @@ AbstractSTRtree::createHigherLevels(BoundableList* boundablesOfALevel, int level) { assert(!boundablesOfALevel->empty()); - std::auto_ptr< BoundableList > parentBoundables ( + std::unique_ptr< BoundableList > parentBoundables ( createParentBoundables(boundablesOfALevel,level+1) ); @@ -125,7 +125,10 @@ { if (!built) build(); - if (itemBoundables->empty()) assert(root->getBounds()==NULL); + if (itemBoundables->empty()) { + assert(root->getBounds()==nullptr); + return; + } if (getIntersectsOp()->intersects(root->getBounds(), searchBounds)) { @@ -139,8 +142,11 @@ { if (!built) build(); - if (itemBoundables->empty()) assert(root->getBounds()==NULL); - + if (itemBoundables->empty()) { + assert(root->getBounds()==nullptr); + return; + } + if (getIntersectsOp()->intersects(root->getBounds(),searchBounds)) { query(searchBounds, *root, visitor); @@ -184,7 +190,7 @@ { if (!built) build(); if (itemBoundables->empty()) { - assert(root->getBounds() == NULL); + assert(root->getBounds() == nullptr); } if (getIntersectsOp()->intersects(root->getBounds(), searchBounds)) { return remove(searchBounds, *root, item); @@ -304,10 +310,10 @@ } /*protected*/ -std::auto_ptr +std::unique_ptr AbstractSTRtree::boundablesAtLevel(int level) { - std::auto_ptr boundables ( new BoundableList() ); + std::unique_ptr boundables ( new BoundableList() ); boundablesAtLevel(level, root, boundables.get()); return boundables; } @@ -349,20 +355,20 @@ return; } -ItemsList* AbstractSTRtree::itemsTree(AbstractNode* node) +ItemsList* AbstractSTRtree::itemsTree(AbstractNode* node) { - std::auto_ptr valuesTreeForNode (new ItemsList()); + std::unique_ptr valuesTreeForNode (new ItemsList()); BoundableList::iterator end = node->getChildBoundables()->end(); - for (BoundableList::iterator i = node->getChildBoundables()->begin(); - i != end; ++i) + for (BoundableList::iterator i = node->getChildBoundables()->begin(); + i != end; ++i) { Boundable* childBoundable = *i; if (dynamic_cast(childBoundable)) { - ItemsList* valuesTreeForChild = + ItemsList* valuesTreeForChild = itemsTree(static_cast(childBoundable)); // only add if not null (which indicates an item somewhere in this tree - if (valuesTreeForChild != NULL) + if (valuesTreeForChild != nullptr) valuesTreeForNode->push_back_owned(valuesTreeForChild); } else if (dynamic_cast(childBoundable)) { @@ -373,20 +379,20 @@ assert(!static_cast("should never be reached")); } } - if (valuesTreeForNode->empty()) - return NULL; + if (valuesTreeForNode->empty()) + return nullptr; return valuesTreeForNode.release(); } ItemsList* AbstractSTRtree::itemsTree() { - if (!built) { - build(); + if (!built) { + build(); } ItemsList* valuesTree (itemsTree(root)); - if (valuesTree == NULL) + if (valuesTree == nullptr) return new ItemsList(); return valuesTree; diff -Nru geos-3.6.2/src/index/strtree/BoundablePair.cpp geos-3.7.1/src/index/strtree/BoundablePair.cpp --- geos-3.6.2/src/index/strtree/BoundablePair.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/index/strtree/BoundablePair.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -21,6 +21,10 @@ #include #include +namespace geos { +namespace index { +namespace strtree { + BoundablePair::BoundablePair(const Boundable* boundable1, const Boundable* boundable2, ItemDistance* itemDistance) : boundable1(boundable1), boundable2(boundable2), @@ -59,7 +63,7 @@ } bool BoundablePair::isComposite(const Boundable* item) { - return dynamic_cast(item) != NULL; + return dynamic_cast(item) != nullptr; } double BoundablePair::area(const Boundable* b) { @@ -100,10 +104,14 @@ std::vector *children = ((AbstractNode*) bndComposite)->getChildBoundables(); for(std::vector::iterator it = children->begin(); it != children->end(); ++it) { Boundable* child = *it; - std::auto_ptr bp(new BoundablePair(child, bndOther, itemDistance)); + std::unique_ptr bp(new BoundablePair(child, bndOther, itemDistance)); if (minDistance == std::numeric_limits::infinity() || bp->getDistance() < minDistance) { priQ.push(bp.release()); } } } +} +} +} + diff -Nru geos-3.6.2/src/index/strtree/Interval.cpp geos-3.7.1/src/index/strtree/Interval.cpp --- geos-3.6.2/src/index/strtree/Interval.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/strtree/Interval.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/index/strtree/ItemBoundable.cpp geos-3.7.1/src/index/strtree/ItemBoundable.cpp --- geos-3.6.2/src/index/strtree/ItemBoundable.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/strtree/ItemBoundable.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -24,10 +24,6 @@ { } -ItemBoundable::~ItemBoundable() -{ -} - const void* ItemBoundable::getBounds() const { return bounds; diff -Nru geos-3.6.2/src/index/strtree/Makefile.in geos-3.7.1/src/index/strtree/Makefile.in --- geos-3.6.2/src/index/strtree/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/index/strtree/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -132,7 +135,12 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/AbstractNode.Plo \ + ./$(DEPDIR)/AbstractSTRtree.Plo ./$(DEPDIR)/BoundablePair.Plo \ + ./$(DEPDIR)/GeometryItemDistance.Plo ./$(DEPDIR)/Interval.Plo \ + ./$(DEPDIR)/ItemBoundable.Plo ./$(DEPDIR)/SIRtree.Plo \ + ./$(DEPDIR)/STRtree.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -221,6 +229,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -269,6 +278,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -289,6 +300,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -338,7 +350,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -389,8 +400,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -422,14 +433,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AbstractNode.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AbstractSTRtree.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BoundablePair.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryItemDistance.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Interval.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ItemBoundable.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SIRtree.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/STRtree.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AbstractNode.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AbstractSTRtree.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BoundablePair.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryItemDistance.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Interval.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ItemBoundable.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SIRtree.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/STRtree.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -510,7 +527,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -580,7 +600,14 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/AbstractNode.Plo + -rm -f ./$(DEPDIR)/AbstractSTRtree.Plo + -rm -f ./$(DEPDIR)/BoundablePair.Plo + -rm -f ./$(DEPDIR)/GeometryItemDistance.Plo + -rm -f ./$(DEPDIR)/Interval.Plo + -rm -f ./$(DEPDIR)/ItemBoundable.Plo + -rm -f ./$(DEPDIR)/SIRtree.Plo + -rm -f ./$(DEPDIR)/STRtree.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -626,7 +653,14 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/AbstractNode.Plo + -rm -f ./$(DEPDIR)/AbstractSTRtree.Plo + -rm -f ./$(DEPDIR)/BoundablePair.Plo + -rm -f ./$(DEPDIR)/GeometryItemDistance.Plo + -rm -f ./$(DEPDIR)/Interval.Plo + -rm -f ./$(DEPDIR)/ItemBoundable.Plo + -rm -f ./$(DEPDIR)/SIRtree.Plo + -rm -f ./$(DEPDIR)/STRtree.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -647,16 +681,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/index/strtree/SIRtree.cpp geos-3.7.1/src/index/strtree/SIRtree.cpp --- geos-3.6.2/src/index/strtree/SIRtree.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/strtree/SIRtree.cpp 2018-11-29 22:42:04.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -33,14 +33,14 @@ } /*protected*/ -std::auto_ptr +std::unique_ptr SIRtree::createParentBoundables(BoundableList *childBoundables,int newLevel) { assert(!childBoundables->empty()); - std::auto_ptr parentBoundables ( new BoundableList() ); + std::unique_ptr parentBoundables ( new BoundableList() ); parentBoundables->push_back(createNode(newLevel)); - std::auto_ptr sortedChildBoundables ( sortBoundables(childBoundables) ); + std::unique_ptr sortedChildBoundables ( sortBoundables(childBoundables) ); //for(unsigned int i=0;isize();i++) for (BoundableList::iterator i=sortedChildBoundables->begin(), @@ -91,21 +91,21 @@ AbstractNode(level, capacity) {} - ~SIRAbstractNode() + ~SIRAbstractNode() override { delete (Interval *)bounds; } protected: - void* computeBounds() const + void* computeBounds() const override { - Interval* bounds=NULL; + Interval* bounds=nullptr; const BoundableList& b = *getChildBoundables(); for(unsigned int i=0; igetBounds())); } else { bounds->expandToInclude((Interval*)childBoundable->getBounds()); @@ -127,14 +127,16 @@ /** * Inserts an item having the given bounds into the tree. */ -void SIRtree::insert(double x1, double x2,void* item) { - AbstractSTRtree::insert(new Interval(min(x1,x2),max(x1, x2)),item); +void SIRtree::insert(double x1, double x2, void* item) { + std::unique_ptr i{new Interval(std::min(x1,x2), std::max(x1, x2))}; + AbstractSTRtree::insert(i.get(), item); + intervals.push_back(std::move(i)); } -std::auto_ptr +std::unique_ptr SIRtree::sortBoundables(const BoundableList* input) { - std::auto_ptr output ( new BoundableList(*input) ); + std::unique_ptr output ( new BoundableList(*input) ); sort(output->begin(), output->end(), compareSIRBoundables); //output->sort(compareSIRBoundables); return output; diff -Nru geos-3.6.2/src/index/strtree/STRtree.cpp geos-3.7.1/src/index/strtree/STRtree.cpp --- geos-3.6.2/src/index/strtree/STRtree.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/index/strtree/STRtree.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -51,7 +51,7 @@ // NOTE - mloskot: // The problem of instability is directly related to mathematical definition of // "strict weak ordering" as a fundamental requirement for binary predicate: - // + // // if a is less than b then b is not less than a, // if a is less than b and b is less than c // then a is less than c, @@ -64,19 +64,19 @@ // In particular, when inlines are on (for Envelope::getMinY and getMaxY) // things are fine, but when they are off we can even get a memory corruption !! //return STRtree::centreY(aEnv) < STRtree::centreY(bEnv); - + // NOTE - mloskot: // This comparison does not answer if a is "lower" than b // what is required for sorting. This comparison only answeres // if a and b are "almost the same" or different - + /*NOTE - cfis - In debug mode VC++ checks the predicate in both directions. - + In debug mode VC++ checks the predicate in both directions. + If !_Pred(_Left, _Right) Then an exception is thrown if _Pred(_Right, _Left). See xutility around line 320: - + bool __CLRCALL_OR_CDECL _Debug_lt_pred(_Pr _Pred, _Ty1& _Left, _Ty2& _Right, const wchar_t *_Where, unsigned int _Line)*/ @@ -91,12 +91,12 @@ /*public*/ STRtree::STRtree(size_t nodeCapacity): AbstractSTRtree(nodeCapacity) -{ +{ } /*public*/ STRtree::~STRtree() -{ +{ } bool @@ -106,19 +106,19 @@ } /*private*/ -std::auto_ptr +std::unique_ptr STRtree::createParentBoundables(BoundableList* childBoundables, int newLevel) { assert(!childBoundables->empty()); int minLeafCount=(int) ceil((double)childBoundables->size()/(double)getNodeCapacity()); - std::auto_ptr sortedChildBoundables ( sortBoundables(childBoundables) ); + std::unique_ptr sortedChildBoundables ( sortBoundables(childBoundables) ); - std::auto_ptr< vector > verticalSlicesV ( + std::unique_ptr< vector > verticalSlicesV ( verticalSlices(sortedChildBoundables.get(), (int)ceil(sqrt((double)minLeafCount))) ); - std::auto_ptr ret ( + std::unique_ptr ret ( createParentBoundablesFromVerticalSlices(verticalSlicesV.get(), newLevel) ); for (size_t i=0, vssize=verticalSlicesV->size(); i +std::unique_ptr STRtree::createParentBoundablesFromVerticalSlices(std::vector* verticalSlices, int newLevel) { assert(!verticalSlices->empty()); - std::auto_ptr parentBoundables( new BoundableList() ); + std::unique_ptr parentBoundables( new BoundableList() ); for (size_t i=0, vssize=verticalSlices->size(); i toAdd ( + std::unique_ptr toAdd ( createParentBoundablesFromVerticalSlice( (*verticalSlices)[i], newLevel) ); @@ -154,7 +154,7 @@ } /*protected*/ -std::auto_ptr +std::unique_ptr STRtree::createParentBoundablesFromVerticalSlice(BoundableList* childBoundables, int newLevel) { return AbstractSTRtree::createParentBoundables(childBoundables, newLevel); @@ -171,8 +171,8 @@ for (size_t j=0; jreserve(sliceCapacity); + (*slices)[j]=new BoundableList(); + (*slices)[j]->reserve(sliceCapacity); size_t boundablesAddedToSlice = 0; while (i STRtree::nearestNeighbour(STRtree* tree, ItemDistance* itemDist) { + BoundablePair bp(getRoot(), tree->getRoot(), itemDist); + return nearestNeighbour(&bp); +} + std::pair STRtree::nearestNeighbour(BoundablePair* initBndPair, double maxDistance) { double distanceLowerBound = maxDistance; - BoundablePair* minPair = NULL; + BoundablePair* minPair = nullptr; BoundablePair::BoundablePairQueue priQ; priQ.push(initBndPair); @@ -277,19 +282,19 @@ AbstractNode(level, capacity) {} - ~STRAbstractNode() + ~STRAbstractNode() override { delete (Envelope *)bounds; } protected: - void* computeBounds() const + void* computeBounds() const override { - Envelope* bounds=NULL; + Envelope* bounds=nullptr; const BoundableList& b = *getChildBoundables(); - if ( b.empty() ) return NULL; + if ( b.empty() ) return nullptr; BoundableList::const_iterator i=b.begin(); BoundableList::const_iterator e=b.end(); @@ -323,11 +328,11 @@ } /*private*/ -std::auto_ptr +std::unique_ptr STRtree::sortBoundables(const BoundableList* input) { assert(input); - std::auto_ptr output ( new BoundableList(*input) ); + std::unique_ptr output ( new BoundableList(*input) ); assert(output->size() == input->size()); sort(output->begin(), output->end(), yComparator); diff -Nru geos-3.6.2/src/index/sweepline/Makefile.in geos-3.7.1/src/index/sweepline/Makefile.in --- geos-3.6.2/src/index/sweepline/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/index/sweepline/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,10 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/SweepLineEvent.Plo \ + ./$(DEPDIR)/SweepLineIndex.Plo \ + ./$(DEPDIR)/SweepLineInterval.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -220,6 +226,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -268,6 +275,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -288,6 +297,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -337,7 +347,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -383,8 +392,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -416,9 +425,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineEvent.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineIndex.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineInterval.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineEvent.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineIndex.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweepLineInterval.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -499,7 +514,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -569,7 +587,9 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/SweepLineEvent.Plo + -rm -f ./$(DEPDIR)/SweepLineIndex.Plo + -rm -f ./$(DEPDIR)/SweepLineInterval.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -615,7 +635,9 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/SweepLineEvent.Plo + -rm -f ./$(DEPDIR)/SweepLineIndex.Plo + -rm -f ./$(DEPDIR)/SweepLineInterval.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -636,16 +658,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/index/sweepline/SweepLineEvent.cpp geos-3.7.1/src/index/sweepline/SweepLineEvent.cpp --- geos-3.6.2/src/index/sweepline/SweepLineEvent.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/sweepline/SweepLineEvent.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -27,20 +27,20 @@ insertEvent(newInsertEvent), sweepInt(newSweepInt) { - if (insertEvent!=0) + if (insertEvent!=nullptr) eventType=SweepLineEvent::DELETE_EVENT; } bool SweepLineEvent::isInsert() { - return insertEvent==0; + return insertEvent==nullptr; } bool SweepLineEvent::isDelete() { - return insertEvent!=0; + return insertEvent!=nullptr; } SweepLineEvent* diff -Nru geos-3.6.2/src/index/sweepline/SweepLineIndex.cpp geos-3.7.1/src/index/sweepline/SweepLineIndex.cpp --- geos-3.6.2/src/index/sweepline/SweepLineIndex.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/sweepline/SweepLineIndex.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -44,7 +44,7 @@ SweepLineIndex::add(SweepLineInterval *sweepInt) { // FIXME: who's going to delete the newly-created events ? - SweepLineEvent *insertEvent=new SweepLineEvent(sweepInt->getMin(),NULL,sweepInt); + SweepLineEvent *insertEvent=new SweepLineEvent(sweepInt->getMin(),nullptr,sweepInt); events.push_back(insertEvent); events.push_back(new SweepLineEvent(sweepInt->getMax(), insertEvent, sweepInt)); } @@ -73,7 +73,7 @@ SweepLineIndex::computeOverlaps(SweepLineOverlapAction *action) { nOverlaps = 0; - + buildIndex(); const std::vector::size_type n=events.size(); diff -Nru geos-3.6.2/src/index/sweepline/SweepLineInterval.cpp geos-3.7.1/src/index/sweepline/SweepLineInterval.cpp --- geos-3.6.2/src/index/sweepline/SweepLineInterval.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/index/sweepline/SweepLineInterval.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/inlines.cpp geos-3.7.1/src/inlines.cpp --- geos-3.6.2/src/inlines.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/inlines.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,12 +7,12 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** * - * This file is here to make all inlined functions also + * This file is here to make all inlined functions also * available as non-inlines when building with GEOS_INLINES defined. * **********************************************************************/ @@ -25,7 +25,7 @@ // If using Visual C++ with GEOS_INLINE, do not build inline.obj // otherwise linker will complain "multiple definition" errors. // If using MingW with GEOS_INLINE to build a DLL then MingW's gcc -// has already generated the stubs for the contents of this file. +// has already generated the stubs for the contents of this file. // Hence we need to supress it to avoid "multiple definition" errors // during the final link phase #if !defined(_MSC_VER) && (!defined(__MINGW32__) || defined(__MINGW32__) && !defined(GEOS_DLL_EXPORT) && !defined(DLL_EXPORT) ) @@ -37,7 +37,7 @@ // Undefine GEOS_INLINE so that .inl files // will be ready for an implementation file -#undef GEOS_INLINE +#undef GEOS_INLINE #include diff -Nru geos-3.6.2/src/io/ByteOrderDataInStream.cpp geos-3.7.1/src/io/ByteOrderDataInStream.cpp --- geos-3.6.2/src/io/ByteOrderDataInStream.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/io/ByteOrderDataInStream.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/io/ByteOrderValues.cpp geos-3.7.1/src/io/ByteOrderValues.cpp --- geos-3.6.2/src/io/ByteOrderValues.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/io/ByteOrderValues.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,6 +23,11 @@ #include #include +#if DEBUG_BYTEORDER_VALUES +#include +#include +#endif + namespace geos { namespace io { // geos.io @@ -143,12 +148,12 @@ int64 longValue; std::memcpy(&longValue, &doubleValue, sizeof(double)); #if DEBUG_BYTEORDER_VALUES - cout<<"ByteOrderValues::putDouble("<$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -518,7 +536,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -588,7 +609,17 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ByteOrderDataInStream.Plo + -rm -f ./$(DEPDIR)/ByteOrderValues.Plo + -rm -f ./$(DEPDIR)/CLocalizer.Plo + -rm -f ./$(DEPDIR)/ParseException.Plo + -rm -f ./$(DEPDIR)/StringTokenizer.Plo + -rm -f ./$(DEPDIR)/Unload.Plo + -rm -f ./$(DEPDIR)/WKBReader.Plo + -rm -f ./$(DEPDIR)/WKBWriter.Plo + -rm -f ./$(DEPDIR)/WKTReader.Plo + -rm -f ./$(DEPDIR)/WKTWriter.Plo + -rm -f ./$(DEPDIR)/Writer.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -634,7 +665,17 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ByteOrderDataInStream.Plo + -rm -f ./$(DEPDIR)/ByteOrderValues.Plo + -rm -f ./$(DEPDIR)/CLocalizer.Plo + -rm -f ./$(DEPDIR)/ParseException.Plo + -rm -f ./$(DEPDIR)/StringTokenizer.Plo + -rm -f ./$(DEPDIR)/Unload.Plo + -rm -f ./$(DEPDIR)/WKBReader.Plo + -rm -f ./$(DEPDIR)/WKBWriter.Plo + -rm -f ./$(DEPDIR)/WKTReader.Plo + -rm -f ./$(DEPDIR)/WKTWriter.Plo + -rm -f ./$(DEPDIR)/Writer.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -655,16 +696,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/io/ParseException.cpp geos-3.7.1/src/io/ParseException.cpp --- geos-3.6.2/src/io/ParseException.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/io/ParseException.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/io/StringTokenizer.cpp geos-3.7.1/src/io/StringTokenizer.cpp --- geos-3.6.2/src/io/StringTokenizer.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/io/StringTokenizer.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -31,10 +31,10 @@ /*public*/ StringTokenizer::StringTokenizer(const string &txt) : - str(txt) + str(txt), + stok(""), + ntok(0.0) { - stok=""; - ntok=0.0; iter=str.begin(); } @@ -43,7 +43,7 @@ double dbl = strtod(str, str_end); #if _MSC_VER && !__INTEL_COMPILER // Special handling of NAN and INF in MSVC, where strtod returns 0.0 - // for NAN and INF. + // for NAN and INF. // This fixes failing test GEOSisValidDetail::test<3>, maybe others // as well. // Note: this hack is not robust, Boost lexical_cast or diff -Nru geos-3.6.2/src/io/Unload.cpp geos-3.7.1/src/io/Unload.cpp --- geos-3.6.2/src/io/Unload.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/io/Unload.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/io/WKBReader.cpp geos-3.7.1/src/io/WKBReader.cpp --- geos-3.6.2/src/io/WKBReader.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/io/WKBReader.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -74,143 +74,84 @@ return os; } + +namespace { + +unsigned char ASCIIHexToUChar(char val) +{ + switch ( val ) + { + case '0' : + return 0; + case '1' : + return 1; + case '2' : + return 2; + case '3' : + return 3; + case '4' : + return 4; + case '5' : + return 5; + case '6' : + return 6; + case '7' : + return 7; + case '8' : + return 8; + case '9' : + return 9; + case 'A' : + case 'a' : + return 10; + case 'B' : + case 'b' : + return 11; + case 'C' : + case 'c' : + return 12; + case 'D' : + case 'd' : + return 13; + case 'E' : + case 'e' : + return 14; + case 'F' : + case 'f' : + return 15; + default: + throw ParseException("Invalid HEX char"); + } +} + +} // namespace + +// Must be an even number of characters in the istream. +// Throws a ParseException if there are an odd number of characters. Geometry * WKBReader::readHEX(istream &is) { // setup input/output stream stringstream os(ios_base::binary|ios_base::in|ios_base::out); - unsigned char result_high, result_low, value; - char high, low; - - while( (high = is.get()) != char_traits::eof() ) + while( true ) { - // geth the low part of the byte - low = is.get(); - if ( low == char_traits::eof() ) - throw ParseException("Premature end of HEX string"); + const int input_high = is.get(); + if (input_high == char_traits::eof()) + break; - switch (high) - { - case '0' : - result_high = 0; - break; - case '1' : - result_high = 1; - break; - case '2' : - result_high = 2; - break; - case '3' : - result_high = 3; - break; - case '4' : - result_high = 4; - break; - case '5' : - result_high = 5; - break; - case '6' : - result_high = 6; - break; - case '7' : - result_high = 7; - break; - case '8' : - result_high = 8; - break; - case '9' : - result_high = 9; - break; - case 'A' : - case 'a' : - result_high = 10; - break; - case 'B' : - case 'b' : - result_high = 11; - break; - case 'C' : - case 'c' : - result_high = 12; - break; - case 'D' : - case 'd' : - result_high = 13; - break; - case 'E' : - case 'e' : - result_high = 14; - break; - case 'F' : - case 'f' : - result_high = 15; - break; - default: - throw ParseException("Invalid HEX char"); - } + const int input_low = is.get(); + if (input_low == char_traits::eof()) + throw ParseException("Premature end of HEX string"); - switch (low) - { - case '0' : - result_low = 0; - break; - case '1' : - result_low = 1; - break; - case '2' : - result_low = 2; - break; - case '3' : - result_low = 3; - break; - case '4' : - result_low = 4; - break; - case '5' : - result_low = 5; - break; - case '6' : - result_low = 6; - break; - case '7' : - result_low = 7; - break; - case '8' : - result_low = 8; - break; - case '9' : - result_low = 9; - break; - case 'A' : - case 'a' : - result_low = 10; - break; - case 'B' : - case 'b' : - result_low = 11; - break; - case 'C' : - case 'c' : - result_low = 12; - break; - case 'D' : - case 'd' : - result_low = 13; - break; - case 'E' : - case 'e' : - result_low = 14; - break; - case 'F' : - case 'f' : - result_low = 15; - break; - default: - throw ParseException("Invalid HEX char"); - } + const char high = static_cast(input_high); + const char low = static_cast(input_low); + + const unsigned char result_high = ASCIIHexToUChar(high); + const unsigned char result_low = ASCIIHexToUChar(low); - value = (result_high<<4) + result_low; + const unsigned char value = + static_cast((result_high<<4) + result_low); #if DEBUG_HEX_READER cout<<"HEX "< DEC "<<(int)value< 0 ) shell = readLinearRing(); - vector*holes=NULL; + vector*holes=nullptr; if ( numRings > 1 ) { try { @@ -480,7 +421,7 @@ WKBReader::readCoordinateSequence(int size) { CoordinateSequence *seq = factory.getCoordinateSequenceFactory()->create(size, inputDimension); - unsigned int targetDim = seq->getDimension(); + auto targetDim = seq->getDimension(); if ( targetDim > inputDimension ) targetDim = inputDimension; for (int i=0; i 3 ) throw util::IllegalArgumentException("WKB output dimension must be 2 or 3"); outputDimension = defaultOutputDimension; } + /* public */ void WKBWriter::setOutputDimension(int dims) @@ -67,11 +68,11 @@ } void -WKBWriter::writeHEX(const Geometry &g, ostream &os) +WKBWriter::writeHEX(const Geometry &g, ostream &os) { // setup input/output stream stringstream stream; - + // write the geometry in wkb format this->write(g, stream); @@ -80,11 +81,11 @@ } void -WKBWriter::write(const Geometry &g, ostream &os) +WKBWriter::write(const Geometry &g, ostream &os) { - outputDimension = defaultOutputDimension; - if( outputDimension > g.getCoordinateDimension() ) - outputDimension = g.getCoordinateDimension(); + outputDimension = defaultOutputDimension; + if( outputDimension > g.getCoordinateDimension() ) + outputDimension = g.getCoordinateDimension(); outStream = &os; @@ -109,7 +110,7 @@ } if ( const MultiLineString* x = dynamic_cast(&g) ) - { + { return writeGeometryCollection(*x, WKBConstants::wkbMultiLineString); } @@ -118,7 +119,7 @@ return writeGeometryCollection(*x, WKBConstants::wkbMultiPolygon); } - if ( const GeometryCollection* x = + if ( const GeometryCollection* x = dynamic_cast(&g) ) { return writeGeometryCollection(*x, WKBConstants::wkbGeometryCollection); @@ -128,13 +129,13 @@ } void -WKBWriter::writePoint(const Point &g) +WKBWriter::writePoint(const Point &g) { if (g.isEmpty()) throw util::IllegalArgumentException("Empty Points cannot be represented in WKB"); writeByteOrder(); - + writeGeometryType(WKBConstants::wkbPoint, g.getSRID()); writeSRID(g.getSRID()); @@ -144,23 +145,23 @@ } void -WKBWriter::writeLineString(const LineString &g) +WKBWriter::writeLineString(const LineString &g) { writeByteOrder(); - + writeGeometryType(WKBConstants::wkbLineString, g.getSRID()); writeSRID(g.getSRID()); - + const CoordinateSequence* cs=g.getCoordinatesRO(); assert(cs); writeCoordinateSequence(*cs, true); } void -WKBWriter::writePolygon(const Polygon &g) +WKBWriter::writePolygon(const Polygon &g) { writeByteOrder(); - + writeGeometryType(WKBConstants::wkbPolygon, g.getSRID()); writeSRID(g.getSRID()); @@ -168,9 +169,9 @@ writeInt(0); return; } - + std::size_t nholes = g.getNumInteriorRing(); - writeInt(nholes+1); + writeInt(static_cast(nholes + 1)); const LineString* ls = g.getExteriorRing(); assert(ls); @@ -193,15 +194,15 @@ void WKBWriter::writeGeometryCollection(const GeometryCollection &g, - int wkbtype) + int wkbtype) { writeByteOrder(); - + writeGeometryType(wkbtype, g.getSRID()); writeSRID(g.getSRID()); - - std::size_t ngeoms = g.getNumGeometries(); - writeInt(ngeoms); + + auto ngeoms = g.getNumGeometries(); + writeInt(static_cast(ngeoms)); assert(outStream); for (std::size_t i=0; iwrite(reinterpret_cast(buf), 4); @@ -275,19 +276,19 @@ void WKBWriter::writeCoordinateSequence(const CoordinateSequence &cs, - bool sized) + bool sized) { std::size_t size = cs.getSize(); bool is3d=false; if ( outputDimension > 2) is3d = true; - if (sized) writeInt(size); - for (std::size_t i=0; i(size)); + for (std::size_t i=0; i(i), is3d); } void WKBWriter::writeCoordinate(const CoordinateSequence &cs, int idx, - bool is3d) + bool is3d) { #if DEBUG_WKB_WRITER cout<<"writeCoordinate: X:"< tokenizer(new StringTokenizer(wellKnownText)); + //unique_ptr tokenizer(new StringTokenizer(wellKnownText)); CLocalizer clocale; StringTokenizer tokenizer(wellKnownText); - Geometry *g=NULL; + Geometry *g=nullptr; g=readGeometryTaggedText(&tokenizer); return g; } @@ -75,7 +75,7 @@ string nextToken=getNextEmptyOrOpener(tokenizer); if (nextToken=="EMPTY") { return geometryFactory->getCoordinateSequenceFactory()->create(); - //new CoordinateArraySequence(); + //new CoordinateArraySequence(); } Coordinate coord; @@ -99,8 +99,9 @@ return coordinates; } + void -WKTReader::getPreciseCoordinate(StringTokenizer *tokenizer, +WKTReader::getPreciseCoordinate(StringTokenizer *tokenizer, Coordinate& coord, size_t &dim ) { @@ -109,9 +110,9 @@ if (isNumberNext(tokenizer)) { coord.z=getNextNumber(tokenizer); dim = 3; - + // If there is a fourth value (M) read and discard it. - if (isNumberNext(tokenizer)) + if (isNumberNext(tokenizer)) getNextNumber(tokenizer); } else { @@ -156,9 +157,9 @@ { string nextWord=getNextWord(tokenizer); - // Skip the Z, M or ZM of an SF1.2 3/4 dim coordinate. - if (nextWord == "Z" || nextWord == "M" || nextWord == "ZM" ) - nextWord = getNextWord(tokenizer); + // Skip the Z, M or ZM of an SF1.2 3/4 dim coordinate. + if (nextWord == "Z" || nextWord == "M" || nextWord == "ZM" ) + nextWord = getNextWord(tokenizer); if (nextWord=="EMPTY" || nextWord=="(") { return nextWord; @@ -200,7 +201,7 @@ case StringTokenizer::TT_WORD: { string word = tokenizer->getSVal(); - int i = word.size(); + int i = static_cast(word.size()); while( --i >= 0 ) { @@ -320,7 +321,7 @@ } while(nextToken == ","); return geometryFactory->createMultiPoint(points); } catch (...) { - // clean up + // clean up for (size_t i=0; isize(); i++) { delete (*points)[i]; @@ -330,7 +331,7 @@ } } - else + else { stringstream err; err << "Unexpected token: "; @@ -367,11 +368,11 @@ Polygon* WKTReader::readPolygonText(StringTokenizer *tokenizer) { - Polygon *poly=NULL; - LinearRing *shell=NULL; + Polygon *poly=nullptr; + LinearRing *shell=nullptr; string nextToken=getNextEmptyOrOpener(tokenizer); if (nextToken=="EMPTY") { - return geometryFactory->createPolygon(NULL,NULL); + return geometryFactory->createPolygon(nullptr,nullptr); } vector *holes=new vector(); @@ -397,19 +398,19 @@ MultiLineString* WKTReader::readMultiLineStringText(StringTokenizer *tokenizer) { string nextToken=getNextEmptyOrOpener(tokenizer); if (nextToken=="EMPTY") { - return geometryFactory->createMultiLineString(NULL); + return geometryFactory->createMultiLineString(nullptr); } vector *lineStrings=new vector(); - LineString *lineString = NULL; + LineString *lineString = nullptr; try { lineString=readLineStringText(tokenizer); lineStrings->push_back(lineString); - lineString=NULL; + lineString=nullptr; nextToken=getNextCloserOrComma(tokenizer); while(nextToken==",") { lineString=readLineStringText(tokenizer); lineStrings->push_back(lineString); - lineString=NULL; + lineString=nullptr; nextToken=getNextCloserOrComma(tokenizer); } } catch (...) { @@ -427,19 +428,19 @@ MultiPolygon* WKTReader::readMultiPolygonText(StringTokenizer *tokenizer) { string nextToken=getNextEmptyOrOpener(tokenizer); if (nextToken=="EMPTY") { - return geometryFactory->createMultiPolygon(NULL); + return geometryFactory->createMultiPolygon(nullptr); } vector *polygons=new vector(); - Polygon *polygon = NULL; + Polygon *polygon = nullptr; try { polygon=readPolygonText(tokenizer); polygons->push_back(polygon); - polygon=NULL; + polygon=nullptr; nextToken=getNextCloserOrComma(tokenizer); while(nextToken==",") { polygon=readPolygonText(tokenizer); polygons->push_back(polygon); - polygon=NULL; + polygon=nullptr; nextToken=getNextCloserOrComma(tokenizer); } } catch (...) { @@ -457,19 +458,19 @@ GeometryCollection* WKTReader::readGeometryCollectionText(StringTokenizer *tokenizer) { string nextToken=getNextEmptyOrOpener(tokenizer); if (nextToken=="EMPTY") { - return geometryFactory->createGeometryCollection(NULL); + return geometryFactory->createGeometryCollection(nullptr); } vector *geoms=new vector(); - Geometry *geom=NULL; + Geometry *geom=nullptr; try { geom=readGeometryTaggedText(tokenizer); geoms->push_back(geom); - geom=NULL; + geom=nullptr; nextToken=getNextCloserOrComma(tokenizer); while(nextToken==",") { geom=readGeometryTaggedText(tokenizer); geoms->push_back(geom); - geom=NULL; + geom=nullptr; nextToken=getNextCloserOrComma(tokenizer); } } catch (...) { diff -Nru geos-3.6.2/src/io/WKTWriter.cpp geos-3.7.1/src/io/WKTWriter.cpp --- geos-3.6.2/src/io/WKTWriter.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/io/WKTWriter.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -77,7 +77,7 @@ { stringstream buf(ios_base::in|ios_base::out); buf << "LINESTRING "; - unsigned int npts = seq.getSize(); + unsigned int npts = static_cast(seq.getSize()); if ( npts == 0 ) { buf << "EMPTY"; @@ -236,8 +236,8 @@ Writer *writer) { writer->write("POINT "); - if( outputDimension == 3 && !old3D && coordinate != NULL ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && coordinate != nullptr ) + writer->write( "Z " ); appendPointText(coordinate, level, writer); } @@ -247,8 +247,8 @@ Writer *writer) { writer->write("LINESTRING "); - if( outputDimension == 3 && !old3D && !lineString->isEmpty() ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !lineString->isEmpty() ) + writer->write( "Z " ); appendLineStringText(lineString, level, false, writer); } @@ -262,43 +262,43 @@ */ void WKTWriter::appendLinearRingTaggedText(const LinearRing* linearRing, int level, Writer *writer) { writer->write("LINEARRING "); - if( outputDimension == 3 && !old3D && !linearRing->isEmpty() ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !linearRing->isEmpty() ) + writer->write( "Z " ); appendLineStringText((LineString*)linearRing, level, false, writer); } void WKTWriter::appendPolygonTaggedText(const Polygon *polygon, int level, Writer *writer) { writer->write("POLYGON "); - if( outputDimension == 3 && !old3D && !polygon->isEmpty()) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !polygon->isEmpty()) + writer->write( "Z " ); appendPolygonText(polygon, level, false, writer); } void WKTWriter::appendMultiPointTaggedText(const MultiPoint *multipoint, int level, Writer *writer) { writer->write("MULTIPOINT "); - if( outputDimension == 3 && !old3D && !multipoint->isEmpty() ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !multipoint->isEmpty() ) + writer->write( "Z " ); appendMultiPointText(multipoint, level, writer); } void WKTWriter::appendMultiLineStringTaggedText(const MultiLineString *multiLineString, int level,Writer *writer) { writer->write("MULTILINESTRING "); - if( outputDimension == 3 && !old3D && !multiLineString->isEmpty() ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !multiLineString->isEmpty() ) + writer->write( "Z " ); appendMultiLineStringText(multiLineString, level, false, writer); } void WKTWriter::appendMultiPolygonTaggedText(const MultiPolygon *multiPolygon, int level, Writer *writer) { writer->write("MULTIPOLYGON "); - if( outputDimension == 3 && !old3D && !multiPolygon->isEmpty() ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !multiPolygon->isEmpty() ) + writer->write( "Z " ); appendMultiPolygonText(multiPolygon, level, writer); } void WKTWriter::appendGeometryCollectionTaggedText(const GeometryCollection *geometryCollection, int level,Writer *writer) { writer->write("GEOMETRYCOLLECTION "); - if( outputDimension == 3 && !old3D && !geometryCollection->isEmpty() ) - writer->write( "Z " ); + if( outputDimension == 3 && !old3D && !geometryCollection->isEmpty() ) + writer->write( "Z " ); appendGeometryCollectionText(geometryCollection, level, writer); } @@ -306,7 +306,7 @@ WKTWriter::appendPointText(const Coordinate* coordinate, int /*level*/, Writer *writer) { - if (coordinate==NULL) { + if (coordinate==nullptr) { writer->write("EMPTY"); } else { writer->write("("); @@ -360,7 +360,7 @@ writer->write(", "); if (i%10==0) indent(level + 2, writer); } - appendCoordinate(&(lineString->getCoordinateN(i)), writer); + appendCoordinate(&(lineString->getCoordinateN(static_cast(i))), writer); } writer->write(")"); } @@ -394,7 +394,7 @@ writer->write("EMPTY"); } else { writer->write("("); - for (unsigned int i=0, n=multiPoint->getNumGeometries(); + for (unsigned int i=0, n=static_cast(multiPoint->getNumGeometries()); i 0) @@ -417,7 +417,7 @@ int level2=level; bool doIndent=indentFirst; writer->write("("); - for (unsigned int i=0, n=multiLineString->getNumGeometries(); + for (unsigned int i=0, n=static_cast(multiLineString->getNumGeometries()); i0) { @@ -441,7 +441,7 @@ int level2=level; bool doIndent=false; writer->write("("); - for (unsigned int i=0, n=multiPolygon->getNumGeometries(); + for (unsigned int i=0, n=static_cast(multiPolygon->getNumGeometries()); i < n; i++) { if (i>0) { @@ -469,7 +469,7 @@ } else { int level2=level; writer->write("("); - for (unsigned int i=0, n=geometryCollection->getNumGeometries(); + for (unsigned int i=0, n=static_cast(geometryCollection->getNumGeometries()); i < n ; ++i) { if (i>0) { diff -Nru geos-3.6.2/src/io/Writer.cpp geos-3.7.1/src/io/Writer.cpp --- geos-3.6.2/src/io/Writer.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/io/Writer.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/linearref/ExtractLineByLocation.cpp geos-3.7.1/src/linearref/ExtractLineByLocation.cpp --- geos-3.6.2/src/linearref/ExtractLineByLocation.cpp 2017-02-01 17:30:14.000000000 +0000 +++ geos-3.7.1/src/linearref/ExtractLineByLocation.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -80,7 +80,7 @@ else { assert(!static_cast("non-linear geometry encountered")); - return 0; + return nullptr; } } } @@ -92,12 +92,12 @@ const unsigned int indexStep = 1; unsigned int startSegmentIndex = start.getSegmentIndex(); - + if (start.getSegmentFraction() > 0.0) { startSegmentIndex += indexStep; } - + unsigned int lastSegmentIndex = end.getSegmentIndex(); if (end.getSegmentFraction() == 1.0) { @@ -107,7 +107,7 @@ if (lastSegmentIndex >= coordinates->size()) { assert(coordinates->size() > 0); - lastSegmentIndex = coordinates->size() - indexStep; + lastSegmentIndex = static_cast(coordinates->size() - indexStep); } if (! start.isVertex()) diff -Nru geos-3.6.2/src/linearref/LengthIndexedLine.cpp geos-3.7.1/src/linearref/LengthIndexedLine.cpp --- geos-3.6.2/src/linearref/LengthIndexedLine.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/linearref/LengthIndexedLine.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * diff -Nru geos-3.6.2/src/linearref/LengthIndexOfPoint.cpp geos-3.7.1/src/linearref/LengthIndexOfPoint.cpp --- geos-3.6.2/src/linearref/LengthIndexOfPoint.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/linearref/LengthIndexOfPoint.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -106,7 +106,7 @@ return ptMeasure; } -double LengthIndexOfPoint::segmentNearestMeasure(const LineSegment* seg, +double LengthIndexOfPoint::segmentNearestMeasure(const LineSegment* seg, const Coordinate& inputPt, double segmentStartMeasure) const { diff -Nru geos-3.6.2/src/linearref/LengthLocationMap.cpp geos-3.7.1/src/linearref/LengthLocationMap.cpp --- geos-3.6.2/src/linearref/LengthLocationMap.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/linearref/LengthLocationMap.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -132,7 +132,7 @@ unsigned int compIndex = loc.getComponentIndex(); // if last component can't resolve any higher if (compIndex >= linearGeom->getNumGeometries() - 1) return loc; - + do { compIndex++; } while (compIndex < linearGeom->getNumGeometries() - 1 diff -Nru geos-3.6.2/src/linearref/LinearGeometryBuilder.cpp geos-3.7.1/src/linearref/LinearGeometryBuilder.cpp --- geos-3.6.2/src/linearref/LinearGeometryBuilder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/linearref/LinearGeometryBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -45,7 +45,7 @@ geomFact(geomFact), ignoreInvalidLines(false), fixInvalidLines(false), - coordList(0) {} + coordList(nullptr) {} /* public */ void @@ -100,7 +100,7 @@ if (coordList) { delete coordList; - coordList = 0; + coordList = nullptr; } return; } @@ -120,7 +120,7 @@ } } - LineString* line = 0; + LineString* line = nullptr; try { line = geomFact->createLineString(coordList); @@ -134,7 +134,7 @@ } if (line) lines.push_back(line); - coordList = 0; + coordList = nullptr; } /* public */ diff -Nru geos-3.6.2/src/linearref/LinearIterator.cpp geos-3.7.1/src/linearref/LinearIterator.cpp --- geos-3.6.2/src/linearref/LinearIterator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/linearref/LinearIterator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -42,7 +42,7 @@ vertexIndex(0), componentIndex(0), linear(linear), - numLines(linear->getNumGeometries()) + numLines(static_cast(linear->getNumGeometries())) { loadCurrentLine(); } @@ -52,7 +52,7 @@ vertexIndex(segmentEndVertexIndex(start)), componentIndex(start.getComponentIndex()), linear(linear), - numLines(linear->getNumGeometries()) + numLines(static_cast(linear->getNumGeometries())) { loadCurrentLine(); } @@ -61,7 +61,7 @@ vertexIndex(vertexIndex), componentIndex(componentIndex), linear(linear), - numLines(linear->getNumGeometries()) + numLines(static_cast(linear->getNumGeometries())) { loadCurrentLine(); } @@ -70,7 +70,7 @@ { if (componentIndex >= numLines) { - currentLine = 0; + currentLine = nullptr; return; } currentLine = dynamic_cast (linear->getGeometryN(componentIndex)); diff -Nru geos-3.6.2/src/linearref/LinearLocation.cpp geos-3.7.1/src/linearref/LinearLocation.cpp --- geos-3.6.2/src/linearref/LinearLocation.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/linearref/LinearLocation.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -89,17 +89,6 @@ segmentFraction = 1.0; } - if (componentIndex < 0) - { - componentIndex = 0; - segmentIndex = 0; - segmentFraction = 0.0; - } - if (segmentIndex < 0) - { - segmentIndex = 0; - segmentFraction = 0.0; - } if (segmentFraction == 1.0) { segmentFraction = 0.0; @@ -119,7 +108,7 @@ if (segmentIndex >= linear->getNumPoints()) { const LineString* line = dynamic_cast (linear->getGeometryN(componentIndex)); - segmentIndex = line->getNumPoints() - 1; + segmentIndex = static_cast(line->getNumPoints() - 1); segmentFraction = 1.0; } } @@ -152,7 +141,7 @@ // ensure segment index is valid unsigned int segIndex = segmentIndex; if (segmentIndex >= lineComp->getNumPoints() - 1) - segIndex = lineComp->getNumPoints() - 2; + segIndex = static_cast(lineComp->getNumPoints() - 2); Coordinate p0 = lineComp->getCoordinateN(segIndex); Coordinate p1 = lineComp->getCoordinateN(segIndex + 1); @@ -163,9 +152,9 @@ void LinearLocation::setToEnd(const Geometry* linear) { - componentIndex = linear->getNumGeometries() - 1; + componentIndex = static_cast(linear->getNumGeometries() - 1); const LineString* lastLine = dynamic_cast(linear->getGeometryN(componentIndex)); - segmentIndex = lastLine->getNumPoints() - 1; + segmentIndex = static_cast(lastLine->getNumPoints() - 1); segmentFraction = 1.0; } @@ -204,7 +193,10 @@ const LineString* lineComp = dynamic_cast (linearGeom->getGeometryN(componentIndex)); if ( ! lineComp ) { throw util::IllegalArgumentException("LinearLocation::getCoordinate only works with LineString geometries"); - } + } + if (linearGeom->isEmpty()) { + return Coordinate::getNull(); + } Coordinate p0 = lineComp->getCoordinateN(segmentIndex); if (segmentIndex >= lineComp->getNumPoints() - 1) return p0; @@ -213,7 +205,7 @@ } /* public */ -std::auto_ptr +std::unique_ptr LinearLocation::getSegment(const Geometry* linearGeom) const { const LineString* lineComp = dynamic_cast (linearGeom->getGeometryN(componentIndex)); @@ -221,22 +213,22 @@ // check for endpoint - return last segment of the line if so if (segmentIndex >= lineComp->getNumPoints() - 1) { - Coordinate prev = lineComp->getCoordinateN(lineComp->getNumPoints() - 2); - return std::auto_ptr(new LineSegment(prev, p0)); + Coordinate prev = lineComp->getCoordinateN(static_cast(lineComp->getNumPoints() - 2)); + return std::unique_ptr(new LineSegment(prev, p0)); } Coordinate p1 = lineComp->getCoordinateN(segmentIndex + 1); - return std::auto_ptr(new LineSegment(p0, p1)); + return std::unique_ptr(new LineSegment(p0, p1)); } /* public */ bool LinearLocation::isValid(const Geometry* linearGeom) const { - if (componentIndex < 0 || componentIndex >= linearGeom->getNumGeometries()) + if (componentIndex >= linearGeom->getNumGeometries()) return false; const LineString* lineComp = dynamic_cast (linearGeom->getGeometryN(componentIndex)); - if (segmentIndex < 0 || segmentIndex > lineComp->getNumPoints()) + if (segmentIndex > lineComp->getNumPoints()) return false; if (segmentIndex == lineComp->getNumPoints() && segmentFraction != 0.0) return false; @@ -326,7 +318,7 @@ const LineString& lineComp = dynamic_cast( *(linearGeom.getGeometryN(componentIndex)) ); // check for endpoint - unsigned int nseg = lineComp.getNumPoints() - 1; + auto nseg = lineComp.getNumPoints() - 1; return segmentIndex >= nseg || (segmentIndex == nseg && segmentFraction >= 1.0); diff -Nru geos-3.6.2/src/linearref/LocationIndexOfLine.cpp geos-3.7.1/src/linearref/LocationIndexOfLine.cpp --- geos-3.6.2/src/linearref/LocationIndexOfLine.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/linearref/LocationIndexOfLine.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -50,7 +50,7 @@ { Coordinate startPt = dynamic_cast (subLine->getGeometryN(0))->getCoordinateN(0); const LineString* lastLine = dynamic_cast (subLine->getGeometryN(subLine->getNumGeometries() - 1)); - Coordinate endPt = lastLine->getCoordinateN(lastLine->getNumPoints() - 1); + Coordinate endPt = lastLine->getCoordinateN(static_cast(lastLine->getNumPoints() - 1)); LocationIndexOfPoint locPt(linearGeom); LinearLocation *subLineLoc = new LinearLocation[2]; diff -Nru geos-3.6.2/src/linearref/LocationIndexOfPoint.cpp geos-3.7.1/src/linearref/LocationIndexOfPoint.cpp --- geos-3.6.2/src/linearref/LocationIndexOfPoint.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/linearref/LocationIndexOfPoint.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -97,7 +97,7 @@ LinearLocation LocationIndexOfPoint::indexOf(const Coordinate& inputPt) const { - return indexOfFromStart(inputPt, 0); + return indexOfFromStart(inputPt, nullptr); } LinearLocation diff -Nru geos-3.6.2/src/linearref/Makefile.in geos-3.7.1/src/linearref/Makefile.in --- geos-3.6.2/src/linearref/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/linearref/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -134,7 +137,15 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ExtractLineByLocation.Plo \ + ./$(DEPDIR)/LengthIndexOfPoint.Plo \ + ./$(DEPDIR)/LengthIndexedLine.Plo \ + ./$(DEPDIR)/LengthLocationMap.Plo \ + ./$(DEPDIR)/LinearGeometryBuilder.Plo \ + ./$(DEPDIR)/LinearIterator.Plo ./$(DEPDIR)/LinearLocation.Plo \ + ./$(DEPDIR)/LocationIndexOfLine.Plo \ + ./$(DEPDIR)/LocationIndexOfPoint.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -223,6 +234,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -271,6 +283,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -291,6 +305,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -340,7 +355,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -391,8 +405,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -424,15 +438,21 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ExtractLineByLocation.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LengthIndexOfPoint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LengthIndexedLine.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LengthLocationMap.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearGeometryBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearIterator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearLocation.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LocationIndexOfLine.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LocationIndexOfPoint.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ExtractLineByLocation.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LengthIndexOfPoint.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LengthIndexedLine.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LengthLocationMap.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearGeometryBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearIterator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LinearLocation.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LocationIndexOfLine.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LocationIndexOfPoint.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -513,7 +533,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -583,7 +606,15 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ExtractLineByLocation.Plo + -rm -f ./$(DEPDIR)/LengthIndexOfPoint.Plo + -rm -f ./$(DEPDIR)/LengthIndexedLine.Plo + -rm -f ./$(DEPDIR)/LengthLocationMap.Plo + -rm -f ./$(DEPDIR)/LinearGeometryBuilder.Plo + -rm -f ./$(DEPDIR)/LinearIterator.Plo + -rm -f ./$(DEPDIR)/LinearLocation.Plo + -rm -f ./$(DEPDIR)/LocationIndexOfLine.Plo + -rm -f ./$(DEPDIR)/LocationIndexOfPoint.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -629,7 +660,15 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ExtractLineByLocation.Plo + -rm -f ./$(DEPDIR)/LengthIndexOfPoint.Plo + -rm -f ./$(DEPDIR)/LengthIndexedLine.Plo + -rm -f ./$(DEPDIR)/LengthLocationMap.Plo + -rm -f ./$(DEPDIR)/LinearGeometryBuilder.Plo + -rm -f ./$(DEPDIR)/LinearIterator.Plo + -rm -f ./$(DEPDIR)/LinearLocation.Plo + -rm -f ./$(DEPDIR)/LocationIndexOfLine.Plo + -rm -f ./$(DEPDIR)/LocationIndexOfPoint.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -650,16 +689,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/Makefile.am geos-3.7.1/src/Makefile.am --- geos-3.6.2/src/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -24,10 +24,9 @@ # libgeos uses -release because it is not feasible to know if the ABI # has changed between releases; the project chooses not to expend the -# effort to determine this because depending programs should not be -# using the C++ library. +# effort to determine this because GEOS does not promise ABI stability. libgeos_la_LDFLAGS = \ - -release @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@ \ + -release @VERSION_RELEASE@ \ -no-undefined libgeos_la_SOURCES = \ diff -Nru geos-3.6.2/src/Makefile.in geos-3.7.1/src/Makefile.in --- geos-3.6.2/src/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/Makefile.in 2018-11-29 23:05:18.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -166,7 +169,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/inlines.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -208,7 +212,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -297,6 +301,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -345,6 +350,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -365,6 +372,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -414,7 +422,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -452,10 +459,9 @@ # libgeos uses -release because it is not feasible to know if the ABI # has changed between releases; the project chooses not to expend the -# effort to determine this because depending programs should not be -# using the C++ library. +# effort to determine this because GEOS does not promise ABI stability. libgeos_la_LDFLAGS = \ - -release @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@ \ + -release @VERSION_RELEASE@ \ -no-undefined libgeos_la_SOURCES = \ @@ -497,8 +503,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -554,7 +560,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inlines.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inlines.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -682,7 +694,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -781,7 +796,7 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/inlines.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -827,7 +842,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/inlines.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -848,20 +863,21 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libLTLIBRARIES \ - clean-libtool cscopelist-am ctags ctags-am distclean \ - distclean-compile distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am \ - install-libLTLIBRARIES install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic \ + clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-libLTLIBRARIES install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs installdirs-am \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ + uninstall-libLTLIBRARIES .PRECIOUS: Makefile diff -Nru geos-3.6.2/src/Makefile.vc geos-3.7.1/src/Makefile.vc --- geos-3.6.2/src/Makefile.vc 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/Makefile.vc 2018-11-29 22:42:00.000000000 +0000 @@ -52,6 +52,7 @@ algorithm\SimplePointInRing.$(EXT) \ algorithm\SIRtreePointInRing.$(EXT) \ algorithm\distance\DiscreteHausdorffDistance.$(EXT) \ + algorithm\distance\DiscreteFrechetDistance.$(EXT) \ algorithm\distance\DistanceToPoint.$(EXT) \ algorithm\locate\IndexedPointInAreaLocator.$(EXT) \ algorithm\locate\PointOnGeometryLocator.$(EXT) \ @@ -67,7 +68,6 @@ geom\GeometryCollection.$(EXT) \ geom\GeometryComponentFilter.$(EXT) \ geom\GeometryFactory.$(EXT) \ - geom\GeometryList.$(EXT) \ geom\IntersectionMatrix.$(EXT) \ geom\LinearRing.$(EXT) \ geom\LineSegment.$(EXT) \ @@ -217,6 +217,7 @@ operation\distance\FacetSequence.$(EXT) \ operation\distance\FacetSequenceTreeBuilder.$(EXT) \ operation\distance\GeometryLocation.$(EXT) \ + operation\distance\IndexedFacetDistance.$(EXT) \ operation\intersection\Rectangle.$(EXT) \ operation\intersection\RectangleIntersection.$(EXT) \ operation\intersection\RectangleIntersectionBuilder.$(EXT) \ diff -Nru geos-3.6.2/src/noding/BasicSegmentString.cpp geos-3.7.1/src/noding/BasicSegmentString.cpp --- geos-3.6.2/src/noding/BasicSegmentString.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/noding/BasicSegmentString.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/noding/FastNodingValidator.cpp geos-3.7.1/src/noding/FastNodingValidator.cpp --- geos-3.6.2/src/noding/FastNodingValidator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/FastNodingValidator.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -54,7 +54,7 @@ if (isValidVar) return std::string("no intersections found"); //return std::string("found non-noded intersection etc etc"); - + const std::vector& intSegs = segInt->getIntersectionSegments(); assert(intSegs.size() == 4); return "found non-noded intersection between " diff -Nru geos-3.6.2/src/noding/FastSegmentSetIntersectionFinder.cpp geos-3.7.1/src/noding/FastSegmentSetIntersectionFinder.cpp --- geos-3.6.2/src/noding/FastSegmentSetIntersectionFinder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/FastSegmentSetIntersectionFinder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -53,7 +53,7 @@ } -bool +bool FastSegmentSetIntersectionFinder:: intersects( noding::SegmentString::ConstVect * segStrings) { @@ -62,9 +62,9 @@ return this->intersects( segStrings, &intFinder); } -bool +bool FastSegmentSetIntersectionFinder:: -intersects( noding::SegmentString::ConstVect * segStrings, +intersects( noding::SegmentString::ConstVect * segStrings, SegmentIntersectionDetector * intDetector) { segSetMutInt->setSegmentIntersector( intDetector); diff -Nru geos-3.6.2/src/noding/GeometryNoder.cpp geos-3.7.1/src/noding/GeometryNoder.cpp --- geos-3.6.2/src/noding/GeometryNoder.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/noding/GeometryNoder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -36,8 +36,8 @@ #include #include -#include // for auto_ptr -#include +#include // for unique_ptr +#include namespace geos { namespace noding { // geos.noding @@ -53,12 +53,12 @@ : _to(to) {} - void filter_ro(const geom::Geometry * g) { + void filter_ro(const geom::Geometry * g) override { const geom::LineString *ls = dynamic_cast(g); if ( ls ) { - geom::CoordinateSequence* coord = ls->getCoordinates(); + geom::CoordinateSequence* coord = ls->getCoordinates(); // coord ownership transferred to SegmentString - SegmentString *ss = new NodedSegmentString(coord, 0); + SegmentString *ss = new NodedSegmentString(coord, nullptr); _to.push_back(ss); } } @@ -73,7 +73,7 @@ /* public static */ -std::auto_ptr +std::unique_ptr GeometryNoder::node(const geom::Geometry& geom) { GeometryNoder noder(geom); @@ -88,7 +88,7 @@ } /* private */ -std::auto_ptr +std::unique_ptr GeometryNoder::toGeometry(SegmentString::NonConstVect& nodedEdges) { const geom::GeometryFactory *geomFact = argGeom.getFactory(); @@ -98,13 +98,11 @@ // Create a geometry out of the noded substrings. std::vector< geom::Geometry* >* lines = new std::vector< geom::Geometry * >(); lines->reserve(nodedEdges.size()); - for ( unsigned int i = 0, n = nodedEdges.size(); i < n; ++i ) + for (auto &ss : nodedEdges) { - SegmentString* ss = nodedEdges [i]; - const geom::CoordinateSequence* coords = ss->getCoordinates(); - // Check if an equivalent edge is known + // Check if an equivalent edge is known OrientedCoordinateArray oca1( *coords ); if ( ocas.insert(oca1).second ) { geom::Geometry* tmp = geomFact->createLineString( coords->clone() ); @@ -112,20 +110,20 @@ } } - std::auto_ptr noded ( geomFact->createMultiLineString( lines ) ); + std::unique_ptr noded ( geomFact->createMultiLineString( lines ) ); return noded; } /* public */ -std::auto_ptr +std::unique_ptr GeometryNoder::getNoded() { SegmentString::NonConstVect lineList; extractSegmentStrings(argGeom, lineList); Noder& noder = getNoder(); - SegmentString::NonConstVect* nodedEdges = 0; + SegmentString::NonConstVect* nodedEdges = nullptr; try { noder.computeNodes( &lineList ); @@ -135,17 +133,17 @@ { for (size_t i=0, n=lineList.size(); i noded = toGeometry(*nodedEdges); + std::unique_ptr noded = toGeometry(*nodedEdges); - for ( unsigned int i = 0, n = nodedEdges->size(); i < n; ++i ) - delete ( *nodedEdges )[i]; + for (auto &elem : (*nodedEdges)) + delete elem; delete nodedEdges; - for (size_t i=0, n=lineList.size(); i #include -#include +#include #include #include #include @@ -60,7 +60,7 @@ nodedSegStrings = segStrings; int nodingIterationCount = 0; int lastNodesCreated = -1; - vector *lastStrings = 0; + vector *lastStrings = nullptr; do { // NOTE: will change this.nodedSegStrings @@ -68,8 +68,8 @@ // Delete noded strings from previous iteration if ( lastStrings ) { - for ( unsigned int i = 0, n = lastStrings->size(); i < n; ++i ) - delete (*lastStrings)[i]; + for (auto &s : *lastStrings) + delete s; delete lastStrings; } lastStrings = nodedSegStrings; diff -Nru geos-3.6.2/src/noding/Makefile.in geos-3.7.1/src/noding/Makefile.in --- geos-3.6.2/src/noding/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/noding/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -138,7 +141,24 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/BasicSegmentString.Plo \ + ./$(DEPDIR)/FastNodingValidator.Plo \ + ./$(DEPDIR)/FastSegmentSetIntersectionFinder.Plo \ + ./$(DEPDIR)/GeometryNoder.Plo \ + ./$(DEPDIR)/IntersectionAdder.Plo \ + ./$(DEPDIR)/IntersectionFinderAdder.Plo \ + ./$(DEPDIR)/IteratedNoder.Plo ./$(DEPDIR)/MCIndexNoder.Plo \ + ./$(DEPDIR)/MCIndexSegmentSetMutualIntersector.Plo \ + ./$(DEPDIR)/NodedSegmentString.Plo \ + ./$(DEPDIR)/NodingValidator.Plo ./$(DEPDIR)/Octant.Plo \ + ./$(DEPDIR)/OrientedCoordinateArray.Plo \ + ./$(DEPDIR)/ScaledNoder.Plo \ + ./$(DEPDIR)/SegmentIntersectionDetector.Plo \ + ./$(DEPDIR)/SegmentNode.Plo ./$(DEPDIR)/SegmentNodeList.Plo \ + ./$(DEPDIR)/SegmentString.Plo \ + ./$(DEPDIR)/SegmentStringUtil.Plo ./$(DEPDIR)/SimpleNoder.Plo \ + ./$(DEPDIR)/SingleInteriorIntersectionFinder.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -180,7 +200,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -269,6 +289,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -317,6 +338,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -337,6 +360,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -386,7 +410,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -451,8 +474,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -484,27 +507,33 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BasicSegmentString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FastNodingValidator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FastSegmentSetIntersectionFinder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryNoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntersectionAdder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntersectionFinderAdder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IteratedNoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexNoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexSegmentSetMutualIntersector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodedSegmentString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodingValidator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Octant.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OrientedCoordinateArray.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ScaledNoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentIntersectionDetector.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentNode.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentNodeList.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentStringUtil.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleNoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SingleInteriorIntersectionFinder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BasicSegmentString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FastNodingValidator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FastSegmentSetIntersectionFinder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryNoder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntersectionAdder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IntersectionFinderAdder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IteratedNoder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexNoder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexSegmentSetMutualIntersector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodedSegmentString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodingValidator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Octant.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OrientedCoordinateArray.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ScaledNoder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentIntersectionDetector.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentNode.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentNodeList.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentStringUtil.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleNoder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SingleInteriorIntersectionFinder.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -632,7 +661,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -728,7 +760,27 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/BasicSegmentString.Plo + -rm -f ./$(DEPDIR)/FastNodingValidator.Plo + -rm -f ./$(DEPDIR)/FastSegmentSetIntersectionFinder.Plo + -rm -f ./$(DEPDIR)/GeometryNoder.Plo + -rm -f ./$(DEPDIR)/IntersectionAdder.Plo + -rm -f ./$(DEPDIR)/IntersectionFinderAdder.Plo + -rm -f ./$(DEPDIR)/IteratedNoder.Plo + -rm -f ./$(DEPDIR)/MCIndexNoder.Plo + -rm -f ./$(DEPDIR)/MCIndexSegmentSetMutualIntersector.Plo + -rm -f ./$(DEPDIR)/NodedSegmentString.Plo + -rm -f ./$(DEPDIR)/NodingValidator.Plo + -rm -f ./$(DEPDIR)/Octant.Plo + -rm -f ./$(DEPDIR)/OrientedCoordinateArray.Plo + -rm -f ./$(DEPDIR)/ScaledNoder.Plo + -rm -f ./$(DEPDIR)/SegmentIntersectionDetector.Plo + -rm -f ./$(DEPDIR)/SegmentNode.Plo + -rm -f ./$(DEPDIR)/SegmentNodeList.Plo + -rm -f ./$(DEPDIR)/SegmentString.Plo + -rm -f ./$(DEPDIR)/SegmentStringUtil.Plo + -rm -f ./$(DEPDIR)/SimpleNoder.Plo + -rm -f ./$(DEPDIR)/SingleInteriorIntersectionFinder.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -774,7 +826,27 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/BasicSegmentString.Plo + -rm -f ./$(DEPDIR)/FastNodingValidator.Plo + -rm -f ./$(DEPDIR)/FastSegmentSetIntersectionFinder.Plo + -rm -f ./$(DEPDIR)/GeometryNoder.Plo + -rm -f ./$(DEPDIR)/IntersectionAdder.Plo + -rm -f ./$(DEPDIR)/IntersectionFinderAdder.Plo + -rm -f ./$(DEPDIR)/IteratedNoder.Plo + -rm -f ./$(DEPDIR)/MCIndexNoder.Plo + -rm -f ./$(DEPDIR)/MCIndexSegmentSetMutualIntersector.Plo + -rm -f ./$(DEPDIR)/NodedSegmentString.Plo + -rm -f ./$(DEPDIR)/NodingValidator.Plo + -rm -f ./$(DEPDIR)/Octant.Plo + -rm -f ./$(DEPDIR)/OrientedCoordinateArray.Plo + -rm -f ./$(DEPDIR)/ScaledNoder.Plo + -rm -f ./$(DEPDIR)/SegmentIntersectionDetector.Plo + -rm -f ./$(DEPDIR)/SegmentNode.Plo + -rm -f ./$(DEPDIR)/SegmentNodeList.Plo + -rm -f ./$(DEPDIR)/SegmentString.Plo + -rm -f ./$(DEPDIR)/SegmentStringUtil.Plo + -rm -f ./$(DEPDIR)/SimpleNoder.Plo + -rm -f ./$(DEPDIR)/SingleInteriorIntersectionFinder.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -795,8 +867,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/noding/MCIndexNoder.cpp geos-3.7.1/src/noding/MCIndexNoder.cpp --- geos-3.6.2/src/noding/MCIndexNoder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/MCIndexNoder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -19,9 +19,9 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include @@ -151,7 +151,7 @@ ); assert(ss2); - si.processIntersections(ss1, start1, ss2, start2); + si.processIntersections(ss1, static_cast(start1), ss2, static_cast(start2)); } diff -Nru geos-3.6.2/src/noding/MCIndexSegmentSetMutualIntersector.cpp geos-3.7.1/src/noding/MCIndexSegmentSetMutualIntersector.cpp --- geos-3.6.2/src/noding/MCIndexSegmentSetMutualIntersector.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/MCIndexSegmentSetMutualIntersector.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -34,7 +34,7 @@ namespace noding { // geos::noding /*private*/ -void +void MCIndexSegmentSetMutualIntersector::addToIndex(SegmentString* segStr) { MonoChains segChains; @@ -52,8 +52,9 @@ } } + /*private*/ -void +void MCIndexSegmentSetMutualIntersector::intersectChains() { MCIndexSegmentSetMutualIntersector::SegmentOverlapAction overlapAction( *segInt); @@ -71,21 +72,21 @@ queryChain->computeOverlaps( testChain, &overlapAction); nOverlaps++; - if (segInt->isDone()) + if (segInt->isDone()) return; } } } /*private*/ -void +void MCIndexSegmentSetMutualIntersector::addToMonoChains(SegmentString* segStr) { MonoChains segChains; MonotoneChainBuilder::getChains(segStr->getCoordinates(), segStr, segChains); - MonoChains::size_type n = segChains.size(); + MonoChains::size_type n = segChains.size(); monoChains.reserve(monoChains.size() + n); for (MonoChains::size_type i = 0; i < n; i++) { @@ -96,7 +97,7 @@ } /* public */ -MCIndexSegmentSetMutualIntersector::MCIndexSegmentSetMutualIntersector() +MCIndexSegmentSetMutualIntersector::MCIndexSegmentSetMutualIntersector() : monoChains(), index(new geos::index::strtree::STRtree()), indexCounter(0), @@ -106,7 +107,7 @@ } /* public */ -MCIndexSegmentSetMutualIntersector::~MCIndexSegmentSetMutualIntersector() +MCIndexSegmentSetMutualIntersector::~MCIndexSegmentSetMutualIntersector() { delete index; @@ -114,7 +115,7 @@ for (i = chainStore.begin(), e = chainStore.end(); i != e; ++i) { delete *i; - } + } for (i = monoChains.begin(), e = monoChains.end(); i != e; i++) { delete *i; @@ -122,7 +123,7 @@ } /* public */ -void +void MCIndexSegmentSetMutualIntersector::setBaseSegments(SegmentString::ConstVect* segStrings) { // NOTE - mloskot: const qualifier is removed silently, dirty. @@ -136,7 +137,7 @@ } /*public*/ -void +void MCIndexSegmentSetMutualIntersector::process(SegmentString::ConstVect * segStrings) { processCounter = indexCounter + 1; @@ -159,14 +160,14 @@ /* public */ -void +void MCIndexSegmentSetMutualIntersector::SegmentOverlapAction::overlap( MonotoneChain& mc1, size_t start1, MonotoneChain& mc2, size_t start2) { SegmentString * ss1 = (SegmentString *)(mc1.getContext()); SegmentString * ss2 = (SegmentString *)(mc2.getContext()); - si.processIntersections(ss1, start1, ss2, start2); + si.processIntersections(ss1, static_cast(start1), ss2, static_cast(start2)); } } // geos::noding diff -Nru geos-3.6.2/src/noding/NodedSegmentString.cpp geos-3.7.1/src/noding/NodedSegmentString.cpp --- geos-3.6.2/src/noding/NodedSegmentString.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/noding/NodedSegmentString.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -43,7 +43,7 @@ /*static private*/ int -NodedSegmentString::safeOctant(const Coordinate& p0, const Coordinate& p1) +NodedSegmentString::safeOctant(const Coordinate& p0, const Coordinate& p1) { if ( p0.equals2D(p1) ) return 0; return Octant::octant(p0, p1); diff -Nru geos-3.6.2/src/noding/NodingValidator.cpp geos-3.7.1/src/noding/NodingValidator.cpp --- geos-3.6.2/src/noding/NodingValidator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/NodingValidator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,10 +8,10 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * - ********************************************************************** + ********************************************************************** * * Last port: noding/NodingValidator.java rev. 1.6 (JTS-1.7) * @@ -36,7 +36,7 @@ /*public*/ void -NodingValidator::checkValid() +NodingValidator::checkValid() { checkEndPtVertexIntersections(); checkInteriorIntersections(); @@ -62,7 +62,7 @@ NodingValidator::checkCollapses(const SegmentString& ss) const { const CoordinateSequence& pts = *(ss.getCoordinates()); - for (unsigned int i=0, n=pts.getSize()-2; i(pts.getSize() - 2); i < n; ++i) { checkCollapse(pts[i], pts[i + 1], pts[i + 2]); } @@ -82,7 +82,7 @@ /*private*/ void -NodingValidator::checkInteriorIntersections() +NodingValidator::checkInteriorIntersections() { for (SegmentString::NonConstVect::const_iterator it = segStrings.begin(), itEnd = segStrings.end(); @@ -98,18 +98,18 @@ checkInteriorIntersections(*ss0, *ss1); } } - + } /* private */ void NodingValidator::checkInteriorIntersections(const SegmentString& ss0, - const SegmentString& ss1) + const SegmentString& ss1) { const CoordinateSequence& pts0 = *(ss0.getCoordinates()); const CoordinateSequence& pts1 = *(ss1.getCoordinates()); - for (unsigned int i0=0, n0=pts0.size(); i0(pts0.size()); i0 < n0 - 1; i0++) { + for (unsigned int i1=0, n1 = static_cast(pts1.size()); i1 < n1 - 1; i1++) { checkInteriorIntersections(ss0, i0, ss1, i1); } } @@ -120,7 +120,7 @@ void NodingValidator::checkInteriorIntersections( const SegmentString& e0, unsigned int segIndex0, - const SegmentString& e1, unsigned int segIndex1) + const SegmentString& e1, unsigned int segIndex1) { if (&e0 == &e1 && segIndex0 == segIndex1) return; const Coordinate& p00 = e0.getCoordinates()->getAt(segIndex0); @@ -171,7 +171,7 @@ { const SegmentString* ss0 = *it; const CoordinateSequence& pts = *(ss0->getCoordinates()); - for (unsigned int j=1, n=pts.size()-1; j(pts.size()-1); j < n; ++j) { if (pts[j].equals(testPt)) { @@ -184,9 +184,9 @@ } } - - + + /* private */ bool diff -Nru geos-3.6.2/src/noding/Octant.cpp geos-3.7.1/src/noding/Octant.cpp --- geos-3.6.2/src/noding/Octant.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/Octant.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -71,7 +71,7 @@ return 5; } } - + } /*public static*/ diff -Nru geos-3.6.2/src/noding/OrientedCoordinateArray.cpp geos-3.7.1/src/noding/OrientedCoordinateArray.cpp --- geos-3.6.2/src/noding/OrientedCoordinateArray.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/noding/OrientedCoordinateArray.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,98 +1,99 @@ -/********************************************************************** - * - * GEOS - Geometry Engine Open Source - * http://geos.osgeo.org - * - * Copyright (C) 2009 Sandro Santilli - * - * This is free software; you can redistribute and/or modify it under - * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. - * See the COPYING file for more information. - * - ********************************************************************** - * - * Last port: noding/OrientedCoordinateArray.java rev. 1.1 (JTS-1.9) - * - **********************************************************************/ - -//#include -//#include - -#include - -//#include -//#include -//#include -#include - -//using namespace std; -using namespace geos::geom; - -#ifdef _MSC_VER -#pragma warning(disable : 4127) -#endif - -namespace geos { -namespace noding { // geos.noding - -/* private static */ -bool -OrientedCoordinateArray::orientation(const CoordinateSequence& pts) -{ - return CoordinateSequence::increasingDirection(pts) == 1; -} - -int -OrientedCoordinateArray::compareTo(const OrientedCoordinateArray& oca) const -{ - int comp = compareOriented(*pts, orientationVar, - *oca.pts, oca.orientationVar); -#if 0 // MD - testing only - int oldComp = SegmentStringDissolver.ptsComp.compare(pts, oca.pts); - if ((oldComp == 0 || comp == 0) && oldComp != comp) { - System.out.println("bidir mismatch"); - - boolean orient1 = orientation(pts); - boolean orient2 = orientation(oca.pts); - int comp2 = compareOriented(pts, orientation, - oca.pts, oca.orientation); - int oldComp2 = SegmentStringDissolver.ptsComp.compare(pts, oca.pts); - } -#endif - - return comp; -} - -/* private static */ -int -OrientedCoordinateArray::compareOriented(const geom::CoordinateSequence& pts1, - bool orientation1, - const geom::CoordinateSequence& pts2, - bool orientation2) -{ - int dir1 = orientation1 ? 1 : -1; - int dir2 = orientation2 ? 1 : -1; - int limit1 = orientation1 ? pts1.size() : -1; - int limit2 = orientation2 ? pts2.size() : -1; - - int i1 = orientation1 ? 0 : pts1.size() - 1; - int i2 = orientation2 ? 0 : pts2.size() - 1; - //int comp = 0; // unused, but is in JTS ... - while (true) { - int compPt = pts1[i1].compareTo(pts2[i2]); - if (compPt != 0) - return compPt; - i1 += dir1; - i2 += dir2; - bool done1 = i1 == limit1; - bool done2 = i2 == limit2; - if (done1 && ! done2) return -1; - if (! done1 && done2) return 1; - if (done1 && done2) return 0; - } -} - -} // namespace geos.noding -} // namespace geos - +/********************************************************************** + * + * GEOS - Geometry Engine Open Source + * http://geos.osgeo.org + * + * Copyright (C) 2009 Sandro Santilli + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU Lesser General Public Licence as published + * by the Free Software Foundation. + * See the COPYING file for more information. + * + ********************************************************************** + * + * Last port: noding/OrientedCoordinateArray.java rev. 1.1 (JTS-1.9) + * + **********************************************************************/ + +//#include +//#include + +#include + +//#include +//#include +//#include +#include + +//using namespace std; +using namespace geos::geom; + +#ifdef _MSC_VER +#pragma warning(disable : 4127) +#endif + +namespace geos { +namespace noding { // geos.noding + +/* private static */ +bool +OrientedCoordinateArray::orientation(const CoordinateSequence& pts) +{ + return CoordinateSequence::increasingDirection(pts) == 1; +} + +int +OrientedCoordinateArray::compareTo(const OrientedCoordinateArray& oca) const +{ + int comp = compareOriented(*pts, orientationVar, + *oca.pts, oca.orientationVar); +#if 0 // MD - testing only + int oldComp = SegmentStringDissolver.ptsComp.compare(pts, oca.pts); + if ((oldComp == 0 || comp == 0) && oldComp != comp) { + System.out.println("bidir mismatch"); + + boolean orient1 = orientation(pts); + boolean orient2 = orientation(oca.pts); + int comp2 = compareOriented(pts, orientation, + oca.pts, oca.orientation); + int oldComp2 = SegmentStringDissolver.ptsComp.compare(pts, oca.pts); + } +#endif + + return comp; +} + + +/* private static */ +int +OrientedCoordinateArray::compareOriented(const geom::CoordinateSequence& pts1, + bool orientation1, + const geom::CoordinateSequence& pts2, + bool orientation2) +{ + int dir1 = orientation1 ? 1 : -1; + int dir2 = orientation2 ? 1 : -1; + auto limit1 = orientation1 ? pts1.size() : -1; + auto limit2 = orientation2 ? pts2.size() : -1; + + auto i1 = orientation1 ? 0 : pts1.size() - 1; + auto i2 = orientation2 ? 0 : pts2.size() - 1; + //int comp = 0; // unused, but is in JTS ... + while (true) { + int compPt = pts1[i1].compareTo(pts2[i2]); + if (compPt != 0) + return compPt; + i1 += dir1; + i2 += dir2; + bool done1 = i1 == limit1; + bool done2 = i2 == limit2; + if (done1 && ! done2) return -1; + if (! done1 && done2) return 1; + if (done1 && done2) return 0; + } +} + +} // namespace geos.noding +} // namespace geos + diff -Nru geos-3.6.2/src/noding/ScaledNoder.cpp geos-3.7.1/src/noding/ScaledNoder.cpp --- geos-3.6.2/src/noding/ScaledNoder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/ScaledNoder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -70,7 +70,7 @@ } #endif // GEOS_DEBUG > 1 -} // anonym namespace +} // anonym namespace class ScaledNoder::Scaler : public geom::CoordinateFilter { public: @@ -86,15 +86,15 @@ //void filter_ro(const geom::Coordinate* c) { assert(0); } - void filter_rw(geom::Coordinate* c) const { + void filter_rw(geom::Coordinate* c) const override { c->x = util::round( ( c->x - sn.offsetX ) * sn.scaleFactor ); c->y = util::round( ( c->y - sn.offsetY ) * sn.scaleFactor ); } private: // Declare type as noncopyable - Scaler(const Scaler& other); - Scaler& operator=(const Scaler& rhs); + Scaler(const Scaler& other) = delete; + Scaler& operator=(const Scaler& rhs) = delete; }; class ScaledNoder::ReScaler: public geom::CoordinateFilter { @@ -109,13 +109,13 @@ #endif } - void filter_ro(const geom::Coordinate* c) + void filter_ro(const geom::Coordinate* c) override { ::geos::ignore_unused_variable_warning(c); assert(0); } - void filter_rw(geom::Coordinate* c) const { + void filter_rw(geom::Coordinate* c) const override { c->x = c->x / sn.scaleFactor + sn.offsetX; c->y = c->y / sn.scaleFactor + sn.offsetY; } diff -Nru geos-3.6.2/src/noding/SegmentIntersectionDetector.cpp geos-3.7.1/src/noding/SegmentIntersectionDetector.cpp --- geos-3.6.2/src/noding/SegmentIntersectionDetector.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/SegmentIntersectionDetector.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -26,12 +26,12 @@ -void +void SegmentIntersectionDetector:: -processIntersections( +processIntersections( noding::SegmentString * e0, int segIndex0, noding::SegmentString * e1, int segIndex1 ) -{ +{ // don't bother intersecting a segment with itself if (e0 == e1 && segIndex0 == segIndex1) return; @@ -42,7 +42,7 @@ li->computeIntersection( p00, p01, p10, p11); - if (li->hasIntersection()) + if (li->hasIntersection()) { // record intersection info _hasIntersection = true; @@ -58,11 +58,11 @@ // OR no location has yet been recorded // save the location data bool saveLocation = true; - - if (findProper && !isProper) + + if (findProper && !isProper) saveLocation = false; - if (!intPt || saveLocation) + if (!intPt || saveLocation) { // record intersection location (approximate) intPt = &li->getIntersection(0); @@ -78,7 +78,7 @@ } } } - + } // geos::noding } // geos diff -Nru geos-3.6.2/src/noding/SegmentNode.cpp geos-3.7.1/src/noding/SegmentNode.cpp --- geos-3.6.2/src/noding/SegmentNode.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/SegmentNode.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/noding/SegmentNodeList.cpp geos-3.7.1/src/noding/SegmentNodeList.cpp --- geos-3.6.2/src/noding/SegmentNodeList.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/SegmentNodeList.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -60,15 +60,15 @@ SegmentNode* SegmentNodeList::add(const Coordinate& intPt, size_t segmentIndex) { - SegmentNode *eiNew=new SegmentNode(edge, intPt, segmentIndex, - edge.getSegmentOctant(segmentIndex)); + SegmentNode *eiNew=new SegmentNode(edge, intPt, static_cast(segmentIndex), + edge.getSegmentOctant(static_cast(segmentIndex))); std::pair p = nodeMap.insert(eiNew); if ( p.second ) { // new SegmentNode inserted return eiNew; } else { - // sanity check + // sanity check assert(eiNew->coord.equals2D(intPt)); delete eiNew; @@ -98,7 +98,7 @@ e=collapsedVertexIndexes.end(); i != e; ++i) { - size_t vertexIndex = *i; + auto vertexIndex = static_cast(*i); add(edge.getCoordinate(vertexIndex), vertexIndex); } } @@ -113,8 +113,8 @@ for (size_t i=0, n=edge.size()-2; i(i)); + const Coordinate& p2 = edge.getCoordinate(static_cast(i + 2)); if (p0.equals2D(p2)) { // add base of collapse as node collapsedVertexIndexes.push_back(i + 1); @@ -266,12 +266,12 @@ npts--; } - CoordinateSequence *pts = new CoordinateArraySequence(npts); + CoordinateSequence *pts = new CoordinateArraySequence(npts); size_t ipt = 0; pts->setAt(ei0->coord, ipt++); for (size_t i=ei0->segmentIndex+1; i<=ei1->segmentIndex; i++) { - pts->setAt(edge.getCoordinate(i),ipt++); + pts->setAt(edge.getCoordinate(static_cast(i)),ipt++); } if (useIntPt1) pts->setAt(ei1->coord, ipt++); diff -Nru geos-3.6.2/src/noding/SegmentString.cpp geos-3.7.1/src/noding/SegmentString.cpp --- geos-3.6.2/src/noding/SegmentString.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/noding/SegmentString.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/noding/SegmentStringUtil.cpp geos-3.7.1/src/noding/SegmentStringUtil.cpp --- geos-3.6.2/src/noding/SegmentStringUtil.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/SegmentStringUtil.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/noding/SimpleNoder.cpp geos-3.7.1/src/noding/SimpleNoder.cpp --- geos-3.6.2/src/noding/SimpleNoder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/SimpleNoder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,12 +35,12 @@ const CoordinateSequence* pts0 = e0->getCoordinates(); const CoordinateSequence* pts1 = e1->getCoordinates(); - for (unsigned int i0=0, n0=pts0->getSize()-1; i0getSize()-1; i1(pts0->getSize()-1); i0(pts1->getSize()-1); i1processIntersections(e0, i0, e1, i1); } } - + } /*public*/ diff -Nru geos-3.6.2/src/noding/SingleInteriorIntersectionFinder.cpp geos-3.7.1/src/noding/SingleInteriorIntersectionFinder.cpp --- geos-3.6.2/src/noding/SingleInteriorIntersectionFinder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/SingleInteriorIntersectionFinder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -37,7 +37,7 @@ // short-circuit if intersection already found if (hasIntersection()) return; - + // don't bother intersecting a segment with itself if (e0 == e1 && segIndex0 == segIndex1) return; @@ -45,7 +45,7 @@ const Coordinate& p01 = e0->getCoordinate(segIndex0 + 1); const Coordinate& p10 = e1->getCoordinate(segIndex1); const Coordinate& p11 = e1->getCoordinate(segIndex1 + 1); - + li.computeIntersection(p00, p01, p10, p11); //if (li.hasIntersection() && li.isProper()) Debug.println(li); @@ -58,7 +58,7 @@ intSegments[1] = p01; intSegments[2] = p10; intSegments[3] = p11; - + interiorIntersection = li.getIntersection(0); } } diff -Nru geos-3.6.2/src/noding/snapround/HotPixel.cpp geos-3.7.1/src/noding/snapround/HotPixel.cpp --- geos-3.6.2/src/noding/snapround/HotPixel.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/noding/snapround/HotPixel.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -58,9 +58,9 @@ { static const double SAFE_ENV_EXPANSION_FACTOR = 0.75; - if (safeEnv.get() == NULL) { + if (safeEnv.get() == nullptr) { double safeTolerance = SAFE_ENV_EXPANSION_FACTOR / scaleFactor; - safeEnv = auto_ptr(new Envelope(originalPt.x - safeTolerance, + safeEnv = unique_ptr(new Envelope(originalPt.x - safeTolerance, originalPt.x + safeTolerance, originalPt.y - safeTolerance, originalPt.y + safeTolerance @@ -71,7 +71,7 @@ /*private*/ void -HotPixel::initCorners(const Coordinate& pt) +HotPixel::initCorners(const Coordinate& pt) { double tolerance = 0.5; minx = pt.x - tolerance; @@ -174,13 +174,13 @@ bool HotPixel::addSnappedNode(NodedSegmentString& segStr, size_t segIndex) { - const Coordinate& p0 = segStr.getCoordinate(segIndex); - const Coordinate& p1 = segStr.getCoordinate(segIndex + 1); + const Coordinate& p0 = segStr.getCoordinate(static_cast(segIndex)); + const Coordinate& p1 = segStr.getCoordinate(static_cast(segIndex + 1)); if (intersects(p0, p1)) { //cout << "snapped: " << snapPt << endl; - segStr.addIntersection(getCoordinate(), segIndex); + segStr.addIntersection(getCoordinate(), static_cast(segIndex)); return true; } return false; diff -Nru geos-3.6.2/src/noding/snapround/Makefile.in geos-3.7.1/src/noding/snapround/Makefile.in --- geos-3.6.2/src/noding/snapround/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/noding/snapround/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/HotPixel.Plo \ + ./$(DEPDIR)/MCIndexPointSnapper.Plo \ + ./$(DEPDIR)/MCIndexSnapRounder.Plo \ + ./$(DEPDIR)/SimpleSnapRounder.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +180,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +269,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +318,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +340,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +390,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -427,8 +437,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -460,10 +470,16 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HotPixel.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexPointSnapper.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexSnapRounder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleSnapRounder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HotPixel.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexPointSnapper.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MCIndexSnapRounder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleSnapRounder.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -591,7 +607,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -687,7 +706,10 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/HotPixel.Plo + -rm -f ./$(DEPDIR)/MCIndexPointSnapper.Plo + -rm -f ./$(DEPDIR)/MCIndexSnapRounder.Plo + -rm -f ./$(DEPDIR)/SimpleSnapRounder.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -733,7 +755,10 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/HotPixel.Plo + -rm -f ./$(DEPDIR)/MCIndexPointSnapper.Plo + -rm -f ./$(DEPDIR)/MCIndexSnapRounder.Plo + -rm -f ./$(DEPDIR)/SimpleSnapRounder.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -754,8 +779,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/noding/snapround/MCIndexPointSnapper.cpp geos-3.7.1/src/noding/snapround/MCIndexPointSnapper.cpp --- geos-3.6.2/src/noding/snapround/MCIndexPointSnapper.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/snapround/MCIndexPointSnapper.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,8 +23,8 @@ #include #include #include -#include -#include +#include +#include #include #include @@ -53,7 +53,7 @@ bool isNodeAdded() const { return isNodeAddedVar; } - void select(chain::MonotoneChain& mc, unsigned int startIndex) + void select(chain::MonotoneChain& mc, unsigned int startIndex) override { // This is casting away 'constness'! NodedSegmentString& ss = *(static_cast(mc.getContext())); @@ -68,7 +68,7 @@ isNodeAddedVar = hotPixel.addSnappedNode(ss, startIndex); } - void select(const LineSegment& ls) + void select(const LineSegment& ls) override { ::geos::ignore_unused_variable_warning(ls); } @@ -80,8 +80,8 @@ bool isNodeAddedVar; // Declare type as noncopyable - HotPixelSnapAction(const HotPixelSnapAction& other); - HotPixelSnapAction& operator=(const HotPixelSnapAction& rhs); + HotPixelSnapAction(const HotPixelSnapAction& other) = delete; + HotPixelSnapAction& operator=(const HotPixelSnapAction& rhs) = delete; }; class MCIndexPointSnapperVisitor: public ItemVisitor { @@ -93,9 +93,9 @@ action(nAction) {} - virtual ~MCIndexPointSnapperVisitor() {} + ~MCIndexPointSnapperVisitor() override {} - void visitItem(void* item) { + void visitItem(void* item) override { chain::MonotoneChain& testChain = *(static_cast(item)); testChain.select(pixelEnv, action); @@ -124,7 +124,7 @@ return hotPixelSnapAction.isNodeAdded(); } - + } // namespace geos.noding.snapround } // namespace geos.noding } // namespace geos diff -Nru geos-3.6.2/src/noding/snapround/MCIndexSnapRounder.cpp geos-3.7.1/src/noding/snapround/MCIndexSnapRounder.cpp --- geos-3.6.2/src/noding/snapround/MCIndexSnapRounder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/snapround/MCIndexSnapRounder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,7 +27,7 @@ #include #include // std::mem_fun, std::bind1st -#include // std::for_each +#include // std::for_each #include @@ -69,7 +69,7 @@ MCIndexSnapRounder::computeVertexSnaps(NodedSegmentString* e) { CoordinateSequence& pts0 = *(e->getCoordinates()); - for (unsigned int i=0, n=pts0.size()-1; i(pts0.size()-1); isnap(hotPixel, e, i); @@ -96,14 +96,14 @@ /*private*/ void -MCIndexSnapRounder::snapRound(MCIndexNoder& noder, +MCIndexSnapRounder::snapRound(MCIndexNoder& noder, SegmentString::NonConstVect* segStrings) { vector intersections; findInteriorIntersections(noder, segStrings, intersections); computeIntersectionSnaps(intersections); computeVertexSnaps(*segStrings); - + } /*public*/ @@ -126,7 +126,7 @@ MCIndexSnapRounder::checkCorrectness( SegmentString::NonConstVect& inputSegmentStrings) { - auto_ptr resultSegStrings( + unique_ptr resultSegStrings( NodedSegmentString::getNodedSubstrings(inputSegmentStrings) ); diff -Nru geos-3.6.2/src/noding/snapround/SimpleSnapRounder.cpp geos-3.7.1/src/noding/snapround/SimpleSnapRounder.cpp --- geos-3.6.2/src/noding/snapround/SimpleSnapRounder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/noding/snapround/SimpleSnapRounder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -108,7 +108,7 @@ { delete *i; } - + } /*private*/ @@ -149,12 +149,12 @@ const CoordinateSequence* pts0 = e0->getCoordinates(); const CoordinateSequence* pts1 = e1->getCoordinates(); - for (unsigned int i0=0, n0=pts0->getSize()-1; i0(pts0->getSize()-1); i0getAt(i0); HotPixel hotPixel(p0, scaleFactor, li); - for (unsigned int i1=1, n1=pts1->getSize()-1; i1(pts1->getSize()-1); i1 + * Copyright (C) 2009-2011 Sandro Santilli * Copyright (C) 2008-2010 Safe Software Inc. * Copyright (C) 2005-2007 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. @@ -81,7 +81,7 @@ // Debug routine template -std::auto_ptr +std::unique_ptr convertSegStrings(const GeometryFactory* fact, Iterator it, Iterator et) { std::vector lines; @@ -91,7 +91,7 @@ lines.push_back(line); ++it; } - return std::auto_ptr(fact->buildGeometry(lines)); + return std::unique_ptr(fact->buildGeometry(lines)); } } @@ -151,7 +151,7 @@ BufferParameters modParams = bufParams; modParams.setEndCapStyle(BufferParameters::CAP_FLAT); modParams.setSingleSided(false); // ignore parameter for areal-only geometries - std::auto_ptr buf; + std::unique_ptr buf; // This is a (temp?) hack to workaround the fact that // BufferBuilder BufferParamaters are immutable after @@ -163,7 +163,7 @@ } // Create MultiLineStrings from this polygon. - std::auto_ptr bufLineString ( buf->getBoundary() ); + std::unique_ptr bufLineString ( buf->getBoundary() ); #ifdef GEOS_DEBUG_SSB std::cerr << "input|" << *l << std::endl; @@ -175,7 +175,7 @@ std::vector< CoordinateSequence* > lineList; { - std::auto_ptr< CoordinateSequence > coords(g->getCoordinates()); + std::unique_ptr< CoordinateSequence > coords(g->getCoordinates()); curveBuilder.getSingleSidedLineCurve(coords.get(), distance, lineList, leftSide, !leftSide); coords.reset(); @@ -188,7 +188,7 @@ CoordinateSequence* seq = lineList[i]; // SegmentString takes ownership of CoordinateSequence - SegmentString* ss = new NodedSegmentString(seq, NULL); + SegmentString* ss = new NodedSegmentString(seq, nullptr); curveList.push_back( ss ); } lineList.clear(); @@ -221,7 +221,7 @@ for (size_t i=0, n=curveList.size(); i singleSided ( geomFact->createMultiLineString( + std::unique_ptr singleSided ( geomFact->createMultiLineString( singleSidedNodedEdges ) ); #ifdef GEOS_DEBUG_SSB @@ -235,7 +235,7 @@ // diverge from original offset curves due to the addition of // intersections with caps and joins curves using geos::operation::overlay::snap::SnapOverlayOp; - std::auto_ptr intersectedLines = SnapOverlayOp::overlayOp(*singleSided, *bufLineString, OverlayOp::opINTERSECTION); + std::unique_ptr intersectedLines = SnapOverlayOp::overlayOp(*singleSided, *bufLineString, OverlayOp::opINTERSECTION); #ifdef GEOS_DEBUG_SSB std::cerr << "intersection" << "|" << *intersectedLines << std::endl; @@ -244,7 +244,7 @@ // Merge result lines together. LineMerger lineMerge; lineMerge.add( intersectedLines.get() ); - std::auto_ptr< std::vector< LineString* > > mergedLines ( + std::unique_ptr< std::vector< LineString* > > mergedLines ( lineMerge.getMergedLineStrings() ); // Convert the result into a std::vector< Geometry* >. @@ -255,8 +255,8 @@ { // Remove end points if they are a part of the original line to be // buffered. - CoordinateSequence::AutoPtr coords(mergedLines->back()->getCoordinates()); - if ( NULL != coords.get() ) + CoordinateSequence::Ptr coords(mergedLines->back()->getCoordinates()); + if ( nullptr != coords.get() ) { // Use 98% of the buffer width as the point-distance requirement - this // is to ensure that the point that is "distance" +/- epsilon is not @@ -368,7 +368,7 @@ // throw(GEOSException *) { const PrecisionModel *precisionModel=workingPrecisionModel; - if (precisionModel==NULL) + if (precisionModel==nullptr) precisionModel=g->getPrecisionModel(); assert(precisionModel); @@ -410,8 +410,8 @@ std::cerr << std::endl << edgeList << std::endl; #endif - Geometry* resultGeom=NULL; - std::auto_ptr< std::vector > resultPolyList; + Geometry* resultGeom=nullptr; + std::unique_ptr< std::vector > resultPolyList; std::vector subgraphList; try { @@ -476,14 +476,14 @@ BufferBuilder::getNoder(const PrecisionModel* pm) { // this doesn't change workingNoder precisionModel! - if (workingNoder != NULL) return workingNoder; + if (workingNoder != nullptr) return workingNoder; // otherwise use a fast (but non-robust) noder if ( li ) // reuse existing IntersectionAdder and LineIntersector { li->setPrecisionModel(pm); - assert(intersectionAdder!=NULL); + assert(intersectionAdder!=nullptr); } else { @@ -581,7 +581,7 @@ // fast lookup Edge *existingEdge = edgeList.findEqualEdge(e); // If an identical edge already exists, simply update its label - if (existingEdge != NULL) { + if (existingEdge != nullptr) { Label& existingLabel = existingEdge->getLabel(); Label labelToMerge = e->getLabel(); @@ -694,7 +694,7 @@ geom::Geometry* BufferBuilder::createEmptyResultGeometry() const { - geom::Geometry* emptyGeom = geomFact->createPolygon(NULL, NULL); + geom::Geometry* emptyGeom = geomFact->createPolygon(nullptr, nullptr); return emptyGeom; } diff -Nru geos-3.6.2/src/operation/buffer/BufferInputLineSimplifier.cpp geos-3.7.1/src/operation/buffer/BufferInputLineSimplifier.cpp --- geos-3.6.2/src/operation/buffer/BufferInputLineSimplifier.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/BufferInputLineSimplifier.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published @@ -43,7 +43,7 @@ {} /*public static*/ -std::auto_ptr +std::unique_ptr BufferInputLineSimplifier::simplify(const geom::CoordinateSequence& inputLine, double distanceTol) { @@ -52,7 +52,7 @@ } /* public */ -std::auto_ptr +std::unique_ptr BufferInputLineSimplifier::simplify(double nDistanceTol) { distanceTol = fabs(nDistanceTol); @@ -120,10 +120,10 @@ } /* private */ -std::auto_ptr +std::unique_ptr BufferInputLineSimplifier::collapseLine() const { - std::auto_ptr coordList( + std::unique_ptr coordList( new CoordinateArraySequence()); for (size_t i=0, n=inputLine.size(); i + * Copyright (C) 2009-2011 Sandro Santilli * Copyright (C) 2005-2007 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -132,7 +132,7 @@ bufferOriginalPrecision(); - if (resultGeometry!=NULL) return; + if (resultGeometry!=nullptr) return; #if GEOS_DEBUG std::cerr << "bufferOriginalPrecision failed (" << saveException.what() << "), trying with reduced precision" @@ -165,9 +165,9 @@ } catch (const util::TopologyException& ex) { saveException=ex; // don't propagate the exception - it will be detected by fact that resultGeometry is null - } + } - if (resultGeometry!=NULL) { + if (resultGeometry!=nullptr) { // debug //if ( saveException ) std::cerr<toString()<toString()<getFactory()->getPrecisionModel()); - std::auto_ptr fixedGeom; + std::unique_ptr fixedGeom; if ( argPM.getType() != PrecisionModel::FIXED || argPM.getScale() != fixedPM.getScale() ) { using precision::GeometryPrecisionReducer; diff -Nru geos-3.6.2/src/operation/buffer/BufferParameters.cpp geos-3.7.1/src/operation/buffer/BufferParameters.cpp --- geos-3.6.2/src/operation/buffer/BufferParameters.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/BufferParameters.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/buffer/BufferSubgraph.cpp geos-3.7.1/src/operation/buffer/BufferSubgraph.cpp --- geos-3.6.2/src/operation/buffer/BufferSubgraph.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/BufferSubgraph.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -53,8 +53,8 @@ finder(), dirEdgeList(), nodes(), - rightMostCoord(NULL), - env(NULL) + rightMostCoord(nullptr), + env(nullptr) { } @@ -69,7 +69,7 @@ { addReachable(node); - // We are assuming that dirEdgeList + // We are assuming that dirEdgeList // contains *at leas* ONE forward DirectedEdge finder.findEdge(&dirEdgeList); @@ -155,7 +155,7 @@ // throw(TopologyException *) { // find a visited dirEdge to start at - DirectedEdge *startEdge=NULL; + DirectedEdge *startEdge=nullptr; assert(dynamic_cast(n->getEdges())); DirectedEdgeStar *ees=static_cast(n->getEdges()); @@ -176,7 +176,7 @@ //if (startEdge==null) return; // only compute string append if assertion would fail - if (startEdge == NULL) + if (startEdge == nullptr) { throw util::TopologyException( "unable to find edge to compute depths at", @@ -263,7 +263,7 @@ void BufferSubgraph::computeDepths(DirectedEdge *startEdge) { - set nodesVisited; + set nodesVisited; list nodeQueue; // Used to be a vector Node *startNode=startEdge->getNode(); nodeQueue.push_back(startNode); @@ -276,7 +276,7 @@ //System.out.println(nodes.size() + " queue: " + nodeQueue.size()); Node *n=nodeQueue.front(); // [0]; //nodeQueue.erase(nodeQueue.begin()); - nodeQueue.pop_front(); + nodeQueue.pop_front(); nodesVisited.insert(n); @@ -319,7 +319,7 @@ Envelope * BufferSubgraph::getEnvelope() { - if (env == NULL) { + if (env == nullptr) { env = new Envelope(); std::size_t const size = dirEdgeList.size(); for(std::size_t i=0; i$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -607,7 +628,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -703,7 +727,16 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/BufferBuilder.Plo + -rm -f ./$(DEPDIR)/BufferInputLineSimplifier.Plo + -rm -f ./$(DEPDIR)/BufferOp.Plo + -rm -f ./$(DEPDIR)/BufferParameters.Plo + -rm -f ./$(DEPDIR)/BufferSubgraph.Plo + -rm -f ./$(DEPDIR)/OffsetCurveBuilder.Plo + -rm -f ./$(DEPDIR)/OffsetCurveSetBuilder.Plo + -rm -f ./$(DEPDIR)/OffsetSegmentGenerator.Plo + -rm -f ./$(DEPDIR)/RightmostEdgeFinder.Plo + -rm -f ./$(DEPDIR)/SubgraphDepthLocater.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -749,7 +782,16 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/BufferBuilder.Plo + -rm -f ./$(DEPDIR)/BufferInputLineSimplifier.Plo + -rm -f ./$(DEPDIR)/BufferOp.Plo + -rm -f ./$(DEPDIR)/BufferParameters.Plo + -rm -f ./$(DEPDIR)/BufferSubgraph.Plo + -rm -f ./$(DEPDIR)/OffsetCurveBuilder.Plo + -rm -f ./$(DEPDIR)/OffsetCurveSetBuilder.Plo + -rm -f ./$(DEPDIR)/OffsetSegmentGenerator.Plo + -rm -f ./$(DEPDIR)/RightmostEdgeFinder.Plo + -rm -f ./$(DEPDIR)/SubgraphDepthLocater.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -770,8 +812,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/buffer/OffsetCurveBuilder.cpp geos-3.7.1/src/operation/buffer/OffsetCurveBuilder.cpp --- geos-3.6.2/src/operation/buffer/OffsetCurveBuilder.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/OffsetCurveBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS-Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2011 Sandro Santilli + * Copyright (C) 2009-2011 Sandro Santilli * Copyright (C) 2005 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * @@ -67,7 +67,7 @@ double posDistance = std::abs(distance); - std::auto_ptr segGen = getSegGen(posDistance); + std::unique_ptr segGen = getSegGen(posDistance); if (inputPts->getSize() <= 1) { computePointCurve(inputPts->getAt(0), *segGen); } else { @@ -118,18 +118,18 @@ double distTol = simplifyTolerance(distance); - std::auto_ptr segGen = getSegGen(distance); + std::unique_ptr segGen = getSegGen(distance); if ( leftSide ) { //--------- compute points for left side of line // Simplify the appropriate side of the line before generating - std::auto_ptr simp1_ = + std::unique_ptr simp1_ = BufferInputLineSimplifier::simplify( *inputPts, distTol ); const CoordinateSequence& simp1 = *simp1_; - int n1 = simp1.size() - 1; - if ( ! n1 ) + int n1 = static_cast(simp1.size()) - 1; + if ( ! n1 ) throw util::IllegalArgumentException("Cannot get offset of single-vertex line"); segGen->initSideSegments(simp1[0], simp1[1], Position::LEFT); segGen->addFirstSegment(); @@ -143,12 +143,12 @@ //---------- compute points for right side of line // Simplify the appropriate side of the line before generating - std::auto_ptr simp2_ = + std::unique_ptr simp2_ = BufferInputLineSimplifier::simplify( *inputPts, -distTol ); const CoordinateSequence& simp2 = *simp2_; - int n2 = simp2.size() - 1; - if ( ! n2 ) + int n2 = static_cast(simp2.size()) - 1; + if ( ! n2 ) throw util::IllegalArgumentException("Cannot get offset of single-vertex line"); segGen->initSideSegments(simp2[n2], simp2[n2-1], Position::LEFT); segGen->addFirstSegment(); @@ -181,7 +181,7 @@ return; } - std::auto_ptr segGen = getSegGen(std::abs(distance)); + std::unique_ptr segGen = getSegGen(std::abs(distance)); computeRingBufferCurve(*inputPts, side, *segGen); segGen->getCoordinates(lineList); } @@ -202,12 +202,12 @@ //--------- compute points for left side of line // Simplify the appropriate side of the line before generating - std::auto_ptr simp1_ = + std::unique_ptr simp1_ = BufferInputLineSimplifier::simplify(inputPts, distTol); const CoordinateSequence& simp1 = *simp1_; - int n1 = simp1.size() - 1; + int n1 = static_cast(simp1.size()) - 1; segGen.initSideSegments(simp1[0], simp1[1], Position::LEFT); for (int i = 2; i <= n1; ++i) { segGen.addNextSegment(simp1[i], true); @@ -218,11 +218,11 @@ //---------- compute points for right side of line // Simplify the appropriate side of the line before generating - std::auto_ptr simp2_ = + std::unique_ptr simp2_ = BufferInputLineSimplifier::simplify(inputPts, -distTol); const CoordinateSequence& simp2 = *simp2_; - int n2 = simp2.size() - 1; + int n2 = static_cast(simp2.size()) - 1; segGen.initSideSegments(simp2[n2], simp2[n2-1], Position::LEFT); for (int i = n2-2; i >= 0; --i) { segGen.addNextSegment(simp2[i], true); @@ -244,11 +244,11 @@ // ensure that correct side is simplified if (side == Position::RIGHT) distTol = -distTol; - std::auto_ptr simp_ = + std::unique_ptr simp_ = BufferInputLineSimplifier::simplify(inputPts, distTol); const CoordinateSequence& simp = *simp_; - int n = simp.size()-1; + int n = static_cast(simp.size())-1; segGen.initSideSegments(simp[n-1], simp[0], side); for (int i = 1; i <= n; i++) { bool addStartPoint = i != 1; @@ -272,11 +272,11 @@ //---------- compute points for right side of line // Simplify the appropriate side of the line before generating - std::auto_ptr simp2_ = + std::unique_ptr simp2_ = BufferInputLineSimplifier::simplify(inputPts, -distTol); const CoordinateSequence& simp2 = *simp2_; - int n2 = simp2.size() - 1; + int n2 = static_cast(simp2.size()) - 1; segGen.initSideSegments(simp2[n2], simp2[n2-1], Position::LEFT); segGen.addFirstSegment(); for (int i = n2-2; i >= 0; --i) { @@ -290,11 +290,11 @@ //--------- compute points for left side of line // Simplify the appropriate side of the line before generating - std::auto_ptr simp1_ = + std::unique_ptr simp1_ = BufferInputLineSimplifier::simplify(inputPts, distTol); const CoordinateSequence& simp1 = *simp1_; - int n1 = simp1.size() - 1; + int n1 = static_cast(simp1.size()) - 1; segGen.initSideSegments(simp1[0], simp1[1], Position::LEFT); segGen.addFirstSegment(); for (int i = 2; i <= n1; ++i) { @@ -307,10 +307,10 @@ } /*private*/ -std::auto_ptr +std::unique_ptr OffsetCurveBuilder::getSegGen(double dist) { - std::auto_ptr osg( + std::unique_ptr osg( new OffsetSegmentGenerator(precisionModel, bufParams, dist) ); return osg; diff -Nru geos-3.6.2/src/operation/buffer/OffsetCurveSetBuilder.cpp geos-3.7.1/src/operation/buffer/OffsetCurveSetBuilder.cpp --- geos-3.6.2/src/operation/buffer/OffsetCurveSetBuilder.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/OffsetCurveSetBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -172,7 +172,7 @@ void OffsetCurveSetBuilder::addCollection(const GeometryCollection *gc) { - for (int i=0, n=gc->getNumGeometries(); i(gc->getNumGeometries()); igetGeometryN(i); add(*g); } @@ -203,7 +203,7 @@ #if GEOS_DEBUG std::cerr<<__FUNCTION__<<": "<toString()< coord(CoordinateSequence::removeRepeatedPoints(line->getCoordinatesRO())); + std::unique_ptr coord(CoordinateSequence::removeRepeatedPoints(line->getCoordinatesRO())); #if GEOS_DEBUG std::cerr<<" After coordinate removal: "<toString()< + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published diff -Nru geos-3.6.2/src/operation/buffer/RightmostEdgeFinder.cpp geos-3.7.1/src/operation/buffer/RightmostEdgeFinder.cpp --- geos-3.6.2/src/operation/buffer/RightmostEdgeFinder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/RightmostEdgeFinder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,9 +42,9 @@ : minIndex(-1), // FIXME: don't use -1 as a sentinel, or we won't be // able to use an unsigned int here - minCoord(Coordinate::getNull()), - minDe(NULL), - orientedDe(NULL) + minCoord(Coordinate::getNull()), + minDe(nullptr), + orientedDe(nullptr) { } @@ -162,7 +162,7 @@ // rightmost point expected to be interior vertex of edge assert(minIndex>0); - assert((size_t)minIndexgetSize()); + assert((size_t)minIndexgetSize()); const Coordinate& pPrev=pts->getAt(minIndex-1); const Coordinate& pNext=pts->getAt(minIndex+1); @@ -210,7 +210,7 @@ // of a non-horizontal segment // MD 19 Sep 03 - NO! we can test all vertices, // since the rightmost must have a non-horiz segment adjacent to it - if (minCoord.isNull() || + if (minCoord.isNull() || coord->getAt(i).x > minCoord.x ) { minDe = de; @@ -256,7 +256,7 @@ if ( i < 0 || i+1 >= (int)coord->getSize() ) return -1; // indicates edge is parallel to x-axis - if (coord->getAt(i).y == coord->getAt(i+1).y) return -1; + if (coord->getAt(i).y == coord->getAt(i+1).y) return -1; int pos=Position::LEFT; if (coord->getAt(i).y < coord->getAt(i+1).y) pos=Position::RIGHT; diff -Nru geos-3.6.2/src/operation/buffer/SubgraphDepthLocater.cpp geos-3.7.1/src/operation/buffer/SubgraphDepthLocater.cpp --- geos-3.6.2/src/operation/buffer/SubgraphDepthLocater.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/buffer/SubgraphDepthLocater.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -68,7 +68,7 @@ * @param seg1 a segment to compare * @return */ - static int compareX(const geom::LineSegment *seg0, const geom::LineSegment *seg1) + static int compareX(const geom::LineSegment *seg0, const geom::LineSegment *seg1) { int compare0=seg0->p0.compareTo(seg1->p0); if (compare0!=0) return compare0; @@ -148,7 +148,7 @@ findStabbedSegments(p, stabbedSegments); // if no segments on stabbing line subgraph must be outside all others - if (stabbedSegments.size()==0) return 0; + if (stabbedSegments.empty()) return 0; sort(stabbedSegments.begin(), stabbedSegments.end(), DepthSegmentLessThen()); @@ -234,7 +234,7 @@ // #define SKIP_LS 1 - int n = pts->getSize()-1; + int n = static_cast(pts->getSize())-1; for (int i=0; igetAt(i); @@ -247,7 +247,7 @@ #else const Coordinate *low=&(pts->getAt(i)); const Coordinate *high=&(pts->getAt(i+1)); - const Coordinate *swap=NULL; + const Coordinate *swap=nullptr; #endif @@ -307,7 +307,7 @@ stabbingRayLeftPt.y > high->y) #endif { -#if GEOS_DEBUG +#if GEOS_DEBUG cerr<<" segment above or below stabbing line, skipping "< + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -21,8 +21,8 @@ #include #include #include -#include -#include +#include +#include #include #include #include @@ -89,7 +89,7 @@ DistanceOp::DistanceOp(const Geometry *g0, const Geometry *g1): geom(2), terminateDistance(0.0), - minDistanceLocation(0), + minDistanceLocation(nullptr), minDistance(DoubleMax) { geom[0] = g0; @@ -99,7 +99,7 @@ DistanceOp::DistanceOp(const Geometry& g0, const Geometry& g1): geom(2), terminateDistance(0.0), - minDistanceLocation(0), + minDistanceLocation(nullptr), minDistance(DoubleMax) { geom[0] = &g0; @@ -110,7 +110,7 @@ : geom(2), terminateDistance(tdist), - minDistanceLocation(0), + minDistanceLocation(nullptr), minDistance(DoubleMax) { geom[0] = &g0; @@ -141,7 +141,7 @@ { using geos::util::IllegalArgumentException; - if ( geom[0] == 0 || geom[1] == 0 ) + if ( geom[0] == nullptr || geom[1] == nullptr ) throw IllegalArgumentException("null geometries are not supported"); if ( geom[0]->isEmpty() || geom[1]->isEmpty() ) return 0.0; computeMinDistance(); @@ -163,16 +163,16 @@ // lazily creates minDistanceLocation computeMinDistance(); - assert(0 != minDistanceLocation); + assert(nullptr != minDistanceLocation); std::vector& locs = *minDistanceLocation; // Empty input geometries result in this behaviour - if ( locs[0] == 0 || locs[1] == 0 ) + if ( locs[0] == nullptr || locs[1] == nullptr ) { // either both or none are set.. - assert(locs[0] == 0 && locs[1] == 0); + assert(locs[0] == nullptr && locs[1] == nullptr); - return 0; + return nullptr; } GeometryLocation* loc0 = locs[0]; @@ -199,12 +199,12 @@ assert(minDistanceLocation); // if not set then don't update - if (locGeom[0]==NULL) + if (locGeom[0]==nullptr) { #if GEOS_DEBUG std::cerr << "updateMinDistance called with loc[0] == null and loc[1] == " << locGeom[1] << std::endl; #endif - assert(locGeom[1] == NULL); + assert(locGeom[1] == nullptr); return; } @@ -423,8 +423,8 @@ return; }; - locGeom[0]=NULL; - locGeom[1]=NULL; + locGeom[0]=nullptr; + locGeom[1]=nullptr; computeMinDistanceLinesPoints(lines0, pts1, locGeom); updateMinDistance(locGeom, false); if (minDistance <= terminateDistance) { @@ -434,8 +434,8 @@ return; }; - locGeom[0]=NULL; - locGeom[1]=NULL; + locGeom[0]=nullptr; + locGeom[1]=nullptr; computeMinDistanceLinesPoints(lines1, pts0, locGeom); updateMinDistance(locGeom, true); if (minDistance <= terminateDistance){ @@ -445,8 +445,8 @@ return; }; - locGeom[0]=NULL; - locGeom[1]=NULL; + locGeom[0]=nullptr; + locGeom[1]=nullptr; computeMinDistancePoints(pts0, pts1, locGeom); updateMinDistance(locGeom, false); @@ -569,9 +569,9 @@ delete closestPt; delete locGeom[0]; - locGeom[0] = new GeometryLocation(line0, i, *c1); + locGeom[0] = new GeometryLocation(line0, static_cast(i), *c1); delete locGeom[1]; - locGeom[1] = new GeometryLocation(line1, j, *c2); + locGeom[1] = new GeometryLocation(line1, static_cast(j), *c2); } if (minDistance<=terminateDistance) return; } @@ -607,7 +607,7 @@ seg.closestPoint(*coord, segClosestPoint); delete locGeom[0]; - locGeom[0] = new GeometryLocation(line, i, segClosestPoint); + locGeom[0] = new GeometryLocation(line, static_cast(i), segClosestPoint); delete locGeom[1]; locGeom[1] = new GeometryLocation(pt, 0, *coord); } diff -Nru geos-3.6.2/src/operation/distance/FacetSequence.cpp geos-3.7.1/src/operation/distance/FacetSequence.cpp --- geos-3.6.2/src/operation/distance/FacetSequence.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/distance/FacetSequence.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -19,6 +19,7 @@ #include #include +using namespace geos::geom; using namespace geos::operation::distance; using namespace geos::algorithm; @@ -37,20 +38,20 @@ return end - start == 1; } -double FacetSequence::distance(const FacetSequence & facetSeq) { +double FacetSequence::distance(const FacetSequence & facetSeq) const { bool isPointThis = isPoint(); bool isPointOther = facetSeq.isPoint(); if (isPointThis && isPointOther) { Coordinate pt = pts->getAt(start); - Coordinate seqPt = facetSeq.pts->getAt(start); + Coordinate seqPt = facetSeq.pts->getAt(facetSeq.start); return pt.distance(seqPt); } else if (isPointThis) { Coordinate pt = pts->getAt(start); return computePointLineDistance(pt, facetSeq); } else if (isPointOther) { - Coordinate seqPt = facetSeq.pts->getAt(start); + Coordinate seqPt = facetSeq.pts->getAt(facetSeq.start); return computePointLineDistance(seqPt, *this); } diff -Nru geos-3.6.2/src/operation/distance/FacetSequenceTreeBuilder.cpp geos-3.7.1/src/operation/distance/FacetSequenceTreeBuilder.cpp --- geos-3.6.2/src/operation/distance/FacetSequenceTreeBuilder.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/distance/FacetSequenceTreeBuilder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -20,9 +20,16 @@ #include #include +using namespace geos::geom; +using namespace geos::index::strtree; + +namespace geos { +namespace operation { +namespace distance { + STRtree* FacetSequenceTreeBuilder::build(const Geometry* g) { - std::auto_ptr tree(new STRtree(STR_TREE_NODE_CAPACITY)); - std::auto_ptr > sections(computeFacetSequences(g)); + std::unique_ptr tree(new STRtree(STR_TREE_NODE_CAPACITY)); + std::unique_ptr > sections(computeFacetSequences(g)); for (std::vector::iterator it = sections->begin(); it != sections->end(); ++it) { FacetSequence* section = *it; tree->insert(section->getEnvelope(), section); @@ -33,7 +40,7 @@ } std::vector * FacetSequenceTreeBuilder::computeFacetSequences(const Geometry* g) { - std::auto_ptr > sections(new std::vector()); + std::unique_ptr > sections(new std::vector()); class FacetSequenceAdder; class FacetSequenceAdder : public geom::GeometryComponentFilter { @@ -42,7 +49,7 @@ public : FacetSequenceAdder(std::vector * p_sections) : m_sections(p_sections) {} - void filter_ro(const Geometry* geom) { + void filter_ro(const Geometry* geom) override { if (const LineString* ls = dynamic_cast(geom)) { const CoordinateSequence* seq = ls->getCoordinatesRO(); addFacetSequences(seq, *m_sections); @@ -74,3 +81,8 @@ i += FACET_SEQUENCE_SIZE; } } + +} +} +} + diff -Nru geos-3.6.2/src/operation/distance/GeometryLocation.cpp geos-3.7.1/src/operation/distance/GeometryLocation.cpp --- geos-3.6.2/src/operation/distance/GeometryLocation.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/distance/GeometryLocation.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -26,7 +26,7 @@ namespace distance { // geos.operation.distance /** -* Constructs a GeometryLocation specifying a point on a geometry, as well as the +* Constructs a GeometryLocation specifying a point on a geometry, as well as the * segment that the point is on (or INSIDE_AREA if the point is not on a segment). */ GeometryLocation::GeometryLocation(const Geometry *newComponent, int newSegIndex, const Coordinate &newPt) @@ -38,7 +38,7 @@ /** * Constructs a GeometryLocation specifying a point inside an area geometry. -*/ +*/ GeometryLocation::GeometryLocation(const Geometry *newComponent, const Coordinate &newPt) { component = newComponent; @@ -49,7 +49,7 @@ /** * Returns the geometry associated with this location. */ -const Geometry* GeometryLocation::getGeometryComponent() { +const Geometry* GeometryLocation::getGeometryComponent() { return component; } /** @@ -60,7 +60,7 @@ */ int GeometryLocation::getSegmentIndex() -{ +{ return segIndex; } /** @@ -68,11 +68,11 @@ */ Coordinate& GeometryLocation::getCoordinate() -{ +{ return pt; } -bool GeometryLocation::isInsideArea() { +bool GeometryLocation::isInsideArea() { return segIndex == INSIDE_AREA; } diff -Nru geos-3.6.2/src/operation/distance/IndexedFacetDistance.cpp geos-3.7.1/src/operation/distance/IndexedFacetDistance.cpp --- geos-3.6.2/src/operation/distance/IndexedFacetDistance.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/src/operation/distance/IndexedFacetDistance.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -0,0 +1,63 @@ +/********************************************************************** + * + * GEOS - Geometry Engine Open Source + * http://geos.osgeo.org + * + * Copyright (C) 2016 Daniel Baston + * + * This is free software; you can redistribute and/or modify it under + * the terms of the GNU Lesser General Public Licence as published + * by the Free Software Foundation. + * See the COPYING file for more information. + * + ********************************************************************** + * + * Last port: operation/distance/IndexedFacetDistance.java (f6187ee2 JTS-1.14) + * + **********************************************************************/ + +#include +#include +#include + +using namespace geos::geom; +using namespace geos::index::strtree; + +namespace geos { + namespace operation { + namespace distance { + struct Deleter : public index::ItemVisitor { + void visitItem(void * item) override { + delete static_cast(item); + } + } deleter; + + double IndexedFacetDistance::distance(const Geometry * g1, const Geometry * g2) { + IndexedFacetDistance ifd(g1); + return ifd.getDistance(g2); + } + + double IndexedFacetDistance::getDistance(const Geometry * g) const { + struct : public ItemDistance { + double distance(const ItemBoundable* item1, const ItemBoundable* item2) override { + return static_cast(item1->getItem())->distance(*static_cast(item2->getItem())); + } + } itemDistance; + + std::unique_ptr tree2(FacetSequenceTreeBuilder::build(g)); + + std::pair obj = cachedTree->nearestNeighbour(tree2.get(), dynamic_cast(&itemDistance)); + + double distance = static_cast(obj.first)->distance(*static_cast(obj.second)); + + tree2->iterate(deleter); + + return distance; + } + + IndexedFacetDistance::~IndexedFacetDistance() { + cachedTree->iterate(deleter); + } + } + } +} diff -Nru geos-3.6.2/src/operation/distance/Makefile.am geos-3.7.1/src/operation/distance/Makefile.am --- geos-3.6.2/src/operation/distance/Makefile.am 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/distance/Makefile.am 2018-10-19 22:32:06.000000000 +0000 @@ -11,6 +11,7 @@ ConnectedElementLocationFilter.cpp \ ConnectedElementPointFilter.cpp \ DistanceOp.cpp \ + IndexedFacetDistance.cpp \ FacetSequence.cpp \ FacetSequenceTreeBuilder.cpp \ GeometryLocation.cpp diff -Nru geos-3.6.2/src/operation/distance/Makefile.in geos-3.7.1/src/operation/distance/Makefile.in --- geos-3.6.2/src/operation/distance/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/distance/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -111,7 +114,8 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) libopdistance_la_DEPENDENCIES = am_libopdistance_la_OBJECTS = ConnectedElementLocationFilter.lo \ - ConnectedElementPointFilter.lo DistanceOp.lo FacetSequence.lo \ + ConnectedElementPointFilter.lo DistanceOp.lo \ + IndexedFacetDistance.lo FacetSequence.lo \ FacetSequenceTreeBuilder.lo GeometryLocation.lo libopdistance_la_OBJECTS = $(am_libopdistance_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) @@ -132,7 +136,13 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ConnectedElementLocationFilter.Plo \ + ./$(DEPDIR)/ConnectedElementPointFilter.Plo \ + ./$(DEPDIR)/DistanceOp.Plo ./$(DEPDIR)/FacetSequence.Plo \ + ./$(DEPDIR)/FacetSequenceTreeBuilder.Plo \ + ./$(DEPDIR)/GeometryLocation.Plo \ + ./$(DEPDIR)/IndexedFacetDistance.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -174,7 +184,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -263,6 +273,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -311,6 +322,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -331,6 +344,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -380,7 +394,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -404,6 +417,7 @@ ConnectedElementLocationFilter.cpp \ ConnectedElementPointFilter.cpp \ DistanceOp.cpp \ + IndexedFacetDistance.cpp \ FacetSequence.cpp \ FacetSequenceTreeBuilder.cpp \ GeometryLocation.cpp @@ -430,8 +444,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -463,12 +477,19 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConnectedElementLocationFilter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConnectedElementPointFilter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DistanceOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FacetSequence.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FacetSequenceTreeBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryLocation.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConnectedElementLocationFilter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConnectedElementPointFilter.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DistanceOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FacetSequence.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FacetSequenceTreeBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryLocation.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IndexedFacetDistance.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -596,7 +617,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -692,7 +716,13 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ConnectedElementLocationFilter.Plo + -rm -f ./$(DEPDIR)/ConnectedElementPointFilter.Plo + -rm -f ./$(DEPDIR)/DistanceOp.Plo + -rm -f ./$(DEPDIR)/FacetSequence.Plo + -rm -f ./$(DEPDIR)/FacetSequenceTreeBuilder.Plo + -rm -f ./$(DEPDIR)/GeometryLocation.Plo + -rm -f ./$(DEPDIR)/IndexedFacetDistance.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -738,7 +768,13 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ConnectedElementLocationFilter.Plo + -rm -f ./$(DEPDIR)/ConnectedElementPointFilter.Plo + -rm -f ./$(DEPDIR)/DistanceOp.Plo + -rm -f ./$(DEPDIR)/FacetSequence.Plo + -rm -f ./$(DEPDIR)/FacetSequenceTreeBuilder.Plo + -rm -f ./$(DEPDIR)/GeometryLocation.Plo + -rm -f ./$(DEPDIR)/IndexedFacetDistance.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -759,8 +795,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/GeometryGraphOperation.cpp geos-3.7.1/src/operation/GeometryGraphOperation.cpp --- geos-3.6.2/src/operation/GeometryGraphOperation.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/GeometryGraphOperation.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/intersection/Makefile.in geos-3.7.1/src/operation/intersection/Makefile.in --- geos-3.6.2/src/operation/intersection/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/intersection/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,10 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/Rectangle.Plo \ + ./$(DEPDIR)/RectangleIntersection.Plo \ + ./$(DEPDIR)/RectangleIntersectionBuilder.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +179,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +268,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +317,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +339,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +389,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -426,8 +435,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -459,9 +468,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Rectangle.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersection.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersectionBuilder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Rectangle.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersection.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersectionBuilder.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -589,7 +604,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -685,7 +703,9 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Rectangle.Plo + -rm -f ./$(DEPDIR)/RectangleIntersection.Plo + -rm -f ./$(DEPDIR)/RectangleIntersectionBuilder.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -731,7 +751,9 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Rectangle.Plo + -rm -f ./$(DEPDIR)/RectangleIntersection.Plo + -rm -f ./$(DEPDIR)/RectangleIntersectionBuilder.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -752,8 +774,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/intersection/Rectangle.cpp geos-3.7.1/src/operation/intersection/Rectangle.cpp --- geos-3.6.2/src/operation/intersection/Rectangle.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/operation/intersection/Rectangle.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -44,7 +44,7 @@ Rectangle::toPolygon(const geom::GeometryFactory &f) const { geom::LinearRing* ls = toLinearRing(f); - return f.createPolygon(ls, 0); + return f.createPolygon(ls, nullptr); } geom::LinearRing* diff -Nru geos-3.6.2/src/operation/intersection/RectangleIntersectionBuilder.cpp geos-3.7.1/src/operation/intersection/RectangleIntersectionBuilder.cpp --- geos-3.6.2/src/operation/intersection/RectangleIntersectionBuilder.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/operation/intersection/RectangleIntersectionBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -22,6 +22,7 @@ #include #include #include +#include #include // for fabs() @@ -54,8 +55,8 @@ geom::LineString * line2 = lines.back(); const geom::CoordinateSequence &cs2 = *line2->getCoordinatesRO(); - const int n1 = cs1.size(); - const int n2 = cs2.size(); + const auto n1 = cs1.size(); + const auto n2 = cs2.size(); // Safety check against bad input to prevent segfaults if(n1==0 || n2==0) @@ -140,7 +141,7 @@ points.push_back(thePoint); } -std::auto_ptr +std::unique_ptr RectangleIntersectionBuilder::build() { // Total number of objects @@ -148,7 +149,7 @@ std::size_t n = polygons.size() + lines.size() + points.size(); if(n == 0) - return std::auto_ptr(_gf.createGeometryCollection()); + return std::unique_ptr(_gf.createGeometryCollection()); std::vector *geoms = new std::vector; geoms->reserve(n); @@ -165,7 +166,7 @@ geoms->push_back(*i); points.clear(); - return std::auto_ptr( + return std::unique_ptr( (*geoms)[0]->getFactory()->buildGeometry(geoms) ); } @@ -184,6 +185,13 @@ Rectangle::Position pos = rect.position(x1,y1); Rectangle::Position endpos = rect.position(x2,y2); + if (pos & Rectangle::Position::Outside || + endpos & Rectangle::Position::Outside || + pos & Rectangle::Position::Inside || + endpos & Rectangle::Position::Inside) { + throw geos::util::IllegalArgumentException("Can't compute distance to non-boundary position."); + } + while(true) { // Close up when we have the same edge and the @@ -229,7 +237,7 @@ const std::vector &ring, const geom::LineString * line) { - double nr = ring.size(); + auto nr = ring.size(); const Coordinate &c1 = ring[nr-1]; const CoordinateSequence * linecs = line->getCoordinatesRO(); @@ -241,7 +249,7 @@ double distance(const Rectangle & rect, const std::vector &ring) { - double nr = ring.size(); + auto nr = ring.size(); const Coordinate& c1 = ring[nr-1]; // TODO: ring.back() ? const Coordinate& c2 = ring[0]; // TODO: ring.front() ? return distance(rect, c1.x, c1.y, c2.x, c2.y); @@ -277,7 +285,7 @@ // Find the "smallest" coordinate int best_pos = 0; - int n = ring.size(); + int n = static_cast(ring.size()); for(int pos = 0; pos * ring) { - double nr = ring->size(); + auto nr = ring->size(); Coordinate &c2 = (*ring)[0]; Coordinate &c1 = (*ring)[nr-1]; double x2 = c2.x; @@ -392,11 +400,11 @@ // Reconnect all lines into one or more linearrings // using box boundaries if necessary - std::vector *ring = NULL; + std::vector *ring = nullptr; - while(!lines.empty() || ring != NULL) + while(!lines.empty() || ring != nullptr) { - if(ring == NULL) + if(ring == nullptr) { ring = new std::vector(); LineString *line = lines.front(); @@ -430,12 +438,12 @@ geom::CoordinateSequence *shell_cs = _csf.create(ring); geom::LinearRing *shell = _gf.createLinearRing(shell_cs); exterior.push_back(make_pair(shell, new LinearRingVect())); - ring = NULL; + ring = nullptr; } else { LineString * line = *best_pos; - int nr = ring->size(); + auto nr = ring->size(); const CoordinateSequence& cs = *line->getCoordinatesRO(); close_boundary(rect, ring, (*ring)[nr-1].x, diff -Nru geos-3.6.2/src/operation/intersection/RectangleIntersection.cpp geos-3.7.1/src/operation/intersection/RectangleIntersection.cpp --- geos-3.6.2/src/operation/intersection/RectangleIntersection.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/operation/intersection/RectangleIntersection.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -60,6 +60,11 @@ inline void clip_one_edge(double & x1, double & y1, double x2, double y2, double limit) { + if (x2 == limit) { + y1 = y2; + x1 = x2; + } + if(x1 != x2) { y1 += (y2-y1)*(limit-x1)/(x2-x1); @@ -104,12 +109,12 @@ RectangleIntersectionBuilder & parts, const Rectangle & rect) { - if(g == NULL) + if(g == nullptr) return; - + double x = g->getX(); double y = g->getY(); - + if(rect.position(x,y) == Rectangle::Inside) parts.add(dynamic_cast(g->clone())); } @@ -121,9 +126,9 @@ { using namespace geos::geom; - int n = gi->getNumPoints(); + int n = static_cast(gi->getNumPoints()); - if(gi == NULL || n<1) + if(gi == nullptr || n<1) return false; // For shorthand code @@ -376,7 +381,7 @@ RectangleIntersectionBuilder & toParts, const Rectangle & rect) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; // Clip the exterior first to see what's going on @@ -418,14 +423,14 @@ // - Clipped ones become linestrings // - Intact ones become new polygons without holes - for(int i=0, n=g->getNumInteriorRing(); i(g->getNumInteriorRing()); igetInteriorRingN(i), parts, rect)) { // clones LinearRing *hole = dynamic_cast(g->getInteriorRingN(i)->clone()); // becomes exterior - Polygon *poly = _gf->createPolygon(hole, 0); + Polygon *poly = _gf->createPolygon(hole, nullptr); toParts.add(poly); } else if(!parts.empty()) @@ -445,7 +450,7 @@ RectangleIntersectionBuilder & toParts, const Rectangle & rect) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; // Clip the exterior first to see what's going on @@ -494,7 +499,7 @@ // - Intact ones become holes in new polygons formed by exterior parts - for(int i=0, n=g->getNumInteriorRing(); i(g->getNumInteriorRing()); igetInteriorRingN(i); @@ -502,7 +507,7 @@ { // becomes exterior LinearRing *cloned = dynamic_cast(hole->clone()); - Polygon *poly = _gf->createPolygon(cloned, 0); + Polygon *poly = _gf->createPolygon(cloned, nullptr); parts.add(poly); } else @@ -562,14 +567,14 @@ RectangleIntersectionBuilder & parts, const Rectangle & rect) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; // If everything was in, just clone the original if(clip_linestring_parts(g, parts, rect)) parts.add(dynamic_cast(g->clone())); - + } void @@ -577,9 +582,9 @@ RectangleIntersectionBuilder & parts, const Rectangle & rect) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; - for(int i=0, n=g->getNumGeometries(); i(g->getNumGeometries()); i(g->getGeometryN(i)), parts, rect); @@ -591,10 +596,10 @@ RectangleIntersectionBuilder & parts, const Rectangle & rect) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; - - for(int i=0, n=g->getNumGeometries(); i(g->getNumGeometries()); i(g->getGeometryN(i)), parts, rect); @@ -607,10 +612,10 @@ const Rectangle & rect, bool keep_polygons) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; - for(int i=0, n=g->getNumGeometries(); i(g->getNumGeometries()); i(g->getGeometryN(i)), parts, rect, keep_polygons); @@ -624,10 +629,10 @@ const Rectangle & rect, bool keep_polygons) { - if(g == NULL || g->isEmpty()) + if(g == nullptr || g->isEmpty()) return; - - for(int i=0, n=g->getNumGeometries(); i(g->getNumGeometries()); igetGeometryN(i), parts, rect, keep_polygons); @@ -660,14 +665,14 @@ } /* public static */ -std::auto_ptr +std::unique_ptr RectangleIntersection::clipBoundary(const geom::Geometry & g, const Rectangle & rect) { RectangleIntersection ri(g,rect); return ri.clipBoundary(); } -std::auto_ptr +std::unique_ptr RectangleIntersection::clipBoundary() { RectangleIntersectionBuilder parts(*_gf); @@ -679,14 +684,14 @@ } /* public static */ -std::auto_ptr +std::unique_ptr RectangleIntersection::clip(const geom::Geometry & g, const Rectangle & rect) { RectangleIntersection ri(g,rect); return ri.clip(); } -std::auto_ptr +std::unique_ptr RectangleIntersection::clip() { RectangleIntersectionBuilder parts(*_gf); diff -Nru geos-3.6.2/src/operation/IsSimpleOp.cpp geos-3.7.1/src/operation/IsSimpleOp.cpp --- geos-3.6.2/src/operation/IsSimpleOp.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/IsSimpleOp.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * Copyright (C) 2005 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -81,7 +81,7 @@ IsSimpleOp::IsSimpleOp() : isClosedEndpointsInInterior(true), - geom(0), + geom(nullptr), nonSimpleLocation() {} @@ -171,11 +171,11 @@ if (geom->isEmpty()) return true; GeometryGraph graph(0,geom); LineIntersector li; - std::auto_ptr si (graph.computeSelfNodes(&li,true)); + std::unique_ptr si (graph.computeSelfNodes(&li,true)); // if no self-intersection, must be simple if (!si->hasIntersection()) return true; - + if (si->hasProperIntersection()) { nonSimpleLocation.reset( @@ -183,13 +183,13 @@ ); return false; } - + if (hasNonEndpointIntersection(graph)) return false; if ( isClosedEndpointsInInterior ) { if (hasClosedEndpointIntersection(graph)) return false; } - + return true; } @@ -269,11 +269,11 @@ map::iterator it=endPoints.find(p); EndpointInfo *eiInfo; if (it==endPoints.end()) { - eiInfo=NULL; + eiInfo=nullptr; } else { eiInfo=it->second; } - if (eiInfo==NULL) { + if (eiInfo==nullptr) { eiInfo=new EndpointInfo(*p); endPoints[p]=eiInfo; } diff -Nru geos-3.6.2/src/operation/linemerge/EdgeString.cpp geos-3.7.1/src/operation/linemerge/EdgeString.cpp --- geos-3.6.2/src/operation/linemerge/EdgeString.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/EdgeString.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -43,7 +43,7 @@ EdgeString::EdgeString(const GeometryFactory *newFactory): factory(newFactory), directedEdges(), - coordinates(NULL) + coordinates(nullptr) { } @@ -62,7 +62,7 @@ CoordinateSequence * EdgeString::getCoordinates() { - if (coordinates==NULL) { + if (coordinates==nullptr) { int forwardDirectedEdges = 0; int reverseDirectedEdges = 0; coordinates=factory->getCoordinateSequenceFactory()->create(); diff -Nru geos-3.6.2/src/operation/linemerge/LineMergeDirectedEdge.cpp geos-3.7.1/src/operation/linemerge/LineMergeDirectedEdge.cpp --- geos-3.6.2/src/operation/linemerge/LineMergeDirectedEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/LineMergeDirectedEdge.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -42,14 +42,14 @@ /** * Returns the directed edge that starts at this directed edge's end point, - * or null if there are zero or multiple directed edges starting there. + * or null if there are zero or multiple directed edges starting there. * @return */ LineMergeDirectedEdge* LineMergeDirectedEdge::getNext() { if (getToNode()->getDegree()!=2) { - return NULL; + return nullptr; } if (getToNode()->getOutEdges()->getEdges()[0]==getSym()) { return (LineMergeDirectedEdge*) getToNode()->getOutEdges()->getEdges()[1]; diff -Nru geos-3.6.2/src/operation/linemerge/LineMergeEdge.cpp geos-3.7.1/src/operation/linemerge/LineMergeEdge.cpp --- geos-3.6.2/src/operation/linemerge/LineMergeEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/LineMergeEdge.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/linemerge/LineMergeGraph.cpp geos-3.7.1/src/operation/linemerge/LineMergeGraph.cpp --- geos-3.6.2/src/operation/linemerge/LineMergeGraph.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/LineMergeGraph.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -54,7 +54,7 @@ cerr<<"Adding LineString "<toString()< coordinates ( + std::unique_ptr coordinates ( CoordinateSequence::removeRepeatedPoints(lineString->getCoordinatesRO()) ); @@ -105,7 +105,7 @@ LineMergeGraph::getNode(const Coordinate &coordinate) { planargraph::Node *node=findNode(coordinate); - if (node==NULL) { + if (node==nullptr) { node=new planargraph::Node(coordinate); newNodes.push_back(node); add(node); diff -Nru geos-3.6.2/src/operation/linemerge/LineMerger.cpp geos-3.7.1/src/operation/linemerge/LineMerger.cpp --- geos-3.6.2/src/operation/linemerge/LineMerger.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/LineMerger.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -53,8 +53,8 @@ } LineMerger::LineMerger(): - mergedLineStrings(NULL), - factory(NULL) + mergedLineStrings(nullptr), + factory(nullptr) { } @@ -82,7 +82,7 @@ * Adds a Geometry to be processed. May be called multiple times. * Any dimension of Geometry may be added; the constituent linework will be * extracted. - */ + */ void LineMerger::add(const Geometry *geometry) { @@ -93,14 +93,14 @@ void LineMerger::add(const LineString *lineString) { - if (factory==NULL) factory=lineString->getFactory(); + if (factory==nullptr) factory=lineString->getFactory(); graph.addEdge(lineString); } void LineMerger::merge() { - if (mergedLineStrings!=NULL) return; + if (mergedLineStrings!=nullptr) return; // reset marks (this allows incremental processing) GraphComponent::setMarkedMap(graph.nodeIterator(), graph.nodeEnd(), @@ -108,20 +108,20 @@ GraphComponent::setMarked(graph.edgeIterator(), graph.edgeEnd(), false); - for (size_t i=0, n=edgeStrings.size(); i(numEdgeStrings); for (size_t i=0; itoLineString(); - } + } } void @@ -134,7 +134,7 @@ LineMerger::buildEdgeStringsForIsolatedLoops() { buildEdgeStringsForUnprocessedNodes(); -} +} void LineMerger::buildEdgeStringsForUnprocessedNodes() @@ -151,7 +151,7 @@ #if GEOS_DEBUG cerr<<"Node "<isMarked()) { + if (!node->isMarked()) { assert(node->getDegree()==2); buildEdgeStringsStartingAt(node); node->setMarked(true); @@ -177,7 +177,7 @@ #if GEOS_DEBUG cerr<<"Node "<getDegree()!=2) { + if (node->getDegree()!=2) { buildEdgeStringsStartingAt(node); node->setMarked(true); #if GEOS_DEBUG @@ -206,14 +206,14 @@ EdgeString* LineMerger::buildEdgeStringStartingWith(LineMergeDirectedEdge *start) -{ +{ EdgeString *edgeString = new EdgeString(factory); LineMergeDirectedEdge *current=start; do { edgeString->add(current); current->getEdge()->setMarked(true); - current=current->getNext(); - } while (current!=NULL && current!=start); + current=current->getNext(); + } while (current!=nullptr && current!=start); return edgeString; } @@ -227,7 +227,7 @@ // Explicitly give ownership to the caller. vector* ret = mergedLineStrings; - mergedLineStrings = NULL; + mergedLineStrings = nullptr; return ret; } diff -Nru geos-3.6.2/src/operation/linemerge/LineSequencer.cpp geos-3.7.1/src/operation/linemerge/LineSequencer.cpp --- geos-3.6.2/src/operation/linemerge/LineSequencer.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/LineSequencer.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -54,7 +54,7 @@ { const MultiLineString *mls; - if ( 0 == (mls=dynamic_cast(geom)) ) + if ( nullptr == (mls=dynamic_cast(geom)) ) { return true; } @@ -63,7 +63,7 @@ Coordinate::ConstSet prevSubgraphNodes; Coordinate::ConstVect currNodes; - const Coordinate* lastNode = NULL; + const Coordinate* lastNode = nullptr; for (std::size_t i=0, n=mls->getNumGeometries(); i(line.getNumPoints() - 1))); /** * If this linestring is connected to a previous subgraph, @@ -89,7 +89,7 @@ return false; } - if (lastNode != NULL) + if (lastNode != nullptr) { if (! startNode->equals2D(*lastNode)) { @@ -104,7 +104,7 @@ lastNode = endNode; } return true; -} +} /* private */ bool @@ -155,7 +155,7 @@ delete subgraph; delAll(*sequences); delete sequences; - return NULL; + return nullptr; } delete subgraph; } @@ -166,7 +166,7 @@ void LineSequencer::addLine(const LineString *lineString) { - if (factory == NULL) { + if (factory == nullptr) { factory = lineString->getFactory(); } graph.addEdge(lineString); @@ -181,9 +181,9 @@ isRun = true; Sequences* sequences = findSequences(); - if (sequences == NULL) return; + if (sequences == nullptr) return; - sequencedGeometry = auto_ptr(buildSequencedGeometry(*sequences)); + sequencedGeometry = unique_ptr(buildSequencedGeometry(*sequences)); isSequenceableVar = true; delAll(*sequences); @@ -194,14 +194,14 @@ // Result is not linear assert(dynamic_cast(sequencedGeometry.get()) - || dynamic_cast(sequencedGeometry.get())); + || dynamic_cast(sequencedGeometry.get())); } /*private*/ Geometry* LineSequencer::buildSequencedGeometry(const Sequences& sequences) { - auto_ptr lines(new Geometry::NonConstVect); + unique_ptr lines(new Geometry::NonConstVect); for (Sequences::const_iterator i1=sequences.begin(), i1End=sequences.end(); @@ -224,7 +224,7 @@ lineToAdd = reverse(line); } else { Geometry* lineClone = line->clone(); - lineToAdd = dynamic_cast(lineClone); + lineToAdd = dynamic_cast(lineClone); assert(lineToAdd); } @@ -232,8 +232,8 @@ } } - if ( lines->size() == 0 ) { - return NULL; + if ( lines->empty() ) { + return nullptr; } else { Geometry::NonConstVect *l=lines.get(); lines.release(); @@ -254,15 +254,15 @@ const planargraph::Node* LineSequencer::findLowestDegreeNode(const planargraph::Subgraph& graph) { - size_t minDegree = numeric_limits::max(); - const planargraph::Node* minDegreeNode = NULL; + size_t minDegree = numeric_limits::max(); + const planargraph::Node* minDegreeNode = nullptr; for (planargraph::NodeMap::container::const_iterator it = graph.nodeBegin(), itEnd = graph.nodeEnd(); it != itEnd; ++it ) { const planargraph::Node* node = (*it).second; - if (minDegreeNode == NULL || node->getDegree() < minDegree) + if (minDegreeNode == nullptr || node->getDegree() < minDegree) { minDegree = node->getDegree(); minDegreeNode = node; @@ -278,8 +278,8 @@ using planargraph::DirectedEdge; using planargraph::DirectedEdgeStar; - const DirectedEdge* wellOrientedDE = NULL; - const DirectedEdge* unvisitedDE = NULL; + const DirectedEdge* wellOrientedDE = nullptr; + const DirectedEdge* unvisitedDE = nullptr; const DirectedEdgeStar* des=node->getOutEdges(); for (DirectedEdge::NonConstVect::const_iterator i=des->begin(), e=des->end(); @@ -292,7 +292,7 @@ if (de->getEdgeDirection()) wellOrientedDE = de; } } - if (wellOrientedDE != NULL) + if (wellOrientedDE != nullptr) return wellOrientedDE; return unvisitedDE; } @@ -311,7 +311,7 @@ // trace an unvisited path *backwards* from this de Node* endNode = de->getToNode(); - Node* fromNode = NULL; + Node* fromNode = nullptr; while (true) { deList.insert(lit, de->getSym()); de->getEdge()->setVisited(true); @@ -319,7 +319,7 @@ const DirectedEdge* unvisitedOutDE = findUnvisitedBestOrientedDE(fromNode); // this must terminate, since we are continually marking edges as visited - if (unvisitedOutDE == NULL) break; + if (unvisitedOutDE == nullptr) break; de = unvisitedOutDE->getSym(); } if ( expectedClosed ) { @@ -332,7 +332,7 @@ } /*private*/ -planargraph::DirectedEdge::NonConstList* +planargraph::DirectedEdge::NonConstList* LineSequencer::findSequence(planargraph::Subgraph& graph) { using planargraph::DirectedEdge; @@ -356,7 +356,7 @@ while (lit != seq->begin()) { const DirectedEdge* prev = *(--lit); const DirectedEdge* unvisitedOutDE = findUnvisitedBestOrientedDE(prev->getFromNode()); - if (unvisitedOutDE != NULL) + if (unvisitedOutDE != nullptr) addReverseSubpath(unvisitedOutDE->getSym(), *seq, lit, true); } @@ -371,8 +371,8 @@ } /* private */ -planargraph::DirectedEdge::NonConstList* -LineSequencer::orient(planargraph::DirectedEdge::NonConstList* seq) +planargraph::DirectedEdge::NonConstList* +LineSequencer::orient(planargraph::DirectedEdge::NonConstList* seq) { using namespace geos::planargraph; @@ -397,7 +397,7 @@ hasObviousStartNode = true; flipSeq = true; } - if (startEdge->getFromNode()->getDegree() == 1 && + if (startEdge->getFromNode()->getDegree() == 1 && startEdge->getEdgeDirection() == true) { hasObviousStartNode = true; @@ -431,7 +431,7 @@ } /* private */ -planargraph::DirectedEdge::NonConstList* +planargraph::DirectedEdge::NonConstList* LineSequencer::reverse(planargraph::DirectedEdge::NonConstList& seq) { using namespace geos::planargraph; @@ -445,7 +445,7 @@ return newSeq; } - + } // namespace geos.operation.linemerge } // namespace geos.operation diff -Nru geos-3.6.2/src/operation/linemerge/Makefile.in geos-3.7.1/src/operation/linemerge/Makefile.in --- geos-3.6.2/src/operation/linemerge/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/linemerge/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -132,7 +135,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/EdgeString.Plo \ + ./$(DEPDIR)/LineMergeDirectedEdge.Plo \ + ./$(DEPDIR)/LineMergeEdge.Plo ./$(DEPDIR)/LineMergeGraph.Plo \ + ./$(DEPDIR)/LineMerger.Plo ./$(DEPDIR)/LineSequencer.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -174,7 +181,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -263,6 +270,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -311,6 +319,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -331,6 +341,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -380,7 +391,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -430,8 +440,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -463,12 +473,18 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMergeDirectedEdge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMergeEdge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMergeGraph.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMerger.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineSequencer.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMergeDirectedEdge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMergeEdge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMergeGraph.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineMerger.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineSequencer.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -596,7 +612,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -692,7 +711,12 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeString.Plo + -rm -f ./$(DEPDIR)/LineMergeDirectedEdge.Plo + -rm -f ./$(DEPDIR)/LineMergeEdge.Plo + -rm -f ./$(DEPDIR)/LineMergeGraph.Plo + -rm -f ./$(DEPDIR)/LineMerger.Plo + -rm -f ./$(DEPDIR)/LineSequencer.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -738,7 +762,12 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeString.Plo + -rm -f ./$(DEPDIR)/LineMergeDirectedEdge.Plo + -rm -f ./$(DEPDIR)/LineMergeEdge.Plo + -rm -f ./$(DEPDIR)/LineMergeGraph.Plo + -rm -f ./$(DEPDIR)/LineMerger.Plo + -rm -f ./$(DEPDIR)/LineSequencer.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -759,8 +788,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/Makefile.in geos-3.7.1/src/operation/Makefile.in --- geos-3.6.2/src/operation/Makefile.in 2017-07-25 09:27:29.000000000 +0000 +++ geos-3.7.1/src/operation/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -135,7 +138,9 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/GeometryGraphOperation.Plo \ + ./$(DEPDIR)/IsSimpleOp.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -177,7 +182,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -266,6 +271,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -314,6 +320,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -334,6 +342,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -383,7 +392,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -453,8 +461,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -486,8 +494,14 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryGraphOperation.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IsSimpleOp.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryGraphOperation.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IsSimpleOp.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -615,7 +629,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -711,7 +728,8 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/GeometryGraphOperation.Plo + -rm -f ./$(DEPDIR)/IsSimpleOp.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -757,7 +775,8 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/GeometryGraphOperation.Plo + -rm -f ./$(DEPDIR)/IsSimpleOp.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -778,8 +797,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/overlay/EdgeSetNoder.cpp geos-3.7.1/src/operation/overlay/EdgeSetNoder.cpp --- geos-3.6.2/src/operation/overlay/EdgeSetNoder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/EdgeSetNoder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** diff -Nru geos-3.6.2/src/operation/overlay/ElevationMatrixCell.cpp geos-3.7.1/src/operation/overlay/ElevationMatrixCell.cpp --- geos-3.6.2/src/operation/overlay/ElevationMatrixCell.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/ElevationMatrixCell.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -73,8 +73,9 @@ double ElevationMatrixCell::getAvg() const { - if ( ! zvals.size() ) return DoubleNotANumber; - return (ztot/zvals.size()); + return zvals.size() ? + ztot / static_cast(zvals.size()) : + DoubleNotANumber; } string @@ -82,7 +83,7 @@ { ostringstream ret; //ret<<"["<isInteriorAreaEdge()) return; // if the edge linework is already included, don't include it again - if (de->getEdge()->isInResult()) return; + if (de->getEdge()->isInResult()) return; // sanity check for labelling of result edgerings assert( ! ( de->isInResult() || de->getSym()->isInResult() ) @@ -177,7 +177,7 @@ // include the linework if it's in the result of the operation const Label& label = de->getLabel(); - if ( OverlayOp::isResultOfOp(label, opCode) + if ( OverlayOp::isResultOfOp(label, opCode) && opCode == OverlayOp::opINTERSECTION ) { edges->push_back(de->getEdge()); @@ -210,14 +210,13 @@ void LineBuilder::propagateZ(CoordinateSequence *cs) { - size_t i; #if GEOS_DEBUG cerr<<"LineBuilder::propagateZ() called"<v3d; // vertex 3d + vector v3d; // vertex 3d size_t cssize = cs->getSize(); - for (i=0; igetAt(i).z) ) v3d.push_back(i); } @@ -225,8 +224,8 @@ #if GEOS_DEBUG cerr<<" found "<getAt(v3d[0]).z; - for (int j=0; jgetAt(j); buf.z = z; @@ -250,18 +249,18 @@ // interpolate inbetweens size_t prev=v3d[0]; - for (i=1; i 1) { const Coordinate &cto = cs->getAt(curr); const Coordinate &cfrom = cs->getAt(prev); - double gap = cto.z-cfrom.z; - double zstep = gap/dist; + double gap = cto.z - cfrom.z; + double zstep = gap / static_cast(dist); double z = cfrom.z; - for (int j=prev+1; jgetAt(j); z+=zstep; @@ -319,4 +318,3 @@ } // namespace geos.operation.overlay } // namespace geos.operation } // namespace geos - diff -Nru geos-3.6.2/src/operation/overlay/Makefile.in geos-3.7.1/src/operation/overlay/Makefile.in --- geos-3.6.2/src/operation/overlay/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -97,6 +97,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -142,7 +145,21 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/EdgeSetNoder.Plo \ + ./$(DEPDIR)/ElevationMatrix.Plo \ + ./$(DEPDIR)/ElevationMatrixCell.Plo \ + ./$(DEPDIR)/LineBuilder.Plo ./$(DEPDIR)/MaximalEdgeRing.Plo \ + ./$(DEPDIR)/MinimalEdgeRing.Plo \ + ./$(DEPDIR)/OverlayNodeFactory.Plo ./$(DEPDIR)/OverlayOp.Plo \ + ./$(DEPDIR)/PointBuilder.Plo ./$(DEPDIR)/PolygonBuilder.Plo \ + snap/$(DEPDIR)/GeometrySnapper.Plo \ + snap/$(DEPDIR)/LineStringSnapper.Plo \ + snap/$(DEPDIR)/SnapIfNeededOverlayOp.Plo \ + snap/$(DEPDIR)/SnapOverlayOp.Plo \ + validate/$(DEPDIR)/FuzzyPointLocator.Plo \ + validate/$(DEPDIR)/OffsetPointGenerator.Plo \ + validate/$(DEPDIR)/OverlayResultValidator.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -184,7 +201,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -273,6 +290,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -321,6 +339,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -341,6 +361,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -390,7 +411,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -448,8 +468,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -511,23 +531,29 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeSetNoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ElevationMatrix.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ElevationMatrixCell.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MaximalEdgeRing.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MinimalEdgeRing.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OverlayNodeFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OverlayOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PolygonBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/GeometrySnapper.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/LineStringSnapper.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/SnapIfNeededOverlayOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/SnapOverlayOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@validate/$(DEPDIR)/FuzzyPointLocator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@validate/$(DEPDIR)/OffsetPointGenerator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@validate/$(DEPDIR)/OverlayResultValidator.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeSetNoder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ElevationMatrix.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ElevationMatrixCell.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MaximalEdgeRing.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MinimalEdgeRing.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OverlayNodeFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OverlayOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PolygonBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/GeometrySnapper.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/LineStringSnapper.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/SnapIfNeededOverlayOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@snap/$(DEPDIR)/SnapOverlayOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@validate/$(DEPDIR)/FuzzyPointLocator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@validate/$(DEPDIR)/OffsetPointGenerator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@validate/$(DEPDIR)/OverlayResultValidator.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @@ -660,7 +686,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -760,7 +789,23 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) snap/$(DEPDIR) validate/$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeSetNoder.Plo + -rm -f ./$(DEPDIR)/ElevationMatrix.Plo + -rm -f ./$(DEPDIR)/ElevationMatrixCell.Plo + -rm -f ./$(DEPDIR)/LineBuilder.Plo + -rm -f ./$(DEPDIR)/MaximalEdgeRing.Plo + -rm -f ./$(DEPDIR)/MinimalEdgeRing.Plo + -rm -f ./$(DEPDIR)/OverlayNodeFactory.Plo + -rm -f ./$(DEPDIR)/OverlayOp.Plo + -rm -f ./$(DEPDIR)/PointBuilder.Plo + -rm -f ./$(DEPDIR)/PolygonBuilder.Plo + -rm -f snap/$(DEPDIR)/GeometrySnapper.Plo + -rm -f snap/$(DEPDIR)/LineStringSnapper.Plo + -rm -f snap/$(DEPDIR)/SnapIfNeededOverlayOp.Plo + -rm -f snap/$(DEPDIR)/SnapOverlayOp.Plo + -rm -f validate/$(DEPDIR)/FuzzyPointLocator.Plo + -rm -f validate/$(DEPDIR)/OffsetPointGenerator.Plo + -rm -f validate/$(DEPDIR)/OverlayResultValidator.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -806,7 +851,23 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) snap/$(DEPDIR) validate/$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeSetNoder.Plo + -rm -f ./$(DEPDIR)/ElevationMatrix.Plo + -rm -f ./$(DEPDIR)/ElevationMatrixCell.Plo + -rm -f ./$(DEPDIR)/LineBuilder.Plo + -rm -f ./$(DEPDIR)/MaximalEdgeRing.Plo + -rm -f ./$(DEPDIR)/MinimalEdgeRing.Plo + -rm -f ./$(DEPDIR)/OverlayNodeFactory.Plo + -rm -f ./$(DEPDIR)/OverlayOp.Plo + -rm -f ./$(DEPDIR)/PointBuilder.Plo + -rm -f ./$(DEPDIR)/PolygonBuilder.Plo + -rm -f snap/$(DEPDIR)/GeometrySnapper.Plo + -rm -f snap/$(DEPDIR)/LineStringSnapper.Plo + -rm -f snap/$(DEPDIR)/SnapIfNeededOverlayOp.Plo + -rm -f snap/$(DEPDIR)/SnapOverlayOp.Plo + -rm -f validate/$(DEPDIR)/FuzzyPointLocator.Plo + -rm -f validate/$(DEPDIR)/OffsetPointGenerator.Plo + -rm -f validate/$(DEPDIR)/OverlayResultValidator.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -827,8 +888,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/overlay/MaximalEdgeRing.cpp geos-3.7.1/src/operation/overlay/MaximalEdgeRing.cpp --- geos-3.6.2/src/operation/overlay/MaximalEdgeRing.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/MaximalEdgeRing.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -115,7 +115,7 @@ { DirectedEdge *de=startDe; do { - if(de->getMinEdgeRing()==NULL) { + if(de->getMinEdgeRing()==nullptr) { MinimalEdgeRing *minEr=new MinimalEdgeRing(de, geometryFactory); minEdgeRings.push_back(minEr); } @@ -129,7 +129,7 @@ { DirectedEdge *de=startDe; do { - if(de->getMinEdgeRing()==NULL) { + if(de->getMinEdgeRing()==nullptr) { MinimalEdgeRing *minEr=new MinimalEdgeRing(de, geometryFactory); minEdgeRings.push_back(minEr); } diff -Nru geos-3.6.2/src/operation/overlay/MinimalEdgeRing.cpp geos-3.7.1/src/operation/overlay/MinimalEdgeRing.cpp --- geos-3.6.2/src/operation/overlay/MinimalEdgeRing.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/MinimalEdgeRing.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/overlay/OverlayNodeFactory.cpp geos-3.7.1/src/operation/overlay/OverlayNodeFactory.cpp --- geos-3.6.2/src/operation/overlay/OverlayNodeFactory.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/OverlayNodeFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -34,7 +34,7 @@ } const NodeFactory & -OverlayNodeFactory::instance() +OverlayNodeFactory::instance() { static OverlayNodeFactory onf; return onf; diff -Nru geos-3.6.2/src/operation/overlay/OverlayOp.cpp geos-3.7.1/src/operation/overlay/OverlayOp.cpp --- geos-3.6.2/src/operation/overlay/OverlayOp.cpp 2017-02-14 16:34:31.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/OverlayOp.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -50,7 +50,7 @@ #include #include #include -#include // for auto_ptr +#include // for unique_ptr #ifndef GEOS_DEBUG #define GEOS_DEBUG 0 @@ -117,7 +117,7 @@ case opDIFFERENCE: return loc0==Location::INTERIOR && loc1!=Location::INTERIOR; case opSYMDIFFERENCE: - return (loc0==Location::INTERIOR && loc1!=Location::INTERIOR) + return (loc0==Location::INTERIOR && loc1!=Location::INTERIOR) || (loc0!=Location::INTERIOR && loc1==Location::INTERIOR); } return false; @@ -137,11 +137,11 @@ */ geomFact(g0->getFactory()), - resultGeom(NULL), + resultGeom(nullptr), graph(OverlayNodeFactory::instance()), - resultPolyList(NULL), - resultLineList(NULL), - resultPointList(NULL) + resultPolyList(nullptr), + resultLineList(nullptr), + resultPointList(nullptr) { @@ -200,7 +200,7 @@ } #if GEOS_DEBUG cerr <<" "<< e->print() << endl; -#endif +#endif insertUniqueEdge(e); } /* @@ -229,7 +229,7 @@ // should we keep this alive some more ? delete e; - } + } } } @@ -518,7 +518,7 @@ for(size_t i=1, size=pts->size(); igetAt(i-1); - const Coordinate &p1=pts->getAt(i); + const Coordinate &p1=pts->getAt(i); li.computeIntersection(p, p0, p1); if (li.hasIntersection()) { @@ -664,7 +664,7 @@ geomList->insert(geomList->end(), nResultPolyList->begin(), nResultPolyList->end()); - + // build the most specific geometry possible Geometry *g=geomFact->buildGeometry(geomList); return g; @@ -677,7 +677,7 @@ { // Compute the target envelope - const Envelope *env = 0; + const Envelope *env = nullptr; const Envelope *env0 = getArgGeometry(0)->getEnvelopeInternal(); const Envelope *env1 = getArgGeometry(1)->getEnvelopeInternal(); Envelope opEnv; @@ -758,13 +758,13 @@ */ try { -#ifdef GEOS_DEBUG_VALIDATION +#ifdef GEOS_DEBUG_VALIDATION cout << "EdgeNodingValidator about to evaluate " << edgeList.getEdges().size() << " edges" << endl; #endif // Will throw TopologyException if noding is // found to be invalid EdgeNodingValidator::checkValid(edgeList.getEdges()); -#ifdef GEOS_DEBUG_VALIDATION +#ifdef GEOS_DEBUG_VALIDATION cout << "EdgeNodingValidator accepted the noding" << endl; #endif } @@ -776,7 +776,7 @@ // In the error scenario, the edgeList is not properly // deleted. Cannot add to the destructor of EdgeList - // (as it should) because + // (as it should) because // "graph.addEdges(edgeList.getEdges());" below // takes over edgeList ownership in the success case. edgeList.clearList(); @@ -815,7 +815,7 @@ GEOS_CHECK_FOR_INTERRUPTS(); PolygonBuilder polyBuilder(geomFact); - + // might throw a TopologyException * polyBuilder.add(&graph); @@ -844,7 +844,7 @@ #if USE_ELEVATION_MATRIX elevationMatrix->elevate(resultGeom); #endif // USE_ELEVATION_MATRIX - + } /*protected*/ @@ -911,9 +911,8 @@ void OverlayOp::computeLabelsFromDepths() { - for(size_t j=0, s=edgeList.getEdges().size(); jgetLabel(); Depth &depth = e->getDepth(); @@ -962,7 +961,7 @@ : geoms(nGeoms) {} - void filter_ro(const Coordinate* coord) + void filter_ro(const Coordinate* coord) override { for (size_t i=0, n=geoms.size(); igetGeometry()->getDimension() == Dimension::A && arg[1]->getGeometry()->getDimension() == Dimension::A ) { diff -Nru geos-3.6.2/src/operation/overlay/PointBuilder.cpp geos-3.7.1/src/operation/overlay/PointBuilder.cpp --- geos-3.6.2/src/operation/overlay/PointBuilder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/PointBuilder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -80,12 +80,12 @@ { /** - * For nodes on edges, only INTERSECTION can result + * For nodes on edges, only INTERSECTION can result * in edge nodes being included even * if none of their incident edges are included */ const Label& label=n->getLabel(); - if (OverlayOp::isResultOfOp(label, opCode)) + if (OverlayOp::isResultOfOp(label, opCode)) filterCoveredNodeToPoint(n); } } diff -Nru geos-3.6.2/src/operation/overlay/PolygonBuilder.cpp geos-3.7.1/src/operation/overlay/PolygonBuilder.cpp --- geos-3.6.2/src/operation/overlay/PolygonBuilder.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/PolygonBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -74,7 +74,7 @@ size_t eeSize=ee.size(); -#if GEOS_DEBUG +#if GEOS_DEBUG cerr << __FUNCTION__ << ": PlanarGraph has " << eeSize << " EdgeEnds" << endl; #endif @@ -153,7 +153,7 @@ if (de->isInResult() && de->getLabel().isArea()) { // if this edge has not yet been processed - if (de->getEdgeRing() == NULL) + if (de->getEdgeRing() == nullptr) { MaximalEdgeRing *er; try @@ -199,7 +199,7 @@ // at this point we can go ahead and attempt to place // holes, if this EdgeRing is a polygon EdgeRing *shell=findShell(&minEdgeRings); - if(shell != NULL) + if(shell != nullptr) { placePolygonHoles(shell, &minEdgeRings); newShellList.push_back(shell); @@ -224,7 +224,7 @@ PolygonBuilder::findShell(vector *minEdgeRings) { int shellCount=0; - EdgeRing *shell=NULL; + EdgeRing *shell=nullptr; #if GEOS_DEBUG cerr<<"PolygonBuilder::findShell got "<size()<<" minEdgeRings"<getShell()==NULL) { + if (hole->getShell()==nullptr) { EdgeRing *shell=findEdgeRingContaining(hole, newShellList); - if ( shell == NULL ) + if ( shell == nullptr ) { #if GEOS_DEBUG Geometry* geom; @@ -332,15 +332,15 @@ LinearRing *testRing=testEr->getLinearRing(); const Envelope *testEnv=testRing->getEnvelopeInternal(); const Coordinate& testPt=testRing->getCoordinateN(0); - EdgeRing *minShell=NULL; - const Envelope *minEnv=NULL; + EdgeRing *minShell=nullptr; + const Envelope *minEnv=nullptr; for(size_t i=0, n=newShellList.size(); igetLinearRing(); const Envelope *tryEnv=tryRing->getEnvelopeInternal(); - if (minShell!=NULL) { + if (minShell!=nullptr) { lr=minShell->getLinearRing(); minEnv=lr->getEnvelopeInternal(); } @@ -352,7 +352,7 @@ // check if this new containing ring is smaller than // the current minimum ring if (isContained) { - if (minShell==NULL + if (minShell==nullptr || minEnv->contains(tryEnv)) { minShell=tryShell; } diff -Nru geos-3.6.2/src/operation/overlay/snap/GeometrySnapper.cpp geos-3.7.1/src/operation/overlay/snap/GeometrySnapper.cpp --- geos-3.6.2/src/operation/overlay/snap/GeometrySnapper.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/snap/GeometrySnapper.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2010 Sandro Santilli + * Copyright (C) 2009-2010 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -52,18 +52,18 @@ const Coordinate::ConstVect& snapPts; - CoordinateSequence::AutoPtr snapLine( + CoordinateSequence::Ptr snapLine( const CoordinateSequence* srcPts) { - using std::auto_ptr; + using std::unique_ptr; assert(srcPts); assert(srcPts->toVector()); LineStringSnapper snapper(*(srcPts->toVector()), snapTol); - auto_ptr newPts = snapper.snapTo(snapPts); + unique_ptr newPts = snapper.snapTo(snapPts); const CoordinateSequenceFactory* cfact = factory->getCoordinateSequenceFactory(); - return auto_ptr(cfact->create(newPts.release())); + return unique_ptr(cfact->create(newPts.release())); } public: @@ -76,9 +76,9 @@ { } - CoordinateSequence::AutoPtr transformCoordinates( + CoordinateSequence::Ptr transformCoordinates( const CoordinateSequence* coords, - const Geometry* parent) + const Geometry* parent) override { ::geos::ignore_unused_variable_warning(parent); return snapLine(coords); @@ -88,10 +88,10 @@ }; /*private*/ -std::auto_ptr +std::unique_ptr GeometrySnapper::extractTargetCoordinates(const Geometry& g) { - std::auto_ptr snapPts(new Coordinate::ConstVect()); + std::unique_ptr snapPts(new Coordinate::ConstVect()); util::UniqueCoordinateArrayFilter filter(*snapPts); g.apply_ro(&filter); // integrity check @@ -100,36 +100,36 @@ } /*public*/ -std::auto_ptr +std::unique_ptr GeometrySnapper::snapTo(const geom::Geometry& g, double snapTolerance) { - using std::auto_ptr; + using std::unique_ptr; using geom::util::GeometryTransformer; // Get snap points - auto_ptr snapPts=extractTargetCoordinates(g); + unique_ptr snapPts=extractTargetCoordinates(g); // Apply a SnapTransformer to source geometry // (we need a pointer for dynamic polymorphism) - auto_ptr snapTrans(new SnapTransformer(snapTolerance, *snapPts)); + unique_ptr snapTrans(new SnapTransformer(snapTolerance, *snapPts)); return snapTrans->transform(&srcGeom); } /*public*/ -std::auto_ptr +std::unique_ptr GeometrySnapper::snapToSelf(double snapTolerance, bool cleanResult) { - using std::auto_ptr; + using std::unique_ptr; using geom::util::GeometryTransformer; // Get snap points - auto_ptr snapPts=extractTargetCoordinates(srcGeom); + unique_ptr snapPts=extractTargetCoordinates(srcGeom); // Apply a SnapTransformer to source geometry // (we need a pointer for dynamic polymorphism) - auto_ptr snapTrans(new SnapTransformer(snapTolerance, *snapPts)); + unique_ptr snapTrans(new SnapTransformer(snapTolerance, *snapPts)); GeomPtr result = snapTrans->transform(&srcGeom); diff -Nru geos-3.6.2/src/operation/overlay/snap/LineStringSnapper.cpp geos-3.7.1/src/operation/overlay/snap/LineStringSnapper.cpp --- geos-3.6.2/src/operation/overlay/snap/LineStringSnapper.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/snap/LineStringSnapper.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009-2010 Sandro Santilli + * Copyright (C) 2009-2010 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -50,7 +51,7 @@ namespace snap { // geos.operation.overlay.snap /*public*/ -std::auto_ptr +std::unique_ptr LineStringSnapper::snapTo(const geom::Coordinate::ConstVect& snapPts) { geom::CoordinateList coordList(srcPts); @@ -125,6 +126,7 @@ it != end; ++it) { + GEOS_CHECK_FOR_INTERRUPTS(); assert(*it); const Coordinate& snapPt = *(*it); @@ -228,6 +230,8 @@ // nothing to do if there are no source coords.. if ( srcCoords.empty() ) return; + GEOS_CHECK_FOR_INTERRUPTS(); + #if GEOS_DEBUG cerr << "Snapping segments of: " << srcCoords << endl; #endif diff -Nru geos-3.6.2/src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp geos-3.7.1/src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp --- geos-3.6.2/src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/snap/SnapIfNeededOverlayOp.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 2011 Sandro Santilli + * Copyright (C) 2009 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -19,12 +19,12 @@ #include #include #include -#include // for use in auto_ptr +#include // for use in unique_ptr #include #include #include // for numeric_limits -#include // for auto_ptr +#include // for unique_ptr #ifndef GEOS_DEBUG #define GEOS_DEBUG 0 @@ -39,12 +39,12 @@ namespace snap { // geos.operation.overlay.snap /* public */ -auto_ptr +unique_ptr SnapIfNeededOverlayOp::getResultGeometry(OverlayOp::OpCode opCode) { using geos::util::TopologyException; - auto_ptr result; + unique_ptr result; TopologyException origEx; diff -Nru geos-3.6.2/src/operation/overlay/snap/SnapOverlayOp.cpp geos-3.7.1/src/operation/overlay/snap/SnapOverlayOp.cpp --- geos-3.6.2/src/operation/overlay/snap/SnapOverlayOp.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/snap/SnapOverlayOp.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -19,11 +19,11 @@ #include #include #include -#include +#include #include #include // for numeric_limits -#include // for auto_ptr +#include // for unique_ptr #ifndef GEOS_DEBUG #define GEOS_DEBUG 0 @@ -48,7 +48,7 @@ } /* public */ -auto_ptr +unique_ptr SnapOverlayOp::getResultGeometry(OverlayOp::OpCode opCode) { geom::GeomPtrPair prepGeom; diff -Nru geos-3.6.2/src/operation/overlay/validate/FuzzyPointLocator.cpp geos-3.7.1/src/operation/overlay/validate/FuzzyPointLocator.cpp --- geos-3.6.2/src/operation/overlay/validate/FuzzyPointLocator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/validate/FuzzyPointLocator.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -27,7 +27,7 @@ #include #include #include -#include // for auto_ptr +#include // for unique_ptr #ifndef GEOS_DEBUG #define GEOS_DEBUG 0 @@ -57,7 +57,7 @@ } /*private*/ -std::auto_ptr +std::unique_ptr FuzzyPointLocator::extractLineWork(const geom::Geometry& geom) { ::geos::ignore_unused_variable_warning(geom); @@ -68,7 +68,7 @@ for (size_t i=0, n=g.getNumGeometries(); igetDimension() == 2) { @@ -76,7 +76,7 @@ lineGeoms->push_back(lineGeom); } } - return std::auto_ptr(g.getFactory()->buildGeometry(lineGeoms)); + return std::unique_ptr(g.getFactory()->buildGeometry(lineGeoms)); } catch (...) { // avoid leaks for (size_t i=0, n=lineGeoms->size(); i +std::unique_ptr FuzzyPointLocator::getLineWork(const geom::Geometry& geom) { ::geos::ignore_unused_variable_warning(geom); @@ -110,7 +110,7 @@ } lineGeoms->push_back(lineGeom); } - return std::auto_ptr(g.getFactory()->buildGeometry(lineGeoms)); + return std::unique_ptr(g.getFactory()->buildGeometry(lineGeoms)); } catch (...) { // avoid leaks for (size_t i=0, n=lineGeoms->size(); i point(g.getFactory()->createPoint(pt)); + unique_ptr point(g.getFactory()->createPoint(pt)); double dist = linework->distance(point.get()); diff -Nru geos-3.6.2/src/operation/overlay/validate/OffsetPointGenerator.cpp geos-3.7.1/src/operation/overlay/validate/OffsetPointGenerator.cpp --- geos-3.6.2/src/operation/overlay/validate/OffsetPointGenerator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/validate/OffsetPointGenerator.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -18,16 +18,16 @@ #include #include -#include -#include -#include +#include +#include +#include #include -#include +#include #include #include #include -#include // for auto_ptr +#include // for unique_ptr #include #include // std::for_each @@ -54,10 +54,10 @@ } /*public*/ -std::auto_ptr< std::vector > +std::unique_ptr< std::vector > OffsetPointGenerator::getPoints() { - assert (offsetPts.get() == NULL); + assert (offsetPts.get() == nullptr); offsetPts.reset(new vector()); vector lines; @@ -65,7 +65,8 @@ for_each(lines.begin(), lines.end(), bind1st(mem_fun(&OffsetPointGenerator::extractPoints), this)); - return offsetPts; + // NOTE: Apparently, this is 'source' method giving up the object resource. + return std::move(offsetPts); } /*private*/ diff -Nru geos-3.6.2/src/operation/overlay/validate/OverlayResultValidator.cpp geos-3.7.1/src/operation/overlay/validate/OverlayResultValidator.cpp --- geos-3.6.2/src/operation/overlay/validate/OverlayResultValidator.cpp 2016-07-21 18:45:46.000000000 +0000 +++ geos-3.7.1/src/operation/overlay/validate/OverlayResultValidator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -28,7 +28,7 @@ #include #include #include -#include // for auto_ptr +#include // for unique_ptr #include // for std::min etc. #ifndef GEOS_DEBUG @@ -55,32 +55,22 @@ namespace { // anonymous namespace -bool -isArea(const Geometry& g) -{ - GeometryTypeId type = g.getGeometryTypeId(); - if ( type == GEOS_POLYGON ) return true; - if ( type == GEOS_MULTIPOLYGON ) return true; #if GEOS_DEBUG - cerr << "OverlayResultValidator: one of the geoms being checked is not a POLYGON or MULTIPOLYGON, blindly returning a positive answer (is valid)" << endl; -#endif - return false; -} - -auto_ptr +unique_ptr toMultiPoint(vector& coords) { const GeometryFactory& gf = *(GeometryFactory::getDefaultInstance()); - const CoordinateSequenceFactory& csf = + const CoordinateSequenceFactory& csf = *(gf.getCoordinateSequenceFactory()); - auto_ptr< vector > nc ( new vector(coords) ); - auto_ptr cs(csf.create(nc.release())); + unique_ptr< vector > nc ( new vector(coords) ); + unique_ptr cs(csf.create(nc.release())); - auto_ptr mp ( gf.createMultiPoint(*cs) ); + unique_ptr mp ( gf.createMultiPoint(*cs) ); return mp; } +#endif } // anonymous namespace @@ -118,13 +108,6 @@ bool OverlayResultValidator::isValid(OverlayOp::OpCode overlayOp) { - // The check only works for areal geoms -#if 0 // now that FuzzyPointLocator extracts polygonal geoms, - // there should be no problem here - if ( ! isArea(g0) ) return true; - if ( ! isArea(g1) ) return true; - if ( ! isArea(gres) ) return true; -#endif addTestPts(g0); addTestPts(g1); @@ -153,7 +136,7 @@ OverlayResultValidator::addTestPts(const Geometry& g) { OffsetPointGenerator ptGen(g, 5 * boundaryDistanceTolerance); - auto_ptr< vector > pts = ptGen.getPoints(); + unique_ptr< vector > pts = ptGen.getPoints(); testCoords.insert(testCoords.end(), pts->begin(), pts->end()); } @@ -163,7 +146,7 @@ { // TODO: optimize this by not copying coordinates // and pre-allocating memory - auto_ptr cs ( g.getCoordinates() ); + unique_ptr cs ( g.getCoordinates() ); const vector* coords = cs->toVector(); testCoords.insert(testCoords.end(), coords->begin(), coords->end()); } diff -Nru geos-3.6.2/src/operation/polygonize/EdgeRing.cpp geos-3.7.1/src/operation/polygonize/EdgeRing.cpp --- geos-3.6.2/src/operation/polygonize/EdgeRing.cpp 2016-09-27 09:08:14.000000000 +0000 +++ geos-3.7.1/src/operation/polygonize/EdgeRing.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -51,18 +51,18 @@ vector *shellList) { const LinearRing *testRing=testEr->getRingInternal(); - if ( ! testRing ) return NULL; + if ( ! testRing ) return nullptr; const Envelope *testEnv=testRing->getEnvelopeInternal(); Coordinate testPt=testRing->getCoordinateN(0); - EdgeRing *minShell=NULL; - const Envelope *minEnv=NULL; + EdgeRing *minShell=nullptr; + const Envelope *minEnv=nullptr; typedef std::vector ERList; for(ERList::size_type i=0, e=shellList->size(); igetRingInternal(); const Envelope *tryEnv=tryRing->getEnvelopeInternal(); - if (minShell!=NULL) minEnv=minShell->getRingInternal()->getEnvelopeInternal(); + if (minShell!=nullptr) minEnv=minShell->getRingInternal()->getEnvelopeInternal(); bool isContained=false; // the hole envelope cannot equal the shell envelope @@ -86,7 +86,7 @@ // check if this new containing ring is smaller // than the current minimum ring if (isContained) { - if (minShell==NULL || minEnv->contains(tryEnv)) { + if (minShell==nullptr || minEnv->contains(tryEnv)) { minShell=tryShell; } } @@ -128,9 +128,9 @@ EdgeRing::EdgeRing(const GeometryFactory *newFactory) : factory(newFactory), - ring(0), - ringPts(0), - holes(0) + ring(nullptr), + ringPts(nullptr), + holes(nullptr) { #ifdef DEBUG_ALLOC cerr<<"["<(); holes->push_back(hole); } @@ -179,8 +179,8 @@ EdgeRing::getPolygon() { Polygon *poly=factory->createPolygon(ring, holes); - ring=NULL; - holes=NULL; + ring=nullptr; + holes=nullptr; return poly; } @@ -196,7 +196,7 @@ CoordinateSequence* EdgeRing::getCoordinates() { - if (ringPts==NULL) + if (ringPts==nullptr) { ringPts=factory->getCoordinateSequenceFactory()->create(); for (DeList::size_type i=0, e=deList.size(); i$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -594,7 +610,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -690,7 +709,11 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeRing.Plo + -rm -f ./$(DEPDIR)/PolygonizeDirectedEdge.Plo + -rm -f ./$(DEPDIR)/PolygonizeEdge.Plo + -rm -f ./$(DEPDIR)/PolygonizeGraph.Plo + -rm -f ./$(DEPDIR)/Polygonizer.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -736,7 +759,11 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeRing.Plo + -rm -f ./$(DEPDIR)/PolygonizeDirectedEdge.Plo + -rm -f ./$(DEPDIR)/PolygonizeEdge.Plo + -rm -f ./$(DEPDIR)/PolygonizeGraph.Plo + -rm -f ./$(DEPDIR)/Polygonizer.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -757,8 +784,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/polygonize/PolygonizeDirectedEdge.cpp geos-3.7.1/src/operation/polygonize/PolygonizeDirectedEdge.cpp --- geos-3.6.2/src/operation/polygonize/PolygonizeDirectedEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/polygonize/PolygonizeDirectedEdge.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -45,8 +45,8 @@ DirectedEdge(newFrom, newTo, newDirectionPt, nEdgeDirection) { - edgeRing=NULL; - next=NULL; + edgeRing=nullptr; + next=nullptr; label=-1; } @@ -55,14 +55,14 @@ */ long PolygonizeDirectedEdge::getLabel() const -{ +{ return label; } /* * Attaches an identifier to this directed edge. */ -void PolygonizeDirectedEdge::setLabel(long newLabel) { +void PolygonizeDirectedEdge::setLabel(long newLabel) { label=newLabel; } @@ -93,8 +93,8 @@ */ bool PolygonizeDirectedEdge::isInRing() const -{ - return edgeRing!=NULL; +{ + return edgeRing!=nullptr; } /* diff -Nru geos-3.6.2/src/operation/polygonize/PolygonizeEdge.cpp geos-3.7.1/src/operation/polygonize/PolygonizeEdge.cpp --- geos-3.6.2/src/operation/polygonize/PolygonizeEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/polygonize/PolygonizeEdge.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/polygonize/PolygonizeGraph.cpp geos-3.7.1/src/operation/polygonize/PolygonizeGraph.cpp --- geos-3.6.2/src/operation/polygonize/PolygonizeGraph.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/polygonize/PolygonizeGraph.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -78,7 +78,7 @@ PolygonizeDirectedEdge *de=(PolygonizeDirectedEdge*)edges[i]; de->setMarked(true); PolygonizeDirectedEdge *sym=(PolygonizeDirectedEdge*) de->getSym(); - if (sym!=NULL) + if (sym!=nullptr) sym->setMarked(true); } } @@ -150,7 +150,7 @@ PolygonizeGraph::getNode(const Coordinate& pt) { Node *node=findNode(pt); - if (node==NULL) { + if (node==nullptr) { node=new Node(pt); newNodes.push_back(node); // ensure node is only added once to graph @@ -195,7 +195,7 @@ computeNextCCWEdges(node, label); } - intNodes.clear(); + intNodes.clear(); } } @@ -211,7 +211,7 @@ intNodes.push_back(node); } de=de->getNext(); - assert(de!=NULL); // found NULL DE in ring + assert(de!=nullptr); // found NULL DE in ring assert(de==startDE || !de->isInRing()); // found DE already in ring } while (de!=startDE); } @@ -268,7 +268,7 @@ findDirEdgesInRing(de, edges); label(edges, currLabel); - edges.clear(); + edges.clear(); ++currLabel; } @@ -340,23 +340,23 @@ PolygonizeGraph::computeNextCWEdges(Node *node) { DirectedEdgeStar *deStar=node->getOutEdges(); - PolygonizeDirectedEdge *startDE=NULL; - PolygonizeDirectedEdge *prevDE=NULL; + PolygonizeDirectedEdge *startDE=nullptr; + PolygonizeDirectedEdge *prevDE=nullptr; // the edges are stored in CCW order around the star std::vector &pde=deStar->getEdges(); for(unsigned int i=0; iisMarked()) continue; - if (startDE==NULL) + if (startDE==nullptr) startDE=outDE; - if (prevDE!=NULL) { + if (prevDE!=nullptr) { PolygonizeDirectedEdge *sym=(PolygonizeDirectedEdge*) prevDE->getSym(); sym->setNext(outDE); } prevDE=outDE; } - if (prevDE!=NULL) { + if (prevDE!=nullptr) { PolygonizeDirectedEdge *sym=(PolygonizeDirectedEdge*) prevDE->getSym(); sym->setNext(startDE); } @@ -372,8 +372,8 @@ PolygonizeGraph::computeNextCCWEdges(Node *node, long label) { DirectedEdgeStar *deStar=node->getOutEdges(); - PolygonizeDirectedEdge *firstOutDE=NULL; - PolygonizeDirectedEdge *prevInDE=NULL; + PolygonizeDirectedEdge *firstOutDE=nullptr; + PolygonizeDirectedEdge *prevInDE=nullptr; // the edges are stored in CCW order around the star std::vector &edges=deStar->getEdges(); @@ -386,25 +386,25 @@ { PolygonizeDirectedEdge *de=(PolygonizeDirectedEdge*)edges[i]; PolygonizeDirectedEdge *sym=(PolygonizeDirectedEdge*) de->getSym(); - PolygonizeDirectedEdge *outDE=NULL; + PolygonizeDirectedEdge *outDE=nullptr; if (de->getLabel()==label) outDE=de; - PolygonizeDirectedEdge *inDE=NULL; + PolygonizeDirectedEdge *inDE=nullptr; if (sym->getLabel()==label) inDE= sym; - if (outDE==NULL && inDE==NULL) continue; // this edge is not in edgering - if (inDE != NULL) { + if (outDE==nullptr && inDE==nullptr) continue; // this edge is not in edgering + if (inDE != nullptr) { prevInDE=inDE; } - if (outDE != NULL) { - if (prevInDE != NULL) { + if (outDE != nullptr) { + if (prevInDE != nullptr) { prevInDE->setNext(outDE); - prevInDE=NULL; + prevInDE=nullptr; } - if (firstOutDE==NULL) + if (firstOutDE==nullptr) firstOutDE=outDE; } } - if (prevInDE != NULL) { - assert(firstOutDE != NULL); + if (prevInDE != nullptr) { + assert(firstOutDE != nullptr); prevInDE->setNext(firstOutDE); } } @@ -418,7 +418,7 @@ do { edges.push_back(de); de=de->getNext(); - assert(de != NULL); // found NULL DE in ring + assert(de != nullptr); // found NULL DE in ring assert(de==startDE || !de->isInRing()); // found DE already in ring } while (de != startDE); } @@ -434,7 +434,7 @@ er->add(de); de->setRing(er); de=de->getNext(); - assert(de != NULL); // found NULL DE in ring + assert(de != nullptr); // found NULL DE in ring assert(de==startDE || ! de->isInRing()); // found DE already in ring } while (de != startDE); return er; @@ -450,7 +450,7 @@ std::set uniqueDangles; while (!nodeStack.empty()) { - Node *node=nodeStack.back(); + Node *node=nodeStack.back(); nodeStack.pop_back(); deleteAllEdges(node); std::vector &nodeOutEdges=node->getOutEdges()->getEdges(); @@ -460,7 +460,7 @@ // delete this edge and its sym de->setMarked(true); PolygonizeDirectedEdge *sym=(PolygonizeDirectedEdge*) de->getSym(); - if (sym != NULL) + if (sym != nullptr) sym->setMarked(true); // save the line as a dangle PolygonizeEdge *e=(PolygonizeEdge*) de->getEdge(); diff -Nru geos-3.6.2/src/operation/polygonize/Polygonizer.cpp geos-3.7.1/src/operation/polygonize/Polygonizer.cpp --- geos-3.6.2/src/operation/polygonize/Polygonizer.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/polygonize/Polygonizer.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2010 Sandro Santilli + * Copyright (C) 2010 Sandro Santilli * Copyright (C) 2005-2006 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -61,14 +61,14 @@ * as the input Geometry */ Polygonizer::Polygonizer(): - lineStringAdder(this), - graph(NULL), + lineStringAdder(this), + graph(nullptr), dangles(), cutEdges(), invalidRingLines(), holeList(), shellList(), - polyList(NULL) + polyList(nullptr) { } @@ -76,13 +76,11 @@ { delete graph; - for (unsigned int i=0, n=invalidRingLines.size(); isize(); i *geomList) { - for(unsigned int i=0, n=geomList->size(); i *geomList) { - for(unsigned int i=0, n=geomList->size(); igetFactory()); graph->addEdge(line); } @@ -174,7 +164,7 @@ { polygonize(); vector *ret = polyList; - polyList = NULL; + polyList = nullptr; return ret; } @@ -207,12 +197,12 @@ Polygonizer::polygonize() { // check if already computed - if (polyList!=NULL) return; + if (polyList!=nullptr) return; polyList=new vector(); // if no geometries were supplied it's possible graph could be null - if (graph==NULL) return; + if (graph==nullptr) return; graph->deleteDangles(dangles); @@ -239,9 +229,8 @@ assignHolesToShells(holeList, shellList); - for (unsigned int i=0, n=shellList.size(); ipush_back(er->getPolygon()); } } @@ -252,11 +241,8 @@ vector& validEdgeRingList, vector& invalidRingList) { - typedef vector EdgeRingList; - - for (EdgeRingList::size_type i=0, n=edgeRingList.size(); iisValid()) { validEdgeRingList.push_back(er); @@ -275,15 +261,14 @@ void Polygonizer::findShellsAndHoles(const vector& edgeRingList) { - holeList.clear(); + holeList.clear(); shellList.clear(); - for (unsigned int i=0, n=edgeRingList.size(); iisHole()) holeList.push_back(er); else shellList.push_back(er); + GEOS_CHECK_FOR_INTERRUPTS(); } } @@ -292,9 +277,7 @@ void Polygonizer::assignHolesToShells(const vector& holeList, vector& shellList) { - for (unsigned int i=0, n=holeList.size(); iaddHole(holeER->getRingOwnership()); } diff -Nru geos-3.6.2/src/operation/predicate/Makefile.in geos-3.7.1/src/operation/predicate/Makefile.in --- geos-3.6.2/src/operation/predicate/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/predicate/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -99,6 +99,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -137,7 +140,10 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/RectangleContains.Plo \ + ./$(DEPDIR)/RectangleIntersects.Plo \ + ./$(DEPDIR)/SegmentIntersectionTester.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -226,6 +232,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -274,6 +281,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -294,6 +303,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -343,7 +353,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -385,8 +394,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -418,9 +427,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleContains.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersects.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentIntersectionTester.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleContains.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersects.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentIntersectionTester.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -501,7 +516,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -571,7 +589,9 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/RectangleContains.Plo + -rm -f ./$(DEPDIR)/RectangleIntersects.Plo + -rm -f ./$(DEPDIR)/SegmentIntersectionTester.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -617,7 +637,9 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/RectangleContains.Plo + -rm -f ./$(DEPDIR)/RectangleIntersects.Plo + -rm -f ./$(DEPDIR)/SegmentIntersectionTester.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -638,16 +660,16 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstLTLIBRARIES \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/src/operation/predicate/RectangleContains.cpp geos-3.7.1/src/operation/predicate/RectangleContains.cpp --- geos-3.6.2/src/operation/predicate/RectangleContains.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/predicate/RectangleContains.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -55,10 +55,10 @@ if (const LineString *l=dynamic_cast(&geom)) return isLineStringContainedInBoundary(*l); - for (unsigned i=0, n=geom.getNumGeometries(); i(geom.getNumGeometries()); i(seq.getSize()-1); i + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -51,8 +51,8 @@ bool intersectsVar; // Declare type as noncopyable - EnvelopeIntersectsVisitor(const EnvelopeIntersectsVisitor& other); - EnvelopeIntersectsVisitor& operator=(const EnvelopeIntersectsVisitor& rhs); + EnvelopeIntersectsVisitor(const EnvelopeIntersectsVisitor& other) = delete; + EnvelopeIntersectsVisitor& operator=(const EnvelopeIntersectsVisitor& rhs) = delete; protected: @@ -63,7 +63,7 @@ * @return true if an intersection must occur * false if no conclusion can be made */ - void visit(const geom::Geometry &element) + void visit(const geom::Geometry &element) override { const geom::Envelope &elementEnv = *(element.getEnvelopeInternal()); @@ -101,7 +101,7 @@ } } - bool isDone() { return intersectsVar==true; } + bool isDone() override { return intersectsVar==true; } public: @@ -137,14 +137,14 @@ protected: - void visit(const geom::Geometry &geom) + void visit(const geom::Geometry &geom) override { using geos::algorithm::locate::SimplePointInAreaLocator; const geom::Polygon *poly; // if test geometry is not polygonal this check is not needed - if ( 0 == (poly=dynamic_cast(&geom)) ) { + if ( nullptr == (poly=dynamic_cast(&geom)) ) { return; } @@ -174,7 +174,7 @@ } } - bool isDone() { return containsPointVar; } + bool isDone() override { return containsPointVar; } public: @@ -225,7 +225,7 @@ protected: - void visit(const geom::Geometry &geom) + void visit(const geom::Geometry &geom) override { const geom::Envelope &elementEnv = *(geom.getEnvelopeInternal()); @@ -235,7 +235,7 @@ computeSegmentIntersection(geom); } - bool isDone() { return intersectsVar; } + bool isDone() override { return intersectsVar; } public: diff -Nru geos-3.6.2/src/operation/predicate/SegmentIntersectionTester.cpp geos-3.7.1/src/operation/predicate/SegmentIntersectionTester.cpp --- geos-3.6.2/src/operation/predicate/SegmentIntersectionTester.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/predicate/SegmentIntersectionTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,12 +3,12 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -63,8 +63,8 @@ for (size_type j = 1; j < seq1size && !hasIntersectionVar; ++j) { seq1.getAt(j-1, pt10); - seq1.getAt(j, pt11); - + seq1.getAt(j, pt11); + li.computeIntersection(pt00, pt01, pt10, pt11); if (li.hasIntersection()) hasIntersectionVar = true; } @@ -92,7 +92,7 @@ for (size_type i = 1; iintersects(Envelope(pt10, pt11))) continue; @@ -101,7 +101,7 @@ { seq0.getAt(j - 1, pt00); seq0.getAt(j, pt01); - + li.computeIntersection(pt00, pt01, pt10, pt11); if (li.hasIntersection()) hasIntersectionVar = true; } diff -Nru geos-3.6.2/src/operation/relate/EdgeEndBuilder.cpp geos-3.7.1/src/operation/relate/EdgeEndBuilder.cpp --- geos-3.6.2/src/operation/relate/EdgeEndBuilder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/EdgeEndBuilder.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -61,24 +61,24 @@ // no intersections, so there is nothing to do if (it==eiList.end()) return; - EdgeIntersection *eiPrev=NULL; - EdgeIntersection *eiCurr=NULL; + EdgeIntersection *eiPrev=nullptr; + EdgeIntersection *eiCurr=nullptr; EdgeIntersection *eiNext=*it; it++; do { eiPrev=eiCurr; eiCurr=eiNext; - eiNext=NULL; + eiNext=nullptr; if (it!=eiList.end()) { eiNext=*it; it++; } - if (eiCurr!=NULL) { + if (eiCurr!=nullptr) { createEdgeEndForPrev(edge,l,eiCurr,eiPrev); createEdgeEndForNext(edge,l,eiCurr,eiNext); } - } while (eiCurr!=NULL); + } while (eiCurr!=nullptr); } /** @@ -86,7 +86,7 @@ * The previous intersection is provided * in case it is the endpoint for the stub edge. * Otherwise, the previous point from the parent edge will be the endpoint. - * + * * eiCurr will always be an EdgeIntersection, but eiPrev may be null. */ void @@ -101,8 +101,8 @@ } Coordinate pPrev(edge->getCoordinate(iPrev)); // if prev intersection is past the previous vertex, use it instead - if (eiPrev!=NULL && eiPrev->segmentIndex>=iPrev) - pPrev=eiPrev->coord; + if (eiPrev!=nullptr && eiPrev->segmentIndex>=iPrev) + pPrev=eiPrev->coord; Label label( edge->getLabel() ); // since edgeStub is oriented opposite to it's parent edge, have to flip sides for edge label label.flip(); @@ -116,7 +116,7 @@ * The next intersection is provided * in case it is the endpoint for the stub edge. * Otherwise, the next point from the parent edge will be the endpoint. - * + * * eiCurr will always be an EdgeIntersection, but eiNext may be null. */ void @@ -125,11 +125,11 @@ { int iNext=eiCurr->segmentIndex + 1; // if there is no next edge there is nothing to do - if (iNext>=edge->getNumPoints() && eiNext==NULL) return; + if (iNext>=edge->getNumPoints() && eiNext==nullptr) return; Coordinate pNext(edge->getCoordinate(iNext)); // if the next intersection is in the same segment as the current, use it as the endpoint - if (eiNext!=NULL && eiNext->segmentIndex==eiCurr->segmentIndex) - pNext=eiNext->coord; + if (eiNext!=nullptr && eiNext->segmentIndex==eiCurr->segmentIndex) + pNext=eiNext->coord; EdgeEnd *e = new EdgeEnd(edge, eiCurr->coord, pNext, edge->getLabel()); //Debug.println(e); l->push_back(e); diff -Nru geos-3.6.2/src/operation/relate/EdgeEndBundle.cpp geos-3.7.1/src/operation/relate/EdgeEndBundle.cpp --- geos-3.6.2/src/operation/relate/EdgeEndBundle.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/EdgeEndBundle.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -63,7 +63,7 @@ // Assert: direction is the same edgeEnds->push_back(e); } - + /** * This computes the overall edge label for the set of @@ -161,7 +161,7 @@ Edge::updateIM(label, im); } -string EdgeEndBundle::print() { +string EdgeEndBundle::print() const { string out="EdgeEndBundle--> Label: "+label.toString()+"\n"; for(vector::iterator it=edgeEnds->begin();itend();it++) { EdgeEnd *e=*it; diff -Nru geos-3.6.2/src/operation/relate/EdgeEndBundleStar.cpp geos-3.7.1/src/operation/relate/EdgeEndBundleStar.cpp --- geos-3.6.2/src/operation/relate/EdgeEndBundleStar.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/EdgeEndBundleStar.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/relate/Makefile.in geos-3.7.1/src/operation/relate/Makefile.in --- geos-3.6.2/src/operation/relate/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/relate/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -132,7 +135,13 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/EdgeEndBuilder.Plo \ + ./$(DEPDIR)/EdgeEndBundle.Plo \ + ./$(DEPDIR)/EdgeEndBundleStar.Plo \ + ./$(DEPDIR)/RelateComputer.Plo ./$(DEPDIR)/RelateNode.Plo \ + ./$(DEPDIR)/RelateNodeFactory.Plo \ + ./$(DEPDIR)/RelateNodeGraph.Plo ./$(DEPDIR)/RelateOp.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -174,7 +183,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -263,6 +272,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -311,6 +321,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -331,6 +343,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -380,7 +393,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -432,8 +444,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -465,14 +477,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndBundle.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndBundleStar.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateComputer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateNode.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateNodeFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateNodeGraph.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateOp.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndBundle.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EdgeEndBundleStar.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateComputer.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateNode.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateNodeFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateNodeGraph.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RelateOp.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -600,7 +618,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -696,7 +717,14 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeEndBuilder.Plo + -rm -f ./$(DEPDIR)/EdgeEndBundle.Plo + -rm -f ./$(DEPDIR)/EdgeEndBundleStar.Plo + -rm -f ./$(DEPDIR)/RelateComputer.Plo + -rm -f ./$(DEPDIR)/RelateNode.Plo + -rm -f ./$(DEPDIR)/RelateNodeFactory.Plo + -rm -f ./$(DEPDIR)/RelateNodeGraph.Plo + -rm -f ./$(DEPDIR)/RelateOp.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -742,7 +770,14 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/EdgeEndBuilder.Plo + -rm -f ./$(DEPDIR)/EdgeEndBundle.Plo + -rm -f ./$(DEPDIR)/EdgeEndBundleStar.Plo + -rm -f ./$(DEPDIR)/RelateComputer.Plo + -rm -f ./$(DEPDIR)/RelateNode.Plo + -rm -f ./$(DEPDIR)/RelateNodeFactory.Plo + -rm -f ./$(DEPDIR)/RelateNodeGraph.Plo + -rm -f ./$(DEPDIR)/RelateOp.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -763,8 +798,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/relate/RelateComputer.cpp geos-3.7.1/src/operation/relate/RelateComputer.cpp --- geos-3.6.2/src/operation/relate/RelateComputer.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/relate/RelateComputer.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,13 +3,13 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2005 Refractions Research Inc. * Copyright (C) 2001-2002 Vivid Solutions Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -88,7 +88,7 @@ << std::endl; #endif - std::auto_ptr si1 ( + std::unique_ptr si1 ( (*arg)[0]->computeSelfNodes(&li,false) ); @@ -100,7 +100,7 @@ << std::endl; #endif - std::auto_ptr si2 ( + std::unique_ptr si2 ( (*arg)[1]->computeSelfNodes(&li,false) ); @@ -113,7 +113,7 @@ #endif // compute intersections between edges of the two input geometries - std::auto_ptr< SegmentIntersector> intersector ( + std::unique_ptr< SegmentIntersector> intersector ( (*arg)[0]->computeEdgeIntersections((*arg)[1], &li,false) ); @@ -189,11 +189,11 @@ */ // build EdgeEnds for all intersections EdgeEndBuilder eeBuilder; - std::auto_ptr< std::vector > ee0 ( + std::unique_ptr< std::vector > ee0 ( eeBuilder.computeEdgeEnds((*arg)[0]->getEdges()) ); insertEdgeEnds(ee0.get()); - std::auto_ptr< std::vector > ee1 ( + std::unique_ptr< std::vector > ee1 ( eeBuilder.computeEdgeEnds((*arg)[1]->getEdges()) ); @@ -374,7 +374,7 @@ EdgeIntersectionList &eiL=e->getEdgeIntersectionList(); EdgeIntersectionList::iterator eiIt=eiL.begin(); EdgeIntersectionList::iterator eiEnd=eiL.end(); - + for( ; eiIt!=eiEnd; ++eiIt) { EdgeIntersection *ei=*eiIt; diff -Nru geos-3.6.2/src/operation/relate/RelateNode.cpp geos-3.7.1/src/operation/relate/RelateNode.cpp --- geos-3.6.2/src/operation/relate/RelateNode.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/RelateNode.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/relate/RelateNodeFactory.cpp geos-3.7.1/src/operation/relate/RelateNodeFactory.cpp --- geos-3.6.2/src/operation/relate/RelateNodeFactory.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/RelateNodeFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -35,7 +35,7 @@ } const NodeFactory & -RelateNodeFactory::instance() +RelateNodeFactory::instance() { static const RelateNodeFactory rnf; return rnf; diff -Nru geos-3.6.2/src/operation/relate/RelateNodeGraph.cpp geos-3.7.1/src/operation/relate/RelateNodeGraph.cpp --- geos-3.6.2/src/operation/relate/RelateNodeGraph.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/RelateNodeGraph.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -85,7 +85,7 @@ * This allows nodes created by either self-intersections or * mutual intersections to be labelled. * Endpoint nodes will already be labelled from when they were inserted. - * + * * Precondition: edge intersections have been computed. */ void diff -Nru geos-3.6.2/src/operation/relate/RelateOp.cpp geos-3.7.1/src/operation/relate/RelateOp.cpp --- geos-3.6.2/src/operation/relate/RelateOp.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/relate/RelateOp.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/operation/sharedpaths/Makefile.in geos-3.7.1/src/operation/sharedpaths/Makefile.in --- geos-3.6.2/src/operation/sharedpaths/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/sharedpaths/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -130,7 +133,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/SharedPathsOp.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -172,7 +176,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -261,6 +265,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -309,6 +314,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -329,6 +336,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -378,7 +386,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -422,8 +429,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -455,7 +462,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SharedPathsOp.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SharedPathsOp.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -583,7 +596,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -679,7 +695,7 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/SharedPathsOp.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -725,7 +741,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/SharedPathsOp.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -746,8 +762,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/sharedpaths/SharedPathsOp.cpp geos-3.7.1/src/operation/sharedpaths/SharedPathsOp.cpp --- geos-3.6.2/src/operation/sharedpaths/SharedPathsOp.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/sharedpaths/SharedPathsOp.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,18 +3,18 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2010 Sandro Santilli + * Copyright (C) 2010 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** * * Last port: original work * - * Developed by Sandro Santilli (strk@keybit.net) + * Developed by Sandro Santilli (strk@kbt.io) * for Faunalia (http://www.faunalia.it) * with funding from Regione Toscana - Settore SISTEMA INFORMATIVO * TERRITORIALE ED AMBIENTALE - for the project: "Sviluppo strumenti @@ -108,17 +108,17 @@ // TODO: optionally use the tolerance, // snapping _g2 over _g1 ? - std::auto_ptr full ( OverlayOp::overlayOp( + std::unique_ptr full ( OverlayOp::overlayOp( &_g1, &_g2, OverlayOp::opINTERSECTION) ); - // NOTE: intersection of equal lines yelds splitted lines, + // NOTE: intersection of equal lines yelds splitted lines, // should we sew them back ? for (size_t i=0, n=full->getNumGeometries(); igetGeometryN(i); const LineString* path = dynamic_cast(sub); - if ( path ) { + if ( path ) { // NOTE: we're making a copy here, wouldn't be needed // for a simple predicate to.push_back(_gf.createLineString(*path).release()); @@ -150,7 +150,7 @@ /* * We move the coordinate somewhat closer, to avoid - * vertices of the geometry being checked (geom). + * vertices of the geometry being checked (geom). * * This is mostly only needed when one of the two points * of the edge is an endpoint of a _closed_ geom. diff -Nru geos-3.6.2/src/operation/union/CascadedPolygonUnion.cpp geos-3.7.1/src/operation/union/CascadedPolygonUnion.cpp --- geos-3.6.2/src/operation/union/CascadedPolygonUnion.cpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/src/operation/union/CascadedPolygonUnion.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,7 +3,7 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * Copyright (C) 2006 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under @@ -75,9 +75,9 @@ << err->getCoordinate() << ")" << std::endl #ifdef GEOS_DEBUG_CASCADED_UNION_PRINT_INVALID - << "" << std::endl - << g.toString() - << std::endl + << "" << std::endl + << g.toString() << std::endl + << "" << std::endl #endif ; #endif // GEOS_DEBUG_CASCADED_UNION @@ -127,7 +127,7 @@ geom::Geometry* CascadedPolygonUnion::Union() { if (inputPolys->empty()) - return NULL; + return nullptr; geomFactory = inputPolys->front()->getFactory(); @@ -146,7 +146,7 @@ index.insert(g->getEnvelopeInternal(), g); } - std::auto_ptr itemTree (index.itemsTree()); + std::unique_ptr itemTree (index.itemsTree()); return unionTree(itemTree.get()); } @@ -158,7 +158,7 @@ * Recursively unions all subtrees in the list into single geometries. * The result is a list of Geometry's only */ - std::auto_ptr geoms(reduceToGeometries(geomTree)); + std::unique_ptr geoms(reduceToGeometries(geomTree)); return binaryUnion(geoms.get()); } @@ -171,7 +171,7 @@ std::size_t start, std::size_t end) { if (end - start <= 1) { - return unionSafe(geoms->getGeometry(start), NULL); + return unionSafe(geoms->getGeometry(start), nullptr); } else if (end - start == 2) { return unionSafe(geoms->getGeometry(start), geoms->getGeometry(start + 1)); @@ -179,8 +179,8 @@ else { // recurse on both halves of the list std::size_t mid = (end + start) / 2; - std::auto_ptr g0 (binaryUnion(geoms, start, mid)); - std::auto_ptr g1 (binaryUnion(geoms, mid, end)); + std::unique_ptr g0 (binaryUnion(geoms, start, mid)); + std::unique_ptr g1 (binaryUnion(geoms, mid, end)); return unionSafe(g0.get(), g1.get()); } } @@ -188,13 +188,13 @@ GeometryListHolder* CascadedPolygonUnion::reduceToGeometries(index::strtree::ItemsList* geomTree) { - std::auto_ptr geoms (new GeometryListHolder()); + std::unique_ptr geoms (new GeometryListHolder()); typedef index::strtree::ItemsList::iterator iterator_type; iterator_type end = geomTree->end(); for (iterator_type i = geomTree->begin(); i != end; ++i) { if ((*i).get_type() == index::strtree::ItemsListItem::item_is_list) { - std::auto_ptr geom (unionTree((*i).get_itemslist())); + std::unique_ptr geom (unionTree((*i).get_itemslist())); geoms->push_back_owned(geom.get()); geom.release(); } @@ -212,12 +212,12 @@ geom::Geometry* CascadedPolygonUnion::unionSafe(geom::Geometry* g0, geom::Geometry* g1) { - if (g0 == NULL && g1 == NULL) - return NULL; + if (g0 == nullptr && g1 == nullptr) + return nullptr; - if (g0 == NULL) + if (g0 == nullptr) return g1->clone(); - if (g1 == NULL) + if (g1 == nullptr) return g0->clone(); return unionOptimized(g0, g1); @@ -252,18 +252,30 @@ check_valid(*g1, "unionUsingEnvelopeIntersection g1"); #endif - std::auto_ptr g0Int(extractByEnvelope(common, g0, disjointPolys)); - std::auto_ptr g1Int(extractByEnvelope(common, g1, disjointPolys)); + std::unique_ptr g0Int(extractByEnvelope(common, g0, disjointPolys)); + std::unique_ptr g1Int(extractByEnvelope(common, g1, disjointPolys)); #if GEOS_DEBUG_CASCADED_UNION check_valid(*g0Int, "unionUsingEnvelopeIntersection g0Int"); check_valid(*g1Int, "unionUsingEnvelopeIntersection g1Int"); #endif - std::auto_ptr u(unionActual(g0Int.get(), g1Int.get())); + std::unique_ptr u(unionActual(g0Int.get(), g1Int.get())); #if GEOS_DEBUG_CASCADED_UNION - check_valid(*u, "unionUsingEnvelopeIntersection unionActual return"); + if ( ! check_valid(*u, "unionUsingEnvelopeIntersection unionActual return") ) + { +#if GEOS_DEBUG_CASCADED_UNION_PRINT_INVALID + std::cerr << " union between the following is invalid" + << "" << std::endl + << *g0Int << std::endl + << "" << std::endl + << "" << std::endl + << *g1Int << std::endl + << "" << std::endl + ; +#endif + } #endif if ( disjointPolys.empty() ) return u.release(); @@ -288,7 +300,7 @@ std::cerr << "unionUsingEnvelopeIntersection: " << polysOn.size() << "/" << disjointPolys.size() << " polys intersect union of final thing" << std::endl; #endif - std::auto_ptr ret; + std::unique_ptr ret; if ( polysOn.empty() ) { disjointPolys.push_back(u.get()); ret.reset( geom::util::GeometryCombiner::combine(disjointPolys)); @@ -355,11 +367,11 @@ geom::Geometry* CascadedPolygonUnion::unionActual(geom::Geometry* g0, geom::Geometry* g1) { - return restrictToPolygons(std::auto_ptr(g0->Union(g1))).release(); + return restrictToPolygons(std::unique_ptr(g0->Union(g1))).release(); } -std::auto_ptr -CascadedPolygonUnion::restrictToPolygons(std::auto_ptr g) +std::unique_ptr +CascadedPolygonUnion::restrictToPolygons(std::unique_ptr g) { using namespace geom; using namespace std; @@ -372,7 +384,7 @@ geom::util::PolygonExtracter::getPolygons(*g, polygons); if (polygons.size() == 1) - return std::auto_ptr(polygons[0]->clone()); + return std::unique_ptr(polygons[0]->clone()); typedef vector GeomVect; @@ -381,7 +393,7 @@ for (Polygon::ConstVect::size_type i=0; iclone(); } - return auto_ptr( + return unique_ptr( g->getFactory()->createMultiPolygon(newpolys) ); diff -Nru geos-3.6.2/src/operation/union/CascadedUnion.cpp geos-3.7.1/src/operation/union/CascadedUnion.cpp --- geos-3.6.2/src/operation/union/CascadedUnion.cpp 2017-02-01 17:30:14.000000000 +0000 +++ geos-3.7.1/src/operation/union/CascadedUnion.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://trac.osgeo.org/geos * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -41,14 +41,14 @@ geom::Geometry* CascadedUnion::Union() { if (inputGeoms->empty()) - return NULL; + return nullptr; geomFactory = inputGeoms->front()->getFactory(); /** * A spatial index to organize the collection * into groups of close geometries. - * This makes unioning more efficient, since vertices are more likely + * This makes unioning more efficient, since vertices are more likely * to be eliminated on each round. */ index::strtree::STRtree index(STRTREE_NODE_CAPACITY); @@ -60,7 +60,7 @@ index.insert(g->getEnvelopeInternal(), g); } - std::auto_ptr itemTree (index.itemsTree()); + std::unique_ptr itemTree (index.itemsTree()); return unionTree(itemTree.get()); } @@ -72,7 +72,7 @@ * Recursively unions all subtrees in the list into single geometries. * The result is a list of Geometry's only */ - std::auto_ptr geoms(reduceToGeometries(geomTree)); + std::unique_ptr geoms(reduceToGeometries(geomTree)); return binaryUnion(geoms.get()); } @@ -81,11 +81,11 @@ return binaryUnion(geoms, 0, geoms->size()); } -geom::Geometry* CascadedUnion::binaryUnion(GeometryListHolder* geoms, +geom::Geometry* CascadedUnion::binaryUnion(GeometryListHolder* geoms, std::size_t start, std::size_t end) { if (end - start <= 1) { - return unionSafe(geoms->getGeometry(start), NULL); + return unionSafe(geoms->getGeometry(start), nullptr); } else if (end - start == 2) { return unionSafe(geoms->getGeometry(start), geoms->getGeometry(start + 1)); @@ -93,22 +93,22 @@ else { // recurse on both halves of the list std::size_t mid = (end + start) / 2; - std::auto_ptr g0 (binaryUnion(geoms, start, mid)); - std::auto_ptr g1 (binaryUnion(geoms, mid, end)); + std::unique_ptr g0 (binaryUnion(geoms, start, mid)); + std::unique_ptr g1 (binaryUnion(geoms, mid, end)); return unionSafe(g0.get(), g1.get()); } } -GeometryListHolder* +GeometryListHolder* CascadedUnion::reduceToGeometries(index::strtree::ItemsList* geomTree) { - std::auto_ptr geoms (new GeometryListHolder()); + std::unique_ptr geoms (new GeometryListHolder()); typedef index::strtree::ItemsList::iterator iterator_type; iterator_type end = geomTree->end(); for (iterator_type i = geomTree->begin(); i != end; ++i) { if ((*i).get_type() == index::strtree::ItemsListItem::item_is_list) { - std::auto_ptr geom (unionTree((*i).get_itemslist())); + std::unique_ptr geom (unionTree((*i).get_itemslist())); geoms->push_back_owned(geom.get()); geom.release(); } @@ -123,21 +123,21 @@ return geoms.release(); } -geom::Geometry* +geom::Geometry* CascadedUnion::unionSafe(geom::Geometry* g0, geom::Geometry* g1) { - if (g0 == NULL && g1 == NULL) - return NULL; + if (g0 == nullptr && g1 == nullptr) + return nullptr; - if (g0 == NULL) + if (g0 == nullptr) return g1->clone(); - if (g1 == NULL) + if (g1 == nullptr) return g0->clone(); return unionOptimized(g0, g1); } -geom::Geometry* +geom::Geometry* CascadedUnion::unionOptimized(geom::Geometry* g0, geom::Geometry* g1) { geom::Envelope const* g0Env = g0->getEnvelopeInternal(); @@ -149,33 +149,33 @@ if (g0->getNumGeometries() <= 1 && g1->getNumGeometries() <= 1) return unionActual(g0, g1); - geom::Envelope commonEnv; + geom::Envelope commonEnv; g0Env->intersection(*g1Env, commonEnv); return unionUsingEnvelopeIntersection(g0, g1, commonEnv); } -geom::Geometry* -CascadedUnion::unionUsingEnvelopeIntersection(geom::Geometry* g0, +geom::Geometry* +CascadedUnion::unionUsingEnvelopeIntersection(geom::Geometry* g0, geom::Geometry* g1, geom::Envelope const& common) { std::vector disjointPolys; - std::auto_ptr g0Int(extractByEnvelope(common, g0, disjointPolys)); - std::auto_ptr g1Int(extractByEnvelope(common, g1, disjointPolys)); + std::unique_ptr g0Int(extractByEnvelope(common, g0, disjointPolys)); + std::unique_ptr g1Int(extractByEnvelope(common, g1, disjointPolys)); - std::auto_ptr u(unionActual(g0Int.get(), g1Int.get())); + std::unique_ptr u(unionActual(g0Int.get(), g1Int.get())); disjointPolys.push_back(u.get()); return geom::util::GeometryCombiner::combine(disjointPolys); } -geom::Geometry* -CascadedUnion::extractByEnvelope(geom::Envelope const& env, +geom::Geometry* +CascadedUnion::extractByEnvelope(geom::Envelope const& env, geom::Geometry* geom, std::vector& disjointGeoms) { std::vector intersectingGeoms; - for (std::size_t i = 0; i < geom->getNumGeometries(); i++) { + for (std::size_t i = 0; i < geom->getNumGeometries(); i++) { geom::Geometry* elem = const_cast(geom->getGeometryN(i)); if (elem->getEnvelopeInternal()->intersects(env)) intersectingGeoms.push_back(elem); @@ -186,7 +186,7 @@ return geomFactory->buildGeometry(intersectingGeoms); } -geom::Geometry* +geom::Geometry* CascadedUnion::unionActual(geom::Geometry* g0, geom::Geometry* g1) { return g0->Union(g1); diff -Nru geos-3.6.2/src/operation/union/Makefile.in geos-3.7.1/src/operation/union/Makefile.in --- geos-3.6.2/src/operation/union/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/union/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/CascadedPolygonUnion.Plo \ + ./$(DEPDIR)/CascadedUnion.Plo \ + ./$(DEPDIR)/PointGeometryUnion.Plo \ + ./$(DEPDIR)/UnaryUnionOp.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +180,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +269,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +318,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +340,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +390,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -427,8 +437,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -460,10 +470,16 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CascadedPolygonUnion.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CascadedUnion.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointGeometryUnion.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UnaryUnionOp.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CascadedPolygonUnion.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CascadedUnion.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PointGeometryUnion.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UnaryUnionOp.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -591,7 +607,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -687,7 +706,10 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/CascadedPolygonUnion.Plo + -rm -f ./$(DEPDIR)/CascadedUnion.Plo + -rm -f ./$(DEPDIR)/PointGeometryUnion.Plo + -rm -f ./$(DEPDIR)/UnaryUnionOp.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -733,7 +755,10 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/CascadedPolygonUnion.Plo + -rm -f ./$(DEPDIR)/CascadedUnion.Plo + -rm -f ./$(DEPDIR)/PointGeometryUnion.Plo + -rm -f ./$(DEPDIR)/UnaryUnionOp.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -754,8 +779,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/union/PointGeometryUnion.cpp geos-3.7.1/src/operation/union/PointGeometryUnion.cpp --- geos-3.6.2/src/operation/union/PointGeometryUnion.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/union/PointGeometryUnion.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli // for auto_ptr +#include // for unique_ptr #include // for assert #include // for copy -#include -#include -#include +#include +#include +#include #include #include #include @@ -35,7 +35,7 @@ namespace geounion { // geos::operation::geounion /* public */ -std::auto_ptr +std::unique_ptr PointGeometryUnion::Union() const { using namespace geom; @@ -57,10 +57,10 @@ // if no points are in exterior, return the other geom if (exteriorCoords.empty()) - return std::auto_ptr(otherGeom.clone()); + return std::unique_ptr(otherGeom.clone()); // make a puntal geometry of appropriate size - std::auto_ptr ptComp; + std::unique_ptr ptComp; if (exteriorCoords.size() == 1) { ptComp.reset( geomFact->createPoint(*(exteriorCoords.begin())) ); @@ -73,13 +73,13 @@ } // add point component to the other geometry - return std::auto_ptr ( + return std::unique_ptr ( GeometryCombiner::combine(ptComp.get(), &otherGeom) ); } /* public static */ -std::auto_ptr +std::unique_ptr PointGeometryUnion::Union(const geom::Puntal& pointGeom, const geom::Geometry& otherGeom) { diff -Nru geos-3.6.2/src/operation/union/UnaryUnionOp.cpp geos-3.7.1/src/operation/union/UnaryUnionOp.cpp --- geos-3.6.2/src/operation/union/UnaryUnionOp.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/union/UnaryUnionOp.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli // for auto_ptr +#include // for unique_ptr #include // for assert #include // for copy -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -42,11 +42,11 @@ namespace geounion { // geos::operation::geounion /*private*/ -std::auto_ptr -UnaryUnionOp::unionWithNull(std::auto_ptr g0, - std::auto_ptr g1) +std::unique_ptr +UnaryUnionOp::unionWithNull(std::unique_ptr g0, + std::unique_ptr g1) { - std::auto_ptr ret; + std::unique_ptr ret; if ( ( ! g0.get() ) && ( ! g1.get() ) ) return ret; if ( ! g0.get() ) return g1; @@ -57,13 +57,13 @@ } /*public*/ -std::auto_ptr +std::unique_ptr UnaryUnionOp::Union() { using geom::Puntal; - typedef std::auto_ptr GeomAutoPtr; + typedef std::unique_ptr GeomPtr; - GeomAutoPtr ret; + GeomPtr ret; if ( ! geomFact ) return ret; /** @@ -73,14 +73,14 @@ * This is not the case for polygons, so Cascaded Union is required. */ - GeomAutoPtr unionPoints; + GeomPtr unionPoints; if (!points.empty()) { - GeomAutoPtr ptGeom = geomFact->buildGeometry( points.begin(), + GeomPtr ptGeom = geomFact->buildGeometry( points.begin(), points.end() ); unionPoints = unionNoOpt(*ptGeom); } - GeomAutoPtr unionLines; + GeomPtr unionLines; if (!lines.empty()) { /* JTS compatibility NOTE: * we use cascaded here for robustness [1] @@ -93,10 +93,12 @@ */ unionLines.reset( CascadedUnion::Union( lines.begin(), lines.end() ) ); - unionLines = unionNoOpt(*unionLines); + if (unionLines.get()) { + unionLines = unionNoOpt(*unionLines); + } } - GeomAutoPtr unionPolygons; + GeomPtr unionPolygons; if (!polygons.empty()) { unionPolygons.reset( CascadedPolygonUnion::Union( polygons.begin(), polygons.end() ) ); @@ -107,16 +109,16 @@ * but is mitigated by unioning lines and points first */ - GeomAutoPtr unionLA = unionWithNull(unionLines, unionPolygons); + GeomPtr unionLA = unionWithNull(std::move(unionLines), std::move(unionPolygons)); assert(!unionLines.get()); assert(!unionPolygons.get()); if ( ! unionPoints.get() ) { - ret = unionLA; - assert(!unionLA.get()); + ret = std::move(unionLA); + assert(!unionLA.get()); } else if ( ! unionLA.get() ) { - ret = unionPoints; - assert(!unionPoints.get()); + ret = std::move(unionPoints); + assert(!unionPoints.get()); } else { Puntal& up = dynamic_cast(*unionPoints); diff -Nru geos-3.6.2/src/operation/valid/ConnectedInteriorTester.cpp geos-3.7.1/src/operation/valid/ConnectedInteriorTester.cpp --- geos-3.6.2/src/operation/valid/ConnectedInteriorTester.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/operation/valid/ConnectedInteriorTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -9,7 +9,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -17,16 +17,16 @@ * Last port: operation/valid/ConnectedInteriorTester.java rev. 1.15 (JTS-1.10) * ********************************************************************** - * + * * TODO: * * - Remove heap allocation of GeometryFactory (might use a singleton) - * - Track MaximalEdgeRing references: we might be deleting them + * - Track MaximalEdgeRing references: we might be deleting them * leaving dangling refs around. * **********************************************************************/ -#include +#include #include #include #include @@ -124,8 +124,8 @@ /* * Mark all the edges for the edgeRings corresponding to the shells - * of the input polygons. - * + * of the input polygons. + * * Only ONE ring gets marked for each shell - if there are others * which remain unmarked this indicates a disconnected interior. */ @@ -205,7 +205,7 @@ //std::vector minEdgeRings; for(EdgeEnds::size_type i=0, n=dirEdges->size(); i((*dirEdges)[i])); #endif DirectedEdge *de=static_cast((*dirEdges)[i]); @@ -215,7 +215,7 @@ #endif // if this edge has not yet been processed - if(de->isInResult() && de->getEdgeRing()==NULL) + if(de->isInResult() && de->getEdgeRing()==nullptr) { MaximalEdgeRing* er = new MaximalEdgeRing(de, geometryFactory.get()); @@ -260,7 +260,7 @@ { // can't visit an empty ring if(ring->isEmpty()) return; - + const CoordinateSequence *pts=ring->getCoordinatesRO(); const Coordinate& pt0=pts->getAt(0); @@ -271,13 +271,13 @@ const Coordinate& pt1=findDifferentPoint(pts, pt0); Edge *e=graph.findEdgeInSameDirection(pt0, pt1); DirectedEdge *de=static_cast(graph.findEdgeEnd(e)); - DirectedEdge *intDe=NULL; + DirectedEdge *intDe=nullptr; if (de->getLabel().getLocation(0,Position::RIGHT)==Location::INTERIOR) { intDe=de; } else if (de->getSym()->getLabel().getLocation(0,Position::RIGHT)==Location::INTERIOR) { intDe=de->getSym(); } - assert(intDe!=NULL); // unable to find dirEdge with Interior on RHS + assert(intDe!=nullptr); // unable to find dirEdge with Interior on RHS visitLinkedDirectedEdges(intDe); } @@ -290,7 +290,7 @@ //Debug.println(de); do { // found null Directed Edge - assert(de!=NULL); + assert(de!=nullptr); de->setVisited(true); de=de->getNext(); @@ -328,7 +328,7 @@ /* * the edgeRing is CW ring which surrounds the INT - * of the area, so check all edges have been visited. + * of the area, so check all edges have been visited. * If any are unvisited, this is a disconnected part * of the interior */ diff -Nru geos-3.6.2/src/operation/valid/ConsistentAreaTester.cpp geos-3.7.1/src/operation/valid/ConsistentAreaTester.cpp --- geos-3.6.2/src/operation/valid/ConsistentAreaTester.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/src/operation/valid/ConsistentAreaTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -17,20 +17,20 @@ * **********************************************************************/ -#include +#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include +#include -#include // auto_ptr -#include +#include // unique_ptr +#include using namespace std; using namespace geos::algorithm; @@ -69,7 +69,7 @@ * To fully check validity, it is necessary to * compute ALL intersections, including self-intersections within a single edge. */ - auto_ptr intersector(geomGraph->computeSelfNodes(&li, true, true)); + unique_ptr intersector(geomGraph->computeSelfNodes(&li, true, true)); /** * A proper intersection means that the area is not consistent. */ diff -Nru geos-3.6.2/src/operation/valid/IndexedNestedRingTester.cpp geos-3.7.1/src/operation/valid/IndexedNestedRingTester.cpp --- geos-3.6.2/src/operation/valid/IndexedNestedRingTester.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/valid/IndexedNestedRingTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -79,9 +79,9 @@ // Unable to find a ring point not a node of // the search ring - assert(innerRingPt!=NULL); + assert(innerRingPt!=nullptr); - bool isInside = algorithm::CGAlgorithms::isPointInRing( + bool isInside = algorithm::CGAlgorithms::isPointInRing( *innerRingPt, searchRingPts); if (isInside) { diff -Nru geos-3.6.2/src/operation/valid/IndexedNestedRingTester.h geos-3.7.1/src/operation/valid/IndexedNestedRingTester.h --- geos-3.6.2/src/operation/valid/IndexedNestedRingTester.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/valid/IndexedNestedRingTester.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -54,8 +54,8 @@ : graph(newGraph), //totalEnv(0), - index(0), - nestedPt(0) + index(nullptr), + nestedPt(nullptr) { } @@ -83,19 +83,19 @@ private: /// Externally owned - geomgraph::GeometryGraph* graph; + geomgraph::GeometryGraph* graph; /// Ownership of this vector elements are externally owned std::vector rings; // CHECK: Owned by (seems unused)? - //geom::Envelope* totalEnv; + //geom::Envelope* totalEnv; - // Owned by us (use auto_ptr ?) + // Owned by us (use unique_ptr ?) geos::index::SpatialIndex* index; // 'index' in JTS // Externally owned, if not null - const geom::Coordinate *nestedPt; + const geom::Coordinate *nestedPt; void buildIndex(); }; diff -Nru geos-3.6.2/src/operation/valid/IsValidOp.cpp geos-3.7.1/src/operation/valid/IsValidOp.cpp --- geos-3.6.2/src/operation/valid/IsValidOp.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/operation/valid/IsValidOp.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -4,13 +4,13 @@ * http://geos.osgeo.org * * Copyright (C) 2010 Safe Software Inc. - * Copyright (C) 2010 Sandro Santilli + * Copyright (C) 2010 Sandro Santilli * Copyright (C) 2001-2002 Vivid Solutions Inc. * Copyright (C) 2005 Refractions Research Inc. * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -27,12 +27,12 @@ #include #include #include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -70,7 +70,7 @@ // find a point in the testCoords which is not a node of the searchRing EdgeIntersectionList &eiList=searchEdge->getEdgeIntersectionList(); // somewhat inefficient - is there a better way? (Use a node map, for instance?) - unsigned int npts=testCoords->getSize(); + unsigned int npts = static_cast(testCoords->getSize()); for(unsigned int i=0; igetAt(i); @@ -78,7 +78,7 @@ return &pt; } } - return NULL; + return nullptr; } @@ -86,7 +86,7 @@ IsValidOp::isValid() { checkValid(); - return validErr==NULL; + return validErr==nullptr; } /* static public */ @@ -124,10 +124,10 @@ void IsValidOp::checkValid(const Geometry *g) { - assert( validErr == NULL ); + assert( validErr == nullptr ); - if (0 == g) - return; + if (nullptr == g) + return; // empty geometries are always valid! if (g->isEmpty()) return; @@ -167,7 +167,7 @@ IsValidOp::checkValid(const LineString *g) { checkInvalidCoordinates(g->getCoordinatesRO()); - if (validErr != NULL) return; + if (validErr != nullptr) return; GeometryGraph graph(0,g); checkTooFewPoints(&graph); @@ -179,14 +179,14 @@ void IsValidOp::checkValid(const LinearRing *g){ checkInvalidCoordinates(g->getCoordinatesRO()); - if (validErr != NULL) return; + if (validErr != nullptr) return; checkClosedRing(g); - if (validErr != NULL) return; + if (validErr != nullptr) return; GeometryGraph graph(0, g); checkTooFewPoints(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; LineIntersector li; delete graph.computeSelfNodes(&li, true, true); @@ -201,29 +201,29 @@ IsValidOp::checkValid(const Polygon *g) { checkInvalidCoordinates(g); - if (validErr != NULL) return; + if (validErr != nullptr) return; checkClosedRings(g); - if (validErr != NULL) return; + if (validErr != nullptr) return; GeometryGraph graph(0,g); checkTooFewPoints(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; checkConsistentArea(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; if (!isSelfTouchingRingFormingHoleValid) { checkNoSelfIntersectingRings(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; } checkHolesInShell(g,&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; checkHolesNotNested(g,&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; checkConnectedInteriors(graph); } @@ -231,7 +231,7 @@ void IsValidOp::checkValid(const MultiPolygon *g) { - unsigned int ngeoms = g->getNumGeometries(); + unsigned int ngeoms = static_cast(g->getNumGeometries()); vectorpolys(ngeoms); for (unsigned int i=0; i(g->getGeometryN(i)); checkInvalidCoordinates(p); - if (validErr != NULL) return; + if (validErr != nullptr) return; checkClosedRings(p); - if (validErr != NULL) return; + if (validErr != nullptr) return; polys[i]=p; } @@ -250,33 +250,33 @@ GeometryGraph graph(0,g); checkTooFewPoints(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; checkConsistentArea(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; if (!isSelfTouchingRingFormingHoleValid) { checkNoSelfIntersectingRings(&graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; } for(unsigned int i=0; igetNumGeometries(); i(gc->getNumGeometries()); igetGeometryN(i); checkValid(g); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; } } @@ -343,7 +343,7 @@ { Edge *e=(*edges)[i]; checkNoSelfIntersectingRing(e->getEdgeIntersectionList()); - if(validErr!=NULL) return; + if(validErr!=nullptr) return; } } @@ -381,8 +381,8 @@ const LinearRing *shell=static_cast( p->getExteriorRing()); - - int nholes = p->getNumInteriorRing(); + + int nholes = static_cast(p->getNumInteriorRing()); if(shell->isEmpty()) { @@ -425,7 +425,7 @@ * split the polygon into disconnected interiors. * This will be caught by a subsequent check. */ - if (holePt==NULL) return; + if (holePt==nullptr) return; bool outside = !pir.isInside(*holePt); if (outside) { @@ -446,7 +446,7 @@ //QuadtreeNestedRingTester nestedTester(graph); IndexedNestedRingTester nestedTester(graph); - int nholes=p->getNumInteriorRing(); + int nholes = static_cast(p->getNumInteriorRing()); for(int i=0; i( @@ -454,7 +454,7 @@ const LinearRing *innerHole=static_cast( p->getInteriorRingN(i)); - + //empty holes always pass if(innerHole->isEmpty()) continue; @@ -474,7 +474,7 @@ void IsValidOp::checkShellsNotNested(const MultiPolygon *mp, GeometryGraph *graph) { - for(unsigned int i=0, ngeoms = mp->getNumGeometries(); i(mp->getNumGeometries()); i( mp->getGeometryN(i)); @@ -496,7 +496,7 @@ checkShellNotNested(shell, p2, graph); - if (validErr!=NULL) return; + if (validErr!=nullptr) return; } } } @@ -518,20 +518,20 @@ // if no point could be found, we can assume that the shell // is outside the polygon - if (shellPt==NULL) return; + if (shellPt==nullptr) return; bool insidePolyShell=CGAlgorithms::isPointInRing(*shellPt, polyPts); if (!insidePolyShell) return; // if no holes, this is an error! - int nholes = p->getNumInteriorRing(); + int nholes = static_cast(p->getNumInteriorRing()); if (nholes<=0) { validErr=new TopologyValidationError( TopologyValidationError::eNestedShells, *shellPt); return; } - + /** * Check if the shell is inside one of the holes. * This is the case if one of the calls to checkShellInsideHole @@ -539,14 +539,14 @@ * Otherwise, the shell is not properly contained in a hole, which is * an error. */ - const Coordinate *badNestedPt=NULL; + const Coordinate *badNestedPt=nullptr; for(int i=0; i( p->getInteriorRingN(i))); const LinearRing *hole=static_cast( p->getInteriorRingN(i)); badNestedPt = checkShellInsideHole(shell, hole, graph); - if (badNestedPt==NULL) return; + if (badNestedPt==nullptr) return; } validErr=new TopologyValidationError( TopologyValidationError::eNestedShells, *badNestedPt @@ -580,10 +580,10 @@ if (holePt) { bool insideShell=CGAlgorithms::isPointInRing(*holePt, shellPts); if (insideShell) return holePt; - return NULL; + return nullptr; } assert(0); // points in shell and hole appear to be equal - return NULL; + return nullptr; } /*private*/ @@ -604,7 +604,7 @@ void IsValidOp::checkInvalidCoordinates(const CoordinateSequence *cs) { - unsigned int size=cs->getSize(); + unsigned int size = static_cast(cs->getSize()); for (unsigned int i=0; igetAt(i)) ) @@ -623,15 +623,15 @@ IsValidOp::checkInvalidCoordinates(const Polygon *poly) { checkInvalidCoordinates(poly->getExteriorRing()->getCoordinatesRO()); - if (validErr != NULL) return; + if (validErr != nullptr) return; - int nholes=poly->getNumInteriorRing(); + int nholes = static_cast(poly->getNumInteriorRing()); for (int i=0; igetInteriorRingN(i)->getCoordinatesRO() ); - if (validErr != NULL) return; + if (validErr != nullptr) return; } } @@ -643,7 +643,7 @@ checkClosedRing(lr); if (validErr) return; - int nholes=poly->getNumInteriorRing(); + int nholes = static_cast(poly->getNumInteriorRing()); for (int i=0; igetInteriorRingN(i); diff -Nru geos-3.6.2/src/operation/valid/Makefile.in geos-3.7.1/src/operation/valid/Makefile.in --- geos-3.6.2/src/operation/valid/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/operation/valid/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -134,7 +137,16 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ConnectedInteriorTester.Plo \ + ./$(DEPDIR)/ConsistentAreaTester.Plo \ + ./$(DEPDIR)/IndexedNestedRingTester.Plo \ + ./$(DEPDIR)/IsValidOp.Plo \ + ./$(DEPDIR)/QuadtreeNestedRingTester.Plo \ + ./$(DEPDIR)/RepeatedPointTester.Plo \ + ./$(DEPDIR)/SimpleNestedRingTester.Plo \ + ./$(DEPDIR)/SweeplineNestedRingTester.Plo \ + ./$(DEPDIR)/TopologyValidationError.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -194,7 +206,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -283,6 +295,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -331,6 +344,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -351,6 +366,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -400,7 +416,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -458,8 +473,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -491,15 +506,21 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConnectedInteriorTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConsistentAreaTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IndexedNestedRingTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IsValidOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadtreeNestedRingTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RepeatedPointTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleNestedRingTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweeplineNestedRingTester.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TopologyValidationError.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConnectedInteriorTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConsistentAreaTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IndexedNestedRingTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IsValidOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadtreeNestedRingTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RepeatedPointTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleNestedRingTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SweeplineNestedRingTester.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TopologyValidationError.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -627,7 +648,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -723,7 +747,15 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ConnectedInteriorTester.Plo + -rm -f ./$(DEPDIR)/ConsistentAreaTester.Plo + -rm -f ./$(DEPDIR)/IndexedNestedRingTester.Plo + -rm -f ./$(DEPDIR)/IsValidOp.Plo + -rm -f ./$(DEPDIR)/QuadtreeNestedRingTester.Plo + -rm -f ./$(DEPDIR)/RepeatedPointTester.Plo + -rm -f ./$(DEPDIR)/SimpleNestedRingTester.Plo + -rm -f ./$(DEPDIR)/SweeplineNestedRingTester.Plo + -rm -f ./$(DEPDIR)/TopologyValidationError.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -769,7 +801,15 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ConnectedInteriorTester.Plo + -rm -f ./$(DEPDIR)/ConsistentAreaTester.Plo + -rm -f ./$(DEPDIR)/IndexedNestedRingTester.Plo + -rm -f ./$(DEPDIR)/IsValidOp.Plo + -rm -f ./$(DEPDIR)/QuadtreeNestedRingTester.Plo + -rm -f ./$(DEPDIR)/RepeatedPointTester.Plo + -rm -f ./$(DEPDIR)/SimpleNestedRingTester.Plo + -rm -f ./$(DEPDIR)/SweeplineNestedRingTester.Plo + -rm -f ./$(DEPDIR)/TopologyValidationError.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -790,8 +830,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/operation/valid/QuadtreeNestedRingTester.cpp geos-3.7.1/src/operation/valid/QuadtreeNestedRingTester.cpp --- geos-3.6.2/src/operation/valid/QuadtreeNestedRingTester.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/valid/QuadtreeNestedRingTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include @@ -42,8 +42,8 @@ graph(newGraph), rings(), totalEnv(), - qt(NULL), - nestedPt(NULL) + qt(nullptr), + nestedPt(nullptr) { } @@ -95,7 +95,7 @@ searchRing, graph); // Unable to find a ring point not a node of the search ring - assert(innerRingPt!=NULL); + assert(innerRingPt!=nullptr); bool isInside=CGAlgorithms::isPointInRing(*innerRingPt,searchRingPts); if (isInside) { diff -Nru geos-3.6.2/src/operation/valid/RepeatedPointTester.cpp geos-3.7.1/src/operation/valid/RepeatedPointTester.cpp --- geos-3.6.2/src/operation/valid/RepeatedPointTester.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/valid/RepeatedPointTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -52,27 +52,27 @@ if ( dynamic_cast(g) ) return false; // LineString also handles LinearRings - if ( const LineString* x = dynamic_cast(g) ) + if ( const LineString* x = dynamic_cast(g) ) { return hasRepeatedPoint(x->getCoordinatesRO()); } - if ( const Polygon* x = dynamic_cast(g) ) + if ( const Polygon* x = dynamic_cast(g) ) { return hasRepeatedPoint(x); } - if ( const MultiPolygon* x = dynamic_cast(g) ) + if ( const MultiPolygon* x = dynamic_cast(g) ) { return hasRepeatedPoint(x); } - if ( const MultiLineString* x = dynamic_cast(g) ) + if ( const MultiLineString* x = dynamic_cast(g) ) { return hasRepeatedPoint(x); } - if ( const GeometryCollection* x = dynamic_cast(g) ) + if ( const GeometryCollection* x = dynamic_cast(g) ) { return hasRepeatedPoint(x); } @@ -83,8 +83,8 @@ bool RepeatedPointTester::hasRepeatedPoint(const CoordinateSequence *coord) { - unsigned int npts=coord->getSize(); - for(unsigned int i=1; igetSize(); + for(size_t i=1; igetAt(i - 1)==coord->getAt(i)) { repeatedCoord=coord->getAt(i); @@ -115,7 +115,7 @@ bool RepeatedPointTester::hasRepeatedPoint(const GeometryCollection *gc) { - for(unsigned int i=0, n=gc->getNumGeometries(); igetNumGeometries(); igetGeometryN(i); if (hasRepeatedPoint(g)) return true; @@ -126,7 +126,7 @@ bool RepeatedPointTester::hasRepeatedPoint(const MultiPolygon *gc) { - for(unsigned int i=0, n=gc->getNumGeometries(); igetNumGeometries(); igetGeometryN(i); if (hasRepeatedPoint(g)) return true; @@ -137,7 +137,7 @@ bool RepeatedPointTester::hasRepeatedPoint(const MultiLineString *gc) { - for(unsigned int i=0, n=gc->getNumGeometries(); igetNumGeometries(); igetGeometryN(i); if (hasRepeatedPoint(g)) return true; diff -Nru geos-3.6.2/src/operation/valid/SimpleNestedRingTester.cpp geos-3.7.1/src/operation/valid/SimpleNestedRingTester.cpp --- geos-3.6.2/src/operation/valid/SimpleNestedRingTester.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/valid/SimpleNestedRingTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -47,7 +47,7 @@ continue; const Coordinate *innerRingPt=IsValidOp::findPtNotNode(innerRingPts,searchRing,graph); // Unable to find a ring point not a node of the search ring - assert(innerRingPt!=NULL); + assert(innerRingPt!=nullptr); bool isInside=CGAlgorithms::isPointInRing(*innerRingPt,searchRingPts); if (isInside) { diff -Nru geos-3.6.2/src/operation/valid/SweeplineNestedRingTester.cpp geos-3.7.1/src/operation/valid/SweeplineNestedRingTester.cpp --- geos-3.6.2/src/operation/valid/SweeplineNestedRingTester.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/valid/SweeplineNestedRingTester.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -83,7 +83,7 @@ const Coordinate *innerRingPt=IsValidOp::findPtNotNode(innerRingPts, searchRing, graph); // Unable to find a ring point not a node of the search ring - assert(innerRingPt!=NULL); + assert(innerRingPt!=nullptr); bool isInside=CGAlgorithms::isPointInRing(*innerRingPt,searchRingPts); if (isInside) { diff -Nru geos-3.6.2/src/operation/valid/TopologyValidationError.cpp geos-3.7.1/src/operation/valid/TopologyValidationError.cpp --- geos-3.6.2/src/operation/valid/TopologyValidationError.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/operation/valid/TopologyValidationError.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/planargraph/algorithm/ConnectedSubgraphFinder.cpp geos-3.7.1/src/planargraph/algorithm/ConnectedSubgraphFinder.cpp --- geos-3.6.2/src/planargraph/algorithm/ConnectedSubgraphFinder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/algorithm/ConnectedSubgraphFinder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -47,11 +47,11 @@ subgraphs.push_back(findSubgraph(node)); } } - + } /*private*/ -Subgraph* +Subgraph* ConnectedSubgraphFinder::findSubgraph(Node* node) { Subgraph* subgraph = new Subgraph(graph); @@ -93,5 +93,5 @@ } // namespace geos.planargraph.algorithm -} // namespace geos.planargraph -} // namespace geos +} // namespace geos.planargraph +} // namespace geos diff -Nru geos-3.6.2/src/planargraph/DirectedEdge.cpp geos-3.7.1/src/planargraph/DirectedEdge.cpp --- geos-3.6.2/src/planargraph/DirectedEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/DirectedEdge.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -40,7 +40,7 @@ /*public*/ vector* -DirectedEdge::toEdges(vector& dirEdges) +DirectedEdge::toEdges(vector& dirEdges) { vector *edges=new vector(); toEdges(dirEdges, *edges); @@ -73,7 +73,7 @@ /*public*/ void DirectedEdge::setEdge(Edge* newParentEdge) -{ +{ parentEdge=newParentEdge; } @@ -94,7 +94,7 @@ /*public*/ bool DirectedEdge::getEdgeDirection() const -{ +{ return edgeDirection; } @@ -108,28 +108,28 @@ /*public*/ Node* DirectedEdge::getToNode() const -{ +{ return to; } /*public*/ Coordinate& DirectedEdge::getCoordinate() const -{ +{ return from->getCoordinate(); } /*public*/ double DirectedEdge::getAngle() const -{ +{ return angle; } /*public*/ DirectedEdge* DirectedEdge::getSym() const -{ +{ return sym; } @@ -139,7 +139,7 @@ */ void DirectedEdge::setSym(DirectedEdge *newSym) -{ +{ sym = newSym; } diff -Nru geos-3.6.2/src/planargraph/DirectedEdgeStar.cpp geos-3.7.1/src/planargraph/DirectedEdgeStar.cpp --- geos-3.6.2/src/planargraph/DirectedEdgeStar.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/DirectedEdgeStar.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -138,7 +138,7 @@ /* * Returns the zero-based index of the given DirectedEdge, after sorting * in ascending order by angle with the positive x-axis. - */ + */ int DirectedEdgeStar::getIndex(const DirectedEdge *dirEdge) { @@ -154,20 +154,20 @@ /* * Returns the remainder when i is divided by the number of edges in this - * DirectedEdgeStar. + * DirectedEdgeStar. */ int DirectedEdgeStar::getIndex(int i) const { int modi = i % (int)outEdges.size(); - //I don't think modi can be 0 (assuming i is positive) [Jon Aquino 10/28/2003] + //I don't think modi can be 0 (assuming i is positive) [Jon Aquino 10/28/2003] if (modi < 0) modi += (int)outEdges.size(); return modi; } /* * Returns the DirectedEdge on the left-hand side of the given - * DirectedEdge (which must be a member of this DirectedEdgeStar). + * DirectedEdge (which must be a member of this DirectedEdgeStar). */ DirectedEdge* DirectedEdgeStar::getNextEdge(DirectedEdge *dirEdge) diff -Nru geos-3.6.2/src/planargraph/Edge.cpp geos-3.7.1/src/planargraph/Edge.cpp --- geos-3.6.2/src/planargraph/Edge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/Edge.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -62,7 +62,7 @@ if (dirEdge[1]->getFromNode()==fromNode) return dirEdge[1]; // node not found // possibly should throw an exception here? - return NULL; + return nullptr; } /** @@ -76,7 +76,7 @@ if (dirEdge[1]->getFromNode()==node) return dirEdge[1]->getToNode(); // node not found // possibly should throw an exception here? - return NULL; + return nullptr; } std::ostream& operator<<(std::ostream& os, const Edge& n) { diff -Nru geos-3.6.2/src/planargraph/Makefile.in geos-3.7.1/src/planargraph/Makefile.in --- geos-3.6.2/src/planargraph/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/planargraph/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -97,6 +97,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -137,7 +140,12 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/DirectedEdge.Plo \ + ./$(DEPDIR)/DirectedEdgeStar.Plo ./$(DEPDIR)/Edge.Plo \ + ./$(DEPDIR)/Node.Plo ./$(DEPDIR)/NodeMap.Plo \ + ./$(DEPDIR)/PlanarGraph.Plo ./$(DEPDIR)/Subgraph.Plo \ + algorithm/$(DEPDIR)/ConnectedSubgraphFinder.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -179,7 +187,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -268,6 +276,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -316,6 +325,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -336,6 +347,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -385,7 +397,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -434,8 +445,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -477,14 +488,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdgeStar.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Edge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Node.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeMap.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PlanarGraph.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Subgraph.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/ConnectedSubgraphFinder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectedEdgeStar.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Edge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Node.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NodeMap.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PlanarGraph.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Subgraph.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/ConnectedSubgraphFinder.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @@ -616,7 +633,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -714,7 +734,14 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) algorithm/$(DEPDIR) + -rm -f ./$(DEPDIR)/DirectedEdge.Plo + -rm -f ./$(DEPDIR)/DirectedEdgeStar.Plo + -rm -f ./$(DEPDIR)/Edge.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeMap.Plo + -rm -f ./$(DEPDIR)/PlanarGraph.Plo + -rm -f ./$(DEPDIR)/Subgraph.Plo + -rm -f algorithm/$(DEPDIR)/ConnectedSubgraphFinder.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -760,7 +787,14 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) algorithm/$(DEPDIR) + -rm -f ./$(DEPDIR)/DirectedEdge.Plo + -rm -f ./$(DEPDIR)/DirectedEdgeStar.Plo + -rm -f ./$(DEPDIR)/Edge.Plo + -rm -f ./$(DEPDIR)/Node.Plo + -rm -f ./$(DEPDIR)/NodeMap.Plo + -rm -f ./$(DEPDIR)/PlanarGraph.Plo + -rm -f ./$(DEPDIR)/Subgraph.Plo + -rm -f algorithm/$(DEPDIR)/ConnectedSubgraphFinder.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -781,8 +815,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/planargraph/Node.cpp geos-3.7.1/src/planargraph/Node.cpp --- geos-3.6.2/src/planargraph/Node.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/Node.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -59,5 +59,5 @@ return os; } -} // namespace planargraph -} // namespace geos +} // namespace planargraph +} // namespace geos diff -Nru geos-3.6.2/src/planargraph/NodeMap.cpp geos-3.7.1/src/planargraph/NodeMap.cpp --- geos-3.6.2/src/planargraph/NodeMap.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/NodeMap.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -34,10 +34,10 @@ { } -NodeMap::container& +NodeMap::container& NodeMap::getNodeMap() { - return nodeMap; + return nodeMap; } /** @@ -82,11 +82,11 @@ { container::iterator found=nodeMap.find(coord); if (found==nodeMap.end()) - return NULL; + return nullptr; else return found->second; } -} //namespace planargraph -} //namespace geos +} //namespace planargraph +} //namespace geos diff -Nru geos-3.6.2/src/planargraph/PlanarGraph.cpp geos-3.7.1/src/planargraph/PlanarGraph.cpp --- geos-3.6.2/src/planargraph/PlanarGraph.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/planargraph/PlanarGraph.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -78,7 +78,7 @@ PlanarGraph::remove(DirectedEdge *de) { DirectedEdge *sym = de->getSym(); - if (sym!=NULL) sym->setSym(NULL); + if (sym!=nullptr) sym->setSym(nullptr); de->getFromNode()->getOutEdges()->remove(de); for(unsigned int i=0; igetSym(); // remove the diredge that points to this node - if (sym!=NULL) remove(sym); + if (sym!=nullptr) remove(sym); // remove this diredge from the graph collection for(unsigned int j=0; jgetEdge(); - if (edge!=NULL) { + if (edge!=nullptr) { for(unsigned int k=0; k rgeom0; - auto_ptr rgeom1; + unique_ptr rgeom0; + unique_ptr rgeom1; removeCommonBits(geom0, geom1, rgeom0, rgeom1); return computeResultPrecision(rgeom0->intersection(rgeom1.get())); } @@ -79,8 +79,8 @@ const Geometry* geom0, const Geometry* geom1) { - auto_ptr rgeom0; - auto_ptr rgeom1; + unique_ptr rgeom0; + unique_ptr rgeom1; removeCommonBits(geom0, geom1, rgeom0, rgeom1); return computeResultPrecision(rgeom0->Union(rgeom1.get())); } @@ -91,8 +91,8 @@ const Geometry* geom0, const Geometry* geom1) { - auto_ptr rgeom0; - auto_ptr rgeom1; + unique_ptr rgeom0; + unique_ptr rgeom1; removeCommonBits(geom0, geom1, rgeom0, rgeom1); return computeResultPrecision(rgeom0->difference(rgeom1.get())); } @@ -103,8 +103,8 @@ const Geometry* geom0, const Geometry* geom1) { - auto_ptr rgeom0; - auto_ptr rgeom1; + unique_ptr rgeom0; + unique_ptr rgeom1; removeCommonBits(geom0, geom1, rgeom0, rgeom1); return computeResultPrecision(rgeom0->symDifference(rgeom1.get())); } @@ -113,7 +113,7 @@ Geometry* CommonBitsOp::buffer(const Geometry* geom0, double distance) { - auto_ptr rgeom0(removeCommonBits(geom0)); + unique_ptr rgeom0(removeCommonBits(geom0)); return computeResultPrecision(rgeom0->buffer(distance)); } @@ -148,9 +148,9 @@ CommonBitsOp::removeCommonBits( const geom::Geometry* geom0, const geom::Geometry* geom1, - std::auto_ptr& rgeom0, - std::auto_ptr& rgeom1) - + std::unique_ptr& rgeom0, + std::unique_ptr& rgeom1) + { cbr.reset(new CommonBitsRemover()); diff -Nru geos-3.6.2/src/precision/CommonBitsRemover.cpp geos-3.7.1/src/precision/CommonBitsRemover.cpp --- geos-3.6.2/src/precision/CommonBitsRemover.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/precision/CommonBitsRemover.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -49,13 +49,13 @@ trans(newTrans) {} - void filter_ro(const geom::Coordinate *coord) //Not used + void filter_ro(const geom::Coordinate *coord) override //Not used { ::geos::ignore_unused_variable_warning(coord); assert(0); } - void filter_rw(geom::Coordinate *coord) const + void filter_rw(geom::Coordinate *coord) const override { coord->x += trans.x; coord->y += trans.y; @@ -69,14 +69,14 @@ CommonBits commonBitsY; public: - void filter_rw(geom::Coordinate *coord) const + void filter_rw(geom::Coordinate *coord) const override { // CommonCoordinateFilter is a read-only filter ::geos::ignore_unused_variable_warning(coord); assert(0); } - void filter_ro(const geom::Coordinate *coord) + void filter_ro(const geom::Coordinate *coord) override { commonBitsX.add(coord->x); commonBitsY.add(coord->y); @@ -121,7 +121,7 @@ */ Coordinate& CommonBitsRemover::getCommonCoordinate() -{ +{ return commonCoord; } diff -Nru geos-3.6.2/src/precision/EnhancedPrecisionOp.cpp geos-3.7.1/src/precision/EnhancedPrecisionOp.cpp --- geos-3.6.2/src/precision/EnhancedPrecisionOp.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/precision/EnhancedPrecisionOp.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -19,7 +19,7 @@ #include #include -#include // for auto_ptr composition +#include // for unique_ptr composition #include #include @@ -193,7 +193,7 @@ { CommonBitsOp cbo(true); Geometry* resultEP = cbo.symDifference(geom0, geom1); - + // check that result is a valid geometry after // the reshift to orginal precision if (! resultEP->isValid()) diff -Nru geos-3.6.2/src/precision/GeometryPrecisionReducer.cpp geos-3.7.1/src/precision/GeometryPrecisionReducer.cpp --- geos-3.6.2/src/precision/GeometryPrecisionReducer.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/precision/GeometryPrecisionReducer.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -41,10 +41,10 @@ /* private */ -auto_ptr +unique_ptr GeometryPrecisionReducer::reducePointwise(const Geometry &geom) { - auto_ptr geomEdit; + unique_ptr geomEdit; if ( newFactory ) { geomEdit.reset( new GeometryEditor(newFactory) ); @@ -62,16 +62,16 @@ PrecisionReducerCoordinateOperation prco(targetPM, finalRemoveCollapsed); - std::auto_ptr g ( geomEdit->edit(&geom, &prco) ); + std::unique_ptr g ( geomEdit->edit(&geom, &prco) ); return g; } /* public */ -auto_ptr +unique_ptr GeometryPrecisionReducer::reduce(const Geometry &geom) { - auto_ptr reducePW = reducePointwise(geom); + unique_ptr reducePW = reducePointwise(geom); if ( isPointwise ) return reducePW; @@ -85,7 +85,7 @@ // hack to fix topology. // TODO: implement snap-rounding and use that. return fixPolygonalTopology(*reducePW); - + } @@ -99,15 +99,15 @@ {} /* private */ -auto_ptr +unique_ptr GeometryPrecisionReducer::fixPolygonalTopology(const geom::Geometry& geom ) { /** * If precision model was *not* changed, need to flip * geometry to targetPM, buffer in that model, then flip back */ - auto_ptr tmp; - GeometryFactory::unique_ptr tmpFactory; + unique_ptr tmp; + GeometryFactory::Ptr tmpFactory; const Geometry* geomToBuffer = &geom; @@ -117,7 +117,7 @@ geomToBuffer = tmp.get(); } - auto_ptr bufGeom ( geomToBuffer->buffer(0) ); + unique_ptr bufGeom ( geomToBuffer->buffer(0) ); if ( ! newFactory ) { // a slick way to copy the geometry with the original precision factory @@ -128,11 +128,11 @@ } /* private */ -GeometryFactory::unique_ptr +GeometryFactory::Ptr GeometryPrecisionReducer::createFactory( const GeometryFactory& oldGF, const PrecisionModel& newPM ) { - GeometryFactory::unique_ptr newFactory( + GeometryFactory::Ptr newFactory( GeometryFactory::create(&newPM, oldGF.getSRID(), const_cast(oldGF.getCoordinateSequenceFactory())) diff -Nru geos-3.6.2/src/precision/Makefile.in geos-3.7.1/src/precision/Makefile.in --- geos-3.6.2/src/precision/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/precision/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -134,7 +137,14 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/CommonBits.Plo \ + ./$(DEPDIR)/CommonBitsOp.Plo ./$(DEPDIR)/CommonBitsRemover.Plo \ + ./$(DEPDIR)/EnhancedPrecisionOp.Plo \ + ./$(DEPDIR)/GeometryPrecisionReducer.Plo \ + ./$(DEPDIR)/MinimumClearance.Plo \ + ./$(DEPDIR)/PrecisionReducerCoordinateOperation.Plo \ + ./$(DEPDIR)/SimpleGeometryPrecisionReducer.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -176,7 +186,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -265,6 +275,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -313,6 +324,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -333,6 +346,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -382,7 +396,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -434,8 +447,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -467,14 +480,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CommonBits.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CommonBitsOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CommonBitsRemover.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EnhancedPrecisionOp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryPrecisionReducer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MinimumClearance.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PrecisionReducerCoordinateOperation.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleGeometryPrecisionReducer.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CommonBits.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CommonBitsOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CommonBitsRemover.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/EnhancedPrecisionOp.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryPrecisionReducer.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MinimumClearance.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PrecisionReducerCoordinateOperation.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleGeometryPrecisionReducer.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -602,7 +621,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -698,7 +720,14 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/CommonBits.Plo + -rm -f ./$(DEPDIR)/CommonBitsOp.Plo + -rm -f ./$(DEPDIR)/CommonBitsRemover.Plo + -rm -f ./$(DEPDIR)/EnhancedPrecisionOp.Plo + -rm -f ./$(DEPDIR)/GeometryPrecisionReducer.Plo + -rm -f ./$(DEPDIR)/MinimumClearance.Plo + -rm -f ./$(DEPDIR)/PrecisionReducerCoordinateOperation.Plo + -rm -f ./$(DEPDIR)/SimpleGeometryPrecisionReducer.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -744,7 +773,14 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/CommonBits.Plo + -rm -f ./$(DEPDIR)/CommonBitsOp.Plo + -rm -f ./$(DEPDIR)/CommonBitsRemover.Plo + -rm -f ./$(DEPDIR)/EnhancedPrecisionOp.Plo + -rm -f ./$(DEPDIR)/GeometryPrecisionReducer.Plo + -rm -f ./$(DEPDIR)/MinimumClearance.Plo + -rm -f ./$(DEPDIR)/PrecisionReducerCoordinateOperation.Plo + -rm -f ./$(DEPDIR)/SimpleGeometryPrecisionReducer.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -765,8 +801,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/precision/MinimumClearance.cpp geos-3.7.1/src/precision/MinimumClearance.cpp --- geos-3.6.2/src/precision/MinimumClearance.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/precision/MinimumClearance.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -25,6 +25,10 @@ #include #include +using namespace geos::geom; +using namespace geos::operation::distance; +using namespace geos::index::strtree; + namespace geos { namespace precision { @@ -35,14 +39,14 @@ return minClearance; } -std::auto_ptr MinimumClearance::getLine() { +std::unique_ptr MinimumClearance::getLine() { compute(); // return empty line string if no min pts were found if (minClearance == std::numeric_limits::infinity()) - return std::auto_ptr(inputGeom->getFactory()->createLineString()); + return std::unique_ptr(inputGeom->getFactory()->createLineString()); - return std::auto_ptr(inputGeom->getFactory()->createLineString(minClearancePts->clone())); + return std::unique_ptr(inputGeom->getFactory()->createLineString(minClearancePts->clone())); } void MinimumClearance::compute() { @@ -68,7 +72,7 @@ return &minPts; } - double distance(const ItemBoundable* b1, const ItemBoundable* b2) { + double distance(const ItemBoundable* b1, const ItemBoundable* b2) override { FacetSequence* fs1 = static_cast(b1->getItem()); FacetSequence* fs2 = static_cast(b2->getItem()); @@ -138,7 +142,7 @@ }; struct ItemDeleter : public index::ItemVisitor { - void visitItem(void * item) { + void visitItem(void * item) override { delete static_cast(item); } }; @@ -157,11 +161,11 @@ }; // already computed - if (minClearancePts.get() != NULL) + if (minClearancePts.get() != nullptr) return; // initialize to "No Distance Exists" state - minClearancePts = std::auto_ptr(inputGeom->getFactory()->getCoordinateSequenceFactory()->create(2, 2)); + minClearancePts = std::unique_ptr(inputGeom->getFactory()->getCoordinateSequenceFactory()->create(2, 2)); minClearance = std::numeric_limits::infinity(); // handle empty geometries diff -Nru geos-3.6.2/src/precision/PrecisionReducerCoordinateOperation.cpp geos-3.7.1/src/precision/PrecisionReducerCoordinateOperation.cpp --- geos-3.6.2/src/precision/PrecisionReducerCoordinateOperation.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/precision/PrecisionReducerCoordinateOperation.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -37,9 +37,9 @@ PrecisionReducerCoordinateOperation::edit(const CoordinateSequence *cs, const Geometry *geom) { - unsigned int csSize = cs->getSize(); + unsigned int csSize = static_cast(cs->getSize()); - if ( csSize == 0 ) return NULL; + if ( csSize == 0 ) return nullptr; vector *vc = new vector(csSize); @@ -56,7 +56,7 @@ // remove repeated points, to simplify returned geometry as // much as possible. - // + // CoordinateSequence *noRepeatedCoords=CoordinateSequence::removeRepeatedPoints(reducedCoords); /** @@ -77,8 +77,8 @@ CoordinateSequence *collapsedCoords = reducedCoords; if ( removeCollapsed ) { - delete reducedCoords; reducedCoords=0; - collapsedCoords=0; + delete reducedCoords; reducedCoords=nullptr; + collapsedCoords=nullptr; } // return null or orginal length coordinate array diff -Nru geos-3.6.2/src/precision/SimpleGeometryPrecisionReducer.cpp geos-3.7.1/src/precision/SimpleGeometryPrecisionReducer.cpp --- geos-3.6.2/src/precision/SimpleGeometryPrecisionReducer.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/precision/SimpleGeometryPrecisionReducer.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * *********************************************************************** @@ -55,7 +55,7 @@ /// Ownership of returned CoordinateSequence to caller CoordinateSequence* edit(const CoordinateSequence *coordinates, - const Geometry *geom); + const Geometry *geom) override; }; PrecisionReducerCoordinateOperation::PrecisionReducerCoordinateOperation( @@ -68,9 +68,9 @@ PrecisionReducerCoordinateOperation::edit(const CoordinateSequence *cs, const Geometry *geom) { - if (cs->getSize()==0) return NULL; + if (cs->getSize()==0) return nullptr; - unsigned int csSize=cs->getSize(); + unsigned int csSize=static_cast(cs->getSize()); vector *vc = new vector(csSize); @@ -88,7 +88,7 @@ // remove repeated points, to simplify returned geometry as // much as possible. - // + // CoordinateSequence *noRepeatedCoords=CoordinateSequence::removeRepeatedPoints(reducedCoords); /** @@ -108,8 +108,8 @@ CoordinateSequence *collapsedCoords = reducedCoords; if (sgpr->getRemoveCollapsed()) { - delete reducedCoords; reducedCoords=0; - collapsedCoords=0; + delete reducedCoords; reducedCoords=nullptr; + collapsedCoords=nullptr; } // return null or orginal length coordinate array if (noRepeatedCoords->getSize() #include -#include // for auto_ptr +#include // for unique_ptr namespace geos { @@ -75,7 +75,7 @@ } } - // auto_ptr transfer ownership to its + // unique_ptr transfer ownership to its // returned copy return coordList; } diff -Nru geos-3.6.2/src/simplify/DouglasPeuckerSimplifier.cpp geos-3.7.1/src/simplify/DouglasPeuckerSimplifier.cpp --- geos-3.6.2/src/simplify/DouglasPeuckerSimplifier.cpp 2016-12-02 13:59:59.000000000 +0000 +++ geos-3.7.1/src/simplify/DouglasPeuckerSimplifier.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -18,16 +18,16 @@ #include #include -#include // for AutoPtr typedefs +#include // for Ptr typedefs #include -#include // for AutoPtr typedefs +#include // for Ptr typedefs #include #include #include // for DPTransformer inheritance #include #include -#include // for auto_ptr +#include // for unique_ptr #include #ifndef GEOS_DEBUG @@ -51,17 +51,17 @@ protected: - CoordinateSequence::AutoPtr transformCoordinates( + CoordinateSequence::Ptr transformCoordinates( const CoordinateSequence* coords, - const Geometry* parent); + const Geometry* parent) override; - Geometry::AutoPtr transformPolygon( + Geometry::Ptr transformPolygon( const Polygon* geom, - const Geometry* parent); + const Geometry* parent) override; - Geometry::AutoPtr transformMultiPolygon( + Geometry::Ptr transformMultiPolygon( const MultiPolygon* geom, - const Geometry* parent); + const Geometry* parent) override; private: @@ -79,7 +79,7 @@ * self-intersections * @return a valid area geometry */ - Geometry::AutoPtr createValidArea(const Geometry* roughAreaGeom); + Geometry::Ptr createValidArea(const Geometry* roughAreaGeom); double distanceTolerance; @@ -92,13 +92,13 @@ setSkipTransformedInvalidInteriorRings(true); } -Geometry::AutoPtr +Geometry::Ptr DPTransformer::createValidArea(const Geometry* roughAreaGeom) { - return Geometry::AutoPtr(roughAreaGeom->buffer(0.0)); + return Geometry::Ptr(roughAreaGeom->buffer(0.0)); } -CoordinateSequence::AutoPtr +CoordinateSequence::Ptr DPTransformer::transformCoordinates( const CoordinateSequence* coords, const Geometry* parent) @@ -108,17 +108,17 @@ const Coordinate::Vect* inputPts = coords->toVector(); assert(inputPts); - std::auto_ptr newPts = + std::unique_ptr newPts = DouglasPeuckerLineSimplifier::simplify(*inputPts, distanceTolerance); - return CoordinateSequence::AutoPtr( + return CoordinateSequence::Ptr( factory->getCoordinateSequenceFactory()->create( newPts.release() )); } -Geometry::AutoPtr +Geometry::Ptr DPTransformer::transformPolygon( const Polygon* geom, const Geometry* parent) @@ -128,7 +128,7 @@ std::cerr << "DPTransformer::transformPolygon(Polygon " << geom << ", Geometry " << parent << ");" << std::endl; #endif - Geometry::AutoPtr roughGeom(GeometryTransformer::transformPolygon(geom, parent)); + Geometry::Ptr roughGeom(GeometryTransformer::transformPolygon(geom, parent)); // don't try and correct if the parent is going to do this if ( dynamic_cast(parent) ) @@ -139,7 +139,7 @@ return createValidArea(roughGeom.get()); } -Geometry::AutoPtr +Geometry::Ptr DPTransformer::transformMultiPolygon( const MultiPolygon* geom, const Geometry* parent) @@ -147,7 +147,7 @@ #if GEOS_DEBUG std::cerr << "DPTransformer::transformMultiPolygon(MultiPolygon " << geom << ", Geometry " << parent << ");" << std::endl; #endif - Geometry::AutoPtr roughGeom(GeometryTransformer::transformMultiPolygon(geom, parent)); + Geometry::Ptr roughGeom(GeometryTransformer::transformMultiPolygon(geom, parent)); return createValidArea(roughGeom.get()); } @@ -158,7 +158,7 @@ //DouglasPeuckerSimplifier:: /*public static*/ -Geometry::AutoPtr +Geometry::Ptr DouglasPeuckerSimplifier::simplify(const Geometry* geom, double tolerance) { @@ -183,7 +183,7 @@ distanceTolerance = tol; } -Geometry::AutoPtr +Geometry::Ptr DouglasPeuckerSimplifier::getResultGeometry() { DPTransformer t(distanceTolerance); diff -Nru geos-3.6.2/src/simplify/LineSegmentIndex.cpp geos-3.7.1/src/simplify/LineSegmentIndex.cpp --- geos-3.6.2/src/simplify/LineSegmentIndex.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/simplify/LineSegmentIndex.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -19,13 +19,13 @@ #include #include #include -#include -#include +#include +#include #include #include #include -#include // for auto_ptr +#include // for unique_ptr #include #ifndef GEOS_DEBUG @@ -54,7 +54,7 @@ const LineSegment* querySeg; - auto_ptr< vector > items; + unique_ptr< vector > items; public: @@ -65,7 +65,7 @@ items(new vector()) {} - virtual ~LineSegmentVisitor() + ~LineSegmentVisitor() override { // nothing to do, LineSegments are not owned by us } @@ -86,7 +86,7 @@ return *this; } - void visitItem(void* item) + void visitItem(void* item) override { LineSegment* seg = (LineSegment*) item; if ( Envelope::intersects(seg->p0, seg->p1, @@ -96,9 +96,10 @@ } } - auto_ptr< vector > getItems() + unique_ptr< vector > getItems() { - return items; + // NOTE: Apparently, this is 'source' method giving up the object resource. + return std::move(items); } @@ -156,7 +157,7 @@ } /*public*/ -auto_ptr< vector > +unique_ptr< vector > LineSegmentIndex::query(const LineSegment* querySeg) const { Envelope env(querySeg->p0, querySeg->p1); @@ -164,7 +165,7 @@ LineSegmentVisitor visitor(querySeg); index->query(&env, visitor); - auto_ptr< vector > itemsFound = visitor.getItems(); + unique_ptr< vector > itemsFound = visitor.getItems(); return itemsFound; } diff -Nru geos-3.6.2/src/simplify/Makefile.in geos-3.7.1/src/simplify/Makefile.in --- geos-3.6.2/src/simplify/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/simplify/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -134,7 +137,15 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/DouglasPeuckerLineSimplifier.Plo \ + ./$(DEPDIR)/DouglasPeuckerSimplifier.Plo \ + ./$(DEPDIR)/LineSegmentIndex.Plo \ + ./$(DEPDIR)/TaggedLineSegment.Plo \ + ./$(DEPDIR)/TaggedLineString.Plo \ + ./$(DEPDIR)/TaggedLineStringSimplifier.Plo \ + ./$(DEPDIR)/TaggedLinesSimplifier.Plo \ + ./$(DEPDIR)/TopologyPreservingSimplifier.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -176,7 +187,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -265,6 +276,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -313,6 +325,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -333,6 +347,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -382,7 +397,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -434,8 +448,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -467,14 +481,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DouglasPeuckerLineSimplifier.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DouglasPeuckerSimplifier.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineSegmentIndex.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLineSegment.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLineString.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLineStringSimplifier.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLinesSimplifier.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TopologyPreservingSimplifier.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DouglasPeuckerLineSimplifier.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DouglasPeuckerSimplifier.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LineSegmentIndex.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLineSegment.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLineString.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLineStringSimplifier.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TaggedLinesSimplifier.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TopologyPreservingSimplifier.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -602,7 +622,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -698,7 +721,14 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DouglasPeuckerLineSimplifier.Plo + -rm -f ./$(DEPDIR)/DouglasPeuckerSimplifier.Plo + -rm -f ./$(DEPDIR)/LineSegmentIndex.Plo + -rm -f ./$(DEPDIR)/TaggedLineSegment.Plo + -rm -f ./$(DEPDIR)/TaggedLineString.Plo + -rm -f ./$(DEPDIR)/TaggedLineStringSimplifier.Plo + -rm -f ./$(DEPDIR)/TaggedLinesSimplifier.Plo + -rm -f ./$(DEPDIR)/TopologyPreservingSimplifier.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -744,7 +774,14 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DouglasPeuckerLineSimplifier.Plo + -rm -f ./$(DEPDIR)/DouglasPeuckerSimplifier.Plo + -rm -f ./$(DEPDIR)/LineSegmentIndex.Plo + -rm -f ./$(DEPDIR)/TaggedLineSegment.Plo + -rm -f ./$(DEPDIR)/TaggedLineString.Plo + -rm -f ./$(DEPDIR)/TaggedLineStringSimplifier.Plo + -rm -f ./$(DEPDIR)/TaggedLinesSimplifier.Plo + -rm -f ./$(DEPDIR)/TopologyPreservingSimplifier.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -765,8 +802,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/simplify/TaggedLineSegment.cpp geos-3.7.1/src/simplify/TaggedLineSegment.cpp --- geos-3.6.2/src/simplify/TaggedLineSegment.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/simplify/TaggedLineSegment.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -46,7 +46,7 @@ const geom::Coordinate& p1) : LineSegment(p0, p1), - parent(NULL), + parent(nullptr), index(0) { } @@ -59,7 +59,7 @@ { } -const geom::Geometry* +const geom::Geometry* TaggedLineSegment::getParent() const { return parent; diff -Nru geos-3.6.2/src/simplify/TaggedLinesSimplifier.cpp geos-3.7.1/src/simplify/TaggedLinesSimplifier.cpp --- geos-3.6.2/src/simplify/TaggedLinesSimplifier.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/simplify/TaggedLinesSimplifier.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/simplify/TaggedLineString.cpp geos-3.7.1/src/simplify/TaggedLineString.cpp --- geos-3.6.2/src/simplify/TaggedLineString.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/simplify/TaggedLineString.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -20,7 +20,7 @@ #include #include #include -#include // for auto_ptr destructor +#include // for unique_ptr destructor #include #include @@ -88,7 +88,7 @@ TaggedLineSegment* seg = new TaggedLineSegment( pts->getAt(i), pts->getAt(i+1), - parentLine, i); + parentLine, static_cast(i)); segs.push_back(seg); } @@ -111,7 +111,7 @@ } /*public*/ -const geom::LineString* +const geom::LineString* TaggedLineString::getParent() const { return parentLine; @@ -126,7 +126,7 @@ } /*public*/ -CoordinateSequence::AutoPtr +CoordinateSequence::Ptr TaggedLineString::getResultCoordinates() const { @@ -144,7 +144,7 @@ CoordVect* v = pts.release(); - return CoordinateSequence::AutoPtr(parentLine->getFactory()->getCoordinateSequenceFactory()->create(v)); + return CoordinateSequence::Ptr(parentLine->getFactory()->getCoordinateSequenceFactory()->create(v)); } @@ -180,13 +180,13 @@ std::size_t TaggedLineString::getResultSize() const { - unsigned resultSegsSize = resultSegs.size(); + auto resultSegsSize = resultSegs.size(); return resultSegsSize == 0 ? 0 : resultSegsSize + 1; } /*public*/ TaggedLineSegment* -TaggedLineString::getSegment(std::size_t i) +TaggedLineString::getSegment(std::size_t i) { return segs[i]; } @@ -214,7 +214,7 @@ } /*public*/ -auto_ptr +unique_ptr TaggedLineString::asLineString() const { return parentLine->getFactory()->createLineString( @@ -222,7 +222,7 @@ } /*public*/ -auto_ptr +unique_ptr TaggedLineString::asLinearRing() const { return parentLine->getFactory()->createLinearRing( @@ -231,7 +231,7 @@ /*public*/ void -TaggedLineString::addToResult(auto_ptr seg) +TaggedLineString::addToResult(unique_ptr seg) { #if GEOS_DEBUG cerr << "TaggedLineString[" << this << "] adding " diff -Nru geos-3.6.2/src/simplify/TaggedLineStringSimplifier.cpp geos-3.7.1/src/simplify/TaggedLineStringSimplifier.cpp --- geos-3.6.2/src/simplify/TaggedLineStringSimplifier.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/simplify/TaggedLineStringSimplifier.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -23,7 +23,7 @@ #include #include #include -//#include // for auto_ptr destructor +//#include // for unique_ptr destructor //#include //#include @@ -52,8 +52,8 @@ inputIndex(nInputIndex), outputIndex(nOutputIndex), li(new algorithm::LineIntersector()), - line(NULL), - linePts(NULL), + line(nullptr), + linePts(nullptr), distanceTolerance(0.0) { } @@ -100,14 +100,13 @@ { #if GEOS_DEBUG - std::cerr << "single segment, no flattening" + std::cerr << "single segment, no flattening" << std::endl; #endif - - auto_ptr newSeg(new + unique_ptr newSeg(new TaggedLineSegment(*(line->getSegment(i)))); - line->addToResult(newSeg); + line->addToResult(std::move(newSeg)); // leave this segment in the input index, for efficiency return; } @@ -135,7 +134,7 @@ std::size_t furthestPtIndex = findFurthestPoint(linePts, i, j, distance); #if GEOS_DEBUG - std::cerr << "furthest point " << furthestPtIndex + std::cerr << "furthest point " << furthestPtIndex << " at distance " << distance << std::endl; #endif @@ -155,33 +154,33 @@ if (isValidToSimplify) { - auto_ptr newSeg = flatten(i, j); + unique_ptr newSeg = flatten(i, j); #if GEOS_DEBUG - std::cerr << "isValidToSimplify, adding seg " + std::cerr << "isValidToSimplify, adding seg " << newSeg->p0 << ", " << newSeg->p1 << " to TaggedLineSegment["<addToResult(newSeg); + line->addToResult(std::move(newSeg)); return; } simplifySection(i, furthestPtIndex, depth); simplifySection(furthestPtIndex, j, depth); - + } /*private*/ -auto_ptr +unique_ptr TaggedLineStringSimplifier::flatten(std::size_t start, std::size_t end) { // make a new segment for the simplified geometry const Coordinate& p0 = linePts->getAt(start); const Coordinate& p1 = linePts->getAt(end); - auto_ptr newSeg(new TaggedLineSegment(p0, p1)); + unique_ptr newSeg(new TaggedLineSegment(p0, p1)); // update the indexes remove(line, start, end); outputIndex->add(newSeg.get()); @@ -209,7 +208,7 @@ TaggedLineStringSimplifier::hasBadOutputIntersection( const LineSegment& candidateSeg) { - auto_ptr< vector > querySegs = + unique_ptr< vector > querySegs = outputIndex->query(&candidateSeg); for (vector::iterator @@ -245,7 +244,7 @@ const vector& sectionIndex, const LineSegment& candidateSeg) { - auto_ptr< vector > querySegs = + unique_ptr< vector > querySegs = inputIndex->query(&candidateSeg); for (vector::iterator @@ -255,7 +254,7 @@ { assert(*it); assert(dynamic_cast(*it)); - TaggedLineSegment* querySeg = + TaggedLineSegment* querySeg = static_cast(*it); if (hasInteriorIntersection(*querySeg, candidateSeg)) @@ -327,7 +326,7 @@ const Coordinate& midPt = pts->getAt(k); double distance = seg.distance(midPt); #if GEOS_DEBUG - std::cerr << "dist to " << midPt + std::cerr << "dist to " << midPt << ": " << distance << std::endl; #endif @@ -342,7 +341,7 @@ } maxDistance = maxDist; return maxIndex; - + } } // namespace geos::simplify diff -Nru geos-3.6.2/src/simplify/TopologyPreservingSimplifier.cpp geos-3.7.1/src/simplify/TopologyPreservingSimplifier.cpp --- geos-3.6.2/src/simplify/TopologyPreservingSimplifier.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/simplify/TopologyPreservingSimplifier.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -18,20 +18,20 @@ #include #include -#include // for auto_ptr dtor +#include // for unique_ptr dtor #include -#include // for auto_ptr dtor -#include // for auto_ptr dtor +#include // for unique_ptr dtor +#include // for unique_ptr dtor // for LineStringTransformer inheritance #include // for LineStringMapBuilderFilter inheritance #include -#include // for auto_ptr dtor +#include // for unique_ptr dtor #include #include #include -#include // for auto_ptr +#include // for unique_ptr #include #include #include @@ -64,14 +64,14 @@ * @param nMap - reference to LinesMap instance. */ LineStringTransformer(LinesMap& simp); - + protected: - CoordinateSequence::AutoPtr transformCoordinates( + CoordinateSequence::Ptr transformCoordinates( const CoordinateSequence* coords, - const Geometry* parent); - -private: + const Geometry* parent) override; + +private: LinesMap& linestringMap; @@ -142,7 +142,7 @@ } /*protected*/ -CoordinateSequence::AutoPtr +CoordinateSequence::Ptr LineStringTransformer::transformCoordinates( const CoordinateSequence* coords, const Geometry* parent) @@ -155,7 +155,7 @@ { LinesMap::iterator it = linestringMap.find(parent); assert( it != linestringMap.end() ); - + TaggedLineString* taggedLine = it->second; #if GEOS_DEBUG std::cerr << "LineStringTransformer[" << this << "] " @@ -187,10 +187,7 @@ * This class populates the given LineString=>TaggedLineString map * with newly created TaggedLineString objects. * Users must take care of deleting the map's values (elem.second). - * Would be nice if auto_ptr<> worked in a container, but it doesn't :( - * - * mloskot: So, let's write our own "shared smart pointer" or better ask - * PCS about using Boost's shared_ptr. + * TODO: Consider container of unique_ptr * */ class LineStringMapBuilderFilter: public geom::GeometryComponentFilter @@ -206,7 +203,7 @@ * * geom a geometry of any type */ - void filter_ro(const Geometry* geom); + void filter_ro(const Geometry* geom) override; /** @@ -220,8 +217,8 @@ LinesMap& linestringMap; // Declare type as noncopyable - LineStringMapBuilderFilter(const LineStringMapBuilderFilter& other); - LineStringMapBuilderFilter& operator=(const LineStringMapBuilderFilter& rhs); + LineStringMapBuilderFilter(const LineStringMapBuilderFilter& other) = delete; + LineStringMapBuilderFilter& operator=(const LineStringMapBuilderFilter& rhs) = delete; }; /*public*/ @@ -237,7 +234,7 @@ { TaggedLineString* taggedLine; - if ( const LineString* ls = + if ( const LineString* ls = dynamic_cast(geom) ) { int minSize = ls->isClosed() ? 4 : 2; @@ -251,7 +248,7 @@ // Duplicated Geometry pointers shouldn't happen if ( ! linestringMap.insert(std::make_pair(geom, taggedLine)).second ) { - std::cerr << __FILE__ << ":" << __LINE__ + std::cerr << __FILE__ << ":" << __LINE__ << "Duplicated Geometry components detected" << std::endl; @@ -263,7 +260,7 @@ } // end of module-statics /*public static*/ -std::auto_ptr +std::unique_ptr TopologyPreservingSimplifier::simplify( const geom::Geometry* geom, double tolerance) @@ -295,16 +292,16 @@ /*public*/ -std::auto_ptr +std::unique_ptr TopologyPreservingSimplifier::getResultGeometry() { // empty input produces an empty result - if (inputGeom->isEmpty()) return std::auto_ptr(inputGeom->clone()); + if (inputGeom->isEmpty()) return std::unique_ptr(inputGeom->clone()); LinesMap linestringMap; - std::auto_ptr result; + std::unique_ptr result; try { LineStringMapBuilderFilter lsmbf(linestringMap); diff -Nru geos-3.6.2/src/triangulate/DelaunayTriangulationBuilder.cpp geos-3.7.1/src/triangulate/DelaunayTriangulationBuilder.cpp --- geos-3.6.2/src/triangulate/DelaunayTriangulationBuilder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/DelaunayTriangulationBuilder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -65,11 +65,11 @@ } DelaunayTriangulationBuilder::DelaunayTriangulationBuilder() : - siteCoords(NULL), tolerance(0.0), subdiv(NULL) + siteCoords(nullptr), tolerance(0.0), subdiv(nullptr) { } -DelaunayTriangulationBuilder::~DelaunayTriangulationBuilder() +DelaunayTriangulationBuilder::~DelaunayTriangulationBuilder() { if(siteCoords) delete siteCoords; @@ -99,7 +99,7 @@ void DelaunayTriangulationBuilder::create() { - if(subdiv != NULL || siteCoords == NULL) + if(subdiv != nullptr || siteCoords == nullptr) return; Envelope siteEnv; @@ -118,7 +118,7 @@ return *subdiv; } -std::auto_ptr +std::unique_ptr DelaunayTriangulationBuilder::getEdges( const GeometryFactory& geomFact) { @@ -126,7 +126,7 @@ return subdiv->getEdges(geomFact); } -std::auto_ptr +std::unique_ptr DelaunayTriangulationBuilder::getTriangles( const geom::GeometryFactory& geomFact) { @@ -141,10 +141,10 @@ std::vector coord_vector; coords.toVector(coord_vector); for(std::vector::iterator it= coord_vector.begin() ; it!=coord_vector.end() ; ++it) - { + { const Coordinate& coord = *it; env.expandToInclude(coord); - } + } return env; } diff -Nru geos-3.6.2/src/triangulate/IncrementalDelaunayTriangulator.cpp geos-3.7.1/src/triangulate/IncrementalDelaunayTriangulator.cpp --- geos-3.6.2/src/triangulate/IncrementalDelaunayTriangulator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/IncrementalDelaunayTriangulator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -30,12 +30,12 @@ IncrementalDelaunayTriangulator::IncrementalDelaunayTriangulator( QuadEdgeSubdivision *subdiv) : subdiv(subdiv), isUsingTolerance(subdiv->getTolerance() > 0.0) -{ +{ } void IncrementalDelaunayTriangulator::insertSites(const VertexList& vertices) { - for (VertexList::const_iterator x=vertices.begin(); + for (VertexList::const_iterator x=vertices.begin(); x != vertices.end(); ++x) { insertSite(*x); } @@ -58,17 +58,17 @@ if (subdiv->isVertexOfEdge(*e, v)) { // point is already in subdivision. - return *e; - } + return *e; + } else if (subdiv->isOnEdge(*e, v.getCoordinate())) { - // the point lies exactly on an edge, so delete the edge + // the point lies exactly on an edge, so delete the edge // (it will be replaced by a pair of edges which have the point as a vertex) e = &e->oPrev(); subdiv->remove(e->oNext()); } /** - * Connect the new point to the vertices of the containing triangle + * Connect the new point to the vertices of the containing triangle * (or quadrilateral, if the new point fell on an existing edge.) */ QuadEdge* base = &subdiv->makeEdge(e->orig(), v); diff -Nru geos-3.6.2/src/triangulate/Makefile.in geos-3.7.1/src/triangulate/Makefile.in --- geos-3.6.2/src/triangulate/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/triangulate/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,10 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/DelaunayTriangulationBuilder.Plo \ + ./$(DEPDIR)/IncrementalDelaunayTriangulator.Plo \ + ./$(DEPDIR)/VoronoiDiagramBuilder.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +179,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +268,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +317,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +339,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +389,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -430,8 +439,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -463,9 +472,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DelaunayTriangulationBuilder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IncrementalDelaunayTriangulator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VoronoiDiagramBuilder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DelaunayTriangulationBuilder.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IncrementalDelaunayTriangulator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VoronoiDiagramBuilder.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -593,7 +608,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -689,7 +707,9 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DelaunayTriangulationBuilder.Plo + -rm -f ./$(DEPDIR)/IncrementalDelaunayTriangulator.Plo + -rm -f ./$(DEPDIR)/VoronoiDiagramBuilder.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -735,7 +755,9 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/DelaunayTriangulationBuilder.Plo + -rm -f ./$(DEPDIR)/IncrementalDelaunayTriangulator.Plo + -rm -f ./$(DEPDIR)/VoronoiDiagramBuilder.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -756,8 +778,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/triangulate/quadedge/LastFoundQuadEdgeLocator.cpp geos-3.7.1/src/triangulate/quadedge/LastFoundQuadEdgeLocator.cpp --- geos-3.6.2/src/triangulate/quadedge/LastFoundQuadEdgeLocator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/LastFoundQuadEdgeLocator.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -24,7 +24,7 @@ namespace quadedge { //geos.triangulate.quadedge LastFoundQuadEdgeLocator::LastFoundQuadEdgeLocator(QuadEdgeSubdivision *subdiv) : - subdiv(subdiv), lastEdge(NULL) + subdiv(subdiv), lastEdge(nullptr) { } @@ -37,7 +37,7 @@ QuadEdge* LastFoundQuadEdgeLocator::findEdge() { - // assume there is an edge + // assume there is an edge return *(subdiv->getEdges().begin()); } diff -Nru geos-3.6.2/src/triangulate/quadedge/LocateFailureException.cpp geos-3.7.1/src/triangulate/quadedge/LocateFailureException.cpp --- geos-3.6.2/src/triangulate/quadedge/LocateFailureException.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/LocateFailureException.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/triangulate/quadedge/Makefile.in geos-3.7.1/src/triangulate/quadedge/Makefile.in --- geos-3.6.2/src/triangulate/quadedge/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -133,7 +136,13 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/LastFoundQuadEdgeLocator.Plo \ + ./$(DEPDIR)/LocateFailureException.Plo \ + ./$(DEPDIR)/QuadEdge.Plo ./$(DEPDIR)/QuadEdgeLocator.Plo \ + ./$(DEPDIR)/QuadEdgeSubdivision.Plo \ + ./$(DEPDIR)/TrianglePredicate.Plo \ + ./$(DEPDIR)/TriangleVisitor.Plo ./$(DEPDIR)/Vertex.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -175,7 +184,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -264,6 +273,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -312,6 +322,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -332,6 +344,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -381,7 +394,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -433,8 +445,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -466,14 +478,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LastFoundQuadEdgeLocator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LocateFailureException.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadEdge.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadEdgeLocator.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadEdgeSubdivision.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrianglePredicate.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TriangleVisitor.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Vertex.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LastFoundQuadEdgeLocator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/LocateFailureException.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadEdge.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadEdgeLocator.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/QuadEdgeSubdivision.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrianglePredicate.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TriangleVisitor.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Vertex.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -601,7 +619,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -697,7 +718,14 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/LastFoundQuadEdgeLocator.Plo + -rm -f ./$(DEPDIR)/LocateFailureException.Plo + -rm -f ./$(DEPDIR)/QuadEdge.Plo + -rm -f ./$(DEPDIR)/QuadEdgeLocator.Plo + -rm -f ./$(DEPDIR)/QuadEdgeSubdivision.Plo + -rm -f ./$(DEPDIR)/TrianglePredicate.Plo + -rm -f ./$(DEPDIR)/TriangleVisitor.Plo + -rm -f ./$(DEPDIR)/Vertex.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -743,7 +771,14 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/LastFoundQuadEdgeLocator.Plo + -rm -f ./$(DEPDIR)/LocateFailureException.Plo + -rm -f ./$(DEPDIR)/QuadEdge.Plo + -rm -f ./$(DEPDIR)/QuadEdgeLocator.Plo + -rm -f ./$(DEPDIR)/QuadEdgeSubdivision.Plo + -rm -f ./$(DEPDIR)/TrianglePredicate.Plo + -rm -f ./$(DEPDIR)/TriangleVisitor.Plo + -rm -f ./$(DEPDIR)/Vertex.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -764,8 +799,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/triangulate/quadedge/QuadEdge.cpp geos-3.7.1/src/triangulate/quadedge/QuadEdge.cpp --- geos-3.6.2/src/triangulate/quadedge/QuadEdge.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/QuadEdge.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -24,7 +24,7 @@ using namespace geos::geom; -std::auto_ptr +std::unique_ptr QuadEdge::makeEdge(const Vertex &o, const Vertex &d) { QuadEdge *q0 = new QuadEdge(); @@ -47,13 +47,13 @@ base->setOrig(o); base->setDest(d); - return std::auto_ptr(base); + return std::unique_ptr(base); } -std::auto_ptr -QuadEdge::connect(QuadEdge &a, QuadEdge &b) +std::unique_ptr +QuadEdge::connect(QuadEdge &a, QuadEdge &b) { - std::auto_ptr q0 = makeEdge(a.dest(), b.orig()); + std::unique_ptr q0 = makeEdge(a.dest(), b.orig()); splice(*q0, a.lNext()); splice(q0->sym(), b); return q0; @@ -89,7 +89,7 @@ e.setDest(b.dest()); } -QuadEdge::QuadEdge() : _rot(NULL), vertex(), next(NULL), data(NULL), isAlive(true) +QuadEdge::QuadEdge() : _rot(nullptr), vertex(), next(nullptr), data(nullptr), isAlive(true) { } QuadEdge::~QuadEdge() @@ -106,13 +106,13 @@ if(_rot->_rot->_rot) { delete _rot->_rot->_rot; - _rot->_rot->_rot = NULL; + _rot->_rot->_rot = nullptr; } delete _rot->_rot; - _rot->_rot = NULL; + _rot->_rot = nullptr; } delete _rot; - _rot = NULL; + _rot = nullptr; } } @@ -121,7 +121,7 @@ { if (orig().getCoordinate().compareTo(dest().getCoordinate()) <= 0) return *this; - else + else return sym(); } @@ -165,10 +165,10 @@ return false; } -std::auto_ptr +std::unique_ptr QuadEdge::toLineSegment() const { - return std::auto_ptr( + return std::unique_ptr( new geom::LineSegment(vertex.getCoordinate(), dest().getCoordinate())); } diff -Nru geos-3.6.2/src/triangulate/quadedge/QuadEdgeLocator.cpp geos-3.7.1/src/triangulate/quadedge/QuadEdgeLocator.cpp --- geos-3.6.2/src/triangulate/quadedge/QuadEdgeLocator.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/QuadEdgeLocator.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/triangulate/quadedge/QuadEdgeSubdivision.cpp geos-3.7.1/src/triangulate/quadedge/QuadEdgeSubdivision.cpp --- geos-3.6.2/src/triangulate/quadedge/QuadEdgeSubdivision.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/QuadEdgeSubdivision.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -109,22 +109,22 @@ void QuadEdgeSubdivision::initSubdiv(QuadEdge* initEdges[3]) { - std::auto_ptr tmp_auto_ptr; + std::unique_ptr tmp_ptr; // build initial subdivision from frame - tmp_auto_ptr = QuadEdge::makeEdge(frameVertex[0], frameVertex[1]); - initEdges[0] = tmp_auto_ptr.get(); - tmp_auto_ptr.release(); + tmp_ptr = QuadEdge::makeEdge(frameVertex[0], frameVertex[1]); + initEdges[0] = tmp_ptr.get(); + tmp_ptr.release(); - tmp_auto_ptr = QuadEdge::makeEdge(frameVertex[1], frameVertex[2]); - initEdges[1] = tmp_auto_ptr.get(); - tmp_auto_ptr.release(); + tmp_ptr = QuadEdge::makeEdge(frameVertex[1], frameVertex[2]); + initEdges[1] = tmp_ptr.get(); + tmp_ptr.release(); QuadEdge::splice(initEdges[0]->sym(), *initEdges[1]); - tmp_auto_ptr = QuadEdge::makeEdge(frameVertex[2], frameVertex[0]); - initEdges[2] = tmp_auto_ptr.get(); - tmp_auto_ptr.release(); + tmp_ptr = QuadEdge::makeEdge(frameVertex[2], frameVertex[0]); + initEdges[2] = tmp_ptr.get(); + tmp_ptr.release(); QuadEdge::splice(initEdges[1]->sym(), *initEdges[2]); QuadEdge::splice(initEdges[2]->sym(), *initEdges[0]); @@ -133,7 +133,7 @@ QuadEdge& QuadEdgeSubdivision::makeEdge(const Vertex &o, const Vertex &d) { - std::auto_ptr q0 = QuadEdge::makeEdge(o, d); + std::unique_ptr q0 = QuadEdge::makeEdge(o, d); QuadEdge *q0_ptr = q0.get(); q0.release(); @@ -145,7 +145,7 @@ QuadEdge& QuadEdgeSubdivision::connect(QuadEdge &a, QuadEdge &b) { - std::auto_ptr q0 = QuadEdge::connect(a, b); + std::unique_ptr q0 = QuadEdge::connect(a, b); QuadEdge *q0_ptr = q0.get(); q0.release(); @@ -175,7 +175,7 @@ ::geos::ignore_unused_variable_warning(startEdge); int iter = 0; - int maxIter = quadEdges.size(); + int maxIter = static_cast(quadEdges.size()); QuadEdge *e = startingEdges[0]; @@ -187,7 +187,7 @@ * invalid subdivision. So just fail completely. (An alternative would be * to perform an exhaustive search for the containing triangle, but this * would mask errors in the subdivision topology) - * + * * This can also happen if two vertices are located very close together, * since the orientation predicates may experience precision failures. */ @@ -216,8 +216,8 @@ { // find an edge containing one of the points QuadEdge *e = locator->locate(Vertex(p0)); - if (e == NULL) - return NULL; + if (e == nullptr) + return nullptr; // normalize so that p0 is origin of base edge QuadEdge *base = e; @@ -230,7 +230,7 @@ return locEdge; locEdge = &locEdge->oNext(); } while (locEdge != base); - return NULL; + return nullptr; } QuadEdge& @@ -310,7 +310,7 @@ return false; } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getPrimaryEdges(bool includeFrame) { QuadEdgeList *edges = new QuadEdgeList(); @@ -337,7 +337,7 @@ visitedEdges.insert(&edge->sym()); } } - return std::auto_ptr(edges); + return std::unique_ptr(edges); } QuadEdge** @@ -368,7 +368,7 @@ } while (curr != edge); if (isFrame && !includeFrame) - return NULL; + return nullptr; return triEdges; } @@ -383,7 +383,7 @@ { } - void visit(QuadEdge* triEdges[3]) + void visit(QuadEdge* triEdges[3]) override { geom::CoordinateSequence *coordSeq = coordSeqFact.create(4,0); for (int i = 0; i < 3; i++) { @@ -393,14 +393,14 @@ coordSeq->setAt(triEdges[0]->orig().getCoordinate(), 3); triCoords->push_back(coordSeq); } -}; +}; class QuadEdgeSubdivision::TriangleCircumcentreVisitor : public TriangleVisitor { public: - void visit(QuadEdge* triEdges[3]) + void visit(QuadEdge* triEdges[3]) override { Triangle triangle(triEdges[0]->orig().getCoordinate(), triEdges[1]->orig().getCoordinate(), triEdges[2]->orig().getCoordinate()); @@ -438,23 +438,23 @@ if (visitedEdges.find(edge) == visitedEdges.end()) { QuadEdge **triEdges = fetchTriangleToVisit(edge, edgeStack, includeFrame, visitedEdges); - if (triEdges != NULL) + if (triEdges != nullptr) triVisitor->visit(triEdges); } } } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getEdges(const geom::GeometryFactory& geomFact) { - std::auto_ptr quadEdges(getPrimaryEdges(false)); + std::unique_ptr quadEdges(getPrimaryEdges(false)); std::vector edges(quadEdges->size()); const CoordinateSequenceFactory *coordSeqFact = geomFact.getCoordinateSequenceFactory(); int i = 0; for (QuadEdgeSubdivision::QuadEdgeList::iterator it = quadEdges->begin(); it != quadEdges->end(); ++it) { QuadEdge *qe = *it; - CoordinateSequence *coordSeq = coordSeqFact->create((std::vector*)NULL);; + CoordinateSequence *coordSeq = coordSeqFact->create((std::vector*)nullptr);; coordSeq->add(qe->orig().getCoordinate()); coordSeq->add(qe->dest().getCoordinate()); @@ -469,10 +469,10 @@ for(std::vector::iterator it=edges.begin(); it!=edges.end(); ++it) delete *it; - return std::auto_ptr(result); + return std::unique_ptr(result); } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getTriangles( const GeometryFactory &geomFact) { TriList triPtsList; @@ -484,7 +484,7 @@ { CoordinateSequence *coordSeq = *it; Polygon *tri = geomFact.createPolygon( - geomFact.createLinearRing(coordSeq), NULL); + geomFact.createLinearRing(coordSeq), nullptr); tris.push_back(static_cast(tri)); } GeometryCollection* ret = geomFact.createGeometryCollection(tris); @@ -494,38 +494,38 @@ delete *it; tris.clear(); - return std::auto_ptr(ret); + return std::unique_ptr(ret); } //Methods for VoronoiDiagram -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getVoronoiDiagram(const geom::GeometryFactory& geomFact) { - std::auto_ptr< std::vector > vorCells = getVoronoiCellPolygons(geomFact); - return std::auto_ptr(geomFact.createGeometryCollection(vorCells.release())); + std::unique_ptr< std::vector > vorCells = getVoronoiCellPolygons(geomFact); + return std::unique_ptr(geomFact.createGeometryCollection(vorCells.release())); } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getVoronoiDiagramEdges(const geom::GeometryFactory& geomFact) { - std::auto_ptr< std::vector > vorCells = getVoronoiCellEdges(geomFact); - return std::auto_ptr(geomFact.createMultiLineString(vorCells.release())); + std::unique_ptr< std::vector > vorCells = getVoronoiCellEdges(geomFact); + return std::unique_ptr(geomFact.createMultiLineString(vorCells.release())); } -std::auto_ptr< std::vector > +std::unique_ptr< std::vector > QuadEdgeSubdivision::getVoronoiCellPolygons(const geom::GeometryFactory& geomFact) { - std::auto_ptr< std::vector > cells(new std::vector); + std::unique_ptr< std::vector > cells(new std::vector); TriangleCircumcentreVisitor* tricircumVisitor = new TriangleCircumcentreVisitor(); visitTriangles((TriangleVisitor*)tricircumVisitor, true); - std::auto_ptr edges = getVertexUniqueEdges(false); + std::unique_ptr edges = getVertexUniqueEdges(false); for(QuadEdgeSubdivision::QuadEdgeList::iterator it=edges->begin() ; it!=edges->end() ; ++it) { QuadEdge *qe = *it; - std::auto_ptr poly = getVoronoiCellPolygon(qe,geomFact); + std::unique_ptr poly = getVoronoiCellPolygon(qe,geomFact); cells->push_back(poly.release()); } @@ -533,19 +533,19 @@ return cells; } -std::auto_ptr< std::vector > +std::unique_ptr< std::vector > QuadEdgeSubdivision::getVoronoiCellEdges(const geom::GeometryFactory& geomFact) { - std::auto_ptr< std::vector > cells(new std::vector); + std::unique_ptr< std::vector > cells(new std::vector); TriangleCircumcentreVisitor* tricircumVisitor = new TriangleCircumcentreVisitor(); visitTriangles((TriangleVisitor*)tricircumVisitor, true); - std::auto_ptr edges = getVertexUniqueEdges(false); + std::unique_ptr edges = getVertexUniqueEdges(false); for(QuadEdgeSubdivision::QuadEdgeList::iterator it=edges->begin() ; it!=edges->end() ; ++it) { QuadEdge *qe = *it; - std::auto_ptr poly = getVoronoiCellEdge(qe,geomFact); + std::unique_ptr poly = getVoronoiCellEdge(qe,geomFact); cells->push_back(poly.release()); } @@ -553,7 +553,7 @@ return cells; } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getVoronoiCellPolygon(QuadEdge* qe ,const geom::GeometryFactory& geomFact) { std::vector cellPts; @@ -576,10 +576,10 @@ { coordList.insert(coordList.end(),*(coordList.end()),true); } - - std::auto_ptr pts = coordList.toCoordinateArray(); - std::auto_ptr cellPoly( - geomFact.createPolygon(geomFact.createLinearRing(new geom::CoordinateArraySequence(pts.release())),NULL)); + + std::unique_ptr pts = coordList.toCoordinateArray(); + std::unique_ptr cellPoly( + geomFact.createPolygon(geomFact.createLinearRing(new geom::CoordinateArraySequence(pts.release())),nullptr)); Vertex v = startQE->orig(); Coordinate c(0,0); @@ -588,7 +588,7 @@ return cellPoly; } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getVoronoiCellEdge(QuadEdge* qe ,const geom::GeometryFactory& geomFact) { std::vector cellPts; @@ -607,8 +607,8 @@ //for checking close ring in CoordList class: coordList.closeRing(); - std::auto_ptr pts = coordList.toCoordinateArray(); - std::auto_ptr cellEdge( + std::unique_ptr pts = coordList.toCoordinateArray(); + std::unique_ptr cellEdge( geomFact.createLineString(new geom::CoordinateArraySequence(pts.release()))); Vertex v = startQE->orig(); @@ -618,10 +618,10 @@ return cellEdge; } -std::auto_ptr +std::unique_ptr QuadEdgeSubdivision::getVertexUniqueEdges(bool includeFrame) { - std::auto_ptr edges(new QuadEdgeList()); + std::unique_ptr edges(new QuadEdgeList()); std::set visitedVertices; for(QuadEdgeSubdivision::QuadEdgeList::iterator it=quadEdges.begin() ; it!=quadEdges.end() ; ++it) { diff -Nru geos-3.6.2/src/triangulate/quadedge/TrianglePredicate.cpp geos-3.7.1/src/triangulate/quadedge/TrianglePredicate.cpp --- geos-3.6.2/src/triangulate/quadedge/TrianglePredicate.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/TrianglePredicate.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -25,21 +25,21 @@ bool TrianglePredicate::isInCircleNonRobust( - const Coordinate &a, const Coordinate &b, const Coordinate &c, + const Coordinate &a, const Coordinate &b, const Coordinate &c, const Coordinate &p) { - bool isInCircle = + bool isInCircle = (a.x * a.x + a.y * a.y) * triArea(b, c, p) - (b.x * b.x + b.y * b.y) * triArea(a, c, p) + (c.x * c.x + c.y * c.y) * triArea(a, b, p) - - (p.x * p.x + p.y * p.y) * triArea(a, b, c) + - (p.x * p.x + p.y * p.y) * triArea(a, b, c) > 0; return isInCircle; } bool TrianglePredicate::isInCircleNormalized( - const Coordinate &a, const Coordinate &b, const Coordinate &c, + const Coordinate &a, const Coordinate &b, const Coordinate &c, const Coordinate &p) { double adx = a.x - p.x; @@ -64,18 +64,18 @@ TrianglePredicate::triArea(const Coordinate &a, const Coordinate &b, const Coordinate &c) { - return (b.x - a.x) * (c.y - a.y) + return (b.x - a.x) * (c.y - a.y) - (b.y - a.y) * (c.x - a.x); } bool TrianglePredicate::isInCircleRobust( - const Coordinate &a, const Coordinate &b, const Coordinate &c, - const Coordinate &p) + const Coordinate &a, const Coordinate &b, const Coordinate &c, + const Coordinate &p) { //checkRobustInCircle(a, b, c, p); - // return isInCircleNonRobust(a, b, c, p); - return isInCircleNormalized(a, b, c, p); + // return isInCircleNonRobust(a, b, c, p); + return isInCircleNormalized(a, b, c, p); } } // namespace geos.geom diff -Nru geos-3.6.2/src/triangulate/quadedge/TriangleVisitor.cpp geos-3.7.1/src/triangulate/quadedge/TriangleVisitor.cpp --- geos-3.6.2/src/triangulate/quadedge/TriangleVisitor.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/TriangleVisitor.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/src/triangulate/quadedge/Vertex.cpp geos-3.7.1/src/triangulate/quadedge/Vertex.cpp --- geos-3.6.2/src/triangulate/quadedge/Vertex.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/src/triangulate/quadedge/Vertex.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -48,8 +48,8 @@ int Vertex::classify(const Vertex &p0, const Vertex &p1) { Vertex &p2 = *this; - std::auto_ptr a = p1.sub(p0); - std::auto_ptr b = p2.sub(p0); + std::unique_ptr a = p1.sub(p0); + std::unique_ptr b = p2.sub(p0); double sa = a->crossProduct(*b); if (sa > 0.0) @@ -83,7 +83,7 @@ return isCCW(e.orig(), e.dest()); } -std::auto_ptr Vertex::bisector(const Vertex &a, const Vertex &b) +std::unique_ptr Vertex::bisector(const Vertex &a, const Vertex &b) { // returns the perpendicular bisector of the line segment ab double dx = b.getX() - a.getX(); @@ -91,12 +91,12 @@ HCoordinate l1 = HCoordinate(a.getX() + dx / 2.0, a.getY() + dy / 2.0, 1.0); HCoordinate l2 = HCoordinate(a.getX() - dy + dx / 2.0, a.getY() + dx + dy / 2.0, 1.0); - return std::auto_ptr(new HCoordinate(l1, l2)); + return std::unique_ptr(new HCoordinate(l1, l2)); } double Vertex::circumRadiusRatio(const Vertex &b, const Vertex &c) { - std::auto_ptr x(circleCenter(b, c)); + std::unique_ptr x(circleCenter(b, c)); double radius = distance(*x, b); double edgeLength = distance(*this, b); double el = distance(b, c); @@ -113,24 +113,24 @@ return radius / edgeLength; } -std::auto_ptr Vertex::midPoint(const Vertex &a) +std::unique_ptr Vertex::midPoint(const Vertex &a) { double xm = (p.x + a.getX()) / 2.0; double ym = (p.y + a.getY()) / 2.0; double zm = (p.z + a.getZ()) / 2.0; - return std::auto_ptr(new Vertex(xm, ym, zm)); + return std::unique_ptr(new Vertex(xm, ym, zm)); } -std::auto_ptr Vertex::circleCenter(const Vertex &b, const Vertex &c) const +std::unique_ptr Vertex::circleCenter(const Vertex &b, const Vertex &c) const { - std::auto_ptr a(new Vertex(getX(), getY())); + std::unique_ptr a(new Vertex(getX(), getY())); // compute the perpendicular bisector of cord ab - std::auto_ptr cab = bisector(*a, b); + std::unique_ptr cab = bisector(*a, b); // compute the perpendicular bisector of cord bc - std::auto_ptr cbc = bisector(b, c); + std::unique_ptr cbc = bisector(b, c); // compute the intersection of the bisectors (circle radii) - std::auto_ptr hcc(new HCoordinate(*cab, *cbc)); - std::auto_ptr cc; + std::unique_ptr hcc(new HCoordinate(*cab, *cbc)); + std::unique_ptr cc; try { @@ -159,7 +159,7 @@ return z; } -double Vertex::interpolateZ(const Coordinate &p, const Coordinate &v0, +double Vertex::interpolateZ(const Coordinate &p, const Coordinate &v0, const Coordinate &v1, const Coordinate &v2) { double x0 = v0.x; @@ -177,7 +177,7 @@ return z; } -double Vertex::interpolateZ(const Coordinate &p, const Coordinate &p0, +double Vertex::interpolateZ(const Coordinate &p, const Coordinate &p0, const Coordinate &p1) { double segLen = p0.distance(p1); diff -Nru geos-3.6.2/src/triangulate/VoronoiDiagramBuilder.cpp geos-3.7.1/src/triangulate/VoronoiDiagramBuilder.cpp --- geos-3.6.2/src/triangulate/VoronoiDiagramBuilder.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/triangulate/VoronoiDiagramBuilder.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -38,7 +38,7 @@ VoronoiDiagramBuilder::VoronoiDiagramBuilder() : - tolerance(0.0), clipEnv(0) + tolerance(0.0), clipEnv(nullptr) { } @@ -46,32 +46,32 @@ { } -void +void VoronoiDiagramBuilder::setSites(const geom::Geometry& geom) { siteCoords.reset( DelaunayTriangulationBuilder::extractUniqueCoordinates(geom) ); } -void +void VoronoiDiagramBuilder::setSites(const geom::CoordinateSequence& coords) { siteCoords.reset( coords.clone() ); DelaunayTriangulationBuilder::unique(*siteCoords); } -void +void VoronoiDiagramBuilder::setClipEnvelope(const geom::Envelope* nClipEnv) { clipEnv = nClipEnv; } -void +void VoronoiDiagramBuilder::setTolerance(double nTolerance) { tolerance = nTolerance; } -void +void VoronoiDiagramBuilder::create() { if( subdiv.get() ) return; @@ -83,7 +83,7 @@ if(clipEnv) diagramEnv.expandToInclude(clipEnv); - std::auto_ptr vertices ( + std::unique_ptr vertices ( DelaunayTriangulationBuilder::toVertices(*siteCoords) ); @@ -92,41 +92,42 @@ triangulator.insertSites(*vertices); } -std::auto_ptr +std::unique_ptr VoronoiDiagramBuilder::getSubdivision() { create(); - return subdiv; + // NOTE: Apparently, this is 'source' method giving up the object resource. + return std::move(subdiv); } -std::auto_ptr +std::unique_ptr VoronoiDiagramBuilder::getDiagram(const geom::GeometryFactory& geomFact) { create(); - std::auto_ptr polys = subdiv->getVoronoiDiagram(geomFact); + std::unique_ptr polys = subdiv->getVoronoiDiagram(geomFact); return clipGeometryCollection(*polys,diagramEnv); } -std::auto_ptr +std::unique_ptr VoronoiDiagramBuilder::getDiagramEdges(const geom::GeometryFactory& geomFact) { create(); - std::auto_ptr edges = subdiv->getVoronoiDiagramEdges(geomFact); - if ( edges->isEmpty() ) return std::auto_ptr(edges.release()); - std::auto_ptr clipPoly ( geomFact.toGeometry(&diagramEnv) ); - std::auto_ptr clipped( clipPoly->intersection(edges.get()) ); + std::unique_ptr edges = subdiv->getVoronoiDiagramEdges(geomFact); + if ( edges->isEmpty() ) return std::unique_ptr(edges.release()); + std::unique_ptr clipPoly ( geomFact.toGeometry(&diagramEnv) ); + std::unique_ptr clipped( clipPoly->intersection(edges.get()) ); return clipped; } -std::auto_ptr +std::unique_ptr VoronoiDiagramBuilder::clipGeometryCollection(const geom::GeometryCollection& geom, const geom::Envelope& clipEnv) { - std::auto_ptr clipPoly ( geom.getFactory()->toGeometry(&clipEnv) ); - std::auto_ptr< std::vector >clipped(new std::vector); + std::unique_ptr clipPoly ( geom.getFactory()->toGeometry(&clipEnv) ); + std::unique_ptr< std::vector >clipped(new std::vector); for(std::size_t i=0 ; i < geom.getNumGeometries() ; i++) { const Geometry* g = geom.getGeometryN(i); - std::auto_ptr result; + std::unique_ptr result; // don't clip unless necessary if(clipEnv.contains(g->getEnvelopeInternal())) { @@ -144,7 +145,7 @@ clipped->push_back(result.release()); } } - return std::auto_ptr(geom.getFactory()->createGeometryCollection(clipped.release())); + return std::unique_ptr(geom.getFactory()->createGeometryCollection(clipped.release())); } } //namespace geos.triangulate diff -Nru geos-3.6.2/src/util/Assert.cpp geos-3.7.1/src/util/Assert.cpp --- geos-3.6.2/src/util/Assert.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/util/Assert.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ diff -Nru geos-3.6.2/src/util/GeometricShapeFactory.cpp geos-3.7.1/src/util/GeometricShapeFactory.cpp --- geos-3.6.2/src/util/GeometricShapeFactory.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/util/GeometricShapeFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -47,7 +47,7 @@ } void -GeometricShapeFactory::setBase(const Coordinate& base) +GeometricShapeFactory::setBase(const Coordinate& base) { dim.setBase(base); } @@ -89,7 +89,7 @@ int ipt = 0; int nSide = nPts / 4; if (nSide < 1) nSide = 1; - std::auto_ptr env ( dim.getEnvelope() ); + std::unique_ptr env ( dim.getEnvelope() ); double XsegLen = env->getWidth() / nSide; double YsegLen = env->getHeight() / nSide; @@ -99,34 +99,34 @@ for (i = 0; i < nSide; i++) { double x = env->getMinX() + i * XsegLen; double y = env->getMinY(); - (*vc)[ipt++] = coord(x, y); + (*vc)[ipt++] = coord(x, y); } for (i = 0; i < nSide; i++) { double x = env->getMaxX(); double y = env->getMinY() + i * YsegLen; - (*vc)[ipt++] = coord(x, y); + (*vc)[ipt++] = coord(x, y); } for (i = 0; i < nSide; i++) { double x = env->getMaxX() - i * XsegLen; double y = env->getMaxY(); - (*vc)[ipt++] = coord(x, y); + (*vc)[ipt++] = coord(x, y); } for (i = 0; i < nSide; i++) { double x = env->getMinX(); double y = env->getMaxY() - i * YsegLen; - (*vc)[ipt++] = coord(x, y); + (*vc)[ipt++] = coord(x, y); } (*vc)[ipt++] = (*vc)[0]; CoordinateSequence *cs = geomFact->getCoordinateSequenceFactory()->create(vc); LinearRing* ring=geomFact->createLinearRing(cs); - Polygon* poly=geomFact->createPolygon(ring, NULL); + Polygon* poly=geomFact->createPolygon(ring, nullptr); return poly; } Polygon* GeometricShapeFactory::createCircle() { - std::auto_ptr env ( dim.getEnvelope() ); + std::unique_ptr env ( dim.getEnvelope() ); double xRadius = env->getWidth() / 2.0; double yRadius = env->getHeight() / 2.0; @@ -145,14 +145,14 @@ (*pts)[iPt++] = (*pts)[0]; CoordinateSequence *cs=geomFact->getCoordinateSequenceFactory()->create(pts); LinearRing* ring = geomFact->createLinearRing(cs); - Polygon* poly=geomFact->createPolygon(ring,NULL); + Polygon* poly=geomFact->createPolygon(ring,nullptr); return poly; } LineString* GeometricShapeFactory::createArc(double startAng, double angExtent) { - std::auto_ptr env ( dim.getEnvelope() ); + std::unique_ptr env ( dim.getEnvelope() ); double xRadius = env->getWidth() / 2.0; double yRadius = env->getHeight() / 2.0; @@ -161,8 +161,8 @@ env.reset(); double angSize = angExtent; - if (angSize <= 0.0 || angSize > 2 * M_PI) - angSize = 2 * M_PI; + if (angSize <= 0.0 || angSize > 2 * M_PI) + angSize = 2 * M_PI; double angInc = angSize / ( nPts - 1 ); vector *pts = new vector(nPts); @@ -181,7 +181,7 @@ Polygon* GeometricShapeFactory::createArcPolygon(double startAng, double angExtent) { - std::auto_ptr env ( dim.getEnvelope() ); + std::unique_ptr env ( dim.getEnvelope() ); double xRadius = env->getWidth() / 2.0; double yRadius = env->getHeight() / 2.0; @@ -190,8 +190,8 @@ env.reset(); double angSize = angExtent; - if (angSize <= 0.0 || angSize > 2 * M_PI) - angSize = 2 * M_PI; + if (angSize <= 0.0 || angSize > 2 * M_PI) + angSize = 2 * M_PI; double angInc = angSize / ( nPts - 1 ); vector *pts = new vector(nPts + 2); @@ -207,7 +207,7 @@ CoordinateSequence *cs = geomFact->getCoordinateSequenceFactory()->create(pts); LinearRing* ring = geomFact->createLinearRing(cs); - Polygon* geom = geomFact->createPolygon(ring, 0); + Polygon* geom = geomFact->createPolygon(ring, nullptr); return geom; } diff -Nru geos-3.6.2/src/util/Interrupt.cpp geos-3.7.1/src/util/Interrupt.cpp --- geos-3.6.2/src/util/Interrupt.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/src/util/Interrupt.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2012 Sandro Santilli + * Copyright (C) 2012 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -19,7 +19,7 @@ /* Could these be portably stored in thread-specific space ? */ bool requested = false; - geos::util::Interrupt::Callback *callback = 0; + geos::util::Interrupt::Callback *callback = nullptr; } namespace geos { diff -Nru geos-3.6.2/src/util/Makefile.in geos-3.7.1/src/util/Makefile.in --- geos-3.6.2/src/util/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/src/util/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,11 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/Assert.Plo \ + ./$(DEPDIR)/GeometricShapeFactory.Plo \ + ./$(DEPDIR)/Interrupt.Plo ./$(DEPDIR)/Profiler.Plo \ + ./$(DEPDIR)/math.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +180,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +269,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +318,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +340,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +390,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -428,8 +438,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -461,11 +471,17 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Assert.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometricShapeFactory.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Interrupt.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Profiler.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/math.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Assert.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometricShapeFactory.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Interrupt.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Profiler.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/math.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -593,7 +609,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -689,7 +708,11 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Assert.Plo + -rm -f ./$(DEPDIR)/GeometricShapeFactory.Plo + -rm -f ./$(DEPDIR)/Interrupt.Plo + -rm -f ./$(DEPDIR)/Profiler.Plo + -rm -f ./$(DEPDIR)/math.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -735,7 +758,11 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/Assert.Plo + -rm -f ./$(DEPDIR)/GeometricShapeFactory.Plo + -rm -f ./$(DEPDIR)/Interrupt.Plo + -rm -f ./$(DEPDIR)/Profiler.Plo + -rm -f ./$(DEPDIR)/math.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -756,8 +783,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/src/util/math.cpp geos-3.7.1/src/util/math.cpp --- geos-3.6.2/src/util/math.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/util/math.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -52,7 +52,7 @@ { double n; double f = std::fabs(std::modf(val, &n)); - + if (val >= 0) { if (f < 0.5) { @@ -74,7 +74,7 @@ } // java_math_round /* - * Implementation of rint() + * Implementation of rint() */ double rint_vc(double val) diff -Nru geos-3.6.2/src/util/Profiler.cpp geos-3.7.1/src/util/Profiler.cpp --- geos-3.6.2/src/util/Profiler.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/src/util/Profiler.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -34,32 +34,6 @@ { } -#if 0 -void -Profile::start() -{ - gettimeofday(&starttime, NULL); -} - -void -Profile::stop() -{ - gettimeofday(&stoptime, NULL); - double elapsed = 1000000*(stoptime.tv_sec-starttime.tv_sec)+ - (stoptime.tv_usec-starttime.tv_usec); - - timings.push_back(elapsed); - totaltime += elapsed; - if ( timings.size() == 1 ) max = min = elapsed; - else - { - if ( elapsed > max ) max = elapsed; - if ( elapsed < min ) min = elapsed; - } - avg = totaltime / timings.size(); -} -#endif - double Profile::getMax() const { diff -Nru geos-3.6.2/swig/geos.i geos-3.7.1/swig/geos.i --- geos-3.6.2/swig/geos.i 2017-07-25 09:27:33.000000000 +0000 +++ geos-3.7.1/swig/geos.i 2018-11-29 23:05:45.000000000 +0000 @@ -28,17 +28,17 @@ to reuse the originals but we can't without exposing the whole c api. */ #define GEOS_VERSION_MAJOR 3 -#define GEOS_VERSION_MINOR 6 -#define GEOS_VERSION_PATCH 2 -#define GEOS_VERSION "3.6.2" +#define GEOS_VERSION_MINOR 7 +#define GEOS_VERSION_PATCH 1 +#define GEOS_VERSION "3.7.1" #define GEOS_JTS_PORT "1.13.0" #define GEOS_CAPI_VERSION_MAJOR 1 -#define GEOS_CAPI_VERSION_MINOR 10 -#define GEOS_CAPI_VERSION_PATCH 2 +#define GEOS_CAPI_VERSION_MINOR 11 +#define GEOS_CAPI_VERSION_PATCH 1 #define GEOS_CAPI_FIRST_INTERFACE GEOS_CAPI_VERSION_MAJOR #define GEOS_CAPI_LAST_INTERFACE (GEOS_CAPI_VERSION_MAJOR+GEOS_CAPI_VERSION_MINOR) -#define GEOS_CAPI_VERSION "3.6.2-CAPI-1.10.2" +#define GEOS_CAPI_VERSION "3.7.1-CAPI-1.11.1" /* Supported geometry types */ enum GEOSGeomTypes { diff -Nru geos-3.6.2/swig/Makefile.in geos-3.7.1/swig/Makefile.in --- geos-3.6.2/swig/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/swig/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -98,6 +98,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -147,7 +150,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -235,6 +238,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -283,6 +287,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -303,6 +309,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -352,7 +359,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -390,8 +396,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -510,7 +516,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/swig/python/Makefile.in geos-3.7.1/swig/python/Makefile.in --- geos-3.6.2/swig/python/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/swig/python/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -94,6 +94,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -169,7 +172,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/_geos_la-geos_wrap.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -207,7 +211,7 @@ am__pkgpython_PYTHON_DIST = geos.py am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile) am__pep3147_tweak = \ - sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|' + sed -e 's|\.py$$||' -e 's|[^/]*$$|&.*.pyc\n&.*.pyo|' py_compile = $(top_srcdir)/py-compile DATA = $(python_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ @@ -217,7 +221,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -307,6 +311,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -355,6 +360,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -375,6 +382,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -424,7 +432,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -482,8 +489,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -539,7 +546,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/_geos_la-geos_wrap.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/_geos_la-geos_wrap.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cxx.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -607,20 +620,15 @@ dir='$(DESTDIR)$(pkgpythondir)'; \ pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \ pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \ - py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \ - echo "$$py_files_pep3147";\ - pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \ - pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \ st=0; \ - for files in \ - "$$py_files" \ - "$$pyc_files" \ - "$$pyo_files" \ - "$$pyc_files_pep3147" \ - "$$pyo_files_pep3147" \ - ; do \ + for files in "$$py_files" "$$pyc_files" "$$pyo_files"; do \ $(am__uninstall_files_from_dir) || st=$$?; \ done; \ + dir='$(DESTDIR)$(pkgpythondir)/__pycache__'; \ + echo "$$py_files" | $(am__pep3147_tweak) | $(am__base_list) | \ + while read files; do \ + $(am__uninstall_files_from_dir) || st=$$?; \ + done || exit $$?; \ exit $$st install-pythonDATA: $(python_DATA) @$(NORMAL_INSTALL) @@ -743,7 +751,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -846,7 +857,7 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/_geos_la-geos_wrap.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -892,7 +903,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/_geos_la-geos_wrap.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -915,8 +926,8 @@ .MAKE: $(am__recursive_targets) all check install install-am \ install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-pkgpyexecLTLIBRARIES cscopelist-am ctags ctags-am \ distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ diff -Nru geos-3.6.2/swig/python/tests/Makefile.in geos-3.7.1/swig/python/tests/Makefile.in --- geos-3.6.2/swig/python/tests/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/swig/python/tests/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,6 +92,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -170,6 +173,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -218,6 +222,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -238,6 +244,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -287,7 +294,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -330,8 +336,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -355,7 +361,10 @@ cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/swig/ruby/Makefile.am geos-3.7.1/swig/ruby/Makefile.am --- geos-3.6.2/swig/ruby/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/swig/ruby/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -17,18 +17,18 @@ rubyextensiondirdir = $(RUBY_EXTENSION_DIR) # Setup includes -AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) +AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) -I$(RUBY_ARCH_INCLUDE_DIR) # Build Ruby module as shared library rubyextensiondir_LTLIBRARIES = geos.la geos_la_SOURCES = geos_wrap.cxx -geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la $(RUBY_SO_NAME) +geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la -l$(RUBY_SO_NAME) # Only need to grab the capi header files geos_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir)/capi # Specify -module and -avoid-version so we can create a file called geos.dll/so which is what Ruby wants -geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) +geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) -L$(RUBY_ARCH_LIB_DIR) if ENABLE_SWIG diff -Nru geos-3.6.2/swig/ruby/Makefile.in geos-3.7.1/swig/ruby/Makefile.in --- geos-3.6.2/swig/ruby/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/swig/ruby/Makefile.in 2018-11-29 23:05:19.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -137,10 +140,8 @@ } am__installdirs = "$(DESTDIR)$(rubyextensiondirdir)" LTLIBRARIES = $(rubyextensiondir_LTLIBRARIES) -am__DEPENDENCIES_1 = @ENABLE_RUBY_TRUE@geos_la_DEPENDENCIES = \ -@ENABLE_RUBY_TRUE@ $(top_builddir)/capi/libgeos_c.la \ -@ENABLE_RUBY_TRUE@ $(am__DEPENDENCIES_1) +@ENABLE_RUBY_TRUE@ $(top_builddir)/capi/libgeos_c.la am__geos_la_SOURCES_DIST = geos_wrap.cxx @ENABLE_RUBY_TRUE@am_geos_la_OBJECTS = geos_la-geos_wrap.lo geos_la_OBJECTS = $(am_geos_la_OBJECTS) @@ -166,7 +167,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/geos_la-geos_wrap.Plo am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -208,7 +210,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -297,6 +299,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -345,6 +348,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -365,6 +370,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -414,7 +420,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -444,18 +449,18 @@ @ENABLE_RUBY_TRUE@rubyextensiondirdir = $(RUBY_EXTENSION_DIR) # Setup includes -@ENABLE_RUBY_TRUE@AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) +@ENABLE_RUBY_TRUE@AM_CPPFLAGS = -I$(RUBY_INCLUDE_DIR) -I$(RUBY_INCLUDE_DIR)/$(RUBY_SITE_ARCH) -I$(RUBY_ARCH_INCLUDE_DIR) # Build Ruby module as shared library @ENABLE_RUBY_TRUE@rubyextensiondir_LTLIBRARIES = geos.la @ENABLE_RUBY_TRUE@geos_la_SOURCES = geos_wrap.cxx -@ENABLE_RUBY_TRUE@geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la $(RUBY_SO_NAME) +@ENABLE_RUBY_TRUE@geos_la_LIBADD = $(top_builddir)/capi/libgeos_c.la -l$(RUBY_SO_NAME) # Only need to grab the capi header files @ENABLE_RUBY_TRUE@geos_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir)/capi # Specify -module and -avoid-version so we can create a file called geos.dll/so which is what Ruby wants -@ENABLE_RUBY_TRUE@geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) +@ENABLE_RUBY_TRUE@geos_la_LDFLAGS = -no-undefined -module -avoid-version -L$(RUBY_LIB_DIR) -L$(RUBY_ARCH_LIB_DIR) all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-recursive @@ -478,8 +483,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -535,7 +540,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geos_la-geos_wrap.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geos_la-geos_wrap.Plo@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cxx.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -670,7 +681,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -773,7 +787,7 @@ clean-rubyextensiondirLTLIBRARIES mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/geos_la-geos_wrap.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -819,7 +833,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/geos_la-geos_wrap.Plo -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -841,8 +855,8 @@ .MAKE: $(am__recursive_targets) all check install install-am \ install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-rubyextensiondirLTLIBRARIES cscopelist-am ctags ctags-am \ distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ diff -Nru geos-3.6.2/swig/ruby/test/Makefile.in geos-3.7.1/swig/ruby/test/Makefile.in --- geos-3.6.2/swig/ruby/test/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/swig/ruby/test/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,6 +92,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -170,6 +173,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -218,6 +222,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -238,6 +244,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -287,7 +294,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -342,8 +348,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -367,7 +373,10 @@ cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/test-driver geos-3.7.1/test-driver --- geos-3.6.2/test-driver 2016-09-03 18:32:16.000000000 +0000 +++ geos-3.7.1/test-driver 2017-09-05 18:37:11.000000000 +0000 @@ -3,7 +3,7 @@ scriptversion=2013-07-13.22; # UTC -# Copyright (C) 2011-2013 Free Software Foundation, Inc. +# Copyright (C) 2011-2014 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -106,11 +106,14 @@ # Test script is run here. "$@" >$log_file 2>&1 estatus=$? + if test $enable_hard_errors = no && test $estatus -eq 99; then - estatus=1 + tweaked_estatus=1 +else + tweaked_estatus=$estatus fi -case $estatus:$expect_failure in +case $tweaked_estatus:$expect_failure in 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; 0:*) col=$grn res=PASS recheck=no gcopy=no;; 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; @@ -119,6 +122,12 @@ *:*) col=$red res=FAIL recheck=yes gcopy=yes;; esac +# Report the test outcome and exit status in the logs, so that one can +# know whether the test passed or failed simply by looking at the '.log' +# file, without the need of also peaking into the corresponding '.trs' +# file (automake bug#11814). +echo "$res $test_name (exit status: $estatus)" >>$log_file + # Report outcome to console. echo "${col}${res}${std}: $test_name" diff -Nru geos-3.6.2/tests/bigtest/bigtest.h geos-3.7.1/tests/bigtest/bigtest.h --- geos-3.6.2/tests/bigtest/bigtest.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/bigtest/bigtest.h 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/tests/bigtest/bug234.cpp geos-3.7.1/tests/bigtest/bug234.cpp --- geos-3.6.2/tests/bigtest/bug234.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/bigtest/bug234.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -12,7 +12,7 @@ using namespace std; int main() { - GeometryFactory::unique_ptr factory = GeometryFactory::create(); + GeometryFactory::Ptr factory = GeometryFactory::create(); vector< Geometry * > *polys1 = new vector(); vector< Geometry * > *polys2 = new vector(); @@ -46,4 +46,4 @@ delete mpoly1; delete mpoly2; delete intersection; -} +} diff -Nru geos-3.6.2/tests/bigtest/CMakeLists.txt geos-3.7.1/tests/bigtest/CMakeLists.txt --- geos-3.6.2/tests/bigtest/CMakeLists.txt 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/bigtest/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -6,7 +6,7 @@ # # This is free software; you can redistribute and/or modify it under # the terms of the GNU Lesser General Public Licence as published -# by the Free Software Foundation. +# by the Free Software Foundation. # See the COPYING file for more information. # ################################################################################# @@ -19,26 +19,26 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/io/markup) - add_executable(bug234 bug234.cpp) + add_executable(test_bug234 bug234.cpp) - if(APPLE AND GEOS_ENABLE_MACOSX_FRAMEWORK) - target_link_libraries(bug234 GEOS) - else() - target_link_libraries(bug234 geos) - endif() + if(APPLE AND GEOS_ENABLE_MACOSX_FRAMEWORK) + target_link_libraries(test_bug234 GEOS) + else() + target_link_libraries(test_bug234 geos) + endif() - add_executable(TestSweepLineSpeed + add_executable(test_sweep_line_speed TestSweepLineSpeed.cpp GeometryTestFactory.cpp bigtest.h) if(APPLE AND GEOS_ENABLE_MACOSX_FRAMEWORK) - target_link_libraries(TestSweepLineSpeed GEOS) + target_link_libraries(test_sweep_line_speed GEOS) else() - target_link_libraries(TestSweepLineSpeed geos) + target_link_libraries(test_sweep_line_speed geos) endif() - add_test(bug234 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/bug234) - add_test(TestSweepLineSpeed ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/TestSweepLineSpeed) + add_test(test_bug234 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_bug234) + add_test(test_sweep_line_speed ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_sweep_line_speed) set(STATUS_RESULT "ON") endif() diff -Nru geos-3.6.2/tests/bigtest/GeometryTestFactory.cpp geos-3.7.1/tests/bigtest/GeometryTestFactory.cpp --- geos-3.6.2/tests/bigtest/GeometryTestFactory.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/bigtest/GeometryTestFactory.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -25,7 +25,7 @@ Polygon* GeometryTestFactory::createBox(GeometryFactory *fact,double minx,double miny,int nSide,double segLen) { CoordinateSequence *pts=createBox(minx, miny, nSide, segLen); - return fact->createPolygon(fact->createLinearRing(pts),NULL); + return fact->createPolygon(fact->createLinearRing(pts),nullptr); } CoordinateSequence* GeometryTestFactory::createBox(double minx, double miny,int nSide,double segLen) { @@ -66,7 +66,7 @@ * @param nPts the number of points in the star */ CoordinateSequence* GeometryTestFactory::createCircle(double basex,double basey,double size,int nPts) { - CoordinateSequence *pts=new CoordinateArraySequence(nPts+1); + CoordinateSequence *pts=new CoordinateArraySequence(nPts+1); double len=size/2.0; for(int i=0;icreatePolygon(fact->createLinearRing(pts),NULL); + return fact->createPolygon(fact->createLinearRing(pts),nullptr); } /** @@ -102,7 +102,7 @@ if (nArmPt<5) nArmPt=5; //int nPts2=nArmPt*nArms; - CoordinateSequence *pts=new CoordinateArraySequence(); + CoordinateSequence *pts=new CoordinateArraySequence(); double starAng=0.0; @@ -128,5 +128,5 @@ Polygon* GeometryTestFactory::createSineStar(GeometryFactory *fact,double basex,double basey,double size,double armLen,int nArms,int nPts){ CoordinateSequence *pts=createSineStar(basex, basey, size, armLen, nArms, nPts); - return fact->createPolygon(fact->createLinearRing(pts),NULL); + return fact->createPolygon(fact->createLinearRing(pts),nullptr); } diff -Nru geos-3.6.2/tests/bigtest/Makefile.in geos-3.7.1/tests/bigtest/Makefile.in --- geos-3.6.2/tests/bigtest/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/bigtest/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -133,7 +136,9 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/GeometryTestFactory.Po \ + ./$(DEPDIR)/TestSweepLineSpeed.Po ./$(DEPDIR)/bug234.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -240,6 +245,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -288,6 +294,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -308,6 +316,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -361,7 +370,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -402,8 +410,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -438,9 +446,15 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryTestFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TestSweepLineSpeed.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bug234.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GeometryTestFactory.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TestSweepLineSpeed.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bug234.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -521,7 +535,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -592,7 +609,9 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/GeometryTestFactory.Po + -rm -f ./$(DEPDIR)/TestSweepLineSpeed.Po + -rm -f ./$(DEPDIR)/bug234.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -638,7 +657,9 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/GeometryTestFactory.Po + -rm -f ./$(DEPDIR)/TestSweepLineSpeed.Po + -rm -f ./$(DEPDIR)/bug234.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -659,7 +680,7 @@ .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \ ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ diff -Nru geos-3.6.2/tests/bigtest/TestSweepLineSpeed.cpp geos-3.7.1/tests/bigtest/TestSweepLineSpeed.cpp --- geos-3.6.2/tests/bigtest/TestSweepLineSpeed.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/bigtest/TestSweepLineSpeed.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -38,7 +38,7 @@ double armLen=50.0; int nArms=10; Polygon *poly=GeometryTestFactory::createSineStar(fact,0.0,0.0,size,armLen,nArms,nPts); - Polygon *box=GeometryTestFactory::createSineStar(fact,0.0,size/2,size,armLen,nArms,nPts); + Polygon *box=GeometryTestFactory::createSineStar(fact,0.0,size/2,size,armLen,nArms,nPts); //Polygon *box=GeometryTestFactory::createBox(fact,0,0,1,100.0); startTime=clock(); @@ -47,13 +47,13 @@ double totalTime=(double)(endTime-startTime); printf( "n Pts: %i Executed in %6.0f ms.\n",nPts,totalTime); //cout << "n Pts: " << nPts << " Executed in " << totalTime << endl; - + // FIXME - mloskot: Why generated test geometries are not destroyed?" } int main(int /* argc */, char** /* argv[] */) { - GeometryFactory::unique_ptr factptr = GeometryFactory::create(); + GeometryFactory::Ptr factptr = GeometryFactory::create(); GeometryFactory* fact = factptr.get(); run(1000,fact); diff -Nru geos-3.6.2/tests/CMakeLists.txt geos-3.7.1/tests/CMakeLists.txt --- geos-3.6.2/tests/CMakeLists.txt 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -6,7 +6,7 @@ # # This is free software; you can redistribute and/or modify it under # the terms of the GNU Lesser General Public Licence as published -# by the Free Software Foundation. +# by the Free Software Foundation. # See the COPYING file for more information. # ################################################################################# @@ -14,6 +14,4 @@ add_subdirectory(unit) add_subdirectory(xmltester) add_subdirectory(bigtest) -# TODO: add other test programs - - +add_subdirectory(perf) diff -Nru geos-3.6.2/tests/geostest/geostest.c geos-3.7.1/tests/geostest/geostest.c --- geos-3.6.2/tests/geostest/geostest.c 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/geostest/geostest.c 2018-10-19 22:32:06.000000000 +0000 @@ -10,7 +10,7 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * ***********************************************************************/ @@ -337,6 +337,12 @@ /* Hausdorff Distance with densification */ if ( GEOSHausdorffDistanceDensify(g1, g2, 0.001, &dist) ) printf("HausdorffDistanceDensify: %g\n", dist); + /* Frechet Distance */ + if ( GEOSFrechetDistance(g1, g2, &dist) ) printf("FrechetDistance: %g\n", dist); + + /* Frechet Distance with densification */ + if ( GEOSFrechetDistanceDensify(g1, g2, 0.1, &dist) ) printf("FrechetDistanceDensify: %g\n", dist); + /* Area */ if ( GEOSArea(g1, &area) ) printf("Area 1: %g\n", area); if ( GEOSArea(g2, &area) ) printf("Area 2: %g\n", area); diff -Nru geos-3.6.2/tests/geostest/Makefile.in geos-3.7.1/tests/geostest/Makefile.in --- geos-3.6.2/tests/geostest/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/geostest/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -129,7 +132,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/geostest.Po am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -218,6 +222,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -266,6 +271,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -286,6 +293,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -335,7 +343,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -384,8 +391,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -416,7 +423,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geostest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geostest.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -497,7 +510,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -568,7 +584,7 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/geostest.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -614,7 +630,7 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/geostest.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -635,7 +651,7 @@ .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \ ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ diff -Nru geos-3.6.2/tests/geostest/test.expected geos-3.7.1/tests/geostest/test.expected --- geos-3.6.2/tests/geostest/test.expected 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/geostest/test.expected 2018-10-19 22:32:06.000000000 +0000 @@ -21,6 +21,8 @@ Distance: 0 HausdorffDistance: 100 HausdorffDistanceDensify: 100 +FrechetDistance: 100 +FrechetDistanceDensify: 100 Area 1: 2.67588e+09 Area 2: 2.65405e+09 Simplify: POLYGON ((335215.0239261208334938 167537.5377202073286753, 335205.1267784655792639 167536.2307696900388692, 335190.1602671957225539 167536.1341839407396037, 329275.7395326890982687 167942.1145713863952551, 329261.2026209282921627 167945.7238237099954858, 326746.7026209282921627 168774.3238237039768137, 326614.4661321343737654 168829.7659389766049571, 326483.0105803586193360 168904.0626540626399219, 326415.8285449087852612 168952.2921427348919678, 314706.9285449027665891 178006.3921427289023995, 314699.2775538869318552 178012.9502176995156333, 314692.3254273570491932 178020.2450067681784276, 314686.1427613845444284 178028.2024342618533410, 314680.7923384761670604 178036.7416956787055824, 314230.7465425680857152 178947.3026234415883664, 314226.6719709816970862 178956.7423383510031272, 314223.5882016817340627 178966.5505348258011509, 303859.9882016727351584 219020.0505348258011509, 303310.6373324339510873 221276.7480226673360448, 303244.5555483103962615 221575.2231361457088497, 303207.9014352059457451 221755.5931846564926673, 303174.1926699578762054 222016.0467631698702462, 303147.8926699608564377 222311.9467631608713418, 303145.8096594382659532 222441.7101097303093411, 303148.4957166555686854 222489.2534012109390460, 303150.6692645543371327 222504.6388423194293864, 303153.4334335363237187 222514.6280661432247143, 303157.2167087217676453 222524.2775247619138099, 303161.9784481927636079 222533.4835586513218004, 303167.6674988568993285 222542.1472717873693909, 303174.2227459607529454 222550.1755940386210568, 303181.5737696161959320 222557.4822809745091945, 303189.6416012879926711 222563.9888403478544205, 303198.3395721145207062 222569.6253752996271942, 303212.3620380503707565 222576.3191453621548135, 303222.2142427377984859 222579.5377297651721165, 303232.3466742536984384 222581.7192554557113908, 340240.9466742626973428 228562.4192554587207269, 371903.0451431074179709 233449.6295974932727404, 373488.5732348550227471 233688.9796828530670609, 373535.2659228414413519 233694.0060347228136379, 373625.1659228474600241 233697.9060347288323101, 373642.9873771221027710 233697.8969001443183515, 373658.5972774084657431 233696.5464864801033400, 373668.8035941756097600 233694.2963110199489165, 373678.7193140533054247 233690.9931775288132485, 373692.8122531549306586 233684.1461583603522740, 373705.6626988743664697 233675.1818597918318119, 373713.3821066011441872 233668.1360854624363128, 373723.4792837048298679 233656.1552833794266917, 373731.5811145076295361 233642.7443571751064155, 373737.4887050554389134 233628.2325351690815296, 373741.0570283696870320 233612.9760718587203883, 373742.1984847519779578 233597.3495021346316207, 373741.5948758341837674 233586.9155264864384662, 373738.6590603159856983 233571.5248282807588112, 373733.3552462080260739 233556.7816210339078680, 373652.5153630711138248 233377.7256075733166654, 365392.9153630621149205 216697.2256075733166654, 365330.2477527938899584 216577.1791839415382128, 339880.6477527848910540 171569.1791839415382128, 338822.4769281532499008 169840.9383075150544755, 337870.8334730038768612 168543.3540531243779697, 337827.5742276740493253 168491.7532505890121683, 337753.4899077645386569 168423.4924162378301844, 337717.4185027767089196 168392.1531549684004858, 337663.9758644747198559 168349.0786549655895215, 337651.0045043539139442 168340.2275259852758609, 337530.7915914550540037 168279.3433566540188622, 337516.7246118161710910 168273.5343728628649842, 335388.0246118131908588 167578.8343728748441208, 335310.1989645521389320 167555.1487824073119555, 335215.0239261208334938 167537.5377202073286753)) diff -Nru geos-3.6.2/tests/Makefile.in geos-3.7.1/tests/Makefile.in --- geos-3.6.2/tests/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,6 +92,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -141,7 +144,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -230,6 +233,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -278,6 +282,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -298,6 +304,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -347,7 +354,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -393,8 +399,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -511,7 +517,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/tests/perf/capi/CMakeLists.txt geos-3.7.1/tests/perf/capi/CMakeLists.txt --- geos-3.6.2/tests/perf/capi/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/perf/capi/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,18 @@ +################################################################################# +# +# CMake configuration for GEOS perf/capi tests +# +# Copyright (C) 2017 Mateusz Loskot +# +# This is free software; you can redistribute and/or modify it under +# the terms of the GNU Lesser General Public Licence as published +# by the Free Software Foundation. +# See the COPYING file for more information. +# +################################################################################# + +add_executable(perf_memleak_mp_prep memleak_mp_prep.c) + +target_link_libraries(perf_memleak_mp_prep geos_c) + +add_test(perf_memleak_mp_prep ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/perf_memleak_mp_prep) diff -Nru geos-3.6.2/tests/perf/capi/Makefile.am geos-3.7.1/tests/perf/capi/Makefile.am --- geos-3.6.2/tests/perf/capi/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/perf/capi/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -1,6 +1,6 @@ # # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # prefix=@prefix@ top_srcdir=@top_srcdir@ @@ -14,3 +14,5 @@ memleak_mp_prep_SOURCES = memleak_mp_prep.c memleak_mp_prep_LDADD = $(LIBS) +EXTRA_DIST = CMakeLists.txt + diff -Nru geos-3.6.2/tests/perf/capi/Makefile.in geos-3.7.1/tests/perf/capi/Makefile.in --- geos-3.6.2/tests/perf/capi/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/perf/capi/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -129,7 +132,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/memleak_mp_prep.Po am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -218,6 +222,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -266,6 +271,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -286,6 +293,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -333,14 +341,13 @@ # # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -356,6 +363,7 @@ AM_CPPFLAGS = -I$(top_builddir)/capi -I$(top_srcdir)/include memleak_mp_prep_SOURCES = memleak_mp_prep.c memleak_mp_prep_LDADD = $(LIBS) +EXTRA_DIST = CMakeLists.txt all: all-am .SUFFIXES: @@ -377,8 +385,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -409,7 +417,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memleak_mp_prep.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memleak_mp_prep.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -490,7 +504,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -561,7 +578,7 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/memleak_mp_prep.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -607,7 +624,7 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/memleak_mp_prep.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -628,7 +645,7 @@ .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \ ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ diff -Nru geos-3.6.2/tests/perf/ClassSizes.cpp geos-3.7.1/tests/perf/ClassSizes.cpp --- geos-3.6.2/tests/perf/ClassSizes.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/perf/ClassSizes.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/tests/perf/CMakeLists.txt geos-3.7.1/tests/perf/CMakeLists.txt --- geos-3.6.2/tests/perf/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/perf/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,34 @@ +################################################################################# +# +# CMake configuration for GEOS perf tests +# +# Copyright (C) 2017 Mateusz Loskot +# +# This is free software; you can redistribute and/or modify it under +# the terms of the GNU Lesser General Public Licence as published +# by the Free Software Foundation. +# See the COPYING file for more information. +# +################################################################################# + +set(STATUS_MESSAGE "Enable GEOS performance tests build") +set(STATUS_RESULT "OFF") + +if(GEOS_ENABLE_TESTS) + + include_directories(${CMAKE_CURRENT_SOURCE_DIR}) + + add_executable(perf_class_sizes ClassSizes.cpp) + + target_link_libraries(perf_class_sizes geos) + + add_test(perf_class_sizes + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/perf_class_sizes) + + add_subdirectory(operation) + add_subdirectory(capi) + + set(STATUS_RESULT "ON") +endif() + +message(STATUS "${STATUS_MESSAGE} - ${STATUS_RESULT}") diff -Nru geos-3.6.2/tests/perf/Makefile.am geos-3.7.1/tests/perf/Makefile.am --- geos-3.6.2/tests/perf/Makefile.am 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/perf/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -12,3 +12,5 @@ noinst_PROGRAMS = ClassSizes ClassSizes_SOURCES = ClassSizes.cpp + +EXTRA_DIST = CMakeLists.txt diff -Nru geos-3.6.2/tests/perf/Makefile.in geos-3.7.1/tests/perf/Makefile.in --- geos-3.6.2/tests/perf/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/perf/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -94,6 +94,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -131,7 +134,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/ClassSizes.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -173,7 +177,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,6 +266,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -310,6 +315,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -330,6 +337,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -379,7 +387,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -402,6 +409,7 @@ AM_CPPFLAGS = -I$(top_srcdir)/include ClassSizes_SOURCES = ClassSizes.cpp +EXTRA_DIST = CMakeLists.txt all: all-recursive .SUFFIXES: @@ -423,8 +431,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -455,7 +463,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ClassSizes.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ClassSizes.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -583,7 +597,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -679,7 +696,7 @@ mostlyclean-am distclean: distclean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ClassSizes.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -725,7 +742,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/ClassSizes.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -746,8 +763,8 @@ .MAKE: $(am__recursive_targets) install-am install-strip -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool \ +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--depfiles check check-am clean clean-generic clean-libtool \ clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ diff -Nru geos-3.6.2/tests/perf/operation/buffer/CMakeLists.txt geos-3.7.1/tests/perf/operation/buffer/CMakeLists.txt --- geos-3.6.2/tests/perf/operation/buffer/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/buffer/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,21 @@ +################################################################################# +# +# CMake configuration for GEOS perf/operation/buffer tests +# +# Copyright (C) 2017 Mateusz Loskot +# +# This is free software; you can redistribute and/or modify it under +# the terms of the GNU Lesser General Public Licence as published +# by the Free Software Foundation. +# See the COPYING file for more information. +# +################################################################################# + +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/io/markup) + +add_executable(perf_iterated_buffer IteratedBufferStressTest.cpp) + +target_link_libraries(perf_iterated_buffer geos) + +add_test(perf_iterated_buffer + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/perf_iterated_buffer) diff -Nru geos-3.6.2/tests/perf/operation/buffer/IteratedBufferStressTest.cpp geos-3.7.1/tests/perf/operation/buffer/IteratedBufferStressTest.cpp --- geos-3.6.2/tests/perf/operation/buffer/IteratedBufferStressTest.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/buffer/IteratedBufferStressTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -30,7 +30,7 @@ using namespace geos::io; using namespace std; -typedef auto_ptr GeomPtr; +typedef unique_ptr GeomPtr; GeomPtr doBuffer(const Geometry& g, double dist) { @@ -63,7 +63,7 @@ << totalSW << endl; // totalSW.getTimeString() << endl; dist += 1; - base = b2.get(); tmp = b2; + base = b2.get(); tmp = std::move(b2); // move as anti-optimisation? if ( ! base->getNumPoints() ) break; } @@ -73,7 +73,7 @@ main() { PrecisionModel pm; - GeometryFactory::unique_ptr gf = GeometryFactory::create(&pm); + GeometryFactory::Ptr gf = GeometryFactory::create(&pm); WKTReader rdr(gf.get()); string inputWKT = diff -Nru geos-3.6.2/tests/perf/operation/buffer/Makefile.am geos-3.7.1/tests/perf/operation/buffer/Makefile.am --- geos-3.6.2/tests/perf/operation/buffer/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/buffer/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -1,5 +1,5 @@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # prefix=@prefix@ top_srcdir=@top_srcdir@ @@ -9,8 +9,10 @@ LIBS = $(top_builddir)/src/libgeos.la -IteratedBufferStressTest_SOURCES = IteratedBufferStressTest.cpp +IteratedBufferStressTest_SOURCES = IteratedBufferStressTest.cpp IteratedBufferStressTest_LDADD = $(LIBS) AM_CPPFLAGS = -I$(top_srcdir)/include AM_CPPFLAGS += -I$(top_srcdir)/src/io/markup + +EXTRA_DIST = CMakeLists.txt diff -Nru geos-3.6.2/tests/perf/operation/buffer/Makefile.in geos-3.7.1/tests/perf/operation/buffer/Makefile.in --- geos-3.6.2/tests/perf/operation/buffer/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/buffer/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -94,6 +94,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -133,7 +136,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/IteratedBufferStressTest.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -222,6 +226,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -270,6 +275,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -290,6 +297,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -336,14 +344,13 @@ pkgpythondir = @pkgpythondir@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -356,9 +363,10 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -IteratedBufferStressTest_SOURCES = IteratedBufferStressTest.cpp +IteratedBufferStressTest_SOURCES = IteratedBufferStressTest.cpp IteratedBufferStressTest_LDADD = $(LIBS) AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src/io/markup +EXTRA_DIST = CMakeLists.txt all: all-am .SUFFIXES: @@ -380,8 +388,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -412,7 +420,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IteratedBufferStressTest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IteratedBufferStressTest.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -493,7 +507,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -563,7 +580,7 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/IteratedBufferStressTest.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -609,7 +626,7 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/IteratedBufferStressTest.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -630,9 +647,9 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \ + ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ diff -Nru geos-3.6.2/tests/perf/operation/CMakeLists.txt geos-3.7.1/tests/perf/operation/CMakeLists.txt --- geos-3.6.2/tests/perf/operation/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,15 @@ +################################################################################# +# +# CMake configuration for GEOS perf/operation tests +# +# Copyright (C) 2017 Mateusz Loskot +# +# This is free software; you can redistribute and/or modify it under +# the terms of the GNU Lesser General Public Licence as published +# by the Free Software Foundation. +# See the COPYING file for more information. +# +################################################################################# + +add_subdirectory(buffer) +add_subdirectory(predicate) diff -Nru geos-3.6.2/tests/perf/operation/Makefile.am geos-3.7.1/tests/perf/operation/Makefile.am --- geos-3.6.2/tests/perf/operation/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,9 @@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # SUBDIRS = \ buffer \ predicate +EXTRA_DIST = CMakeLists.txt + diff -Nru geos-3.6.2/tests/perf/operation/Makefile.in geos-3.7.1/tests/perf/operation/Makefile.in --- geos-3.6.2/tests/perf/operation/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,6 +92,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -141,7 +144,7 @@ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -230,6 +233,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -278,6 +282,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -298,6 +304,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -347,7 +354,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -362,12 +368,13 @@ top_srcdir = @top_srcdir@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # SUBDIRS = \ buffer \ predicate +EXTRA_DIST = CMakeLists.txt all: all-recursive .SUFFIXES: @@ -388,8 +395,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -506,7 +513,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff -Nru geos-3.6.2/tests/perf/operation/predicate/CMakeLists.txt geos-3.7.1/tests/perf/operation/predicate/CMakeLists.txt --- geos-3.6.2/tests/perf/operation/predicate/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/predicate/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,21 @@ +################################################################################# +# +# CMake configuration for GEOS perf/operation/predicate tests +# +# Copyright (C) 2017 Mateusz Loskot +# +# This is free software; you can redistribute and/or modify it under +# the terms of the GNU Lesser General Public Licence as published +# by the Free Software Foundation. +# See the COPYING file for more information. +# +################################################################################# + +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/io/markup) + +add_executable(perf_rectangle_intersects RectangleIntersectsPerfTest.cpp) + +target_link_libraries(perf_rectangle_intersects geos) + +add_test(perf_rectangle_intersects + ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/perf_rectangle_intersects) diff -Nru geos-3.6.2/tests/perf/operation/predicate/Makefile.am geos-3.7.1/tests/perf/operation/predicate/Makefile.am --- geos-3.6.2/tests/perf/operation/predicate/Makefile.am 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/predicate/Makefile.am 2018-11-09 23:03:28.000000000 +0000 @@ -1,5 +1,5 @@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # prefix=@prefix@ top_srcdir=@top_srcdir@ @@ -9,8 +9,10 @@ LIBS = $(top_builddir)/src/libgeos.la -RectangleIntersectsPerfTest_SOURCES = RectangleIntersectsPerfTest.cpp +RectangleIntersectsPerfTest_SOURCES = RectangleIntersectsPerfTest.cpp RectangleIntersectsPerfTest_LDADD = $(LIBS) AM_CPPFLAGS = -I$(top_srcdir)/include AM_CPPFLAGS += -I$(top_srcdir)/src/io/markup + +EXTRA_DIST = CMakeLists.txt diff -Nru geos-3.6.2/tests/perf/operation/predicate/Makefile.in geos-3.7.1/tests/perf/operation/predicate/Makefile.in --- geos-3.6.2/tests/perf/operation/predicate/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/predicate/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -94,6 +94,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -133,7 +136,8 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/RectangleIntersectsPerfTest.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -222,6 +226,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -270,6 +275,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -290,6 +297,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -336,14 +344,13 @@ pkgpythondir = @pkgpythondir@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -356,9 +363,10 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -RectangleIntersectsPerfTest_SOURCES = RectangleIntersectsPerfTest.cpp +RectangleIntersectsPerfTest_SOURCES = RectangleIntersectsPerfTest.cpp RectangleIntersectsPerfTest_LDADD = $(LIBS) AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src/io/markup +EXTRA_DIST = CMakeLists.txt all: all-am .SUFFIXES: @@ -380,8 +388,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -412,7 +420,13 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersectsPerfTest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RectangleIntersectsPerfTest.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -493,7 +507,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -563,7 +580,7 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/RectangleIntersectsPerfTest.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -609,7 +626,7 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/RectangleIntersectsPerfTest.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -630,9 +647,9 @@ .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \ + ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ diff -Nru geos-3.6.2/tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp geos-3.7.1/tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp --- geos-3.6.2/tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/perf/operation/predicate/RectangleIntersectsPerfTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -48,7 +48,7 @@ { double size = 100; Coordinate origin(0, 0); - auto_ptr sinePoly ( + Geometry::Ptr sinePoly ( createSineStar(origin, size, nPts)->getBoundary() ); @@ -60,7 +60,7 @@ using geos::precision::SimpleGeometryPrecisionReducer; PrecisionModel pm(size/10); SimpleGeometryPrecisionReducer reducer(&pm); - auto_ptr sinePolyCrinkly ( reducer.reduce(sinePoly.get()) ); + Geometry::Ptr sinePolyCrinkly ( reducer.reduce(sinePoly.get()) ); sinePoly.reset(); Geometry& target = *sinePolyCrinkly; @@ -78,7 +78,7 @@ static const int NUM_LINE_PTS = 1000; PrecisionModel pm; - GeometryFactory::unique_ptr fact; + GeometryFactory::Ptr fact; void testRectangles(const Geometry& target, int nRect, double rectSize) { @@ -103,12 +103,12 @@ } sw.stop(); - cout << g.getNumPoints() << " points: " << sw.getTot() << " usecs" << endl; + cout << g.getNumPoints() << " points: " << sw.getTot() << " usecs" << endl; } // Push newly created geoms to rectLit - void createRectangles(const Envelope& env, int nRect, double rectSize, + void createRectangles(const Envelope& env, int nRect, double, vector& rectList) { int nSide = 1 + (int)sqrt((double) nRect); @@ -128,7 +128,7 @@ } } - auto_ptr createSineStar(const Coordinate& origin, + Polygon::Ptr createSineStar(const Coordinate& origin, double size, int nPts) { using geos::geom::util::SineStarFactory; @@ -139,7 +139,7 @@ gsf.setNumPoints(nPts); gsf.setArmLengthRatio(2); gsf.setNumArms(20); - auto_ptr poly = gsf.createSineStar(); + Polygon::Ptr poly = gsf.createSineStar(); return poly; } diff -Nru geos-3.6.2/tests/thread/badthreadtest.c geos-3.7.1/tests/thread/badthreadtest.c --- geos-3.6.2/tests/thread/badthreadtest.c 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/thread/badthreadtest.c 2018-10-19 22:32:06.000000000 +0000 @@ -10,7 +10,7 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * ***********************************************************************/ diff -Nru geos-3.6.2/tests/thread/Makefile.in geos-3.7.1/tests/thread/Makefile.in --- geos-3.6.2/tests/thread/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/thread/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -132,7 +135,9 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/badthreadtest.Po \ + ./$(DEPDIR)/threadtest.Po am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -221,6 +226,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -269,6 +275,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -289,6 +297,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -338,7 +347,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -385,8 +393,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -421,8 +429,14 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/badthreadtest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/threadtest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/badthreadtest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/threadtest.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @@ -503,7 +517,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -574,7 +591,8 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/badthreadtest.Po + -rm -f ./$(DEPDIR)/threadtest.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -620,7 +638,8 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) + -rm -f ./$(DEPDIR)/badthreadtest.Po + -rm -f ./$(DEPDIR)/threadtest.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -641,7 +660,7 @@ .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \ ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ diff -Nru geos-3.6.2/tests/thread/threadtest.c geos-3.7.1/tests/thread/threadtest.c --- geos-3.6.2/tests/thread/threadtest.c 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/thread/threadtest.c 2018-10-19 22:32:06.000000000 +0000 @@ -10,7 +10,7 @@ * by the Free Software Foundation. * See the COPYING file for more information. * - * Author: Sandro Santilli + * Author: Sandro Santilli * ***********************************************************************/ diff -Nru geos-3.6.2/tests/unit/algorithm/AngleTest.cpp geos-3.7.1/tests/unit/algorithm/AngleTest.cpp --- geos-3.6.2/tests/unit/algorithm/AngleTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/AngleTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// -// Test Suite for geos::algorithm::Angle +// +// Test Suite for geos::algorithm::Angle // Ported from JTS junit/algorithm/AngleTest.java r378 -#include +#include // geos #include #include diff -Nru geos-3.6.2/tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp geos-3.7.1/tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp --- geos-3.6.2/tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/CGAlgorithms/computeOrientationTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for CGAlgorithms::computeOrientation() function // Ported from JTS junit/algorithm/ComputeOrientationTest.java -#include +#include // geos #include #include @@ -46,9 +46,9 @@ void object::test<1>() { const std::string wkt("LINESTRING ( 0 0, 0 1, 1 1)"); - Geometry::AutoPtr geom(reader_.read(wkt)); + Geometry::Ptr geom(reader_.read(wkt)); - CoordinateSequence::AutoPtr pts(geom->getCoordinates()); + CoordinateSequence::Ptr pts(geom->getCoordinates()); int const a = CGAlgorithms::computeOrientation(pts->getAt(0), pts->getAt(1), pts->getAt(2)); int const b = CGAlgorithms::computeOrientation(pts->getAt(0), pts->getAt(1), pts->getAt(2)); @@ -62,7 +62,7 @@ template<> template<> void object::test<2>() - { + { Coordinate c1(1.0000000000004998, -7.989685402102996); Coordinate c2(10.0, -7.004368924503866); Coordinate c3(1.0000000000005, -7.989685402102996); diff -Nru geos-3.6.2/tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp geos-3.7.1/tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp --- geos-3.6.2/tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/CGAlgorithms/isCCWTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,9 +1,9 @@ -// +// // Test Suite for CGAlgorithms::isCCW() function // Ported from JTS junit/algorithm/IsCCWTest.java // tut -#include +#include // geos #include #include @@ -28,22 +28,22 @@ struct test_isccw_data { - typedef std::auto_ptr GeometryPtr; + typedef std::unique_ptr GeometryPtr; geos::geom::CoordinateSequence* cs_; geos::io::WKTReader reader_; geos::io::WKBReader breader_; test_isccw_data() - : cs_(0) + : cs_(nullptr) { - assert(0 == cs_); + assert(nullptr == cs_); } - + ~test_isccw_data() { delete cs_; - cs_ = 0; + cs_ = nullptr; } }; diff -Nru geos-3.6.2/tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp geos-3.7.1/tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp --- geos-3.6.2/tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/CGAlgorithms/isPointInRingTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for CGAlgorithms::isPointInRing() function // tut -#include +#include // geos #include #include @@ -24,21 +24,21 @@ struct test_ispointinring_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; geos::geom::CoordinateSequence* cs_; geos::io::WKTReader reader_; - + test_ispointinring_data() - : cs_(0) + : cs_(nullptr) { - assert(0 == cs_); + assert(nullptr == cs_); } - + ~test_ispointinring_data() { delete cs_; - cs_ = 0; + cs_ = nullptr; } }; diff -Nru geos-3.6.2/tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp geos-3.7.1/tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp --- geos-3.6.2/tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/CGAlgorithms/signedAreaTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for CGAlgorithms::signedArea() function // tut -#include +#include // geos #include #include @@ -27,22 +27,22 @@ struct test_signedarea_data { - typedef std::auto_ptr GeometryPtr; + typedef std::unique_ptr GeometryPtr; geos::geom::CoordinateSequence* cs_; geos::io::WKTReader reader_; geos::io::WKBReader breader_; test_signedarea_data() - : cs_(0) + : cs_(nullptr) { - assert(0 == cs_); + assert(nullptr == cs_); } - + ~test_signedarea_data() { delete cs_; - cs_ = 0; + cs_ = nullptr; } }; diff -Nru geos-3.6.2/tests/unit/algorithm/ConvexHullTest.cpp geos-3.7.1/tests/unit/algorithm/ConvexHullTest.cpp --- geos-3.6.2/tests/unit/algorithm/ConvexHullTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/ConvexHullTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::algorithm::ConvexHull // Ported from JTS junit/algorithm/ConvexHullTest.java -#include +#include #include // geos #include @@ -36,26 +36,21 @@ // dummy data, not used struct test_convexhull_data { - // Typedefs used as short names by test cases - typedef std::auto_ptr GeometryAPtr; - typedef std::auto_ptr LineStringAPtr; - typedef geos::geom::GeometryFactory GeometryFactory; - GeometryPtr geom_; geos::geom::PrecisionModel pm_; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; test_convexhull_data() - : geom_(0), pm_(1), factory_(GeometryFactory::create(&pm_, 0)), reader_(factory_.get()) + : geom_(nullptr), pm_(1), factory_(GeometryFactory::create(&pm_, 0)), reader_(factory_.get()) { - assert(0 == geom_); + assert(nullptr == geom_); } ~test_convexhull_data() { factory_->destroyGeometry(geom_); - geom_ = 0; + geom_ = nullptr; } }; @@ -72,16 +67,16 @@ template<> template<> void object::test<1>() - { + { using geos::geom::LineString; - GeometryAPtr lineGeom(reader_.read("LINESTRING (30 220, 240 220, 240 220)")); - LineStringAPtr line(dynamic_cast_auto_ptr(lineGeom)); - ensure(0 != line.get()); - - GeometryAPtr hullGeom(reader_.read("LINESTRING (30 220, 240 220)")); - LineStringAPtr convexHull(dynamic_cast_auto_ptr(hullGeom)); - ensure(0 != convexHull.get()); + Geometry::Ptr lineGeom(reader_.read("LINESTRING (30 220, 240 220, 240 220)")); + LineString::Ptr line(dynamic_cast(lineGeom.release())); + ensure(nullptr != line.get()); + + Geometry::Ptr hullGeom(reader_.read("LINESTRING (30 220, 240 220)")); + LineString::Ptr convexHull(dynamic_cast(hullGeom.release())); + ensure(nullptr != convexHull.get()); geom_ = line->convexHull(); ensure( convexHull->equalsExact(geom_) ); @@ -91,15 +86,15 @@ template<> template<> void object::test<2>() - { + { using geos::geom::LineString; - GeometryAPtr geom(reader_.read("MULTIPOINT (130 240, 130 240, 130 240, 570 240, 570 240, 570 240, 650 240)")); - ensure(0 != geom.get()); + Geometry::Ptr geom(reader_.read("MULTIPOINT (130 240, 130 240, 130 240, 570 240, 570 240, 570 240, 650 240)")); + ensure(nullptr != geom.get()); - GeometryAPtr hullGeom(reader_.read("LINESTRING (130 240, 650 240)")); - LineStringAPtr convexHull(dynamic_cast_auto_ptr(hullGeom)); - ensure(0 != convexHull.get()); + Geometry::Ptr hullGeom(reader_.read("LINESTRING (130 240, 650 240)")); + LineString::Ptr convexHull(dynamic_cast(hullGeom.release())); + ensure(nullptr != convexHull.get()); geom_ = geom->convexHull(); ensure( convexHull->equalsExact(geom_) ); @@ -109,33 +104,33 @@ template<> template<> void object::test<3>() - { + { using geos::geom::LineString; - GeometryAPtr geom(reader_.read("MULTIPOINT (0 0, 0 0, 10 0)")); - ensure(0 != geom.get()); + Geometry::Ptr geom(reader_.read("MULTIPOINT (0 0, 0 0, 10 0)")); + ensure(nullptr != geom.get()); - GeometryAPtr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); - LineStringAPtr convexHull(dynamic_cast_auto_ptr(hullGeom)); - ensure(0 != convexHull.get()); + Geometry::Ptr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); + LineString::Ptr convexHull(dynamic_cast(hullGeom.release())); + ensure(nullptr != convexHull.get()); geom_ = geom->convexHull(); ensure( convexHull->equalsExact(geom_) ); } - + // 4 - Test convex hull of multipoint template<> template<> void object::test<4>() - { + { using geos::geom::LineString; - GeometryAPtr geom(reader_.read("MULTIPOINT (0 0, 10 0, 10 0)")); - ensure(0 != geom.get()); + Geometry::Ptr geom(reader_.read("MULTIPOINT (0 0, 10 0, 10 0)")); + ensure(nullptr != geom.get()); - GeometryAPtr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); - LineStringAPtr convexHull(dynamic_cast_auto_ptr(hullGeom)); - ensure(0 != convexHull.get()); + Geometry::Ptr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); + LineString::Ptr convexHull(dynamic_cast(hullGeom.release())); + ensure(nullptr != convexHull.get()); geom_ = geom->convexHull(); ensure( convexHull->equalsExact(geom_) ); @@ -145,15 +140,15 @@ template<> template<> void object::test<5>() - { + { using geos::geom::LineString; - GeometryAPtr geom(reader_.read("MULTIPOINT (0 0, 5 0, 10 0)")); - ensure(0 != geom.get()); + Geometry::Ptr geom(reader_.read("MULTIPOINT (0 0, 5 0, 10 0)")); + ensure(nullptr != geom.get()); - GeometryAPtr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); - LineStringAPtr convexHull(dynamic_cast_auto_ptr(hullGeom)); - ensure(0 != convexHull.get()); + Geometry::Ptr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); + LineString::Ptr convexHull(dynamic_cast(hullGeom.release())); + ensure(nullptr != convexHull.get()); geom_ = geom->convexHull(); ensure( convexHull->equalsExact(geom_) ); @@ -163,17 +158,17 @@ template<> template<> void object::test<6>() - { + { using geos::geom::LineString; - GeometryAPtr geom(reader_.read("MULTIPOINT (0 0, 5 1, 10 0)")); - ensure(0 != geom.get()); + Geometry::Ptr geom(reader_.read("MULTIPOINT (0 0, 5 1, 10 0)")); + ensure(nullptr != geom.get()); - GeometryAPtr hullGeom(geom->convexHull()); - ensure(0 != hullGeom.get()); + Geometry::Ptr hullGeom(geom->convexHull()); + ensure(nullptr != hullGeom.get()); - GeometryAPtr expectedHull(reader_.read("POLYGON ((0 0, 5 1, 10 0, 0 0))")); - ensure(0 != expectedHull.get()); + Geometry::Ptr expectedHull(reader_.read("POLYGON ((0 0, 5 1, 10 0, 0 0))")); + ensure(nullptr != expectedHull.get()); ensure_equals( hullGeom->toString(), expectedHull->toString() ); } @@ -182,15 +177,15 @@ template<> template<> void object::test<7>() - { + { using geos::geom::LineString; - GeometryAPtr geom(reader_.read("MULTIPOINT (0 0, 0 0, 5 0, 5 0, 10 0, 10 0)")); - ensure(0 != geom.get()); + Geometry::Ptr geom(reader_.read("MULTIPOINT (0 0, 0 0, 5 0, 5 0, 10 0, 10 0)")); + ensure(nullptr != geom.get()); - GeometryAPtr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); - LineStringAPtr convexHull(dynamic_cast_auto_ptr(hullGeom)); - ensure(0 != convexHull.get()); + Geometry::Ptr hullGeom(reader_.read("LINESTRING (0 0, 10 0)")); + LineString::Ptr convexHull(dynamic_cast(hullGeom.release())); + ensure(nullptr != convexHull.get()); geom_ = geom->convexHull(); ensure( convexHull->equalsExact(geom_) ); diff -Nru geos-3.6.2/tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp geos-3.7.1/tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp --- geos-3.6.2/tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/distance/DiscreteFrechetDistanceTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,130 @@ +// +// Test Suite for geos::algorithm::distance::DiscreteFrechetDistance +// + +#include +// geos +#include +#include +#include +#include +#include +#include // required for use in unique_ptr +#include +// std +#include +#include +#include +#include + +namespace geos { + namespace geom { + class Geometry; + } +} + +using namespace geos::geom; +using namespace geos::algorithm::distance; // for Location + +namespace tut +{ + // + // Test Group + // + + // Test data, not used + struct test_DiscreteFrechetDistance_data { + + typedef std::unique_ptr GeomPtr; + + test_DiscreteFrechetDistance_data() + : + pm(), + gf(GeometryFactory::create(&pm)), + reader(gf.get()) + {} + + static const double TOLERANCE; + + void runTest(const std::string& wkt1, const std::string& wkt2, + double expectedDistance) + { + GeomPtr g1 ( reader.read(wkt1) ); + GeomPtr g2 ( reader.read(wkt2) ); + + double distance = DiscreteFrechetDistance::distance(*g1, *g2); + double diff = std::fabs(distance-expectedDistance); + //std::cerr << "expectedDistance:" << expectedDistance << " actual distance:" << distance << std::endl; + ensure( diff <= TOLERANCE ); + } + + void runTest(const std::string& wkt1, const std::string& wkt2, + double densifyFactor, double expectedDistance) + { + GeomPtr g1 ( reader.read(wkt1) ); + GeomPtr g2 ( reader.read(wkt2) ); + + double distance = DiscreteFrechetDistance::distance(*g1, + *g2, densifyFactor); + double diff = std::fabs(distance-expectedDistance); + //std::cerr << "expectedDistance:" << expectedDistance << " actual distance:" << distance << std::endl; + ensure( diff <= TOLERANCE ); + } + + PrecisionModel pm; + GeometryFactory::Ptr gf; + geos::io::WKTReader reader; + + }; + const double test_DiscreteFrechetDistance_data::TOLERANCE = 0.00001; + + typedef test_group group; + typedef group::object object; + + group test_DiscreteFrechetDistance_group("geos::algorithm::distace::DiscreteFrechetDistance"); + + + + // + // Test Cases + // + + // 1 - testLineSegments + template<> + template<> + void object::test<1>() + { +runTest("LINESTRING (0 0, 2 1)", "LINESTRING (0 0, 2 0)", 1.0); + } + + // 2 - testLineSegments2 + template<> + template<> + void object::test<2>() + { +runTest("LINESTRING (0 0, 2 0)", "LINESTRING (0 1, 1 2, 2 1)", 2.23606797749979); + } + + // 3 - testLinePoints + template<> + template<> + void object::test<3>() + { +runTest("LINESTRING (0 0, 2 0)", "MULTIPOINT (0 1, 1 0, 2 1)", 1.0); + } + + // 4 - testLinesShowingDiscretenessEffect + // + // Shows effects of limiting FD to vertices + // Answer is not true Frechet distance. + // + template<> + template<> + void object::test<4>() + { +runTest("LINESTRING (0 0, 100 0)", "LINESTRING (0 0, 50 50, 100 0)", 70.7106781186548); +// densifying provides accurate HD +runTest("LINESTRING (0 0, 100 0)", "LINESTRING (0 0, 50 50, 100 0)", 0.5, 50.0); + } + +} // namespace tut diff -Nru geos-3.6.2/tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp geos-3.7.1/tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp --- geos-3.6.2/tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/distance/DiscreteHausdorffDistanceTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,16 +1,16 @@ -// +// // Test Suite for geos::algorithm::distance::DiscreteHausdorffDistance // Ported from JTS junit/algorithm/distance/DiscreteHausdorffDistanceTest.java rev. 1.2 -#include +#include // geos #include #include #include #include #include -#include // required for use in auto_ptr +#include // required for use in unique_ptr #include // std #include @@ -24,7 +24,7 @@ } } -using namespace geos::geom; +using namespace geos::geom; using namespace geos::algorithm::distance; // for Location namespace tut @@ -36,7 +36,7 @@ // Test data, not used struct test_DiscreteHausdorffDistance_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; test_DiscreteHausdorffDistance_data() : @@ -73,7 +73,7 @@ } PrecisionModel pm; - GeometryFactory::unique_ptr gf; + GeometryFactory::Ptr gf; geos::io::WKTReader reader; }; @@ -94,7 +94,7 @@ template<> template<> void object::test<1>() - { + { runTest("LINESTRING (0 0, 2 1)", "LINESTRING (0 0, 2 0)", 1.0); } @@ -102,7 +102,7 @@ template<> template<> void object::test<2>() - { + { runTest("LINESTRING (0 0, 2 0)", "LINESTRING (0 1, 1 2, 2 1)", 2.0); } @@ -110,7 +110,7 @@ template<> template<> void object::test<3>() - { + { runTest("LINESTRING (0 0, 2 0)", "MULTIPOINT (0 1, 1 0, 2 1)", 1.0); } @@ -122,7 +122,7 @@ template<> template<> void object::test<4>() - { + { runTest("LINESTRING (130 0, 0 0, 0 150)", "LINESTRING (10 10, 10 150, 130 10)", 14.142135623730951); // densifying provides accurate HD runTest("LINESTRING (130 0, 0 0, 0 150)", "LINESTRING (10 10, 10 150, 130 10)", 0.5, 70.0); diff -Nru geos-3.6.2/tests/unit/algorithm/InteriorPointAreaTest.cpp geos-3.7.1/tests/unit/algorithm/InteriorPointAreaTest.cpp --- geos-3.6.2/tests/unit/algorithm/InteriorPointAreaTest.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/InteriorPointAreaTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,19 +3,19 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2011 Sandro Santilli + * Copyright (C) 2011 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ -// -// Test Suite for geos::algorithm::InteriorPointArea +// +// Test Suite for geos::algorithm::InteriorPointArea -#include +#include // geos #include #include @@ -39,7 +39,7 @@ typedef geos::algorithm::InteriorPointArea InteriorPointArea; geos::io::WKTReader reader; - std::auto_ptr geom; + std::unique_ptr geom; test_interiorpointarea_data() {} diff -Nru geos-3.6.2/tests/unit/algorithm/MinimumDiameterTest.cpp geos-3.7.1/tests/unit/algorithm/MinimumDiameterTest.cpp --- geos-3.6.2/tests/unit/algorithm/MinimumDiameterTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/MinimumDiameterTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -15,7 +15,7 @@ // // Test Suite for geos::algorithm::MinimumDiameter -#include +#include // geos #include #include @@ -36,13 +36,13 @@ // dummy data, not used struct test_minimumdiameter_data { typedef geos::geom::Geometry Geometry; - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; typedef geos::geom::Coordinate Coordinate; typedef geos::algorithm::MinimumDiameter MinimumDiameter; geos::io::WKTReader reader; - std::auto_ptr geom; + std::unique_ptr geom; test_minimumdiameter_data() {} @@ -64,14 +64,14 @@ void object::test<1>() { GeomPtr geom(reader.read("POLYGON ((0 0, 0 20, 20 20, 20 0, 0 0))")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); geos::algorithm::MinimumDiameter m(geom.get()); GeomPtr minRect( m.getMinimumRectangle() ); - ensure(0 != minRect.get()); + ensure(nullptr != minRect.get()); GeomPtr expectedGeom(reader.read("POLYGON ((0 0, 20 0, 20 20, 0 20, 0 0))")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minRect.get()->equalsExact(expectedGeom.get()) ); } @@ -82,14 +82,14 @@ void object::test<2>() { GeomPtr geom(reader.read("POLYGON ((0 5, 5 10, 10 5, 5 0, 0 5))")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); geos::algorithm::MinimumDiameter m(geom.get()); GeomPtr minRect( m.getMinimumRectangle() ); - ensure(0 != minRect.get()); + ensure(nullptr != minRect.get()); GeomPtr expectedGeom(reader.read("POLYGON ((5 0, 10 5, 5 10, 0 5, 5 0))")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minRect.get()->equalsExact(expectedGeom.get()) ); } @@ -100,14 +100,14 @@ void object::test<3>() { GeomPtr geom(reader.read("POLYGON EMPTY")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); geos::algorithm::MinimumDiameter m(geom.get()); GeomPtr minRect( m.getMinimumRectangle() ); - ensure(0 != minRect.get()); + ensure(nullptr != minRect.get()); GeomPtr expectedGeom(reader.read("POLYGON EMPTY")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minRect.get()->equalsExact(expectedGeom.get()) ); } @@ -118,14 +118,14 @@ void object::test<4>() { GeomPtr geom(reader.read("Point(1 2)")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); geos::algorithm::MinimumDiameter m(geom.get()); GeomPtr minRect( m.getMinimumRectangle() ); - ensure(0 != minRect.get()); + ensure(nullptr != minRect.get()); GeomPtr expectedGeom(reader.read("Point(1 2)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minRect.get()->equalsExact(expectedGeom.get()) ); } @@ -136,14 +136,14 @@ void object::test<5>() { GeomPtr geom(reader.read("LineString(1 2, 2 4)")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); geos::algorithm::MinimumDiameter m(geom.get()); GeomPtr minRect( m.getMinimumRectangle() ); - ensure(0 != minRect.get()); + ensure(nullptr != minRect.get()); GeomPtr expectedGeom(reader.read("LineString(1 2, 2 4)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minRect.get()->equalsExact(expectedGeom.get()) ); } @@ -154,13 +154,13 @@ void object::test<6>() { GeomPtr geom(reader.read("POINT (0 240)")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); GeomPtr minDiameter( geos::algorithm::MinimumDiameter::getMinimumDiameter( geom.get() ) ); - ensure(0 != minDiameter.get()); + ensure(nullptr != minDiameter.get()); GeomPtr expectedGeom(reader.read("LineString (0 240, 0 240)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minDiameter.get()->equalsExact(expectedGeom.get()) ); } @@ -171,13 +171,13 @@ void object::test<7>() { GeomPtr geom(reader.read("LINESTRING (0 240, 220 240)")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); GeomPtr minDiameter( geos::algorithm::MinimumDiameter::getMinimumDiameter( geom.get() ) ); - ensure(0 != minDiameter.get()); + ensure(nullptr != minDiameter.get()); GeomPtr expectedGeom(reader.read("LINESTRING (0 240, 0 240)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minDiameter.get()->equalsExact(expectedGeom.get()) ); } @@ -188,13 +188,13 @@ void object::test<8>() { GeomPtr geom(reader.read("POLYGON ((0 240, 220 240, 220 0, 0 0, 0 240))")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); GeomPtr minDiameter( geos::algorithm::MinimumDiameter::getMinimumDiameter( geom.get() ) ); - ensure(0 != minDiameter.get()); + ensure(nullptr != minDiameter.get()); GeomPtr expectedGeom(reader.read("LINESTRING (0 0, 220 0)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minDiameter.get()->equalsExact(expectedGeom.get()) ); } @@ -205,13 +205,13 @@ void object::test<9>() { GeomPtr geom(reader.read("POLYGON ((0 240, 160 140, 220 0, 0 0, 0 240))")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); GeomPtr minDiameter( geos::algorithm::MinimumDiameter::getMinimumDiameter( geom.get() ) ); - ensure(0 != minDiameter.get()); + ensure(nullptr != minDiameter.get()); GeomPtr expectedGeom(reader.read("LINESTRING (185.86206896551724 79.65517241379311, 0 0)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minDiameter.get()->equalsExact(expectedGeom.get(), 0.00000000001) ); } @@ -222,13 +222,13 @@ void object::test<10>() { GeomPtr geom(reader.read("LINESTRING ( 39 119, 162 197, 135 70, 95 35, 33 66, 111 82, 97 131, 48 160, -4 182, 57 195, 94 202, 90 174, 75 134, 47 114, 0 100, 59 81, 123 60, 136 43, 163 75, 145 114, 93 136, 92 159, 105 175 )")); - ensure(0 != geom.get()); + ensure(nullptr != geom.get()); GeomPtr minDiameter( geos::algorithm::MinimumDiameter::getMinimumDiameter( geom.get() ) ); - ensure(0 != minDiameter.get()); + ensure(nullptr != minDiameter.get()); GeomPtr expectedGeom(reader.read("LINESTRING (64.46262341325811 196.41184767277855, 95 35)")); - ensure(0 != expectedGeom.get()); + ensure(nullptr != expectedGeom.get()); ensure( minDiameter.get()->equalsExact(expectedGeom.get(), 0.00000000001) ); } diff -Nru geos-3.6.2/tests/unit/algorithm/PointLocatorTest.cpp geos-3.7.1/tests/unit/algorithm/PointLocatorTest.cpp --- geos-3.6.2/tests/unit/algorithm/PointLocatorTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/PointLocatorTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,14 +1,14 @@ -// -// Test Suite for geos::algorithm::PointLocator +// +// Test Suite for geos::algorithm::PointLocator // Ported from JTS junit/algorithm/PointLocator.java -#include +#include // geos #include #include #include #include -#include // required for use in auto_ptr +#include // required for use in unique_ptr #include // std #include @@ -42,10 +42,10 @@ // for the same reason... // static PrecisionModel pm; - static GeometryFactory::unique_ptr gf = GeometryFactory::create(&pm); + static GeometryFactory::Ptr gf = GeometryFactory::create(&pm); static geos::io::WKTReader reader(gf.get()); - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; void runPtLocator(int expected, const Coordinate& pt, const std::string& wkt) @@ -65,7 +65,7 @@ template<> template<> void object::test<1>() - { + { runPtLocator(Location::INTERIOR, Coordinate(10, 10), "POLYGON ((0 0, 0 20, 20 20, 20 0, 0 0))"); } @@ -74,7 +74,7 @@ template<> template<> void object::test<2>() - { + { runPtLocator(Location::INTERIOR, Coordinate(0, 0), "POLYGON ((-40 80, -40 -80, 20 0, 20 -100, 40 40, 80 -80, 100 80, 140 -20, 120 140, 40 180, 60 40, 0 120, -20 -20, -40 80))"); } @@ -83,7 +83,7 @@ template<> template<> void object::test<3>() - { + { runPtLocator(Location::BOUNDARY, Coordinate(0, 0), "GEOMETRYCOLLECTION( LINESTRING(0 0, 10 10), LINEARRING(10 10, 10 20, 20 10, 10 10))"); } @@ -92,7 +92,7 @@ template<> template<> void object::test<4>() - { + { runPtLocator(Location::EXTERIOR, Coordinate(11, 11), "LINEARRING(10 10, 10 20, 20 10, 10 10)"); } diff -Nru geos-3.6.2/tests/unit/algorithm/RobustLineIntersectionTest.cpp geos-3.7.1/tests/unit/algorithm/RobustLineIntersectionTest.cpp --- geos-3.6.2/tests/unit/algorithm/RobustLineIntersectionTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/RobustLineIntersectionTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,14 +1,14 @@ -// +// // Ported from JTS junit/algorithm/RobustLineIntersectionTest.java r788 -#include +#include // geos #include #include #include #include -#include // required for use in auto_ptr -#include +#include // required for use in unique_ptr +#include #include // std #include @@ -21,7 +21,7 @@ } } -using namespace geos::geom; // +using namespace geos::geom; // namespace tut { @@ -31,7 +31,7 @@ struct test_robustlineintersection_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; bool equals(const Coordinate& p0, const Coordinate& p1, double distanceTolerance) @@ -122,8 +122,8 @@ LineString* l1ptr = dynamic_cast(g1.get()); LineString* l2ptr = dynamic_cast(g2.get()); - ensure(0 != l1ptr); - ensure(0 != l2ptr); + ensure(nullptr != l1ptr); + ensure(nullptr != l2ptr); LineString& l1 = *l1ptr; LineString& l2 = *l2ptr; @@ -136,7 +136,7 @@ GeomPtr g(reader.read(expectedWKT)); - std::auto_ptr cs ( g->getCoordinates() ); + std::unique_ptr cs ( g->getCoordinates() ); std::vector intPt; for (size_t i=0; isize(); ++i) @@ -159,8 +159,8 @@ LineString* l1ptr = dynamic_cast(g1.get()); LineString* l2ptr = dynamic_cast(g2.get()); - ensure(0 != l1ptr); - ensure(0 != l2ptr); + ensure(nullptr != l1ptr); + ensure(nullptr != l2ptr); LineString& l1 = *l1ptr; LineString& l2 = *l2ptr; @@ -185,8 +185,8 @@ LineString* l1ptr = dynamic_cast(g1.get()); LineString* l2ptr = dynamic_cast(g2.get()); - ensure(0 != l1ptr); - ensure(0 != l2ptr); + ensure(nullptr != l1ptr); + ensure(nullptr != l2ptr); LineString& l1 = *l1ptr; LineString& l2 = *l2ptr; @@ -209,8 +209,8 @@ LineString* l1ptr = dynamic_cast(g1.get()); LineString* l2ptr = dynamic_cast(g2.get()); - ensure(0 != l1ptr); - ensure(0 != l2ptr); + ensure(nullptr != l1ptr); + ensure(nullptr != l2ptr); LineString& l1 = *l1ptr; LineString& l2 = *l2ptr; @@ -250,7 +250,7 @@ } PrecisionModel pm; - GeometryFactory::unique_ptr gf; + GeometryFactory::Ptr gf; geos::io::WKTReader reader; }; @@ -270,7 +270,7 @@ template<> template<> void object::test<1>() - { + { checkIntersection( "LINESTRING (588750.7429703881 4518950.493668233, 588748.2060409798 4518933.9452804085)", "LINESTRING (588745.824857241 4518940.742239175, 588748.2060437313 4518933.9452791475)", @@ -283,7 +283,7 @@ template<> template<> void object::test<2>() - { + { checkIntersection( "LINESTRING (588743.626135934 4518924.610969561, 588732.2822865889 4518925.4314047815)", "LINESTRING (588739.1191384895 4518927.235700594, 588731.7854614238 4518924.578370095)", @@ -302,11 +302,11 @@ template<> template<> void object::test<3>() - { + { std::vector intPt; intPt.push_back(Coordinate(2089426.5233462777, 1180182.3877339689)); intPt.push_back(Coordinate(2085646.6891757075, 1195618.7333999649)); - + checkIntersection( "LINESTRING ( 2089426.5233462777 1180182.3877339689, 2085646.6891757075 1195618.7333999649 )", "LINESTRING ( 1889281.8148903656 1997547.0560044837, 2259977.3672235999 483675.17050843034 )", @@ -320,10 +320,10 @@ template<> template<> void object::test<4>() - { + { std::vector intPt; intPt.push_back(Coordinate(4348437.0557510145, 5552597.375203926)); - + checkIntersection( "LINESTRING (4348433.262114629 5552595.478385733, 4348440.849387404 5552599.272022122 )", "LINESTRING (4348433.26211463 5552595.47838573, 4348440.8493874 5552599.27202212 )", @@ -338,7 +338,7 @@ template<> template<> void object::test<5>() - { + { std::vector pt; pt.push_back(Coordinate(4348433.262114629, 5552595.478385733)); pt.push_back(Coordinate(4348440.849387404, 5552599.272022122)); @@ -347,7 +347,7 @@ std::vector intPt; intPt.push_back(Coordinate(4348437.0557510145, 5552597.375203926)); - + checkIntersection( pt, 1, intPt, 0); } #endif // fails @@ -361,7 +361,7 @@ template<> template<> void object::test<6>() - { + { checkIntersection( "LINESTRING (305690.0434123494 254176.46578338774, 305601.9999843455 254243.19999846347)", "LINESTRING (305689.6153764265 254177.33102743194, 305692.4999844298 254171.4999983967)", @@ -382,7 +382,7 @@ template<> template<> void object::test<7>() - { + { checkIntersectionNone( "LINESTRING (-5.9 163.1, 76.1 250.7)", "LINESTRING (14.6 185.0, 96.6 272.6)"); @@ -401,7 +401,7 @@ template<> template<> void object::test<8>() - { + { checkIntersectionNone( "LINESTRING (-42.0 163.2, 21.2 265.2)", "LINESTRING (-26.2 188.7, 37.0 290.7)"); diff -Nru geos-3.6.2/tests/unit/algorithm/RobustLineIntersectorTest.cpp geos-3.7.1/tests/unit/algorithm/RobustLineIntersectorTest.cpp --- geos-3.6.2/tests/unit/algorithm/RobustLineIntersectorTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/algorithm/RobustLineIntersectorTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Ported from JTS junit/algorithm/RobustLineIntersectorTest.java rev. 1.1 -#include +#include // geos #include #include @@ -9,8 +9,8 @@ #include #include #include -#include // required for use in auto_ptr -#include +#include // required for use in unique_ptr +#include #include #include #include @@ -21,7 +21,7 @@ #include -using namespace geos::geom; // +using namespace geos::geom; // using geos::algorithm::LineIntersector; using geos::algorithm::CGAlgorithms; @@ -34,7 +34,7 @@ struct test_robustlineintersector_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; LineIntersector i; @@ -57,7 +57,7 @@ template<> template<> void object::test<1>() - { + { LineIntersector i; Coordinate p1(10, 10); Coordinate p2(20, 20); @@ -77,7 +77,7 @@ template<> template<> void object::test<2>() - { + { LineIntersector i; Coordinate p1(10, 10); Coordinate p2(20, 10); @@ -95,7 +95,7 @@ template<> template<> void object::test<3>() - { + { LineIntersector i; Coordinate p1(10, 10); Coordinate p2(20, 10); @@ -113,7 +113,7 @@ template<> template<> void object::test<4>() - { + { LineIntersector i; Coordinate p1(10, 10); Coordinate p2(20, 10); @@ -131,7 +131,7 @@ template<> template<> void object::test<5>() - { + { LineIntersector i; Coordinate p1(10, 10); Coordinate p2(20, 10); @@ -149,7 +149,7 @@ template<> template<> void object::test<6>() - { + { i.computeIntersection(Coordinate(100, 100), Coordinate(10, 100), Coordinate(100, 10), Coordinate(100, 100)); ensure("hasIntersection", i.hasIntersection()); @@ -160,7 +160,7 @@ template<> template<> void object::test<7>() - { + { i.computeIntersection(Coordinate(190, 50), Coordinate(120, 100), Coordinate(120, 100), Coordinate(50, 150)); ensure("hasIntersection", i.hasIntersection()); @@ -172,7 +172,7 @@ template<> template<> void object::test<8>() - { + { i.computeIntersection(Coordinate(180, 200), Coordinate(160, 180), Coordinate(220, 240), Coordinate(140, 160)); ensure("hasIntersection", i.hasIntersection()); @@ -183,7 +183,7 @@ template<> template<> void object::test<9>() - { + { i.computeIntersection(Coordinate(30, 10), Coordinate(30, 30), Coordinate(10, 10), Coordinate(90, 11)); ensure("hasIntersection", i.hasIntersection()); @@ -195,7 +195,7 @@ template<> template<> void object::test<10>() - { + { i.computeIntersection(Coordinate(10, 30), Coordinate(10, 0), Coordinate(11, 90), Coordinate(10, 10)); ensure("hasIntersection", i.hasIntersection()); @@ -207,7 +207,7 @@ template<> template<> void object::test<11>() - { + { ensure_equals(CGAlgorithms::computeOrientation( Coordinate(-123456789, -40), Coordinate(0, 0), @@ -218,7 +218,7 @@ template<> template<> void object::test<12>() - { + { ensure_equals(CGAlgorithms::computeOrientation( Coordinate(10, 10), Coordinate(20, 20), @@ -229,7 +229,7 @@ template<> template<> void object::test<13>() - { + { Coordinate p1(-123456789, -40); Coordinate p2(381039468754763.0, 123456789); Coordinate q(0, 0); @@ -238,7 +238,7 @@ using geos::geom::GeometryFactory; using geos::geom::LineString; - GeometryFactory::unique_ptr factory = GeometryFactory::create(); + GeometryFactory::Ptr factory = GeometryFactory::create(); CoordinateSequence* cs = new CoordinateArraySequence(); cs->add(p1); cs->add(p2); @@ -253,13 +253,13 @@ } // Test intersects: point on segment with FLOAT PM - // X coordinate of 3rd and 4th vertises of the line are not + // X coordinate of 3rd and 4th vertises of the line are not // float-point exact with X coordinate of the point. // The X values differ after 14th decimal place: // POINT (-23.1094689600055080 50.5195368635957180) // --------------------^^^^^^^------------^^^^^^^^ // LINESTRING 3rd and 4th points - // -23.1094689600055150 50.5223376452201340, + // -23.1094689600055150 50.5223376452201340, // -23.1094689600055010 50.5169177629559480, // --------------------^^^^^^^------------^^^^^^^^ // So, in float-point precision model, the point does DOES NOT intersect the segment. @@ -268,7 +268,7 @@ void object::test<14>() { geos::io::WKBReader reader; - + // POINT located between 3rd and 4th vertex of LINESTRING // POINT(-23.1094689600055080 50.5195368635957180) std::string point("01010000009a266328061c37c0e21a172f80424940"); @@ -283,13 +283,13 @@ } // Test intersects: point on segment with FIXED PM - // X coordinate of 3rd and 4th vertises of the line are not + // X coordinate of 3rd and 4th vertises of the line are not // float-point exact with X coordinate of the point. // The X values differ after 14th decimal place: // POINT (-23.1094689600055080 50.5195368635957180) // --------------------^^^^^^^------------^^^^^^^^ // LINESTRING 3rd and 4th points - // -23.1094689600055150 50.5223376452201340, + // -23.1094689600055150 50.5223376452201340, // -23.1094689600055010 50.5169177629559480, // --------------------^^^^^^^------------^^^^^^^^ // So, if float-point values are trimmed up to 14 decimal digits, the point DOES intersect the segment. @@ -300,7 +300,7 @@ { using geos::geom::GeometryFactory; geos::geom::PrecisionModel pm(1e+13); - GeometryFactory::unique_ptr factory = GeometryFactory::create(&pm); + GeometryFactory::Ptr factory = GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); // POINT located between 3rd and 4th vertex of LINESTRING diff -Nru geos-3.6.2/tests/unit/capi/GEOSBufferTest.cpp geos-3.7.1/tests/unit/capi/GEOSBufferTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSBufferTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSBufferTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSBuffer and GEOSBufferWithStyle -#include +#include // geos #include // std @@ -34,17 +34,17 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosbuffer_data() - : geom1_(0), geom2_(0), wkt_(0), bp_(0) + : geom1_(nullptr), geom2_(nullptr), wkt_(nullptr), bp_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); - } + } ~test_capigeosbuffer_data() { @@ -53,9 +53,9 @@ GEOSWKTWriter_destroy(wktw_); GEOSBufferParams_destroy(bp_); GEOSFree(wkt_); - geom1_ = 0; - geom2_ = 0; - wkt_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + wkt_ = nullptr; finishGEOS(); } @@ -78,14 +78,14 @@ { geom1_ = GEOSGeomFromWKT("POINT EMPTY"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 1, 8, GEOSBUF_CAP_ROUND, GEOSBUF_JOIN_BEVEL, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -99,14 +99,14 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING EMPTY"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 1, 8, GEOSBUF_CAP_ROUND, GEOSBUF_JOIN_BEVEL, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -120,14 +120,14 @@ { geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 1, 8, GEOSBUF_CAP_ROUND, GEOSBUF_JOIN_BEVEL, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -141,11 +141,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBuffer(geom1_, 5, 1); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -163,11 +163,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBuffer(geom1_, 5, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -184,12 +184,12 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_SQUARE, GEOSBUF_JOIN_ROUND, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -207,12 +207,12 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_FLAT, GEOSBUF_JOIN_ROUND, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -222,19 +222,19 @@ ensure_distance(area_, 111.803, 0.001); } - // Buffer with flat end cap on a 2-vertices horizontal line + // Buffer with flat end cap on a 2-vertices horizontal line template<> template<> void object::test<8>() { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_FLAT, GEOSBUF_JOIN_ROUND, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -248,19 +248,19 @@ )); } - // Buffer with square end cap on a 2-vertices horizontal line + // Buffer with square end cap on a 2-vertices horizontal line template<> template<> void object::test<9>() { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_SQUARE, GEOSBUF_JOIN_ROUND, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -282,12 +282,12 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_SQUARE, GEOSBUF_JOIN_ROUND, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -306,12 +306,12 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_SQUARE, GEOSBUF_JOIN_MITRE, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -333,12 +333,12 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 20, GEOSBUF_CAP_SQUARE, GEOSBUF_JOIN_BEVEL, 5.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -361,12 +361,12 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10, 10 20)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 5, 200, GEOSBUF_CAP_SQUARE, GEOSBUF_JOIN_BEVEL, 10.0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -387,12 +387,12 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((0 0, 10 0, 10 10, 0 0))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 2, 200, GEOSBUF_CAP_FLAT, GEOSBUF_JOIN_MITRE, 1); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -410,12 +410,12 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((0 0, 10 0, 10 10, 0 0))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 2, 200, GEOSBUF_CAP_FLAT, GEOSBUF_JOIN_MITRE, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -433,12 +433,12 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((0 0, 10 0, 10 10, 0 0))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSBufferWithStyle(geom1_, 2, 200, GEOSBUF_CAP_FLAT, GEOSBUF_JOIN_MITRE, 3); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); @@ -457,14 +457,14 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); bp_ = GEOSBufferParams_create(); GEOSBufferParams_setEndCapStyle(bp_, GEOSBUF_CAP_SQUARE); geom2_ = GEOSBufferWithParams(geom1_, bp_, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -482,7 +482,7 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); bp_ = GEOSBufferParams_create(); @@ -490,7 +490,7 @@ GEOSBufferParams_setSingleSided(bp_, 1); geom2_ = GEOSBufferWithParams(geom1_, bp_, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -508,7 +508,7 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(5 10, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); bp_ = GEOSBufferParams_create(); @@ -516,7 +516,7 @@ GEOSBufferParams_setSingleSided(bp_, 1); geom2_ = GEOSBufferWithParams(geom1_, bp_, -2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -533,11 +533,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0, 10 10)', -10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSSingleSidedBuffer(geom1_, 10, 8, GEOSBUF_JOIN_BEVEL, 0, 0); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSGeomToWKT(geom2_); diff -Nru geos-3.6.2/tests/unit/capi/GEOSCAPIDefinesTest.cpp geos-3.7.1/tests/unit/capi/GEOSCAPIDefinesTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSCAPIDefinesTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSCAPIDefinesTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -0,0 +1,56 @@ +// +// Test Suite for C-API defines + +#include +// geos +#include +// std +#include +#include +#include +#include + +#define QUOTE(x) #x +#define EXPAND_AND_QUOTE(y) QUOTE(y) + +namespace tut +{ + // + // Test Group + // + + struct basic {}; + + typedef test_group group; + typedef group::object object; + + group test_capidefines_group("capi::defines"); + + // Make sure version elements all defined + template<> + template<> + void object::test<1>() { + ensure(std::string(EXPAND_AND_QUOTE(GEOS_VERSION_MAJOR)).length() > 0); + ensure(std::string(EXPAND_AND_QUOTE(GEOS_VERSION_MINOR)).length() > 0); + ensure(std::string(EXPAND_AND_QUOTE(GEOS_VERSION_PATCH)).length() > 0); + ensure(std::string(GEOS_VERSION).length() > 0); + + ensure(std::string(EXPAND_AND_QUOTE(GEOS_CAPI_VERSION_MAJOR)).length() > 0); + ensure(std::string(EXPAND_AND_QUOTE(GEOS_CAPI_VERSION_MINOR)).length() > 0); + ensure(std::string(EXPAND_AND_QUOTE(GEOS_CAPI_VERSION_PATCH)).length() > 0); + ensure(std::string(GEOS_CAPI_VERSION).length() > 0); + } + + // Make sure version representations agree + template<> + template<> + void object::test<2>() { + ensure_equals( + GEOS_VERSION, + std::string(EXPAND_AND_QUOTE(GEOS_VERSION_MAJOR)) + "." + + std::string(EXPAND_AND_QUOTE(GEOS_VERSION_MINOR)) + "." + + std::string(EXPAND_AND_QUOTE(GEOS_VERSION_PATCH))); + } + +} // namespace tut + diff -Nru geos-3.6.2/tests/unit/capi/GEOSClipByRectTest.cpp geos-3.7.1/tests/unit/capi/GEOSClipByRectTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSClipByRectTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSClipByRectTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSClipByRect -#include +#include // geos #include // std @@ -32,7 +32,7 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } @@ -50,13 +50,13 @@ } test_capigeosclipbyrect_data() - : geom1_(0), geom2_(0), geom3_(0), w_(0) + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr), w_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(w_, 1); GEOSWKTWriter_setRoundingPrecision(w_, 8); - } + } ~test_capigeosclipbyrect_data() { @@ -64,9 +64,9 @@ GEOSGeom_destroy(geom2_); GEOSGeom_destroy(geom3_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; finishGEOS(); } @@ -81,7 +81,7 @@ // Test Cases // - /// Point outside + /// Point outside template<> template<> void object::test<1>() { geom1_ = GEOSGeomFromWKT("POINT(0 0)"); @@ -89,7 +89,7 @@ isEqual(geom2_, "POINT EMPTY"); } - /// Point inside + /// Point inside template<> template<> void object::test<2>() { geom1_ = GEOSGeomFromWKT("POINT(15 15)"); @@ -105,7 +105,7 @@ isEqual(geom2_, "POINT EMPTY"); } - /// Line outside + /// Line outside template<> template<> void object::test<4>() { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, -5 5)"); @@ -113,7 +113,7 @@ isEqual(geom2_, "LINESTRING EMPTY"); } - /// Line inside + /// Line inside template<> template<> void object::test<5>() { geom1_ = GEOSGeomFromWKT("LINESTRING(15 15, 16 15)"); diff -Nru geos-3.6.2/tests/unit/capi/GEOSContainsTest.cpp geos-3.7.1/tests/unit/capi/GEOSContainsTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSContainsTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSContainsTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSContains -#include +#include // geos #include #include @@ -31,22 +31,22 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeoscontains_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeoscontains_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -68,8 +68,8 @@ geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSContains(geom1_, geom2_); @@ -86,9 +86,9 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((1 1,1 5,5 5,5 1,1 1))"); geom2_ = GEOSGeomFromWKT("POINT(2 2)"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSContains(geom1_, geom2_); @@ -98,21 +98,21 @@ ensure_equals(int(r2), 0); } - + template<> template<> void object::test<3>() { geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)))"); geom2_ = GEOSGeomFromWKT("POLYGON((1 1,1 2,2 2,2 1,1 1))"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSContains(geom1_, geom2_); ensure_equals(int(r1), 1); - + char const r2 = GEOSContains(geom2_, geom1_); ensure_equals(int(r2), 0); @@ -132,34 +132,36 @@ // A contains B if precision is limited to 1e+10 { geos::geom::PrecisionModel pm(1e+10); - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); int ret = GEOSContains(geom1_, geom2_); ensure_equals(ret, 1); ret = GEOSContains(geom2_, geom1_); ensure_equals(ret, 0); + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); } // A does NOT contain B if precision is extended to 1e+11 or beyond { geos::geom::PrecisionModel pm(1e+11); - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); int ret = GEOSContains(geom1_, geom2_); ensure_equals(ret, 0); @@ -167,7 +169,7 @@ ensure_equals(ret, 0); } } - + // Test outer rectangle contains inner rectangle with one coincident vertex // and two vertices of the inner rectangle are on the boundary (lay on segments) // of the outer rectangle. @@ -176,7 +178,7 @@ template<> void object::test<5>() { - // Coincident vertext at -753.167968418005 93709.4279185742 + // Coincident vertex at -753.167968418005 93709.4279185742 //POLYGON ((-753.167968418005 93754.0955183194,-816.392328351464 93754.0955183194,-816.392328351464 93709.4279185742,-753.167968418005 93709.4279185742,-753.167968418005 93754.0955183194)) std::string const outer("01030000800100000005000000bd70d3ff578987c09e373e87a1e3f6400000000000000000a9f60b7d238389c09e373e87a1e3f6400000000000000000a9f60b7d238389c09625c1d8d6e0f6400000000000000000bd70d3ff578987c09625c1d8d6e0f6400000000000000000bd70d3ff578987c09e373e87a1e3f6400000000000000000"); //POLYGON ((-753.167968418005 93747.6909727677,-799.641978447015 93747.6909727677,-799.641978447015 93709.4279185742,-753.167968418005 93709.4279185742,-753.167968418005 93747.6909727677)) @@ -185,34 +187,37 @@ // A contains B if precision is limited to 1e+10 { geos::geom::PrecisionModel pm(1e+10); - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); int ret = GEOSContains(geom1_, geom2_); ensure_equals(ret, 1); ret = GEOSContains(geom2_, geom1_); ensure_equals(ret, 0); + + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); } // A contains B if FLOATING PM is used with extended precision { geos::geom::PrecisionModel pm; - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); int ret = GEOSContains(geom1_, geom2_); ensure_equals(ret, 1); diff -Nru geos-3.6.2/tests/unit/capi/GEOSConvexHullTest.cpp geos-3.7.1/tests/unit/capi/GEOSConvexHullTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSConvexHullTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSConvexHullTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,81 +1,81 @@ -// -// Test Suite for C-API GEOSConvexHull - -#include -// geos -#include -// std -#include -#include -#include - -namespace tut -{ - // - // Test Group - // - - // Common data used in test cases. - struct test_capigeosconvexhull_data - { - GEOSGeometry* input_; - GEOSGeometry* expected_; - - static void notice(const char *fmt, ...) - { - std::fprintf( stdout, "NOTICE: "); - - va_list ap; - va_start(ap, fmt); - std::vfprintf(stdout, fmt, ap); - va_end(ap); - - std::fprintf(stdout, "\n"); - } - - test_capigeosconvexhull_data() - : input_(0), expected_(0) - { - initGEOS(notice, notice); - } - - ~test_capigeosconvexhull_data() - { - GEOSGeom_destroy(input_); - GEOSGeom_destroy(expected_); - input_ = 0; - expected_ = 0; - finishGEOS(); - } - - }; - - typedef test_group group; - typedef group::object object; - - group test_capigeosconvexhull_group("capi::GEOSConvexHull"); - - // - // Test Cases - // - - template<> - template<> - void object::test<1>() - { - input_ = GEOSGeomFromWKT("MULTIPOINT (130 240, 130 240, 130 240, 570 240, 570 240, 570 240, 650 240)"); - ensure( 0 != input_ ); - - expected_ = GEOSGeomFromWKT("LINESTRING (130 240, 650 240, 130 240)"); - ensure( 0 != expected_ ); - - GEOSGeometry* output = GEOSConvexHull(input_); - ensure( 0 != output ); - ensure( 0 == GEOSisEmpty(output) ); - // TODO - //ensure( 0 != GEOSEquals(output, expected_)); - GEOSGeom_destroy(output); - } - -} // namespace tut - +// +// Test Suite for C-API GEOSConvexHull + +#include +// geos +#include +// std +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capigeosconvexhull_data + { + GEOSGeometry* input_; + GEOSGeometry* expected_; + + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capigeosconvexhull_data() + : input_(nullptr), expected_(nullptr) + { + initGEOS(notice, notice); + } + + ~test_capigeosconvexhull_data() + { + GEOSGeom_destroy(input_); + GEOSGeom_destroy(expected_); + input_ = nullptr; + expected_ = nullptr; + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capigeosconvexhull_group("capi::GEOSConvexHull"); + + // + // Test Cases + // + + template<> + template<> + void object::test<1>() + { + input_ = GEOSGeomFromWKT("MULTIPOINT (130 240, 130 240, 130 240, 570 240, 570 240, 570 240, 650 240)"); + ensure( nullptr != input_ ); + + expected_ = GEOSGeomFromWKT("LINESTRING (130 240, 650 240, 130 240)"); + ensure( nullptr != expected_ ); + + GEOSGeometry* output = GEOSConvexHull(input_); + ensure( nullptr != output ); + ensure( 0 == GEOSisEmpty(output) ); + // TODO + //ensure( 0 != GEOSEquals(output, expected_)); + GEOSGeom_destroy(output); + } + +} // namespace tut + diff -Nru geos-3.6.2/tests/unit/capi/GEOSCoordSeqTest.cpp geos-3.7.1/tests/unit/capi/GEOSCoordSeqTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSCoordSeqTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSCoordSeqTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSCoordSeq -#include +#include // geos #include // std @@ -30,19 +30,19 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } - test_capigeoscoordseq_data() : cs_(0) + test_capigeoscoordseq_data() : cs_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeoscoordseq_data() { GEOSCoordSeq_destroy(cs_); - cs_ = 0; + cs_ = nullptr; finishGEOS(); } @@ -63,7 +63,7 @@ void object::test<1>() { cs_ = GEOSCoordSeq_create(5, 3); - + unsigned int size; unsigned int dims; @@ -92,15 +92,15 @@ ensure_equals( ycheck, y ); ensure_equals( zcheck, z ); } - } - + } + // Test not swapped setX/setY calls (see bug #133, fixed) template<> template<> void object::test<2>() { cs_ = GEOSCoordSeq_create(1, 3); - + unsigned int size; unsigned int dims; @@ -127,7 +127,7 @@ ensure_equals( xcheck, x ); ensure_equals( ycheck, y ); ensure_equals( zcheck, z ); - } + } // Test not swapped setOrdinate calls (see bug #133, fixed) template<> @@ -135,7 +135,7 @@ void object::test<3>() { cs_ = GEOSCoordSeq_create(1, 3); - + unsigned int size; unsigned int dims; @@ -162,7 +162,7 @@ ensure_equals( xcheck, x ); ensure_equals( ycheck, y ); ensure_equals( zcheck, z ); - } + } // Test swapped setX calls (see bug #133, fixed) template<> @@ -170,7 +170,7 @@ void object::test<4>() { cs_ = GEOSCoordSeq_create(1, 3); - + unsigned int size; unsigned int dims; @@ -197,7 +197,7 @@ ensure_equals( xcheck, x ); ensure_equals( ycheck, y ); ensure_equals( zcheck, z ); - } + } // Test swapped setOrdinate calls (see bug #133, fixed) template<> @@ -205,7 +205,7 @@ void object::test<5>() { cs_ = GEOSCoordSeq_create(1, 3); - + unsigned int size; unsigned int dims; @@ -232,7 +232,7 @@ ensure_equals( xcheck, x ); ensure_equals( ycheck, y ); ensure_equals( zcheck, z ); - } + } // Test getDimensions call (see bug #135) template<> @@ -240,7 +240,7 @@ void object::test<6>() { cs_ = GEOSCoordSeq_create(1, 2); - + unsigned int size; unsigned int dims; @@ -255,7 +255,82 @@ // ensure ( dims >= 2u ); - } - + } + + template<> + template<> + void object::test<7>() { + // ccw orientation + cs_ = GEOSCoordSeq_create(4, 2); + char ccw; + + GEOSCoordSeq_setX(cs_, 0, 0); + GEOSCoordSeq_setY(cs_, 0, 0); + + GEOSCoordSeq_setX(cs_, 1, 1); + GEOSCoordSeq_setY(cs_, 1, 0); + + GEOSCoordSeq_setX(cs_, 2, 1); + GEOSCoordSeq_setY(cs_, 2, 1); + + GEOSCoordSeq_setX(cs_, 3, 0); + GEOSCoordSeq_setY(cs_, 3, 0); + + ensure_equals(GEOSCoordSeq_isCCW(cs_, &ccw), 1); + ensure(ccw); + } + + template<> + template<> + void object::test<8>() { + // cw orientation + cs_ = GEOSCoordSeq_create(4, 2); + char ccw; + + GEOSCoordSeq_setX(cs_, 0, 0); + GEOSCoordSeq_setY(cs_, 0, 0); + + GEOSCoordSeq_setX(cs_, 1, 1); + GEOSCoordSeq_setY(cs_, 1, 1); + + GEOSCoordSeq_setX(cs_, 2, 1); + GEOSCoordSeq_setY(cs_, 2, 0); + + GEOSCoordSeq_setX(cs_, 3, 0); + GEOSCoordSeq_setY(cs_, 3, 0); + + ensure_equals(GEOSCoordSeq_isCCW(cs_, &ccw), 1); + ensure(!ccw ); + } + + template<> + template<> + void object::test<9>() { + // no orientation + cs_ = GEOSCoordSeq_create(3, 2); + char ccw; + + GEOSCoordSeq_setX(cs_, 0, 0); + GEOSCoordSeq_setY(cs_, 0, 0); + + GEOSCoordSeq_setX(cs_, 1, 1); + GEOSCoordSeq_setY(cs_, 1, 1); + + GEOSCoordSeq_setX(cs_, 2, 1); + GEOSCoordSeq_setY(cs_, 2, 0); + + ensure_equals(GEOSCoordSeq_isCCW(cs_, &ccw), 0); + } + + template<> + template<> + void object::test<10>() { + // no orientation + cs_ = GEOSCoordSeq_create(0, 0); + char ccw; + + ensure_equals(GEOSCoordSeq_isCCW(cs_, &ccw), 0); + } + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSDelaunayTriangulationTest.cpp geos-3.7.1/tests/unit/capi/GEOSDelaunayTriangulationTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSDelaunayTriangulationTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSDelaunayTriangulationTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSDelaunayTriangulation -#include +#include // geos #include // std @@ -31,12 +31,12 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosdelaunaytriangulation_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); @@ -57,8 +57,8 @@ GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -138,14 +138,14 @@ geom1_ = GEOSGeomFromWKT("MULTIPOINT(0 0, 5 0, 10 10)"); geom2_ = GEOSDelaunayTriangulation(geom1_, 0, 0); - ensure(geom2_ != 0); - ensure_equals_wkt(geom2_, + ensure(geom2_ != nullptr); + ensure_equals_wkt(geom2_, "GEOMETRYCOLLECTION (POLYGON ((0 0, 10 10, 5 0, 0 0)))" ); GEOSGeom_destroy(geom2_); geom2_ = GEOSDelaunayTriangulation(geom1_, 0, 1); - ensure_equals_wkt(geom2_, + ensure_equals_wkt(geom2_, "MULTILINESTRING ((5 0, 10 10), (0 0, 10 10), (0 0, 5 0))" ); } @@ -158,14 +158,14 @@ geom1_ = GEOSGeomFromWKT("POLYGON((0 0, 8.5 1, 10 10, 0.5 9, 0 0),(2 2, 3 8, 7 8, 8 2, 2 2)))"); geom2_ = GEOSDelaunayTriangulation(geom1_, 0, 0); - ensure(geom2_ != 0); - ensure_equals_wkt(geom2_, + ensure(geom2_ != nullptr); + ensure_equals_wkt(geom2_, "GEOMETRYCOLLECTION (POLYGON ((8 2, 10 10, 8.5 1, 8 2)), POLYGON ((7 8, 10 10, 8 2, 7 8)), POLYGON ((3 8, 10 10, 7 8, 3 8)), POLYGON ((2 2, 8 2, 8.5 1, 2 2)), POLYGON ((2 2, 7 8, 8 2, 2 2)), POLYGON ((2 2, 3 8, 7 8, 2 2)), POLYGON ((0.5 9, 10 10, 3 8, 0.5 9)), POLYGON ((0.5 9, 3 8, 2 2, 0.5 9)), POLYGON ((0 0, 2 2, 8.5 1, 0 0)), POLYGON ((0 0, 0.5 9, 2 2, 0 0)))" ); GEOSGeom_destroy(geom2_); geom2_ = GEOSDelaunayTriangulation(geom1_, 0, 1); - ensure_equals_wkt(geom2_, + ensure_equals_wkt(geom2_, "MULTILINESTRING ((8.5 1, 10 10), (8 2, 10 10), (8 2, 8.5 1), (7 8, 10 10), (7 8, 8 2), (3 8, 10 10), (3 8, 7 8), (2 2, 8.5 1), (2 2, 8 2), (2 2, 7 8), (2 2, 3 8), (0.5 9, 10 10), (0.5 9, 3 8), (0.5 9, 2 2), (0 0, 8.5 1), (0 0, 2 2), (0 0, 0.5 9))" ); } @@ -179,10 +179,10 @@ GEOSGeom_destroy(geom2_); geom2_ = GEOSDelaunayTriangulation(geom1_, 2, 1); - ensure_equals_wkt(geom2_, + ensure_equals_wkt(geom2_, "MULTILINESTRING ((10 0, 10 10), (0 0, 10 10), (0 0, 10 0))" ); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSDistanceTest.cpp geos-3.7.1/tests/unit/capi/GEOSDistanceTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSDistanceTest.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSDistanceTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSDistance -#include +#include // geos #include // std @@ -9,6 +9,10 @@ #include #include #include +#include +#ifndef M_PI +#define M_PI 3.14159265358979323846 +#endif namespace tut { @@ -32,17 +36,17 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosdistance_data() - : geom1_(0), geom2_(0), geom3_(0), w_(0) + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr), w_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(w_, 1); - } + } ~test_capigeosdistance_data() { @@ -50,9 +54,9 @@ GEOSGeom_destroy(geom2_); GEOSGeom_destroy(geom3_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; finishGEOS(); } @@ -81,7 +85,54 @@ ensure_equals(ret, 1); ensure_distance(dist, 8.06225774829855, 1e-12); } - + + GEOSGeometry* random_polygon(double x, double y, double r, size_t num_points) + { + std::vector angle(num_points); + std::vector radius(num_points); + + + for (size_t i = 0; i < num_points; i++) { + angle[i] = 2 * M_PI * std::rand() / RAND_MAX; + radius[i] = r*std::rand() / RAND_MAX; + } + + std::sort(angle.begin(), angle.end()); + + GEOSCoordSequence* seq_1 = GEOSCoordSeq_create(static_cast(num_points), 2); + for (unsigned int i = 0; i < num_points; i++) + { + auto idx = i == (num_points - 1) ? 0 : i; + + GEOSCoordSeq_setX(seq_1, i, x + radius[idx] * cos(angle[idx])); + GEOSCoordSeq_setY(seq_1, i, y + radius[idx] * sin(angle[idx])); + } + + return GEOSGeom_createPolygon(GEOSGeom_createLinearRing(seq_1), nullptr, 0); + } + + /* Generate two complex polygons and verify that GEOSDistance and GEOSDistanceIndexed + * return identical results. + */ + template<> + template<> + void object::test<2>() + { + std::srand(12345); + + GEOSGeometry* g1 = random_polygon(-3, -8, 7, 1000); + GEOSGeometry* g2 = random_polygon(14, 22, 6, 500); + + double d_raw, d_indexed; + ensure(GEOSDistance(g1, g2, &d_raw)); + ensure(GEOSDistanceIndexed(g1, g2, &d_indexed)); + + ensure_equals(d_indexed, d_raw); + + GEOSGeom_destroy(g1); + GEOSGeom_destroy(g2); + } + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSEqualsTest.cpp geos-3.7.1/tests/unit/capi/GEOSEqualsTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSEqualsTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSEqualsTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSEquals -#include +#include // geos #include // std @@ -30,22 +30,22 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosequals_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeosequals_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -67,8 +67,8 @@ geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSEquals(geom1_, geom2_); @@ -85,9 +85,9 @@ { geom1_ = GEOSGeomFromWKT("POINT(2 3)"); geom2_ = GEOSGeomFromWKT("POINT(2 2)"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSEquals(geom1_, geom2_); @@ -97,21 +97,21 @@ ensure_equals(int(r2), 0); } - + template<> template<> void object::test<3>() { geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)))"); geom2_ = GEOSGeomFromWKT("POLYGON((0 0,0 10,10 10,10 0,0 0))"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSEquals(geom1_, geom2_); ensure_equals(int(r1), 1); - + char const r2 = GEOSEquals(geom2_, geom1_); ensure_equals(int(r2), 1); @@ -124,7 +124,7 @@ { GEOSCoordSequence* cs = GEOSCoordSeq_create(5, 2); - double nan = std::numeric_limits::quiet_NaN(); + double nan = std::numeric_limits::quiet_NaN(); GEOSCoordSeq_setX(cs, 0, 1); GEOSCoordSeq_setY(cs, 0, 1); for (unsigned int i=1; i<4; ++i) { GEOSCoordSeq_setX(cs, i, nan); @@ -133,12 +133,12 @@ GEOSCoordSeq_setX(cs, 4, 1); GEOSCoordSeq_setY(cs, 4, 1); geom1_ = GEOSGeom_createPolygon(GEOSGeom_createLinearRing(cs), - NULL, 0); + nullptr, 0); char const r1 = GEOSEquals(geom1_, geom1_); ensure_equals(int(r1), 2); - + } // This is a test for bug #357 (GEOSEquals with inf coords) @@ -149,13 +149,13 @@ const char *hex = "0103000020E61000000100000005000000737979F3DDCC2CC0F92154F9E7534540000000000000F07F000000000000F07F8F806E993F7E55C0304B29FFEA8554400634E8D1DD424540B5FEE6A37FCD4540737979F3DDCC2CC0F92154F9E7534540"; geom1_ = GEOSGeomFromHEX_buf((unsigned char*)hex, std::strlen(hex)); - - ensure( 0 != geom1_ ); + + ensure( nullptr != geom1_ ); char const r1 = GEOSEquals(geom1_, geom1_); ensure_equals(int(r1), 2); - + } #if 0 // fails @@ -180,7 +180,7 @@ ensure_equals(int(r1), 1); } #endif - - + + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSFrechetDistanceTest.cpp geos-3.7.1/tests/unit/capi/GEOSFrechetDistanceTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSFrechetDistanceTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSFrechetDistanceTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,99 @@ +// +// Test Suite for C-API GEOSFrechetDistance + +#include +// geos +#include +// std +#include +#include +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capigeosfrechetdistance_data + { + GEOSGeometry* geom1_; + GEOSGeometry* geom2_; + GEOSGeometry* geom3_; + GEOSWKTWriter* w_; + + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capigeosfrechetdistance_data() + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr), w_(nullptr) + { + initGEOS(notice, notice); + w_ = GEOSWKTWriter_create(); + GEOSWKTWriter_setTrim(w_, 1); + } + + ~test_capigeosfrechetdistance_data() + { + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); + GEOSGeom_destroy(geom3_); + GEOSWKTWriter_destroy(w_); + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capigeosfrechetdistance_group("capi::GEOSFrechetDistance"); + + // + // Test Cases + // + + template<> + template<> + void object::test<1>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING (0 0, 100 0)"); + geom2_ = GEOSGeomFromWKT("LINESTRING (0 0, 50 50, 100 0)"); + + double dist; + int ret = GEOSFrechetDistance(geom1_, geom2_, &dist); + + ensure_equals(ret, 1); + ensure_distance(dist, 70.7106781186548, 1e-12); + } + + template<> + template<> + void object::test<2>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING (0 0, 100 0)"); + geom2_ = GEOSGeomFromWKT("LINESTRING (0 0, 50 50, 100 0)"); + + double dist; + int ret = GEOSFrechetDistanceDensify(geom1_, geom2_, 0.5, &dist); + + ensure_equals(ret, 1); + ensure_distance(dist, 50., 1e-12); + } + +} // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSGeom_create.cpp geos-3.7.1/tests/unit/capi/GEOSGeom_create.cpp --- geos-3.6.2/tests/unit/capi/GEOSGeom_create.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGeom_create.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSGeom_createPolygon -#include +#include // geos #include // std @@ -31,18 +31,18 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosgeom_create_data() - : geom1_(0), handle_(initGEOS_r(notice, notice)) + : geom1_(nullptr), handle_(initGEOS_r(notice, notice)) { - } + } ~test_capigeosgeom_create_data() { - GEOSGeom_destroy(geom1_); geom1_ = 0; + GEOSGeom_destroy(geom1_); geom1_ = nullptr; finishGEOS_r(handle_); } @@ -65,7 +65,7 @@ geom1_ = GEOSGeom_createEmptyPoint_r(handle_); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_POINT); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } // EMPTY linestring @@ -76,9 +76,9 @@ geom1_ = GEOSGeom_createEmptyLineString_r(handle_); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_LINESTRING); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } - + // EMPTY polygon template<> @@ -88,7 +88,7 @@ geom1_ = GEOSGeom_createEmptyPolygon_r(handle_); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_POLYGON); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } // EMPTY multipoint @@ -99,7 +99,7 @@ geom1_ = GEOSGeom_createEmptyCollection_r(handle_, GEOS_MULTIPOINT); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_MULTIPOINT); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } // EMPTY multilinestring @@ -110,7 +110,7 @@ geom1_ = GEOSGeom_createEmptyCollection_r(handle_, GEOS_MULTILINESTRING); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_MULTILINESTRING); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } // EMPTY multipolygon @@ -121,7 +121,7 @@ geom1_ = GEOSGeom_createEmptyCollection_r(handle_, GEOS_MULTIPOLYGON); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_MULTIPOLYGON); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } // EMPTY collection @@ -132,7 +132,7 @@ geom1_ = GEOSGeom_createEmptyCollection_r(handle_, GEOS_GEOMETRYCOLLECTION); ensure(0 != GEOSisEmpty_r(handle_, geom1_)); ensure_equals(GEOSGeomTypeId_r(handle_, geom1_), GEOS_GEOMETRYCOLLECTION); - GEOSGeom_destroy(geom1_); geom1_=0; + GEOSGeom_destroy(geom1_); geom1_=nullptr; } diff -Nru geos-3.6.2/tests/unit/capi/GEOSGeom_extentTest.cpp geos-3.7.1/tests/unit/capi/GEOSGeom_extentTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSGeom_extentTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGeom_extentTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -0,0 +1,82 @@ +// +// Test Suite for C-API GEOSGeom_getXMin et al + +#include +// geos +#include +// std +#include +#include +#include + +namespace tut +{ + struct test_capigeosgeom_extent { + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capigeosgeom_extent() + { + initGEOS(notice, notice); + } + + ~test_capigeosgeom_extent() + { + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capigeosgeom_extent_group("capi::GEOSGeom_getXYMinMax"); + + template<> + template<> + void object::test<1>() + { + GEOSGeometry* g = GEOSGeomFromWKT("LINESTRING (3 8, -12 -4)"); + + double xmin, ymin, xmax, ymax; + + ensure( GEOSGeom_getXMin(g, &xmin) ); + ensure( GEOSGeom_getYMin(g, &ymin) ); + ensure( GEOSGeom_getXMax(g, &xmax) ); + ensure( GEOSGeom_getYMax(g, &ymax) ); + + ensure_equals(xmin, -12); + ensure_equals(xmax, 3); + ensure_equals(ymin, -4); + ensure_equals(ymax, 8); + + GEOSGeom_destroy(g); + } + + template<> + template<> + void object::test<2>() + { + GEOSGeometry* g = GEOSGeomFromWKT("POLYGON EMPTY"); + + double d; + + ensure_equals( GEOSGeom_getXMax(g, &d), 0 ); + ensure_equals( GEOSGeom_getYMax(g, &d), 0 ); + ensure_equals( GEOSGeom_getXMin(g, &d), 0 ); + ensure_equals( GEOSGeom_getYMin(g, &d), 0 ); + + GEOSGeom_destroy(g); + } + +} // namespace tut + diff -Nru geos-3.6.2/tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp geos-3.7.1/tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGeom_extractUniquePointsTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSGeom_extractUniquePoints_r -#include +#include // geos #include // std @@ -31,15 +31,15 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosextractuniquepoints_data() - : geom1_(0), geom2_(0), geom3_(0) + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr) { handle_ = initGEOS_r(notice, notice); - } + } ~test_capigeosextractuniquepoints_data() { @@ -48,9 +48,9 @@ if( geom3_ ) GEOSGeom_destroy_r(handle_, geom3_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; finishGEOS_r(handle_); } @@ -97,6 +97,6 @@ ensure(0 != GEOSEquals_r(handle_, geom3_, geom2_)); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSGeomFromWKBTest.cpp geos-3.7.1/tests/unit/capi/GEOSGeomFromWKBTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSGeomFromWKBTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGeomFromWKBTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSGeomFromWKB -#include +#include #include // wkb_hex_decoder // geos #include @@ -33,25 +33,25 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosgeomfromwkb_data() - : geom1_(0), geom2_(0), reader_(0) + : geom1_(nullptr), geom2_(nullptr), reader_(nullptr) { initGEOS(notice, notice); reader_ = GEOSWKTReader_create(); - } + } ~test_capigeosgeomfromwkb_data() { GEOSGeom_destroy(geom2_); - geom2_ = 0; + geom2_ = nullptr; GEOSGeom_destroy(geom1_); - geom1_ = 0; + geom1_ = nullptr; GEOSWKTReader_destroy(reader_); - reader_ = 0; + reader_ = nullptr; finishGEOS(); } @@ -61,7 +61,7 @@ wkb_hex_decoder::decode(wkbhex, wkb); geom1_ = GEOSGeomFromWKB_buf(&wkb[0], wkb.size()); - ensure("GEOSGeomFromWKB_buf failed to create geometry", 0 != geom1_ ); + ensure("GEOSGeomFromWKB_buf failed to create geometry", nullptr != geom1_ ); // TODO: Update test to compare with WKT-based geometry (void)wkt; @@ -81,7 +81,6 @@ // // Test Cases // - template<> template<> void object::test<1>() @@ -101,7 +100,7 @@ std::string ewkb("01010000200400000000000000000000000000000000000000"); test_wkb(ewkb, wkt); } - + template<> template<> void object::test<3>() diff -Nru geos-3.6.2/tests/unit/capi/GEOSGeom_setPrecisionTest.cpp geos-3.7.1/tests/unit/capi/GEOSGeom_setPrecisionTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSGeom_setPrecisionTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGeom_setPrecisionTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSGeom_setPrecision_r -#include +#include // geos #include // std @@ -31,7 +31,7 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } @@ -50,14 +50,14 @@ } test_capigeosgeomsetprecision_data() - : geom1_(0), geom2_(0), geom3_(0) + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); GEOSWKTWriter_setRoundingPrecision(wktw_, 10); //GEOSWKTWriter_setOutputDimension(wktw_, 3); - } + } ~test_capigeosgeomsetprecision_data() { @@ -67,9 +67,9 @@ GEOSGeom_destroy(geom3_); GEOSWKTWriter_destroy(wktw_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; finishGEOS(); } @@ -181,6 +181,6 @@ "LINESTRING (0 0, 0 0)" )); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSGeomToWKTTest.cpp geos-3.7.1/tests/unit/capi/GEOSGeomToWKTTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSGeomToWKTTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGeomToWKTTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSGeomToWKT -#include +#include // geos #include // std @@ -30,42 +30,42 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosgeomtowkt_data() - : geom1_(0) + : geom1_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeosgeomtowkt_data() { GEOSGeom_destroy(geom1_); - geom1_ = 0; + geom1_ = nullptr; finishGEOS(); } void test_wkt(std::string const& wkt) { geom1_ = GEOSGeomFromWKT(wkt.c_str()); - ensure ( 0 != geom1_ ); + ensure ( nullptr != geom1_ ); char* wkt_c = GEOSGeomToWKT(geom1_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, wkt); } - + void test_wkt(std::string const& wkt, std::string::size_type n) { geom1_ = GEOSGeomFromWKT(wkt.c_str()); - ensure ( 0 != geom1_ ); + ensure ( nullptr != geom1_ ); char* wkt_c = GEOSGeomToWKT(geom1_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out.substr(0, n), wkt.substr(0, n)); @@ -74,10 +74,10 @@ void test_writer_wkt(GEOSWKTWriter *writer, std::string const& wkt) { geom1_ = GEOSGeomFromWKT(wkt.c_str()); - ensure ( 0 != geom1_ ); + ensure ( nullptr != geom1_ ); char* wkt_c = GEOSWKTWriter_write(writer,geom1_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, wkt); @@ -99,28 +99,28 @@ { test_wkt("POINT EMPTY"); } - + template<> template<> void object::test<2>() { test_wkt("LINESTRING EMPTY"); } - + template<> template<> void object::test<3>() { test_wkt("POLYGON EMPTY"); } - + template<> template<> void object::test<4>() { test_wkt("MULTIPOINT EMPTY"); } - + template<> template<> void object::test<5>() @@ -151,21 +151,21 @@ { test_wkt("LINESTRING (0 0, 5 5, 10 5, 10 10)", 13); } - + template<> template<> void object::test<9>() { test_wkt("POLYGON ((0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10))", 11); } - + template<> template<> void object::test<10>() { test_wkt("MULTIPOINT (0 0, 5 5, 10 10, 15 15, 20 20)", 13); } - + template<> template<> void object::test<11>() @@ -188,12 +188,12 @@ { GEOSWKTWriter *writer = GEOSWKTWriter_create(); - ensure( "getOutputDimension_1", + ensure( "getOutputDimension_1", GEOSWKTWriter_getOutputDimension(writer) == 2 ); GEOSWKTWriter_setTrim( writer, 1 ); GEOSWKTWriter_setOutputDimension( writer, 3 ); - ensure( "getOutputDimension_2", + ensure( "getOutputDimension_2", GEOSWKTWriter_getOutputDimension(writer) == 3 ); test_writer_wkt(writer, "POINT Z (10 13 3)"); diff -Nru geos-3.6.2/tests/unit/capi/GEOSGetCentroidTest.cpp geos-3.7.1/tests/unit/capi/GEOSGetCentroidTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSGetCentroidTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSGetCentroidTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ // $Id$ -// +// // Test Suite for C-API GEOSGetCentroid -#include +#include // geos #include // std @@ -34,18 +34,18 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capicentroid_data() - : geom1_(0), geom2_(0), wkt_(0) + : geom1_(nullptr), geom2_(nullptr), wkt_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); GEOSWKTWriter_setRoundingPrecision(wktw_, 8); - } + } ~test_capicentroid_data() { @@ -53,9 +53,9 @@ GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(wktw_); GEOSFree(wkt_); - geom1_ = 0; - geom2_ = 0; - wkt_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + wkt_ = nullptr; finishGEOS(); } @@ -77,11 +77,11 @@ { geom1_ = GEOSGeomFromWKT("POINT(10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSGetCentroid(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -96,11 +96,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSGetCentroid(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -115,11 +115,11 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSGetCentroid(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -139,11 +139,11 @@ 56.528833333300 25.2103333333, \ 56.528666666700 25.2101666667))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSGetCentroid(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -158,11 +158,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING EMPTY"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSGetCentroid(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); diff -Nru geos-3.6.2/tests/unit/capi/GEOSHausdorffDistanceTest.cpp geos-3.7.1/tests/unit/capi/GEOSHausdorffDistanceTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSHausdorffDistanceTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSHausdorffDistanceTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -0,0 +1,99 @@ +// +// Test Suite for C-API GEOSHausdorffDistance + +#include +// geos +#include +// std +#include +#include +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capigeoshausdorffdistance_data + { + GEOSGeometry* geom1_; + GEOSGeometry* geom2_; + GEOSGeometry* geom3_; + GEOSWKTWriter* w_; + + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capigeoshausdorffdistance_data() + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr), w_(nullptr) + { + initGEOS(notice, notice); + w_ = GEOSWKTWriter_create(); + GEOSWKTWriter_setTrim(w_, 1); + } + + ~test_capigeoshausdorffdistance_data() + { + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); + GEOSGeom_destroy(geom3_); + GEOSWKTWriter_destroy(w_); + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capigeoshausdorffdistance_group("capi::GEOSHausdorffDistance"); + + // + // Test Cases + // + + template<> + template<> + void object::test<1>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING (130 0, 0 0, 0 150)"); + geom2_ = GEOSGeomFromWKT("LINESTRING (10 10, 10 150, 130 10)"); + + double dist; + int ret = GEOSHausdorffDistance(geom1_, geom2_, &dist); + + ensure_equals(ret, 1); + ensure_distance(dist, 14.142135623730951, 1e-12); + } + + template<> + template<> + void object::test<2>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING (130 0, 0 0, 0 150)"); + geom2_ = GEOSGeomFromWKT("LINESTRING (10 10, 10 150, 130 10)"); + + double dist; + int ret = GEOSHausdorffDistanceDensify(geom1_, geom2_, 0.5, &dist); + + ensure_equals(ret, 1); + ensure_distance(dist, 70., 1e-12); + } + +} // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSInterpolateTest.cpp geos-3.7.1/tests/unit/capi/GEOSInterpolateTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSInterpolateTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSInterpolateTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -0,0 +1,68 @@ +// Test Suite for C-API LineString interpolate functions + +#include +// geos +#include +// std +#include +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capiinterpolate_data + { + GEOSGeometry* geom1_; + + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capiinterpolate_data() + : geom1_(nullptr) + { + initGEOS(notice, notice); + } + + ~test_capiinterpolate_data() + { + GEOSGeom_destroy(geom1_); + geom1_ = nullptr; + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capiinterpolate_group("capi::GEOSInterpolate"); + + // + // Test Cases + // + + template<> + template<> + void object::test<1>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING EMPTY"); + GEOSGeometry *geom2 = GEOSInterpolate(geom1_, 1); + ensure_equals(GEOSisEmpty(geom2), 1); + GEOSGeom_destroy(geom2); + } +} // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSInterruptTest.cpp geos-3.7.1/tests/unit/capi/GEOSInterruptTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSInterruptTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSInterruptTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API custom allocators -#include +#include // geos #include // std @@ -30,13 +30,13 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capiinterrupt_data() { - } + } ~test_capiinterrupt_data() { @@ -56,7 +56,7 @@ }; int test_capiinterrupt_data::numcalls = 0; - GEOSInterruptCallback* test_capiinterrupt_data::nextcb = 0; + GEOSInterruptCallback* test_capiinterrupt_data::nextcb = nullptr; typedef test_group group; typedef group::object object; @@ -82,30 +82,63 @@ GEOSGeometry *geom1 = GEOSGeomFromWKT("LINESTRING(0 0, 1 0)"); - ensure("GEOSGeomFromWKT failed", 0 != geom1); + ensure("GEOSGeomFromWKT failed", nullptr != geom1); GEOSGeometry *geom2 = GEOSBuffer(geom1, 1, 8); - ensure("GEOSBufferWithStyle failed", 0 != geom2); + ensure("GEOSBufferWithStyle failed", nullptr != geom2); ensure("interrupt callback never called", numcalls > 0); GEOSGeom_destroy(geom1); GEOSGeom_destroy(geom2); - GEOS_interruptRegisterCallback(0); /* unregister */ + GEOS_interruptRegisterCallback(nullptr); /* unregister */ finishGEOS(); } - /// Test interrupt callback being NOT reset by initGEOS + /// Test interrupt callback being called XXX template<> template<> void object::test<2>() { numcalls = 0; + initGEOS(notice, notice); + + GEOS_interruptRegisterCallback(countCalls); + + ensure_equals(numcalls, 0); + + GEOSGeometry *geom1 = GEOSGeomFromWKT("LINESTRING(0 0, 1 1, 2 2, 4 4)"); + GEOSGeometry *geom2 = GEOSGeomFromWKT("LINESTRING(0 0, 1 1.01, 4 4.001)"); + + ensure("GEOSGeomFromWKT failed", nullptr != geom1); + + GEOSGeometry *geom3 = GEOSSnap(geom1, geom2, 0.1); + + ensure("GEOSSnap failed", nullptr != geom3); + + ensure("interrupt callback never called", numcalls > 0); + + GEOSGeom_destroy(geom1); + GEOSGeom_destroy(geom2); + GEOSGeom_destroy(geom3); + + GEOS_interruptRegisterCallback(nullptr); /* unregister */ + + finishGEOS(); + } + + /// Test interrupt callback being NOT reset by initGEOS + template<> + template<> + void object::test<3>() + { + numcalls = 0; + GEOS_interruptRegisterCallback(countCalls); initGEOS(notice, notice); @@ -114,18 +147,18 @@ GEOSGeometry *geom1 = GEOSGeomFromWKT("LINESTRING(0 0, 1 0)"); - ensure("GEOSGeomFromWKT failed", 0 != geom1); + ensure("GEOSGeomFromWKT failed", nullptr != geom1); GEOSGeometry *geom2 = GEOSBuffer(geom1, 1, 8); - ensure("GEOSBufferWithStyle failed", 0 != geom2); + ensure("GEOSBufferWithStyle failed", nullptr != geom2); ensure("interrupt callback never called", numcalls > 0); GEOSGeom_destroy(geom1); GEOSGeom_destroy(geom2); - GEOS_interruptRegisterCallback(0); + GEOS_interruptRegisterCallback(nullptr); finishGEOS(); } @@ -133,18 +166,18 @@ /// Test interrupting from callback template<> template<> - void object::test<3>() + void object::test<4>() { initGEOS(notice, notice); GEOSGeometry *geom1 = GEOSGeomFromWKT("LINESTRING(0 0, 1 0)"); - ensure("GEOSGeomFromWKT failed", 0 != geom1); + ensure("GEOSGeomFromWKT failed", nullptr != geom1); - GEOS_interruptRegisterCallback(interruptNow); + GEOS_interruptRegisterCallback(interruptNow); GEOSGeometry *geom2 = GEOSBuffer(geom1, 1, 8); - ensure("GEOSBuffer wasn't interrupted", 0 == geom2); - GEOS_interruptRegisterCallback(0); /* unregister */ + ensure("GEOSBuffer wasn't interrupted", nullptr == geom2); + GEOS_interruptRegisterCallback(nullptr); /* unregister */ // TODO: check the actual exception ? (sent to notice() callback) @@ -156,7 +189,7 @@ /// Test chaining interrupt callbacks template<> template<> - void object::test<4>() + void object::test<5>() { numcalls = 0; @@ -164,15 +197,15 @@ GEOSGeometry *geom1 = GEOSGeomFromWKT("LINESTRING(0 0, 1 0)"); - ensure("GEOSGeomFromWKT failed", 0 != geom1); + ensure("GEOSGeomFromWKT failed", nullptr != geom1); - GEOS_interruptRegisterCallback(interruptNow); - nextcb = GEOS_interruptRegisterCallback(countCalls); + GEOS_interruptRegisterCallback(interruptNow); + nextcb = GEOS_interruptRegisterCallback(countCalls); GEOSGeometry *geom2 = GEOSBuffer(geom1, 1, 8); - ensure("GEOSBuffer wasn't interrupted", 0 == geom2); + ensure("GEOSBuffer wasn't interrupted", nullptr == geom2); ensure_equals(numcalls, 1); - GEOS_interruptRegisterCallback(0); /* unregister */ - nextcb = 0; + GEOS_interruptRegisterCallback(nullptr); /* unregister */ + nextcb = nullptr; GEOSGeom_destroy(geom1); diff -Nru geos-3.6.2/tests/unit/capi/GEOSIntersectionTest.cpp geos-3.7.1/tests/unit/capi/GEOSIntersectionTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSIntersectionTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSIntersectionTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,142 +1,142 @@ -// -// Test Suite for C-API GEOSintersection - -#include -// geos -#include -// std -#include -#include -#include - -namespace tut -{ - // - // Test Group - // - - // Common data used in test cases. - struct test_capigeosintersection_data - { - GEOSWKTWriter* wktw_; - GEOSGeometry* geom1_; - GEOSGeometry* geom2_; - GEOSGeometry* geom3_; - - static void notice(const char *fmt, ...) - { - std::fprintf(stdout, "NOTICE: "); - - va_list ap; - va_start(ap, fmt); - std::vfprintf(stdout, fmt, ap); - va_end(ap); - - std::fprintf(stdout, "\n"); - } - - test_capigeosintersection_data() - : geom1_(0), geom2_(0), geom3_(0) - { - initGEOS(notice, notice); - wktw_ = GEOSWKTWriter_create(); - GEOSWKTWriter_setTrim(wktw_, 1); - GEOSWKTWriter_setOutputDimension(wktw_, 3); - } - - std::string toWKT(GEOSGeometry* g) - { - char* wkt = GEOSWKTWriter_write(wktw_, g); - std::string ret(wkt); - GEOSFree(wkt); - return ret; - } - - ~test_capigeosintersection_data() - { - GEOSWKTWriter_destroy(wktw_); - GEOSGeom_destroy(geom1_); - GEOSGeom_destroy(geom2_); - GEOSGeom_destroy(geom3_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; - finishGEOS(); - } - - }; - - typedef test_group group; - typedef group::object object; - - group test_capigeosintersection_group("capi::GEOSIntersection"); - - // - // Test Cases - // - - template<> - template<> - void object::test<1>() - { - geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); - geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); - - ensure(0 != geom1_); - ensure(0 != geom2_); - - geom3_ = GEOSIntersection(geom1_, geom2_); - ensure(0 != geom3_); - ensure_equals(toWKT(geom3_), std::string("GEOMETRYCOLLECTION EMPTY")); - } - - template<> - template<> - void object::test<2>() - { - geom1_ = GEOSGeomFromWKT("POLYGON((1 1,1 5,5 5,5 1,1 1))"); - geom2_ = GEOSGeomFromWKT("POINT(2 2)"); - - ensure(0 != geom1_); - ensure(0 != geom2_); - - geom3_ = GEOSIntersection(geom1_, geom2_); - ensure(0 != geom3_); - ensure_equals(toWKT(geom3_), std::string("POINT (2 2)")); - } - - template<> - template<> - void object::test<3>() - { - geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)))"); - geom2_ = GEOSGeomFromWKT("POLYGON((-1 1,-1 2,2 2,2 1,-1 1))"); - - ensure(0 != geom1_); - ensure(0 != geom2_); - - geom3_ = GEOSIntersection(geom1_, geom2_); - - ensure(0 != geom3_); - ensure_equals(toWKT(geom3_), std::string("POLYGON ((0 1, 0 2, 2 2, 2 1, 0 1))")); - } - - /* See http://trac.osgeo.org/geos/ticket/719 */ - template<> - template<> - void object::test<4>() - { - geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,5 10,10 0,0 0),(1 1,1 2,2 2,2 1,1 1),(100 100,100 102,102 102,102 100,100 100)))"); - geom2_ = GEOSGeomFromWKT("POLYGON((0 1,0 2,10 2,10 1,0 1))"); - - ensure(0 != geom1_); - ensure(0 != geom2_); - - geom3_ = GEOSIntersection(geom1_, geom2_); - - ensure(0 != geom3_); - ensure_equals(toWKT(geom3_), std::string("GEOMETRYCOLLECTION (LINESTRING (1 2, 2 2), LINESTRING (2 1, 1 1), POLYGON ((0.5 1, 1 2, 1 1, 0.5 1)), POLYGON ((9 2, 9.5 1, 2 1, 2 2, 9 2)))")); - } - -} // namespace tut - +// +// Test Suite for C-API GEOSintersection + +#include +// geos +#include +// std +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capigeosintersection_data + { + GEOSWKTWriter* wktw_; + GEOSGeometry* geom1_; + GEOSGeometry* geom2_; + GEOSGeometry* geom3_; + + static void notice(const char *fmt, ...) + { + std::fprintf(stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capigeosintersection_data() + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr) + { + initGEOS(notice, notice); + wktw_ = GEOSWKTWriter_create(); + GEOSWKTWriter_setTrim(wktw_, 1); + GEOSWKTWriter_setOutputDimension(wktw_, 3); + } + + std::string toWKT(GEOSGeometry* g) + { + char* wkt = GEOSWKTWriter_write(wktw_, g); + std::string ret(wkt); + GEOSFree(wkt); + return ret; + } + + ~test_capigeosintersection_data() + { + GEOSWKTWriter_destroy(wktw_); + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); + GEOSGeom_destroy(geom3_); + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capigeosintersection_group("capi::GEOSIntersection"); + + // + // Test Cases + // + + template<> + template<> + void object::test<1>() + { + geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); + geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); + + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); + + geom3_ = GEOSIntersection(geom1_, geom2_); + ensure(nullptr != geom3_); + ensure_equals(toWKT(geom3_), std::string("GEOMETRYCOLLECTION EMPTY")); + } + + template<> + template<> + void object::test<2>() + { + geom1_ = GEOSGeomFromWKT("POLYGON((1 1,1 5,5 5,5 1,1 1))"); + geom2_ = GEOSGeomFromWKT("POINT(2 2)"); + + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); + + geom3_ = GEOSIntersection(geom1_, geom2_); + ensure(nullptr != geom3_); + ensure_equals(toWKT(geom3_), std::string("POINT (2 2)")); + } + + template<> + template<> + void object::test<3>() + { + geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)))"); + geom2_ = GEOSGeomFromWKT("POLYGON((-1 1,-1 2,2 2,2 1,-1 1))"); + + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); + + geom3_ = GEOSIntersection(geom1_, geom2_); + + ensure(nullptr != geom3_); + ensure_equals(toWKT(geom3_), std::string("POLYGON ((0 1, 0 2, 2 2, 2 1, 0 1))")); + } + + /* See http://trac.osgeo.org/geos/ticket/719 */ + template<> + template<> + void object::test<4>() + { + geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,5 10,10 0,0 0),(1 1,1 2,2 2,2 1,1 1),(100 100,100 102,102 102,102 100,100 100)))"); + geom2_ = GEOSGeomFromWKT("POLYGON((0 1,0 2,10 2,10 1,0 1))"); + + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); + + geom3_ = GEOSIntersection(geom1_, geom2_); + + ensure(nullptr != geom3_); + ensure_equals(toWKT(geom3_), std::string("GEOMETRYCOLLECTION (LINESTRING (1 2, 2 2), LINESTRING (2 1, 1 1), POLYGON ((0.5 1, 1 2, 1 1, 0.5 1)), POLYGON ((9 2, 9.5 1, 2 1, 2 2, 9 2)))")); + } + +} // namespace tut + diff -Nru geos-3.6.2/tests/unit/capi/GEOSIntersectsTest.cpp geos-3.7.1/tests/unit/capi/GEOSIntersectsTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSIntersectsTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSIntersectsTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSIntersects -#include +#include // geos #include // std @@ -30,22 +30,22 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosintersects_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeosintersects_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -67,8 +67,8 @@ geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSIntersects(geom1_, geom2_); @@ -85,9 +85,9 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((1 1,1 5,5 5,5 1,1 1))"); geom2_ = GEOSGeomFromWKT("POINT(2 2)"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSIntersects(geom1_, geom2_); @@ -97,21 +97,21 @@ ensure_equals(int(r2), 1); } - + template<> template<> void object::test<3>() { geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)))"); geom2_ = GEOSGeomFromWKT("POLYGON((1 1,1 2,2 2,2 1,1 1))"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSIntersects(geom1_, geom2_); ensure_equals(int(r1), 1); - + char const r2 = GEOSIntersects(geom2_, geom1_); ensure_equals(int(r2), 1); @@ -124,7 +124,7 @@ { GEOSCoordSequence* cs = GEOSCoordSeq_create(5, 2); - double nan = std::numeric_limits::quiet_NaN(); + double nan = std::numeric_limits::quiet_NaN(); GEOSCoordSeq_setX(cs, 0, 1); GEOSCoordSeq_setY(cs, 0, 1); for (unsigned int i=1; i<4; ++i) { GEOSCoordSeq_setX(cs, i, nan); @@ -133,12 +133,12 @@ GEOSCoordSeq_setX(cs, 4, 1); GEOSCoordSeq_setY(cs, 4, 1); geom1_ = GEOSGeom_createPolygon(GEOSGeom_createLinearRing(cs), - NULL, 0); + nullptr, 0); char const r1 = GEOSIntersects(geom1_, geom1_); ensure_equals(int(r1), 2); - + } // This is a test for bug #357 (GEOSIntersects with inf coords) @@ -149,14 +149,27 @@ const char *hex = "0103000020E61000000100000005000000737979F3DDCC2CC0F92154F9E7534540000000000000F07F000000000000F07F8F806E993F7E55C0304B29FFEA8554400634E8D1DD424540B5FEE6A37FCD4540737979F3DDCC2CC0F92154F9E7534540"; geom1_ = GEOSGeomFromHEX_buf((unsigned char*)hex, std::strlen(hex)); - - ensure( 0 != geom1_ ); + + ensure( nullptr != geom1_ ); char const r1 = GEOSIntersects(geom1_, geom1_); ensure_equals(int(r1), 2); - + } - + + // Test for #782 (collection with empty components) + template<> + template<> + void object::test<6>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING(10 0, 0 0, 0 10)"); + geom2_ = GEOSGeomFromWKT("MULTILINESTRING((10 -1,-1 10),EMPTY)"); + + char r1 = GEOSIntersects(geom1_, geom2_); + + ensure_equals(r1, 1); + } + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSisClosedTest.cpp geos-3.7.1/tests/unit/capi/GEOSisClosedTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSisClosedTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSisClosedTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,95 +1,95 @@ -// -// Test Suite for C-API GEOSisClosed - -#include -// geos -#include -// std -#include -#include -#include -#include -#include - -namespace tut -{ - // - // Test Group - // - - // Common data used in test cases. - struct test_capiisclosed_data - { - GEOSGeometry* geom_; - - static void notice(const char *fmt, ...) - { - std::fprintf( stdout, "NOTICE: "); - - va_list ap; - va_start(ap, fmt); - std::vfprintf(stdout, fmt, ap); - va_end(ap); - - std::fprintf(stdout, "\n"); - } - - test_capiisclosed_data() : geom_(0) - { - initGEOS(notice, notice); - } - - ~test_capiisclosed_data() - { - GEOSGeom_destroy(geom_); - finishGEOS(); - } - - }; - - typedef test_group group; - typedef group::object object; - - group test_capiisclosed_group("capi::GEOSisClosed"); - - // - // Test Cases - // - - template<> - template<> - void object::test<1>() - { - geom_ = GEOSGeomFromWKT("LINESTRING(0 0, 1 0, 1 1)"); - int r = GEOSisClosed(geom_); - ensure_equals(r, 0); - } - - template<> - template<> - void object::test<2>() - { - geom_ = GEOSGeomFromWKT("LINESTRING(0 0, 0 1, 1 1, 0 0)"); - int r = GEOSisClosed(geom_); - ensure_equals(r, 1); - } - - template<> - template<> - void object::test<3>() - { - geom_ = GEOSGeomFromWKT("MULTILINESTRING ((1 1, 1 2, 2 2, 1 1), (0 0, 0 1, 1 1))"); - int r = GEOSisClosed(geom_); - ensure_equals(r, 0); - } - - template<> - template<> - void object::test<4>() - { - geom_ = GEOSGeomFromWKT("MULTILINESTRING ((1 1, 1 2, 2 2, 1 1), (0 0, 0 1, 1 1, 0 0))"); - int r = GEOSisClosed(geom_); - ensure_equals(r, 1); - } - -} // namespace tut +// +// Test Suite for C-API GEOSisClosed + +#include +// geos +#include +// std +#include +#include +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capiisclosed_data + { + GEOSGeometry* geom_; + + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capiisclosed_data() : geom_(nullptr) + { + initGEOS(notice, notice); + } + + ~test_capiisclosed_data() + { + GEOSGeom_destroy(geom_); + finishGEOS(); + } + + }; + + typedef test_group group; + typedef group::object object; + + group test_capiisclosed_group("capi::GEOSisClosed"); + + // + // Test Cases + // + + template<> + template<> + void object::test<1>() + { + geom_ = GEOSGeomFromWKT("LINESTRING(0 0, 1 0, 1 1)"); + int r = GEOSisClosed(geom_); + ensure_equals(r, 0); + } + + template<> + template<> + void object::test<2>() + { + geom_ = GEOSGeomFromWKT("LINESTRING(0 0, 0 1, 1 1, 0 0)"); + int r = GEOSisClosed(geom_); + ensure_equals(r, 1); + } + + template<> + template<> + void object::test<3>() + { + geom_ = GEOSGeomFromWKT("MULTILINESTRING ((1 1, 1 2, 2 2, 1 1), (0 0, 0 1, 1 1))"); + int r = GEOSisClosed(geom_); + ensure_equals(r, 0); + } + + template<> + template<> + void object::test<4>() + { + geom_ = GEOSGeomFromWKT("MULTILINESTRING ((1 1, 1 2, 2 2, 1 1), (0 0, 0 1, 1 1, 0 0))"); + int r = GEOSisClosed(geom_); + ensure_equals(r, 1); + } + +} // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSisValidDetailTest.cpp geos-3.7.1/tests/unit/capi/GEOSisValidDetailTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSisValidDetailTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSisValidDetailTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSisValidDetail -#include +#include // geos #include // std @@ -33,18 +33,18 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capiisvaliddetail_data() - : geom_(0), loc_(0), reason_(0) + : geom_(nullptr), loc_(nullptr), reason_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); GEOSWKTWriter_setOutputDimension(wktw_, 3); - } + } std::string toWKT(GEOSGeometry* g) { @@ -58,7 +58,7 @@ { using std::toupper; using std::string; - + for(string::size_type i = 0, len = str.size(); i < len; ++i) str[i] = static_cast(toupper(str[i])); } @@ -102,8 +102,8 @@ geom_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0, 5 -5, 5 5)"); int r = GEOSisValidDetail(geom_, 0, &reason_, &loc_); ensure_equals(r, 1); // valid - ensure_equals(reason_, (void*)0); - ensure_equals(loc_, (void*)0); + ensure_equals(reason_, (void*)nullptr); + ensure_equals(loc_, (void*)nullptr); } // Invalid coordinate @@ -112,7 +112,7 @@ void object::test<3>() { geom_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0, NaN -5)"); - ensure(0 != geom_); + ensure(nullptr != geom_); int r = GEOSisValidDetail(geom_, 0, &reason_, &loc_); std::string wkt = toWKT(loc_); strToUpper(wkt); @@ -152,8 +152,8 @@ int r = GEOSisValidDetail(geom_, flags, &reason_, &loc_); ensure_equals(r, 1); // valid - ensure_equals(reason_, (void*)0); - ensure_equals(loc_, (void*)0); + ensure_equals(reason_, (void*)nullptr); + ensure_equals(loc_, (void*)nullptr); } // Check it is possible to not request details @@ -162,7 +162,7 @@ void object::test<6>() { geom_ = GEOSGeomFromWKT("POLYGON((0 1, -10 10, 10 10, 0 1, 4 6, -4 6, 0 1))"); - int r = GEOSisValidDetail(geom_, 0, 0, 0); + int r = GEOSisValidDetail(geom_, 0, nullptr, nullptr); ensure_equals(r, 0); // invalid } diff -Nru geos-3.6.2/tests/unit/capi/GEOSLineString_PointTest.cpp geos-3.7.1/tests/unit/capi/GEOSLineString_PointTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSLineString_PointTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSLineString_PointTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,12 +1,13 @@ // Test Suite for C-API LineString and Point functions -#include +#include // geos #include // std #include #include #include +#include namespace tut { @@ -32,7 +33,7 @@ } test_capilinestringpoint_data() - : geom1_(0) + : geom1_(nullptr) { initGEOS(notice, notice); } @@ -40,7 +41,7 @@ ~test_capilinestringpoint_data() { GEOSGeom_destroy(geom1_); - geom1_ = 0; + geom1_ = nullptr; finishGEOS(); } @@ -61,8 +62,8 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 5 5, 10 10)"); GEOSGeometry *geom2; - double x, y; - ensure( 0 != geom1_ ); + double x, y, z; + ensure( nullptr != geom1_ ); char const r1 = GEOSisClosed(geom1_); @@ -71,27 +72,33 @@ geom2 = GEOSGeomGetPointN(geom1_, 0); GEOSGeomGetX(geom2, &x); GEOSGeomGetY(geom2, &y); + GEOSGeomGetZ(geom2, &z); ensure_equals(x, 0); ensure_equals(y, 0); + ensure(std::isnan(z)); GEOSGeom_destroy(geom2); geom2 = GEOSGeomGetStartPoint(geom1_); GEOSGeomGetX(geom2, &x); GEOSGeomGetY(geom2, &y); + GEOSGeomGetZ(geom2, &z); ensure_equals(x, 0); ensure_equals(y, 0); + ensure(std::isnan(z)); GEOSGeom_destroy(geom2); geom2 = GEOSGeomGetEndPoint(geom1_); GEOSGeomGetX(geom2, &x); GEOSGeomGetY(geom2, &y); + GEOSGeomGetZ(geom2, &z); ensure_equals(x, 10); ensure_equals(y, 10); + ensure(std::isnan(z)); GEOSGeom_destroy(geom2); } @@ -102,7 +109,7 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 5 5, 10 10)"); double length; - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); GEOSGeomGetLength(geom1_, &length); ensure(length != 0.0); @@ -114,9 +121,25 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 5 5, 10 10)"); int points; - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); points = GEOSGeomGetNumPoints(geom1_); ensure_equals(points, 3); } + + template<> + template<> + void object::test<4>() + { + geom1_ = GEOSGeomFromWKT("POINT Z(0 10 20)"); + double x, y, z; + + GEOSGeomGetX(geom1_, &x); + GEOSGeomGetY(geom1_, &y); + GEOSGeomGetZ(geom1_, &z); + + ensure_equals(x, 0); + ensure_equals(y, 10); + ensure_equals(z, 20); + } } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSMinimumClearanceTest.cpp geos-3.7.1/tests/unit/capi/GEOSMinimumClearanceTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSMinimumClearanceTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSMinimumClearanceTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,6 +1,6 @@ // // Test Suite for C-API GEOSMinimumClearance -#include +#include // geos #include // std @@ -66,7 +66,7 @@ } GEOSGeometry* result = GEOSMinimumClearanceLine(input); - ensure(result != NULL); + ensure(result != nullptr); ensure_equals(1, GEOSEquals(result, expected_result)); GEOSGeom_destroy(input); diff -Nru geos-3.6.2/tests/unit/capi/GEOSMinimumRectangleTest.cpp geos-3.7.1/tests/unit/capi/GEOSMinimumRectangleTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSMinimumRectangleTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSMinimumRectangleTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ // // Test Suite for C-API GEOSMinimumRotatedRectangle -#include +#include // geos #include // std @@ -35,7 +35,7 @@ } test_capigeosminimumrectangle_data() - : input_(0), wkt_(0) + : input_(nullptr), wkt_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); @@ -46,10 +46,10 @@ ~test_capigeosminimumrectangle_data() { GEOSGeom_destroy(input_); - input_ = 0; + input_ = nullptr; GEOSWKTWriter_destroy(wktw_); GEOSFree(wkt_); - wkt_ = 0; + wkt_ = nullptr; finishGEOS(); } @@ -69,10 +69,10 @@ void object::test<1>() { input_ = GEOSGeomFromWKT("POLYGON ((1 6, 6 11, 11 6, 6 1, 1 6))"); - ensure( 0 != input_ ); + ensure( nullptr != input_ ); GEOSGeometry* output = GEOSMinimumRotatedRectangle(input_); - ensure( 0 != output ); + ensure( nullptr != output ); ensure( 0 == GEOSisEmpty(output) ); wkt_ = GEOSWKTWriter_write(wktw_, output); diff -Nru geos-3.6.2/tests/unit/capi/GEOSMinimumWidthTest.cpp geos-3.7.1/tests/unit/capi/GEOSMinimumWidthTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSMinimumWidthTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSMinimumWidthTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,6 +1,6 @@ // // Test Suite for C-API GEOSMinimumWidth -#include +#include // geos #include // std @@ -34,7 +34,7 @@ } test_capigeosminimumwidth_data() - : input_(0), wkt_(0) + : input_(nullptr), wkt_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); @@ -45,10 +45,10 @@ ~test_capigeosminimumwidth_data() { GEOSGeom_destroy(input_); - input_ = 0; + input_ = nullptr; GEOSWKTWriter_destroy(wktw_); GEOSFree(wkt_); - wkt_ = 0; + wkt_ = nullptr; finishGEOS(); } @@ -68,10 +68,10 @@ void object::test<1>() { input_ = GEOSGeomFromWKT("POLYGON ((0 0, 0 15, 5 10, 5 0, 0 0))"); - ensure( 0 != input_ ); + ensure( nullptr != input_ ); GEOSGeometry* output = GEOSMinimumWidth(input_); - ensure( 0 != output ); + ensure( nullptr != output ); ensure( 0 == GEOSisEmpty(output) ); wkt_ = GEOSWKTWriter_write(wktw_, output); @@ -85,10 +85,10 @@ void object::test<2>() { input_ = GEOSGeomFromWKT("LINESTRING (0 0,0 10, 10 10)"); - ensure( 0 != input_ ); + ensure( nullptr != input_ ); GEOSGeometry* output = GEOSMinimumWidth(input_); - ensure( 0 != output ); + ensure( nullptr != output ); ensure( 0 == GEOSisEmpty(output) ); wkt_ = GEOSWKTWriter_write(wktw_, output); diff -Nru geos-3.6.2/tests/unit/capi/GEOSNearestPointsTest.cpp geos-3.7.1/tests/unit/capi/GEOSNearestPointsTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSNearestPointsTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSNearestPointsTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ // $Id: GEOSNearestPointsTest.cpp 2424 2009-04-29 23:52:36Z mloskot $ -// +// // Test Suite for C-API GEOSNearestPoints -#include +#include // geos #include // std @@ -30,22 +30,22 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosnearestpoints_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeosnearestpoints_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -67,13 +67,13 @@ geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); GEOSCoordSequence *coords_; coords_ = GEOSNearestPoints(geom1_, geom2_); - ensure( 0 == coords_ ); + ensure( nullptr == coords_ ); } template<> @@ -83,14 +83,14 @@ geom1_ = GEOSGeomFromWKT("POLYGON((1 1,1 5,5 5,5 1,1 1))"); // geom2_ = GEOSGeomFromWKT("POINT(8 8)"); geom2_ = GEOSGeomFromWKT("POLYGON((8 8, 9 9, 9 10, 8 8))"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); GEOSCoordSequence *coords_; coords_ = GEOSNearestPoints(geom1_, geom2_); - ensure( 0 != coords_ ); + ensure( nullptr != coords_ ); unsigned int size; GEOSCoordSeq_getSize(coords_, &size); @@ -115,6 +115,6 @@ GEOSCoordSeq_destroy(coords_); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSNodeTest.cpp geos-3.7.1/tests/unit/capi/GEOSNodeTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSNodeTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSNodeTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSNode -#include +#include // geos #include // std @@ -31,25 +31,25 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosnode_data() - : geom1_(0), geom2_(0), w_(0) + : geom1_(nullptr), geom2_(nullptr), w_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(w_, 1); - } + } ~test_capigeosnode_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -71,11 +71,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 10, 10 0, 0 10)"); geom2_ = GEOSNode(geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom2_); GEOSNormalize(geom2_); char* wkt_c = GEOSWKTWriter_write(w_, geom2_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, @@ -90,11 +90,11 @@ { geom1_ = GEOSGeomFromWKT("MULTILINESTRING((0 0, 2 0, 4 0),(5 0, 3 0, 1 0))"); geom2_ = GEOSNode(geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom2_); GEOSNormalize(geom2_); char* wkt_c = GEOSWKTWriter_write(w_, geom2_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, @@ -109,18 +109,18 @@ { geom1_ = GEOSGeomFromWKT("MULTILINESTRING((0 0, 2 0, 4 0),(0 0, 2 0, 4 0))"); geom2_ = GEOSNode(geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom2_); GEOSNormalize(geom2_); char* wkt_c = GEOSWKTWriter_write(w_, geom2_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "MULTILINESTRING ((2 0, 4 0), (0 0, 2 0))" ); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSOffsetCurveTest.cpp geos-3.7.1/tests/unit/capi/GEOSOffsetCurveTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSOffsetCurveTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSOffsetCurveTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSOffsetCurve -#include +#include // geos #include // std @@ -33,17 +33,17 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capioffsetcurve_data() - : geom1_(0), geom2_(0), wkt_(0) + : geom1_(nullptr), geom2_(nullptr), wkt_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); - } + } ~test_capioffsetcurve_data() { @@ -51,9 +51,9 @@ GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(wktw_); GEOSFree(wkt_); - geom1_ = 0; - geom2_ = 0; - wkt_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + wkt_ = nullptr; finishGEOS(); } @@ -75,11 +75,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, 2, 0, GEOSBUF_JOIN_ROUND, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -94,11 +94,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, -2, 0, GEOSBUF_JOIN_ROUND, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -114,11 +114,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, -2, 1, GEOSBUF_JOIN_ROUND, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -134,11 +134,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0, 10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, 2, 1, GEOSBUF_JOIN_ROUND, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -154,11 +154,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(33282908 6005055,33282900 6005050,33282892 6005042,33282876 6005007,33282863 6004982,33282866 6004971,33282876 6004975,33282967 6005018,33282999 6005031)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, 44, 1, GEOSBUF_JOIN_MITRE, 1); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -175,11 +175,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, 0, 0, GEOSBUF_JOIN_ROUND, 2); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -200,16 +200,16 @@ "756.2413940429687500 466.8306579589843700," "626.1337890625000000 1898.0147705078125000," "433.8007202148437500 404.6052856445312500)"); - + geom1_ = GEOSGeomFromWKT(wkt0.c_str()); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); double width = 57.164000837203; // left-sided { geom2_ = GEOSOffsetCurve(geom1_, width, 8, GEOSBUF_JOIN_MITRE, 5.57); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); // likely, 5 >= 5 ensure(GEOSGeomGetNumPoints(geom2_) >= GEOSGeomGetNumPoints(geom1_)); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -222,7 +222,7 @@ { width = -width; geom2_ = GEOSOffsetCurve(geom1_, width, 8, GEOSBUF_JOIN_MITRE, 5.57); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); // likely, 5 >= 7 ensure(GEOSGeomGetNumPoints(geom2_) >= GEOSGeomGetNumPoints(geom1_)); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -230,7 +230,7 @@ } } - // Test duplicated inner vertex in input + // Test duplicated inner vertex in input // See http://trac.osgeo.org/postgis/ticket/602 template<> template<> @@ -239,15 +239,15 @@ double width = -1; geom1_ = GEOSGeomFromWKT("LINESTRING(0 0,0 10,0 10,10 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, width, 8, GEOSBUF_JOIN_ROUND, 0); - ensure( "Unexpected exception", 0 != geom2_ ); + ensure( "Unexpected exception", nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); ensure_equals(std::string(wkt_), "LINESTRING (10 9, 1 9, 1 0)"); } - // Test duplicated final vertex in input + // Test duplicated final vertex in input // See http://trac.osgeo.org/postgis/ticket/602 template<> template<> @@ -256,15 +256,15 @@ double width = -1; geom1_ = GEOSGeomFromWKT("LINESTRING(0 0,0 10,0 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, width, 8, GEOSBUF_JOIN_ROUND, 0); - ensure( "Unexpected exception", 0 != geom2_ ); + ensure( "Unexpected exception", nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); ensure_equals(std::string(wkt_), "LINESTRING (1 10, 1 0)"); } - // Test only duplicated vertex in input + // Test only duplicated vertex in input // See http://trac.osgeo.org/postgis/ticket/602 template<> template<> @@ -273,10 +273,10 @@ double width = -1; geom1_ = GEOSGeomFromWKT("LINESTRING(0 10,0 10,0 10)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSOffsetCurve(geom1_, width, 8, GEOSBUF_JOIN_ROUND, 0); - ensure( "Missing expected exception", 0 == geom2_ ); + ensure( "Missing expected exception", nullptr == geom2_ ); } } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSOrientationIndex.cpp geos-3.7.1/tests/unit/capi/GEOSOrientationIndex.cpp --- geos-3.6.2/tests/unit/capi/GEOSOrientationIndex.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSOrientationIndex.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSOrientationIndex* -#include +#include // geos #include // std @@ -30,14 +30,14 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosorientationindex_data() : handle_(initGEOS_r(notice, notice)) { - } + } ~test_capigeosorientationindex_data() { diff -Nru geos-3.6.2/tests/unit/capi/GEOSPointOnSurfaceTest.cpp geos-3.7.1/tests/unit/capi/GEOSPointOnSurfaceTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSPointOnSurfaceTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSPointOnSurfaceTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,8 +1,8 @@ // $Id$ -// +// // Test Suite for C-API GEOSPointOnSurface -#include +#include // geos #include // std @@ -34,18 +34,18 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capipointonsurface_data() - : geom1_(0), geom2_(0), wkt_(0) + : geom1_(nullptr), geom2_(nullptr), wkt_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); GEOSWKTWriter_setRoundingPrecision(wktw_, 8); - } + } ~test_capipointonsurface_data() { @@ -53,9 +53,9 @@ GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(wktw_); GEOSFree(wkt_); - geom1_ = 0; - geom2_ = 0; - wkt_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + wkt_ = nullptr; finishGEOS(); } @@ -77,11 +77,11 @@ { geom1_ = GEOSGeomFromWKT("POINT(10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSPointOnSurface(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -96,11 +96,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 5 0, 10 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSPointOnSurface(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -115,11 +115,11 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSPointOnSurface(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -139,11 +139,11 @@ 56.528833333300 25.2103333333, \ 56.528666666700 25.2101666667))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSPointOnSurface(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -158,11 +158,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING EMPTY"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSPointOnSurface(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -176,11 +176,11 @@ { geom1_ = GEOSGeomFromWKT("LINESTRING(0 0, 0 0)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSPointOnSurface(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); wkt_ = GEOSWKTWriter_write(wktw_, geom2_); @@ -188,5 +188,65 @@ } + // Check point on surface for three similar polygons (shapes) + // https://trac.osgeo.org/geos/ticket/840 + template<> + template<> + void object::test<7>() + { + // Polygon A + geom1_ = GEOSGeomFromWKT("POLYGON((" + "182111.031940953 141935.935903267,181944.315698016 141813.663222482," + "181993.426552077 141735.161360171,182025.215323227 141755.058841504," + "182042.126877935 141723.338145732,182089.035943744 141755.453352846," + "182096.699289843 141744.892410235,182142.107084301 141773.967727472," + "182140.268233846 141825.482203511,182123.233970367 141827.369156254," + "182111.031940953 141935.935903267))"); + ensure(nullptr != geom1_); + geom2_ = GEOSPointOnSurface(geom1_); + ensure(nullptr != geom2_); + + wkt_ = GEOSWKTWriter_write(wktw_, geom2_); + ensure_equals(std::string(wkt_), std::string("POINT (182077.08 141881.65)")); + } + + template<> + template<> + void object::test<8>() { + // Polygon B from ticket #840 + geom1_ = GEOSGeomFromWKT("POLYGON((" + "182512.231897141 141935.935903267,182344.315698016 141813.663222482," + "182393.426552077 141735.161360171,182425.215323227 141755.058841504," + "182442.126877935 141723.338145732,182489.035943744 141755.453352846," + "182496.699289843 141744.892410235,182542.107084301 141773.967727472," + "182540.268233846 141825.482203511,182522.034014178 141825.369229273," + "182512.231897141 141935.935903267))"); + ensure(nullptr != geom1_); + geom2_ = GEOSPointOnSurface(geom1_); + ensure(nullptr != geom2_); + + wkt_ = GEOSWKTWriter_write(wktw_, geom2_); + ensure_equals(std::string(wkt_), std::string("POINT (182476.76 141880.71)")); + } + + template<> + template<> + void object::test<9>() { + // Polygon C from ticket #840 + geom1_ = GEOSGeomFromWKT("POLYGON((" + "182635.760119718 141846.477712277,182826.153168283 141974.473039044," + "182834.952846998 141857.67730337,182862.151853936 141851.277537031," + "182860.551912351 141779.280165725,182824.553226698 141748.881275618," + "182814.953577191 141758.480925126,182766.155358861 141721.682268681," + "182742.156235092 141744.881421657,182692.558045971 141716.882443927," + "182635.760119718 141846.477712277))"); + ensure(nullptr != geom1_); + geom2_ = GEOSPointOnSurface(geom1_); + ensure(nullptr != geom2_); + + wkt_ = GEOSWKTWriter_write(wktw_, geom2_); + ensure_equals(std::string(wkt_), std::string("POINT (182755.89 141812.88)")); + } + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp geos-3.7.1/tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSPolygonizer_getCutEdgesTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSPolygonizeGetCutEdges -#include +#include // geos #include // std @@ -27,14 +27,14 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeospolygonizegetcutedges_data() { initGEOS(notice, notice); - } + } ~test_capigeospolygonizegetcutedges_data() { @@ -57,14 +57,14 @@ void object::test<1>() { const int size = 2; - GEOSGeometry* geoms[size] = { 0 }; + GEOSGeometry* geoms[size] = { nullptr }; geoms[0] = GEOSGeomFromWKT("LINESTRING(1 3, 3 3, 3 1, 1 1, 1 3)"); geoms[1] = GEOSGeomFromWKT("LINESTRING(1 3, 3 3, 3 1, 1 1, 1 3)"); GEOSGeometry* g = GEOSPolygonizer_getCutEdges(geoms, size); - ensure(0 != g); + ensure(nullptr != g); ensure_equals(GEOSGetNumGeometries(g), size); GEOSGeom_destroy(g); @@ -77,7 +77,7 @@ void object::test<2>() { const int size = 6; - GEOSGeometry* geoms[size] = { 0 }; + GEOSGeometry* geoms[size] = { nullptr }; // Example from JTS Developer's Guide, Chapter 6 - Polygonization geoms[0] = GEOSGeomFromWKT("LINESTRING(0 0, 10 10)"); // isolated edge @@ -89,17 +89,17 @@ GEOSGeometry* g = GEOSPolygonizer_getCutEdges(geoms, size); - ensure(0 != g); + ensure(nullptr != g); ensure_equals(GEOSGetNumGeometries(g), 0); GEOSGeom_destroy(g); for (int i = 0; i < size; ++i) { - if (0 != geoms[i]) + if (nullptr != geoms[i]) GEOSGeom_destroy(geoms[i]); } } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSPreparedGeometryTest.cpp geos-3.7.1/tests/unit/capi/GEOSPreparedGeometryTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSPreparedGeometryTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSPreparedGeometryTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSPreparedGeometry -#include +#include // geos #include #include @@ -37,15 +37,15 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeospreparedgeometry_data() - : geom1_(0), geom2_(0), prepGeom1_(0), prepGeom2_(0) + : geom1_(nullptr), geom2_(nullptr), prepGeom1_(nullptr), prepGeom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeospreparedgeometry_data() { @@ -53,10 +53,10 @@ GEOSGeom_destroy(geom2_); GEOSPreparedGeom_destroy(prepGeom1_); GEOSPreparedGeom_destroy(prepGeom2_); - geom1_ = 0; - geom2_ = 0; - prepGeom1_ = 0; - prepGeom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + prepGeom1_ = nullptr; + prepGeom2_ = nullptr; finishGEOS(); } @@ -79,13 +79,13 @@ geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); } // Test PreparedContainsProperly // Taken from regress/regress_ogc_prep.sql of postgis - // as of revno 3936 + // as of revno 3936 // ref: containsproperly200 (a) template<> template<> @@ -95,7 +95,7 @@ geom2_ = GEOSGeomFromWKT("POLYGON((2 2, 2 3, 3 3, 3 2, 2 2))"); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContainsProperly(prepGeom1_, geom2_); ensure_equals(ret, 1); @@ -104,7 +104,7 @@ // Test PreparedContainsProperly // Taken from regress/regress_ogc_prep.sql of postgis - // as of revno 3936 + // as of revno 3936 // ref: containsproperly200 (b) template<> template<> @@ -114,7 +114,7 @@ geom2_ = GEOSGeomFromWKT("POLYGON((0 0, 0 10, 10 10, 10 0, 0 0))"); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContainsProperly(prepGeom1_, geom2_); ensure_equals(ret, 0); @@ -124,7 +124,7 @@ // Test PreparedIntersects // Also used as a linestring leakage reported // by http://trac.osgeo.org/geos/ticket/305 - // + // template<> template<> void object::test<4>() @@ -133,7 +133,7 @@ geom2_ = GEOSGeomFromWKT("LINESTRING(0 10, 10 0)"); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedIntersects(prepGeom1_, geom2_); ensure_equals(ret, 1); @@ -149,7 +149,7 @@ geom2_ = GEOSGeomFromWKT("POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))"); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedCovers(prepGeom1_, geom2_); ensure_equals(ret, 1); @@ -165,7 +165,7 @@ geom2_ = GEOSGeomFromWKT("POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))"); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContains(prepGeom1_, geom2_); ensure_equals(ret, 1); @@ -173,13 +173,13 @@ } // Test PreparedIntersects: point on segment with FLOAT PM - // X coordinate of 3rd and 4th vertises of the line are not + // X coordinate of 3rd and 4th vertises of the line are not // float-point exact with X coordinate of the point. // The X values differ after 14th decimal place: // POINT (-23.1094689600055080 50.5195368635957180) // --------------------^^^^^^^------------^^^^^^^^ // LINESTRING 3rd and 4th points - // -23.1094689600055150 50.5223376452201340, + // -23.1094689600055150 50.5223376452201340, // -23.1094689600055010 50.5169177629559480, // --------------------^^^^^^^------------^^^^^^^^ // So, in float-point precision model, the point does DOES NOT intersect the segment. @@ -197,19 +197,19 @@ geom2_ = GEOSGeomFromHEX_buf(reinterpret_cast(point.data()), point.size()); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedIntersects(prepGeom1_, geom2_); ensure_equals(ret, 0); } // Test PreparedIntersects: point on segment with FIXED PM - // X coordinate of 3rd and 4th vertises of the line are not + // X coordinate of 3rd and 4th vertices of the line are not // float-point exact with X coordinate of the point. // The X values differ after 14th decimal place: // POINT (-23.1094689600055080 50.5195368635957180) // --------------------^^^^^^^------------^^^^^^^^ // LINESTRING 3rd and 4th points - // -23.1094689600055150 50.5223376452201340, + // -23.1094689600055150 50.5223376452201340, // -23.1094689600055010 50.5169177629559480, // --------------------^^^^^^^------------^^^^^^^^ // So, if float-point values are trimmed up to 14 decimal digits, the point DOES intersect the segment. @@ -219,7 +219,7 @@ void object::test<8>() { geos::geom::PrecisionModel pm(1e+13); - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); // POINT located between 3rd and 4th vertex of LINESTRING @@ -233,7 +233,7 @@ geom1_ = reinterpret_cast(reader.readHEX(sLine)); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedIntersects(prepGeom1_, geom2_); ensure_equals(ret, 1); } @@ -251,7 +251,7 @@ geom1_ = GEOSGeomFromHEX_buf(reinterpret_cast(line.data()), line.size()); geom2_ = GEOSGeomFromHEX_buf(reinterpret_cast(point.data()), point.size()); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedIntersects(prepGeom1_, geom2_); ensure_equals(ret, 1); @@ -271,38 +271,42 @@ // A contains B if precision is limited to 1e+10 { geos::geom::PrecisionModel pm(1e+10); // NOTE: higher precision fails this test case - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContains(prepGeom1_, geom2_); ensure_equals(ret, 1); ret = GEOSPreparedContainsProperly(prepGeom1_, geom2_); ensure_equals(ret, 0); + + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); + GEOSPreparedGeom_destroy(prepGeom1_); } // A does NOT contain B if precision is extended to 1e+11 or beyond { geos::geom::PrecisionModel pm(1e+11); - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContains(prepGeom1_, geom2_); ensure_equals(ret, 0); @@ -328,38 +332,42 @@ // A contains B if precision is limited to 1e+10 { geos::geom::PrecisionModel pm(1e+10); - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContains(prepGeom1_, geom2_); ensure_equals(ret, 1); ret = GEOSPreparedContainsProperly(prepGeom1_, geom2_); ensure_equals(ret, 0); + + GEOSGeom_destroy(geom1_); + GEOSGeom_destroy(geom2_); + GEOSPreparedGeom_destroy(prepGeom1_); } // A contains B if FLOATING PM is used with extended precision { geos::geom::PrecisionModel pm; - geos::geom::GeometryFactory::unique_ptr factory = geos::geom::GeometryFactory::create(&pm); + geos::geom::GeometryFactory::Ptr factory = geos::geom::GeometryFactory::create(&pm); geos::io::WKBReader reader(*factory); std::istringstream sOuter(outer); geom1_ = reinterpret_cast(reader.readHEX(sOuter)); std::istringstream sInner(inner); geom2_ = reinterpret_cast(reader.readHEX(sInner)); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); prepGeom1_ = GEOSPrepare(geom1_); - ensure(0 != prepGeom1_); + ensure(nullptr != prepGeom1_); int ret = GEOSPreparedContains(prepGeom1_, geom2_); ensure_equals(ret, 1); diff -Nru geos-3.6.2/tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp geos-3.7.1/tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSRelateBoundaryNodeRuleTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSRelateBoundaryNodeRule -#include +#include // geos #include // std @@ -30,15 +30,15 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosrelateboundarynoderule_data() - : geom1_(0), geom2_(0), pat_(0) + : geom1_(nullptr), geom2_(nullptr), pat_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeosrelateboundarynoderule_data() { @@ -150,7 +150,7 @@ geom1_ = GEOSGeomFromWKT("MULTILINESTRING((0 0, 10 0),(10 0, 10 10))"); geom2_ = GEOSGeomFromWKT("LINESTRING(10 0, 10 -10)"); pat_ = GEOSRelateBoundaryNodeRule(geom1_, geom2_, 5); - ensure(0 == pat_); + ensure(nullptr == pat_); } diff -Nru geos-3.6.2/tests/unit/capi/GEOSRelatePatternMatchTest.cpp geos-3.7.1/tests/unit/capi/GEOSRelatePatternMatchTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSRelatePatternMatchTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSRelatePatternMatchTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSRelatePatternMatch -#include +#include // geos #include // std @@ -27,14 +27,14 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosrelatepatternmatch_data() { initGEOS(notice, notice); - } + } ~test_capigeosrelatepatternmatch_data() { @@ -67,7 +67,7 @@ char ret = GEOSRelatePatternMatch("000000000", "TTTTTTTTT"); ensure_equals(ret, char(1)); } - + template<> template<> void object::test<3>() diff -Nru geos-3.6.2/tests/unit/capi/GEOSReverseTest.cpp geos-3.7.1/tests/unit/capi/GEOSReverseTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSReverseTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSReverseTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -0,0 +1,138 @@ +// +// Test Suite for C-API GEOSReverse +#include +// geos +#include +// std +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used in test cases. + struct test_capigeosreverse + { + static void notice(const char *fmt, ...) + { + std::fprintf( stdout, "NOTICE: "); + + va_list ap; + va_start(ap, fmt); + std::vfprintf(stdout, fmt, ap); + va_end(ap); + + std::fprintf(stdout, "\n"); + } + + test_capigeosreverse() + { + initGEOS(notice, notice); + } + + ~test_capigeosreverse() + { + finishGEOS(); + } + }; + + typedef test_group group; + typedef group::object object; + + group test_capigeosreverse_group("capi::GEOSReverse"); + + void testReverse(const std::string & wkt_input, + const std::string & wkt_output) + { + GEOSGeometry* input = GEOSGeomFromWKT(wkt_input.c_str()); + GEOSGeometry* expected_result = GEOSGeomFromWKT(wkt_output.c_str()); + GEOSGeometry* result = GEOSReverse(input); + + ensure(result != nullptr); + ensure_equals(1, GEOSEqualsExact(result, expected_result, 0.0)); + + GEOSGeom_destroy(input); + GEOSGeom_destroy(expected_result); + GEOSGeom_destroy(result); + } + + // + // Test Cases + // + template<> + template<> + void object::test<1>() + { + testReverse("POINT (3 5)", "POINT (3 5)"); + } + + template<> + template<> + void object::test<2>() + { + testReverse("MULTIPOINT ((100 100), (10 100), (30 100))", + "MULTIPOINT ((100 100), (10 100), (30 100))"); + } + + template<> + template<> + void object::test<3>() + { + testReverse("LINESTRING (200 200, 200 100)", + "LINESTRING (200 100, 200 200)"); + } + + template<> + template<> + void object::test<4>() + { + testReverse("MULTILINESTRING ((1 1, 2 2), (3 3, 4 4))", + "MULTILINESTRING ((4 4, 3 3), (2 2, 1 1))"); + } + + template<> + template<> + void object::test<5>() + { + testReverse("POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0), (1 1, 2 1, 2 2, 1 2, 1 1))", + "POLYGON ((0 0, 0 10, 10 10, 10 0, 0 0), (1 1, 1 2, 2 2, 2 1, 1 1))"); + + } + + template<> + template<> + void object::test<6>() + { + testReverse("MULTIPOLYGON (((0 0, 10 0, 10 10, 0 10, 0 0), (1 1, 2 1, 2 2, 1 2, 1 1)), ((100 100, 100 200, 200 200, 100 100)))", + "MULTIPOLYGON (((0 0, 0 10, 10 10, 10 0, 0 0), (1 1, 1 2, 2 2, 2 1, 1 1)), ((100 100, 200 200, 100 200, 100 100)))"); + + } + + template<> + template<> + void object::test<7>() + { + testReverse("GEOMETRYCOLLECTION (LINESTRING (1 1, 2 2), GEOMETRYCOLLECTION(LINESTRING (3 5, 2 9)))", + "GEOMETRYCOLLECTION (LINESTRING (2 2, 1 1), GEOMETRYCOLLECTION(LINESTRING (2 9, 3 5)))"); + + } + + template<> + template<> + void object::test<8>() + { + testReverse("POINT EMPTY", "POINT EMPTY"); + testReverse("LINESTRING EMPTY", "LINESTRING EMPTY"); + testReverse("LINEARRING EMPTY", "LINEARRING EMPTY"); + testReverse("POLYGON EMPTY", "POLYGON EMPTY"); + testReverse("MULTIPOINT EMPTY", "MULTIPOINT EMPTY"); + testReverse("MULTILINESTRING EMPTY", "MULTILINESTRING EMPTY"); + testReverse("MULTIPOLYGON EMPTY", "MULTIPOLYGON EMPTY"); + testReverse("GEOMETRYCOLLECTION EMPTY", "GEOMETRYCOLLECTION EMPTY"); + } + +} // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSSharedPathsTest.cpp geos-3.7.1/tests/unit/capi/GEOSSharedPathsTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSSharedPathsTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSSharedPathsTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSSharedPaths -#include +#include // geos #include // std @@ -32,17 +32,17 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeossharedpaths_data() - : geom1_(0), geom2_(0), geom3_(0), w_(0) + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr), w_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(w_, 1); - } + } ~test_capigeossharedpaths_data() { @@ -50,9 +50,9 @@ GEOSGeom_destroy(geom2_); GEOSGeom_destroy(geom3_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; finishGEOS(); } @@ -79,7 +79,7 @@ ensure(!geom3_); } - /// Line to line sharing + /// Line to line sharing template<> template<> void object::test<2>() @@ -89,10 +89,10 @@ geom3_ = GEOSSharedPaths(geom1_, geom2_); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); - ensure_equals(out, + ensure_equals(out, "GEOMETRYCOLLECTION (MULTILINESTRING ((50 60, 50 70)), MULTILINESTRING EMPTY)" ); } @@ -111,8 +111,8 @@ "POLYGON((-8.1111111 60,-8.16875525879031 59.4147290339516,-8.33947250246614 58.8519497029047,-8.61670226309236 58.3332893009412,-8.98979075644036 57.8786796564404,-9.44440040094119 57.5055911630924,-9.96306080290473 57.2283614024661,-10.5258401339516 57.0576441587903,-11.1111111 57,-11.6963820660484 57.0576441587903,-12.2591613970953 57.2283614024661,-12.7778217990588 57.5055911630924,-13.2324314435596 57.8786796564404,-13.6055199369076 58.3332893009412,-13.8827496975339 58.8519497029047,-14.0534669412097 59.4147290339516,-14.1111111 60,-14.0534669412097 60.5852709660484,-13.8827496975339 61.1480502970953,-13.6055199369076 61.6667106990588,-13.2324314435597 62.1213203435596,-12.7778217990588 62.4944088369076,-12.2591613970953 62.7716385975339,-11.6963820660484 62.9423558412097,-11.1111111 63,-10.5258401339516 62.9423558412097,-9.96306080290474 62.7716385975339,-9.4444004009412 62.4944088369076,-8.98979075644036 62.1213203435596,-8.61670226309237 61.6667106990588,-8.33947250246614 61.1480502970953,-8.16875525879031 60.5852709660484,-8.1111111 60))" ); - ensure(0 != geom1_); - ensure(0 != geom2_); + ensure(nullptr != geom1_); + ensure(nullptr != geom2_); geom3_ = GEOSSharedPaths(geom1_, geom2_); diff -Nru geos-3.6.2/tests/unit/capi/GEOSSimplifyTest.cpp geos-3.7.1/tests/unit/capi/GEOSSimplifyTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSSimplifyTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSSimplifyTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSSimplify -#include +#include // geos #include // std @@ -30,22 +30,22 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeossimplify_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeossimplify_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -73,6 +73,6 @@ ensure ( 0 != GEOSisEmpty(geom2_) ); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSSnapTest.cpp geos-3.7.1/tests/unit/capi/GEOSSnapTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSSnapTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSSnapTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSSimplify -#include +#include // geos #include // std @@ -32,18 +32,18 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeossnap_data() - : geom1_(0), geom2_(0), geom3_(0), w_(0) + : geom1_(nullptr), geom2_(nullptr), geom3_(nullptr), w_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(w_, 1); GEOSWKTWriter_setRoundingPrecision(w_, 8); - } + } ~test_capigeossnap_data() { @@ -51,9 +51,9 @@ GEOSGeom_destroy(geom2_); GEOSGeom_destroy(geom3_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; - geom3_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; + geom3_ = nullptr; finishGEOS(); } @@ -78,12 +78,12 @@ geom3_ = GEOSSnap(geom1_, geom2_, 1); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "POLYGON ((0.5 0, 10 0, 10 10, 0 10, 0.5 0))"); } - + /// Line snapped to line (vertex) template<> template<> @@ -94,7 +94,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 2); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (-29 -20, 50 60, 51 0)"); @@ -110,7 +110,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 2); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, @@ -128,7 +128,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 2); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (0 0, 9 0)"); @@ -144,7 +144,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 2); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); //ensure_equals(out, "LINESTRING (0 0, 9 0, 10 0)"); @@ -161,7 +161,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 2); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (0 3, 4 1, 5 0, 0 1)"); @@ -179,7 +179,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 2); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (0 3, 4 1, 5 0, 0 1)"); @@ -196,7 +196,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 3); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (-1 0, 0 0, 10 0, 10 10, 0 10, -1 0)"); @@ -211,7 +211,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 3); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (0 2, 5 2, 9 2, 5 0)"); @@ -227,7 +227,7 @@ geom3_ = GEOSSnap(geom1_, geom2_, 0.5); char* wkt_c = GEOSWKTWriter_write(w_, geom3_); - std::string out(wkt_c); + std::string out(wkt_c); free(wkt_c); ensure_equals(out, "LINESTRING (-71.1257 42.2703, -71.1261 42.2703, -71.1261 42.2702, -71.1317 42.2509)"); diff -Nru geos-3.6.2/tests/unit/capi/GEOSSTRtreeTest.cpp geos-3.7.1/tests/unit/capi/GEOSSTRtreeTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSSTRtreeTest.cpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSSTRtreeTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,7 +1,7 @@ // // Test Suite for C-API GEOSSTRtree -#include +#include // geos #include // std @@ -23,7 +23,7 @@ return GEOSGeom_createPoint(seq); } -static int INTPOINT_dist(const void* a, const void* b, double* distance, void* userdata) { +static int INTPOINT_dist(const void* a, const void* b, double* distance, void*) { INTPOINT* p1 = (INTPOINT*) a; INTPOINT* p2 = (INTPOINT*) b; @@ -123,13 +123,13 @@ for (size_t i = 0; i < ngeoms; i++) { const GEOSGeometry* nearest = GEOSSTRtree_nearest(tree, queryPoints[i]); - const GEOSGeometry* nearestBruteForce = NULL; + const GEOSGeometry* nearestBruteForce = nullptr; double nearestBruteForceDistance = std::numeric_limits::max(); for (size_t j = 0; j < ngeoms; j++) { double distance; GEOSDistance(queryPoints[i], geoms[j], &distance); - if (nearestBruteForce == NULL || distance < nearestBruteForceDistance) { + if (nearestBruteForce == nullptr || distance < nearestBruteForceDistance) { nearestBruteForce = geoms[j]; nearestBruteForceDistance = distance; } @@ -155,7 +155,7 @@ GEOSGeometry* g1 = GEOSGeomFromWKT("POINT (3 3)"); const GEOSGeometry* g2 = GEOSSTRtree_nearest(tree, g1); - ensure(g2 == NULL); + ensure(g2 == nullptr); GEOSGeom_destroy(g1); GEOSSTRtree_destroy(tree); @@ -178,7 +178,7 @@ GEOSSTRtree_insert(tree, g1, &p1); GEOSSTRtree_insert(tree, g2, &p2); - const INTPOINT* p4 = (const INTPOINT*) GEOSSTRtree_nearest_generic(tree, &p3, g3, &INTPOINT_dist, NULL); + const INTPOINT* p4 = (const INTPOINT*) GEOSSTRtree_nearest_generic(tree, &p3, g3, &INTPOINT_dist, nullptr); ensure (p4 == &p2); @@ -199,7 +199,7 @@ GEOSSTRtree_insert(tree, g1, g1); const GEOSGeometry* g3 = GEOSSTRtree_nearest(tree, g2); - ensure(g3 == NULL); + ensure(g3 == nullptr); GEOSGeom_destroy(g1); GEOSGeom_destroy(g2); @@ -230,6 +230,21 @@ GEOSSTRtree_destroy(tree); } + // querying empty tree should not crash (see #730) + template<> + template<> + void object::test<7>() { + GEOSSTRtree* tree = GEOSSTRtree_create(16); + GEOSGeometry* q = GEOSGeomFromWKT("POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))"); + GEOSSTRtree_query(tree, q, [](void* item, void* userdata) { + assert(item); // make unused parameter warning go away + assert(userdata); + }, nullptr); + + GEOSGeom_destroy(q); + GEOSSTRtree_destroy(tree); + } + } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSUnaryUnionTest.cpp geos-3.7.1/tests/unit/capi/GEOSUnaryUnionTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSUnaryUnionTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSUnaryUnionTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSUnaryUnion -#include +#include // geos #include // std @@ -31,18 +31,18 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capiunaryunion_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); wktw_ = GEOSWKTWriter_create(); GEOSWKTWriter_setTrim(wktw_, 1); GEOSWKTWriter_setOutputDimension(wktw_, 3); - } + } std::string toWKT(GEOSGeometry* g) { @@ -57,8 +57,8 @@ GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(wktw_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -80,10 +80,10 @@ void object::test<1>() { geom1_ = GEOSGeomFromWKT("POINT EMPTY"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string("GEOMETRYCOLLECTION EMPTY")); } @@ -94,10 +94,10 @@ void object::test<2>() { geom1_ = GEOSGeomFromWKT("POINT (6 3)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string("POINT (6 3)")); } @@ -108,10 +108,10 @@ void object::test<3>() { geom1_ = GEOSGeomFromWKT("POINT (4 5 6)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string("POINT Z (4 5 6)")); } @@ -122,10 +122,10 @@ void object::test<4>() { geom1_ = GEOSGeomFromWKT("MULTIPOINT (4 5, 6 7, 4 5, 6 5, 6 7)"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string("MULTIPOINT (4 5, 6 5, 6 7)")); } @@ -136,10 +136,10 @@ void object::test<5>() { geom1_ = GEOSGeomFromWKT("GEOMETRYCOLLECTION (POINT(4 5), MULTIPOINT(6 7, 6 5, 6 7), LINESTRING(0 5, 10 5), LINESTRING(4 -10, 4 10))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string("GEOMETRYCOLLECTION (POINT (6 7), LINESTRING (4 -10, 4 5), LINESTRING (4 5, 4 10), LINESTRING (0 5, 4 5), LINESTRING (4 5, 10 5))")); } @@ -150,10 +150,10 @@ void object::test<6>() { geom1_ = GEOSGeomFromWKT("GEOMETRYCOLLECTION (POINT(4 5), MULTIPOINT(6 7, 6 5, 6 7), POLYGON((0 0, 10 0, 10 10, 0 10, 0 0),(5 6, 7 6, 7 8, 5 8, 5 6)))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string( "GEOMETRYCOLLECTION (POINT (6 7), POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0), (5 6, 7 6, 7 8, 5 8, 5 6)))" @@ -166,10 +166,10 @@ void object::test<7>() { geom1_ = GEOSGeomFromWKT("GEOMETRYCOLLECTION (MULTILINESTRING((5 7, 12 7), (4 5, 6 5), (5.5 7.5, 6.5 7.5)), POLYGON((0 0, 10 0, 10 10, 0 10, 0 0),(5 6, 7 6, 7 8, 5 8, 5 6)))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string( "GEOMETRYCOLLECTION (LINESTRING (5 7, 7 7), LINESTRING (10 7, 12 7), LINESTRING (5.5 7.5, 6.5 7.5), POLYGON ((10 7, 10 0, 0 0, 0 10, 10 10, 10 7), (5 6, 7 6, 7 7, 7 8, 5 8, 5 7, 5 6)))" @@ -182,10 +182,10 @@ void object::test<8>() { geom1_ = GEOSGeomFromWKT("GEOMETRYCOLLECTION (MULTILINESTRING((5 7, 12 7), (4 5, 6 5), (5.5 7.5, 6.5 7.5)), POLYGON((0 0, 10 0, 10 10, 0 10, 0 0),(5 6, 7 6, 7 8, 5 8, 5 6)), MULTIPOINT(6 6.5, 6 1, 12 2, 6 1))"); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 != geom2_ ); + ensure( nullptr != geom2_ ); ensure_equals(toWKT(geom2_), std::string( "GEOMETRYCOLLECTION (POINT (6 6.5), POINT (12 2), LINESTRING (5 7, 7 7), LINESTRING (10 7, 12 7), LINESTRING (5.5 7.5, 6.5 7.5), POLYGON ((10 7, 10 0, 0 0, 0 10, 10 10, 10 7), (5 6, 7 6, 7 7, 7 8, 5 8, 5 7, 5 6)))" @@ -200,12 +200,25 @@ { const char* hexwkb = "010200000002000000000000000000F8FF000000000000F8FF0000000000000000000000000000F03F"; geom1_ = GEOSGeomFromHEX_buf((const unsigned char*)hexwkb, std::strlen(hexwkb)); - ensure( 0 != geom1_ ); + ensure( nullptr != geom1_ ); geom2_ = GEOSUnaryUnion(geom1_); - ensure( 0 == geom2_ ); + ensure( nullptr == geom2_ ); } + // Self-union an empty linestring + template<> + template<> + void object::test<10>() + { + geom1_ = GEOSGeomFromWKT("LINESTRING EMPTY"); + ensure( nullptr != geom1_ ); + + geom2_ = GEOSUnaryUnion(geom1_); + ensure( nullptr != geom2_ ); + + ensure_equals(toWKT(geom2_), std::string("GEOMETRYCOLLECTION EMPTY")); + } } // namespace tut diff -Nru geos-3.6.2/tests/unit/capi/GEOSUserDataTest.cpp geos-3.7.1/tests/unit/capi/GEOSUserDataTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSUserDataTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSUserDataTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSSimplify -#include +#include // geos #include // std @@ -29,20 +29,20 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeouserdata_data() - : geom_(0) + : geom_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeouserdata_data() { GEOSGeom_destroy(geom_); - geom_ = 0; + geom_ = nullptr; finishGEOS(); } diff -Nru geos-3.6.2/tests/unit/capi/GEOSVoronoiDiagramTest.cpp geos-3.7.1/tests/unit/capi/GEOSVoronoiDiagramTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSVoronoiDiagramTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSVoronoiDiagramTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSVoronoiDiagram -#include +#include // geos #include // std @@ -31,12 +31,12 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeosvoronoidiagram_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); w_ = GEOSWKTWriter_create(); @@ -69,8 +69,8 @@ GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); GEOSWKTWriter_destroy(w_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -92,12 +92,12 @@ { geom1_ = GEOSGeomFromWKT("POINT(10 20)"); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 0); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 0); ensure_equals ( GEOSisEmpty(geom2_), 1 ); ensure_equals ( GEOSGeomTypeId(geom2_), GEOS_GEOMETRYCOLLECTION ); GEOSGeom_destroy(geom2_); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 1); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 1); ensure_equals_wkt(geom2_,"MULTILINESTRING EMPTY"); } @@ -108,11 +108,11 @@ { geom1_ = GEOSGeomFromWKT("MULTIPOINT ((280 300), (420 330), (380 230), (320 160))"); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 0); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 0); ensure_equals_wkt(geom2_ ,"GEOMETRYCOLLECTION (POLYGON ((110 175.71428571428572, 110 500, 310.35714285714283 500, 353.515625 298.59375, 306.875 231.96428571428572, 110 175.71428571428572)), POLYGON ((590 204, 590 -10, 589.1666666666666 -10, 306.875 231.96428571428572, 353.515625 298.59375, 590 204)), POLYGON ((110 -10, 110 175.71428571428572, 306.875 231.96428571428572, 589.1666666666666 -10, 110 -10)), POLYGON ((310.35714285714283 500, 590 500, 590 204, 353.515625 298.59375, 310.35714285714283 500)))" ); GEOSGeom_destroy(geom2_); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 1); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 1); ensure_equals_wkt(geom2_, "MULTILINESTRING ((310.3571428571428 500, 353.515625 298.59375), (353.515625 298.59375, 306.875 231.9642857142857), (306.875 231.9642857142857, 110 175.7142857142857), (589.1666666666666 -10, 306.875 231.9642857142857), (353.515625 298.59375, 590 204))"); } //Larger number of points: @@ -122,12 +122,12 @@ { geom1_ = GEOSGeomFromWKT("MULTIPOINT ((170 270), (270 270), (230 310), (180 330), (250 340), (315 318), (330 260), (240 170), (220 220), (270 220))"); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 0); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 0); ensure_equals_wkt(geom2_,"GEOMETRYCOLLECTION (POLYGON ((0 329.1666666666667, 0 510, 190 510, 213.94736842105263 342.36842105263156, 195.625 296.5625, 0 329.1666666666667)), POLYGON ((0 76.50000000000001, 0 329.1666666666667, 195.625 296.5625, 216 266, 88.33333333333333 138.33333333333334, 0 76.50000000000001)), POLYGON ((216 266, 195.625 296.5625, 213.94736842105263 342.36842105263156, 267 307, 225 265, 216 266)), POLYGON ((245 245, 225 265, 267 307, 275.9160583941606 309.54744525547443, 303.1666666666667 284, 296.6666666666667 245, 245 245)), POLYGON ((225 265, 245 245, 245 201, 88.33333333333333 138.33333333333334, 216 266, 225 265)), POLYGON ((0 0, 0 76.50000000000001, 88.33333333333333 138.33333333333334, 245 201, 380 120, 500 0, 0 0)), POLYGON ((190 510, 343.76153846153846 510, 275.9160583941606 309.54744525547443, 267 307, 213.94736842105263 342.36842105263156, 190 510)), POLYGON ((245 201, 245 245, 296.6666666666667 245, 380 120, 245 201)), POLYGON ((343.76153846153846 510, 500 510, 500 334.9051724137931, 303.1666666666667 284, 275.9160583941606 309.54744525547443, 343.76153846153846 510)), POLYGON ((500 334.9051724137931, 500 0, 380 120, 296.6666666666667 245, 303.1666666666667 284, 500 334.9051724137931)))"); GEOSGeom_destroy(geom2_); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 1); - ensure_equals_wkt(geom2_, + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 1); + ensure_equals_wkt(geom2_, "MULTILINESTRING ((190 510, 213.9473684210526 342.3684210526316), (213.9473684210526 342.3684210526316, 195.625 296.5625), (195.625 296.5625, 0 329.1666666666667), (195.625 296.5625, 216 266), (216 266, 88.33333333333333 138.3333333333333), (88.33333333333333 138.3333333333333, 0 76.50000000000001), (213.9473684210526 342.3684210526316, 267 307), (267 307, 225 265), (225 265, 216 266), (245 245, 225 265), (267 307, 275.9160583941606 309.5474452554744), (275.9160583941606 309.5474452554744, 303.1666666666667 284), (303.1666666666667 284, 296.6666666666667 245), (296.6666666666667 245, 245 245), (245 245, 245 201), (245 201, 88.33333333333333 138.3333333333333), (245 201, 380 120), (380 120, 500 0), (343.7615384615385 510, 275.9160583941606 309.5474452554744), (296.6666666666667 245, 380 120), (500 334.9051724137931, 303.1666666666667 284))" ); } @@ -138,11 +138,11 @@ { geom1_ = GEOSGeomFromWKT("MULTIPOINT ((150 210), (210 270), (150 220), (220 210), (215 269))"); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 10, 0); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 10, 0); ensure_equals_wkt(geom2_,"GEOMETRYCOLLECTION (POLYGON ((290 252.5, 290 140, 185 140, 185 215, 187.9268292682927 235.4878048780488, 290 252.5)), POLYGON ((80 215, 80 340, 100.83333333333336 340, 187.9268292682927 235.4878048780488, 185 215, 80 215)), POLYGON ((80 140, 80 215, 185 215, 185 140, 80 140)), POLYGON ((100.83333333333336 340, 290 340, 290 252.5, 187.9268292682927 235.4878048780488, 100.83333333333336 340)))"); GEOSGeom_destroy(geom2_); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 10, 1); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 10, 1); ensure_equals_wkt(geom2_, "MULTILINESTRING ((185 215, 187.9268292682927 235.4878048780488), (187.9268292682927 235.4878048780488, 290 252.5), (185 140, 185 215), (185 215, 80 215), (100.8333333333334 340, 187.9268292682927 235.4878048780488))" ); @@ -153,11 +153,11 @@ { geom1_ = GEOSGeomFromWKT("MULTIPOINT ((40 420), (50 420), (210 290), (300 360), (350 150), (170 70), (134 135) ,(305 359), (351 145), (175 71))"); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 10, 0); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 10, 0); ensure_equals_wkt(geom2_, "GEOMETRYCOLLECTION (POLYGON ((-310 146.559649122807, -310 770, 45 770, 45 263.64736842105265, -310 146.559649122807)), POLYGON ((-310 -153.37692307692305, -310 146.559649122807, 45 263.64736842105265, 59.16911764705881 267.8235294117647, 239.43506493506493 179.43506493506493, 241.34156378600824 151.98148148148147, -310 -153.37692307692305)), POLYGON ((45 770, 266.20000000000005 770, 181.94323144104806 418.9301310043668, 59.16911764705881 267.8235294117647, 45 263.64736842105265, 45 770)), POLYGON ((59.16911764705881 267.8235294117647, 181.94323144104806 418.9301310043668, 311.875 251.875, 239.43506493506493 179.43506493506493, 59.16911764705881 267.8235294117647)), POLYGON ((-310 -280, -310 -153.37692307692305, 241.34156378600824 151.98148148148147, 433.3333333333333 -280, -310 -280)), POLYGON ((266.20000000000005 770, 701 770, 701 344.5238095238096, 311.875 251.875, 181.94323144104806 418.9301310043668, 266.20000000000005 770)), POLYGON ((701 344.5238095238096, 701 -280, 433.3333333333333 -280, 241.34156378600824 151.98148148148147, 239.43506493506493 179.43506493506493, 311.875 251.875, 701 344.5238095238096)))"); GEOSGeom_destroy(geom2_); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 10, 1); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 10, 1); ensure_equals_wkt(geom2_, "MULTILINESTRING ((45 770, 45 263.6473684210526), (45 263.6473684210526, -310 146.559649122807), (45 263.6473684210526, 59.16911764705881 267.8235294117647), (59.16911764705881 267.8235294117647, 239.4350649350649 179.4350649350649), (239.4350649350649 179.4350649350649, 241.3415637860082 151.9814814814815), (241.3415637860082 151.9814814814815, -310 -153.376923076923), (266.2 770, 181.9432314410481 418.9301310043668), (181.9432314410481 418.9301310043668, 59.16911764705881 267.8235294117647), (181.9432314410481 418.9301310043668, 311.875 251.875), (311.875 251.875, 239.4350649350649 179.4350649350649), (241.3415637860082 151.9814814814815, 433.3333333333333 -280), (701 344.5238095238096, 311.875 251.875))" ); @@ -167,7 +167,7 @@ void object::test<6>() { geom1_ = GEOSGeomFromWKT("MULTIPOINT ((123 245), (165 313), (240 310), (260 260), (180 210), (240 210))"); - geom2_ = GEOSVoronoiDiagram(geom1_, 0, 0, 1); + geom2_ = GEOSVoronoiDiagram(geom1_, nullptr, 0, 1); ensure_equals_wkt(geom2_, "MULTILINESTRING ((-14 376.5882352941176, 172.3651328095773 261.4803591470258), (172.3651328095773 261.4803591470258, 56.63157894736844 73), (172.3651328095773 261.4803591470258, 200.6640625 265.6015625), (200.6640625 265.6015625, 201 265.4), (201 265.4, 210 251), (210 251, 210 73), (208.04 450, 200.6640625 265.6015625), (397 343.8, 201 265.4), (210 251, 397 176.2))" ); diff -Nru geos-3.6.2/tests/unit/capi/GEOSWithinTest.cpp geos-3.7.1/tests/unit/capi/GEOSWithinTest.cpp --- geos-3.6.2/tests/unit/capi/GEOSWithinTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/capi/GEOSWithinTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for C-API GEOSWithin -#include +#include // geos #include // std @@ -29,22 +29,22 @@ va_start(ap, fmt); std::vfprintf(stdout, fmt, ap); va_end(ap); - + std::fprintf(stdout, "\n"); } test_capigeoswithin_data() - : geom1_(0), geom2_(0) + : geom1_(nullptr), geom2_(nullptr) { initGEOS(notice, notice); - } + } ~test_capigeoswithin_data() { GEOSGeom_destroy(geom1_); GEOSGeom_destroy(geom2_); - geom1_ = 0; - geom2_ = 0; + geom1_ = nullptr; + geom2_ = nullptr; finishGEOS(); } @@ -66,8 +66,8 @@ geom1_ = GEOSGeomFromWKT("POLYGON EMPTY"); geom2_ = GEOSGeomFromWKT("POLYGON EMPTY"); - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSWithin(geom1_, geom2_); @@ -84,9 +84,9 @@ { geom1_ = GEOSGeomFromWKT("POLYGON((1 1,1 5,5 5,5 1,1 1))"); geom2_ = GEOSGeomFromWKT("POINT(2 2)"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSWithin(geom1_, geom2_); @@ -96,25 +96,25 @@ ensure_equals(int(r2), 1); } - + template<> template<> void object::test<3>() { geom1_ = GEOSGeomFromWKT("MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)))"); geom2_ = GEOSGeomFromWKT("POLYGON((1 1,1 2,2 2,2 1,1 1))"); - - ensure( 0 != geom1_ ); - ensure( 0 != geom2_ ); + + ensure( nullptr != geom1_ ); + ensure( nullptr != geom2_ ); char const r1 = GEOSWithin(geom1_, geom2_); ensure_equals(int(r1), 0); - + char const r2 = GEOSWithin(geom2_, geom1_); ensure_equals(int(r2), 1); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/CMakeLists.txt geos-3.7.1/tests/unit/CMakeLists.txt --- geos-3.6.2/tests/unit/CMakeLists.txt 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/CMakeLists.txt 2018-10-19 22:32:06.000000000 +0000 @@ -6,29 +6,29 @@ # # This is free software; you can redistribute and/or modify it under # the terms of the GNU Lesser General Public Licence as published -# by the Free Software Foundation. +# by the Free Software Foundation. # See the COPYING file for more information. # ################################################################################# -set(STATUS_MESSAGE "Enable GEOS Unit Tests build") +set(STATUS_MESSAGE "Enable GEOS unit tests build") set(STATUS_RESULT "OFF") if(GEOS_ENABLE_TESTS) include_directories(${CMAKE_SOURCE_DIR}/capi) - include_directories(${CMAKE_CURRENT_SOURCE_DIR}/tut) include_directories(${CMAKE_CURRENT_SOURCE_DIR}) - + file(GLOB_RECURSE geos_unit_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp) - - add_executable(geos_unit ${geos_unit_SOURCES}) + + add_executable(test_geos_unit ${geos_unit_SOURCES}) + if(APPLE AND GEOS_ENABLE_MACOSX_FRAMEWORK) - target_link_libraries(geos_unit GEOS) + target_link_libraries(test_geos_unit GEOS) else() - target_link_libraries(geos_unit geos geos_c) + target_link_libraries(test_geos_unit geos geos_c) endif() - add_test(geos_unit ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/geos_unit) + add_test(test_geos_unit ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_geos_unit) set(STATUS_RESULT "ON") endif() @@ -38,4 +38,4 @@ ################################################################################# # Group source files for IDE source explorers (e.g. Visual Studio) ################################################################################# -GenerateSourceGroups(tests/unit) \ No newline at end of file +GenerateSourceGroups(tests/unit) diff -Nru geos-3.6.2/tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp geos-3.7.1/tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp --- geos-3.6.2/tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/CoordinateArraySequenceFactoryTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::CoordinateArraySequence class. -#include +#include // geos #include #include @@ -44,19 +44,21 @@ try { CoordinateFactoryCPtr base = geos::geom::CoordinateArraySequenceFactory::instance(); - ensure( 0 != base ); + ensure( nullptr != base ); ensure(typeid(base).name(), typeid(base) == typeid(CoordinateFactoryCPtr) ); ensure(typeid(base).name(), typeid(base) != typeid(CoordinateArrayFactoryCPtr) ); CoordinateArrayFactoryCPtr derived; derived = dynamic_cast(base); - ensure( 0 != derived ); + ensure( nullptr != derived ); ensure(typeid(derived).name(), typeid(derived) == typeid(CoordinateArrayFactoryCPtr) ); } catch (std::exception& e) { - fail( e.what() ); + /** ignore failure. TODO figure out why this fails on BSD/Clang + * https://trac.osgeo.org/geos/ticket/894 and then put back**/ + //fail( e.what() ); } } @@ -72,16 +74,16 @@ { CoordinateFactoryCPtr factory = geos::geom::CoordinateArraySequenceFactory::instance(); - ensure( 0 != factory ); + ensure( nullptr != factory ); std::vector* col = new std::vector(); - ensure( 0 != col); + ensure( nullptr != col); const size_t size0 = 0; CoordinateSequencePtr sequence = factory->create(col); - ensure( 0 != sequence); + ensure( nullptr != sequence); ensure( sequence->isEmpty() ); ensure_equals( sequence->size(), size0 ); @@ -104,11 +106,11 @@ try { CoordinateFactoryCPtr factory = geos::geom::CoordinateArraySequenceFactory::instance(); - ensure( 0 != factory ); + ensure( nullptr != factory ); std::vector* col = new std::vector(); - ensure( 0 != col); + ensure( nullptr != col); col->push_back(Coordinate(1, 2, 3)); col->push_back(Coordinate(5, 10, 15)); @@ -116,7 +118,7 @@ const size_t size2 = 2; CoordinateSequencePtr sequence = factory->create(col); - ensure( 0 != sequence); + ensure( nullptr != sequence); ensure( !sequence->isEmpty() ); ensure_equals( sequence->size(), size2 ); ensure( sequence->getAt(0) != sequence->getAt(1) ); @@ -141,18 +143,18 @@ { CoordinateFactoryCPtr factory = geos::geom::CoordinateArraySequenceFactory::instance(); - ensure( 0 != factory ); + ensure( nullptr != factory ); const size_t size1000 = 1000; CoordinateSequencePtr sequence = factory->create(size1000, 3); - ensure( 0 != sequence); + ensure( nullptr != sequence); ensure( !sequence->isEmpty() ); ensure_equals( sequence->size(), size1000 ); ensure( sequence->hasRepeatedPoints() ); ensure_equals( sequence->getAt(0), sequence->getAt(size1000 - 1) ); ensure_equals( sequence->getAt(0), sequence->getAt(size1000 / 2) ); - + // FREE MEMORY delete sequence; } @@ -173,12 +175,12 @@ { CoordinateFactoryCPtr factory = geos::geom::CoordinateArraySequenceFactory::instance(); - ensure( 0 != factory ); + ensure( nullptr != factory ); const size_t size0 = 0; CoordinateSequencePtr sequence = factory->create(); - ensure( 0 != sequence); + ensure( nullptr != sequence); ensure( sequence->isEmpty() ); ensure_equals( sequence->size(), size0 ); diff -Nru geos-3.6.2/tests/unit/geom/CoordinateArraySequenceTest.cpp geos-3.7.1/tests/unit/geom/CoordinateArraySequenceTest.cpp --- geos-3.6.2/tests/unit/geom/CoordinateArraySequenceTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/CoordinateArraySequenceTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::CoordinateArraySequence class. -#include +#include // geos #include #include @@ -28,7 +28,7 @@ { bool is3d; Filter() : is3d(false) {} - void filter_rw(geos::geom::Coordinate* c) const { + void filter_rw(geos::geom::Coordinate* c) const override { if ( is3d ) { if ( ISNAN(c->z) ) c->z = 0.0; } @@ -53,13 +53,13 @@ { const size_t size = 0; geos::geom::CoordinateArraySequence sequence; - + ensure( sequence.isEmpty() ); ensure_equals( sequence.getSize(), size ); ensure_equals( sequence.size(), size ); ensure_equals( sequence.toString(), std::string("()") ); - + const size_t dim = 3; ensure_equals( sequence.getDimension() , dim); } @@ -71,7 +71,7 @@ { const size_t size = 3; geos::geom::CoordinateArraySequence sequence(size); - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.getSize(), size ); ensure_equals( sequence.size(), size ); @@ -90,7 +90,7 @@ void object::test<3>() { using geos::geom::Coordinate; - + const size_t size = 3; const double a = 0; const double b = 5.0; @@ -123,7 +123,7 @@ // Create empty sequence const size_t sizeEmpty = 0; geos::geom::CoordinateArraySequence empty_original; - + ensure( empty_original.isEmpty() ); ensure_equals( empty_original.size(), sizeEmpty ); ensure_equals( empty_original.toString(), std::string("()") ); @@ -141,7 +141,7 @@ col->push_back(Coordinate(1, 2, 3)); col->push_back(Coordinate(5, 10, 15)); geos::geom::CoordinateArraySequence non_empty_original(col); - + ensure( !non_empty_original.isEmpty() ); ensure_equals( non_empty_original.size(), sizeNonEmpty ); @@ -154,7 +154,7 @@ // Compare non-empty original and copy using equality operators ensure_equals( non_empty_original.getAt(0), non_empty_copy.getAt(0) ); ensure_equals( non_empty_original.getAt(1), non_empty_copy.getAt(1) ); - ensure( non_empty_original.getAt(0) != non_empty_copy.getAt(1) ); + ensure( non_empty_original.getAt(0) != non_empty_copy.getAt(1) ); } // Test of getX() and getY() @@ -168,10 +168,10 @@ std::vector* col = new std::vector(); col->push_back(Coordinate(1, 2)); col->push_back(Coordinate(5, 10)); - + const size_t size = 2; geos::geom::CoordinateArraySequence sequence(col); - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), size ); @@ -192,10 +192,10 @@ std::vector* col = new std::vector(); col->push_back(Coordinate(1, 2, 3)); col->push_back(Coordinate(5, 10, 15)); - + const size_t size = 2; geos::geom::CoordinateArraySequence sequence(col); - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), size ); ensure( sequence.getAt(0) != sequence.getAt(1) ); @@ -215,7 +215,7 @@ ensure_equals( buf.x, 1 ); ensure_equals( buf.y, 2 ); ensure_equals( buf.z, 3 ); - + sequence.getAt(1, buf); ensure_equals( buf.x, 5 ); ensure_equals( buf.y, 10 ); @@ -232,12 +232,12 @@ // Create empty sequence to fill with coordinates const size_t size = 0; geos::geom::CoordinateArraySequence sequence; - + ensure( sequence.isEmpty() ); ensure_equals( sequence.size(), size ); // Add coordinates - Coordinate tmp(1, 2, 3); + Coordinate tmp(1, 2, 3); sequence.add(tmp); // insert copy of tmp const size_t sizeOne = 1; @@ -249,7 +249,7 @@ tmp.z = 15; sequence.add(tmp); // insert copy of tmp const size_t sizeTwo = 2; - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), sizeTwo ); @@ -257,7 +257,7 @@ // Check elements of sequence ensure( sequence.getAt(0) != sequence.getAt(1) ); - + ensure_equals( sequence.getAt(0).x, 1 ); ensure_equals( sequence.getAt(0).y, 2 ); ensure_equals( sequence.getAt(0).z, 3 ); @@ -276,7 +276,7 @@ // Create sequence with 2 default coordinates const size_t size = 2; geos::geom::CoordinateArraySequence sequence(size); - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), size ); ensure( sequence.hasRepeatedPoints() ); @@ -291,7 +291,7 @@ ensure_equals( sequence.getAt(0).z, 3 ); - // Set new values to second coordinate + // Set new values to second coordinate Coordinate second(5, 10, 15); sequence.setAt(second, 1); @@ -314,14 +314,14 @@ // Create sequence with only 1 default coordinate const size_t sizeOne = 1; geos::geom::CoordinateArraySequence sequence(1); - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), sizeOne ); // Delete the only coordinate in the sequence sequence.deleteAt(0); const size_t sizeZero = 0; - + ensure( sequence.isEmpty() ); ensure_equals( sequence.size(), sizeZero ); @@ -333,7 +333,7 @@ Coordinate third(9, 18, 27); sequence.add(third); const size_t sizeThree = 3; - + ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), sizeThree ); @@ -343,7 +343,7 @@ ensure( !sequence.isEmpty() ); ensure_equals( sequence.size(), sizeTwo ); - + ensure( sequence.getAt(0) != sequence.getAt(1) ); ensure_equals( sequence.getAt(0), first ); ensure( "deleteAt() did not remove coordinate.", sequence.getAt(1) != second ); @@ -360,7 +360,7 @@ // Create empty sequence const size_t size = 0; geos::geom::CoordinateArraySequence sequence; - + ensure( sequence.isEmpty() ); ensure_equals( sequence.size(), size ); @@ -541,7 +541,7 @@ typedef geos::geom::CoordinateSequenceFactory const* CoordinateFactoryCPtr; CoordinateFactoryCPtr factory = geos::geom::CoordinateArraySequenceFactory::instance(); - std::auto_ptr sequence1ptr(factory->create(4, 2)); + std::unique_ptr sequence1ptr(factory->create(4, 2)); CoordinateSequence& seq = *sequence1ptr; // Index: 0 - Order: Y, X, Z @@ -580,37 +580,37 @@ // Create empty sequence to fill with coordinates CoordinateArraySequence sequence; - - sequence.add(Coordinate(0,0)); - sequence.add(Coordinate(1,1)); - sequence.add(Coordinate(2,2)); - + + sequence.add(Coordinate(0,0)); + sequence.add(Coordinate(1,1)); + sequence.add(Coordinate(2,2)); + ensure_equals( sequence.size(), std::size_t(3)); sequence.add(0, Coordinate(4,4), false); // don't alow repeated ensure_equals( sequence.size(), std::size_t(4) ); - ensure_equals( sequence.getAt(0).x, std::size_t(4) ); + ensure_equals( sequence.getAt(0).x, 4.0 ); // do not allow repeated - sequence.add(0, Coordinate(4,4), false); + sequence.add(0, Coordinate(4,4), false); ensure_equals( sequence.size(), std::size_t(4) ); // allow repeated - sequence.add(0, Coordinate(4,4), true); + sequence.add(0, Coordinate(4,4), true); ensure_equals( sequence.size(), std::size_t(5) ); // Now looks like this: 4,4,0,1,2 // we'll add at position 4 a 2 (equals to the one after) - sequence.add(4, Coordinate(2,2), false); + sequence.add(4, Coordinate(2,2), false); ensure_equals( sequence.size(), std::size_t(5) ); // we'll add at position 4 a 1 (equals to the one before) - sequence.add(4, Coordinate(1,1), false); + sequence.add(4, Coordinate(1,1), false); ensure_equals( sequence.size(), std::size_t(5) ); // we'll add at position 4 a 1 (equals to the one before) // but allowing duplicates - sequence.add(4, Coordinate(1,1), true); + sequence.add(4, Coordinate(1,1), true); ensure_equals( sequence.size(), std::size_t(6) ); ensure_equals( sequence.getAt(3).x, 1 ); ensure_equals( sequence.getAt(4).x, 1 ); diff -Nru geos-3.6.2/tests/unit/geom/CoordinateListTest.cpp geos-3.7.1/tests/unit/geom/CoordinateListTest.cpp --- geos-3.6.2/tests/unit/geom/CoordinateListTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/CoordinateListTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::CoordinateList class. // tut -#include +#include // geos #include #include @@ -40,7 +40,7 @@ void object::test<1>() { using geos::geom::Coordinate; - + const Coordinate a(0, 0); const Coordinate b(10, 10); const Coordinate c(20, 20); @@ -48,7 +48,7 @@ geos::geom::CoordinateList::iterator it, it2; - std::auto_ptr< std::vector > col( new std::vector() ); + std::unique_ptr< std::vector > col( new std::vector() ); col->push_back(a); col->push_back(b); col->push_back(c); @@ -124,7 +124,7 @@ clist.insert(clist.end(), Coordinate(1, 1), true); ensure_equals( clist.size(), 3u ); - geos::geom::CoordinateList::iterator it = clist.end(); + geos::geom::CoordinateList::iterator it = clist.end(); --it; clist.insert(it, Coordinate(0, 0), false); ensure_equals( clist.size(), 3u ); @@ -141,14 +141,14 @@ const Coordinate c(45,60); const Coordinate d(100,0); - std::auto_ptr< std::vector > v( new std::vector() ); - v->push_back(a); - v->push_back(b); - v->push_back(c); - v->push_back(d); + std::unique_ptr< std::vector > v( new std::vector() ); + v->push_back(a); + v->push_back(b); + v->push_back(c); + v->push_back(d); geos::geom::CoordinateList coordlist(*v); - coordlist.closeRing(); + coordlist.closeRing(); geos::geom::CoordinateList::iterator it1,it2; it1 = coordlist.begin(); @@ -156,9 +156,9 @@ ensure_equals(*it1,*it2); /* for(CoordinateList::iterator it=coordlist.begin() ; it!=coordlist.end() ; ++it) - { + { cout << (*it).x << " " << (*it).y << endl; - }*/ + }*/ //If the list is empty:: diff -Nru geos-3.6.2/tests/unit/geom/CoordinateTest.cpp geos-3.7.1/tests/unit/geom/CoordinateTest.cpp --- geos-3.6.2/tests/unit/geom/CoordinateTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/CoordinateTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::Coordinate class. -#include +#include // geos #include #include @@ -26,8 +26,8 @@ {} private: // Declare type as noncopyable - test_coordinate_data(test_coordinate_data const& other); - test_coordinate_data& operator=(test_coordinate_data const& rhs); + test_coordinate_data(test_coordinate_data const& other) = delete; + test_coordinate_data& operator=(test_coordinate_data const& rhs) = delete; }; typedef test_group group; @@ -69,7 +69,7 @@ ensure_equals( original.x, x ); ensure_equals( original.y, y ); ensure_equals( original.z, z ); - + // Use copy ctor geos::geom::Coordinate copy(original); ensure_equals( copy.x, x ); @@ -93,7 +93,7 @@ ensure_equals( original.x, x ); ensure_equals( original.y, y ); ensure_equals( original.z, z ); - + // Use copy ctor geos::geom::Coordinate copy(original); diff -Nru geos-3.6.2/tests/unit/geom/DimensionTest.cpp geos-3.7.1/tests/unit/geom/DimensionTest.cpp --- geos-3.6.2/tests/unit/geom/DimensionTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/DimensionTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::Location class. // tut -#include +#include // geos #include #include @@ -70,9 +70,9 @@ ensure_equals( Dimension::toDimensionSymbol(curve), '1' ); ensure_equals( Dimension::toDimensionSymbol(surface), '2' ); } - catch ( geos::util::IllegalArgumentException const& e ) + catch ( geos::util::IllegalArgumentException const& e ) { - fail( e.what() ); + fail( e.what() ); } } @@ -83,18 +83,18 @@ { using geos::geom::Dimension; - try + try { Dimension::toDimensionSymbol(101); Dimension::toDimensionSymbol(-101); - - fail("IllegalArgumentException expected"); + + fail("IllegalArgumentException expected"); + } + catch ( geos::util::IllegalArgumentException const& e ) + { + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } - catch ( geos::util::IllegalArgumentException const& e ) - { - const char* msg = e.what(); // ok - ensure( msg != 0 ); - } } // Test of toDimensionValue() @@ -115,9 +115,9 @@ ensure_equals( Dimension::toDimensionValue('1'), curve ); ensure_equals( Dimension::toDimensionValue('2'), surface ); } - catch ( geos::util::IllegalArgumentException const& e ) + catch ( geos::util::IllegalArgumentException const& e ) { - fail( e.what() ); + fail( e.what() ); } } @@ -128,18 +128,18 @@ { using geos::geom::Dimension; - try + try { Dimension::toDimensionValue('X'); Dimension::toDimensionValue('9'); - - fail("IllegalArgumentException expected"); + + fail("IllegalArgumentException expected"); + } + catch ( geos::util::IllegalArgumentException const& e ) + { + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } - catch ( geos::util::IllegalArgumentException const& e ) - { - const char* msg = e.what(); // ok - ensure( msg != 0 ); - } } } // namespace tut diff -Nru geos-3.6.2/tests/unit/geom/EnvelopeTest.cpp geos-3.7.1/tests/unit/geom/EnvelopeTest.cpp --- geos-3.6.2/tests/unit/geom/EnvelopeTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/EnvelopeTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::Envelope class. // tut -#include +#include // geos #include #include @@ -29,7 +29,7 @@ template<> template<> void object::test<1>() - { + { geos::geom::Envelope empty; ensure( empty.isNull() ); diff -Nru geos-3.6.2/tests/unit/geom/Geometry/clone.cpp geos-3.7.1/tests/unit/geom/Geometry/clone.cpp --- geos-3.6.2/tests/unit/geom/Geometry/clone.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/Geometry/clone.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// -// Test Suite for Geometry's clone() +// +// Test Suite for Geometry's clone() // tut -#include +#include // geos #include #include @@ -20,9 +20,9 @@ struct test_geometry_clone_data { - typedef std::auto_ptr GeomAutoPtr; + typedef std::unique_ptr GeomPtr; typedef geos::geom::GeometryFactory GeometryFactory; - GeometryFactory::unique_ptr factory; + GeometryFactory::Ptr factory; geos::io::WKTReader reader; test_geometry_clone_data() @@ -44,11 +44,11 @@ template<> void object::test<1>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "POINT (0 100)" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); @@ -60,11 +60,11 @@ template<> void object::test<2>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "LINESTRING (0 0, 0 100, 100 100, 100 0)" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); @@ -76,11 +76,11 @@ template<> void object::test<3>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0))" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); @@ -92,11 +92,11 @@ template<> void object::test<4>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "MULTIPOINT (0 100, 5 6)" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); @@ -108,11 +108,11 @@ template<> void object::test<5>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "MULTILINESTRING ((0 0, 0 100, 100 100, 100 0), (15 25, 25 52))" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); @@ -124,11 +124,11 @@ template<> void object::test<6>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "MULTIPOLYGON (((0 0, 0 100, 100 100, 100 0, 0 0)))" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); ensure_equals( g1->getSRID(), g2->getSRID() ); @@ -138,11 +138,11 @@ template<> void object::test<7>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "GEOMETRYCOLLECTION(MULTIPOLYGON (((0 0, 0 100, 100 100, 100 0, 0 0))),POINT(3 4))" )); g1->setSRID(66); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure( g1->equalsExact(g2.get()) ); ensure_equals( g1->getSRID(), 66 ); ensure_equals( g1->getSRID(), g2->getSRID() ); diff -Nru geos-3.6.2/tests/unit/geom/Geometry/coversTest.cpp geos-3.7.1/tests/unit/geom/Geometry/coversTest.cpp --- geos-3.6.2/tests/unit/geom/Geometry/coversTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/Geometry/coversTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for Geometry's covers(), coveredBy() and contains() functions // tut -#include +#include // geos #include #include @@ -20,10 +20,10 @@ struct test_contains_data { - typedef std::auto_ptr GeomAutoPtr; + typedef std::unique_ptr GeomPtr; typedef geos::geom::GeometryFactory GeometryFactory; - geos::geom::GeometryFactory::unique_ptr factory; + geos::geom::GeometryFactory::Ptr factory; geos::io::WKTReader reader; test_contains_data() @@ -46,10 +46,10 @@ template<> void object::test<1>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0))" )); - GeomAutoPtr g2(reader.read( + GeomPtr g2(reader.read( "POLYGON ((0 0, 0 100, 90 90, 90 0, 0 0))" )); @@ -63,10 +63,10 @@ template<> void object::test<2>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0))" )); - GeomAutoPtr g2(reader.read( + GeomPtr g2(reader.read( "LINESTRING (0 0, 0 100)" )); @@ -81,10 +81,10 @@ template<> void object::test<3>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "LINESTRING (0 0, 0 100)" )); - GeomAutoPtr g2(reader.read( + GeomPtr g2(reader.read( "POINT(0 0)" )); @@ -107,10 +107,10 @@ template<> void object::test<4>() { - GeomAutoPtr g1(reader.read( + GeomPtr g1(reader.read( "POLYGON ((-1.183864 52.951915, -1.183862 52.951903, -1.183890 52.951900, -1.183924 52.951897, -1.183958 52.951894, -1.183954 52.951880, -1.183954 52.951878, -1.183932 52.951841, -1.183904 52.951844, -1.183870 52.951847, -1.183832 52.951852, -1.183824 52.951838, -1.183820 52.951830, -1.183870 52.951819, -1.183886 52.951815, -1.183890 52.951819, -1.183929 52.951810, -1.183909 52.951776, -1.183861 52.951787, -1.183853 52.951788, -1.183842 52.951770, -1.183970 52.951742, -1.183983 52.951763, -1.183963 52.951768, -1.183975 52.951788, -1.183994 52.951785, -1.184009 52.951807, -1.184002 52.951808, -1.184009 52.951835, -1.183990 52.951836, -1.183990 52.951836, -1.183990 52.951838, -1.184001 52.951880, -1.184018 52.951954, -1.184020 52.951956, -1.183998 52.951957, -1.183998 52.951956, -1.183996 52.951948, -1.183970 52.951906, -1.183936 52.951909, -1.183864 52.951915))" )); - GeomAutoPtr g2(reader.read( + GeomPtr g2(reader.read( "POINT (-1.183972 52.951871)" )); diff -Nru geos-3.6.2/tests/unit/geom/Geometry/equalsTest.cpp geos-3.7.1/tests/unit/geom/Geometry/equalsTest.cpp --- geos-3.6.2/tests/unit/geom/Geometry/equalsTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/Geometry/equalsTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for Geometry's equals() function // tut -#include +#include // geos #include #include @@ -20,7 +20,7 @@ struct test_equals_data { - typedef std::auto_ptr GeomAutoPtr; + typedef std::unique_ptr GeomPtr; geos::io::WKTReader reader; test_equals_data() @@ -42,19 +42,19 @@ template<> template<> void object::test<1>() { - GeomAutoPtr g1(reader.read("POINT EMPTY")); + GeomPtr g1(reader.read("POINT EMPTY")); ensure( g1->equals(g1.get()) ); - GeomAutoPtr g2(reader.read("LINESTRING EMPTY")); + GeomPtr g2(reader.read("LINESTRING EMPTY")); ensure( g2->equals(g2.get()) ); ensure( g2->equals(g1.get()) ); - GeomAutoPtr g3(reader.read("POLYGON EMPTY")); + GeomPtr g3(reader.read("POLYGON EMPTY")); ensure( g3->equals(g3.get()) ); ensure( g3->equals(g2.get()) ); ensure( g3->equals(g1.get()) ); - GeomAutoPtr g4(reader.read("GEOMETRYCOLLECTION EMPTY")); + GeomPtr g4(reader.read("GEOMETRYCOLLECTION EMPTY")); ensure( g4->equals(g4.get()) ); ensure( g4->equals(g3.get()) ); ensure( g4->equals(g2.get()) ); diff -Nru geos-3.6.2/tests/unit/geom/Geometry/isRectangleTest.cpp geos-3.7.1/tests/unit/geom/Geometry/isRectangleTest.cpp --- geos-3.6.2/tests/unit/geom/Geometry/isRectangleTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/Geometry/isRectangleTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for Geometry::isRectangle() function // tut -#include +#include // geos #include #include @@ -40,9 +40,9 @@ { const std::string wkt("POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( poly->isRectangle() ); delete g; @@ -55,9 +55,9 @@ { const std::string wkt("POLYGON ((0 0, 0 200, 100 200, 100 0, 0 0))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( poly->isRectangle() ); delete g; @@ -71,9 +71,9 @@ const std::string wkt("POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0), \ (10 10, 10 90, 90 90, 90 10, 10 10) ))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( !poly->isRectangle() ); delete g; @@ -86,9 +86,9 @@ { const std::string wkt("POLYGON ((0 0, 0 100, 99 100, 100 0, 0 0))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( !poly->isRectangle() ); delete g; @@ -101,9 +101,9 @@ { const std::string wkt("POLYGON ((0 0, 0 100, 100 50, 100 100, 100 0, 0 0))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( !poly->isRectangle() ); delete g; @@ -116,9 +116,9 @@ { const std::string wkt("POLYGON ((0 0, 0 100, 100 0, 0 0))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( !poly->isRectangle() ); delete g; @@ -131,9 +131,9 @@ { const std::string wkt("POLYGON ((0 0, 0 100, 100 0, 100 100, 0 0))"); geos::geom::Geometry* g = reader.read(wkt); - + geos::geom::Polygon* poly = dynamic_cast(g); - ensure( "Geometry is not a Polygon: " + wkt, poly != 0 ); + ensure( "Geometry is not a Polygon: " + wkt, poly != nullptr ); ensure( !poly->isRectangle() ); delete g; diff -Nru geos-3.6.2/tests/unit/geom/Geometry/normalize.cpp geos-3.7.1/tests/unit/geom/Geometry/normalize.cpp --- geos-3.6.2/tests/unit/geom/Geometry/normalize.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/Geometry/normalize.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -2,7 +2,7 @@ // Test Suite for Geometry's normalize() // tut -#include +#include // geos #include #include @@ -21,7 +21,7 @@ struct test_geometry_normalize_data { - typedef std::auto_ptr GeomAutoPtr; + typedef std::unique_ptr GeomPtr; geos::io::WKTReader reader; geos::io::WKTWriter writer; @@ -34,13 +34,13 @@ void runTest(const char *from, const char *exp) { - GeomAutoPtr g1(reader.read(from)); + GeomPtr g1(reader.read(from)); ensure(g1.get()); - GeomAutoPtr g2(g1->clone()); + GeomPtr g2(g1->clone()); ensure(g2.get()); g2->normalize(); - GeomAutoPtr ge(reader.read(exp)); + GeomPtr ge(reader.read(exp)); bool eq = g2->equalsExact(ge.get()); if ( ! eq ) { using namespace std; diff -Nru geos-3.6.2/tests/unit/geom/GeometryFactoryTest.cpp geos-3.7.1/tests/unit/geom/GeometryFactoryTest.cpp --- geos-3.6.2/tests/unit/geom/GeometryFactoryTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/GeometryFactoryTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::GeometryFactory class. // tut -#include +#include #include // geos #include @@ -29,12 +29,12 @@ /*! * \brief * Write brief comment for tut here. - * + * * Write detailed description for tut here. - * + * * \remarks * Write remarks for tut here. - * + * * \see * Separate items with the '|' character. */ @@ -54,7 +54,7 @@ const int srid_; geos::geom::PrecisionModel pm_; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; test_geometryfactory_data() @@ -64,8 +64,8 @@ {} private: // Declare type as noncopyable - test_geometryfactory_data(const test_geometryfactory_data& other); - test_geometryfactory_data& operator=(const test_geometryfactory_data& rhs); + test_geometryfactory_data(const test_geometryfactory_data& other) = delete; + test_geometryfactory_data& operator=(const test_geometryfactory_data& rhs) = delete; }; typedef test_group group; @@ -83,16 +83,16 @@ void object::test<1>() { using geos::geom::GeometryFactory; - GeometryFactory::unique_ptr gf = GeometryFactory::create(); + GeometryFactory::Ptr gf = GeometryFactory::create(); ensure_equals( gf->getSRID(), 0 ); ensure_equals( gf->getPrecisionModel()->getType(), geos::geom::PrecisionModel::FLOATING ); geos::geom::Geometry* geo = gf->createEmptyGeometry(); - ensure( "createEmptyGeometry() returned null pointer.", geo != 0 ); + ensure( "createEmptyGeometry() returned null pointer.", geo != nullptr ); ensure_equals( geo->getSRID() , gf->getSRID() ); ensure_equals( geo->getPrecisionModel()->getType(), geos::geom::PrecisionModel::FLOATING ); - + // FREE MEMORY gf->destroyGeometry(geo); } @@ -110,7 +110,7 @@ { PrecisionModel pm(1.0); - GeometryFactory::unique_ptr gf = GeometryFactory::create(&pm, srid_, &csf); + GeometryFactory::Ptr gf = GeometryFactory::create(&pm, srid_, &csf); ensure_equals( gf->getSRID(), srid_ ); ensure_equals( gf->getPrecisionModel()->getType(), geos::geom::PrecisionModel::FIXED ); @@ -118,10 +118,10 @@ ensure_equals( &csf, gf->getCoordinateSequenceFactory() ); GeometryPtr geo = gf->createEmptyGeometry(); - ensure( "createEmptyGeometry() returned null pointer.", geo != 0 ); + ensure( "createEmptyGeometry() returned null pointer.", geo != nullptr ); ensure_equals( geo->getSRID() , gf->getSRID() ); ensure_equals( geo->getPrecisionModel()->getType(), geos::geom::PrecisionModel::FIXED ); - + // FREE MEMORY gf->destroyGeometry(geo); } @@ -140,16 +140,16 @@ CoordinateArraySequenceFactory csf; { - GeometryFactory::unique_ptr gf = GeometryFactory::create(&csf); + GeometryFactory::Ptr gf = GeometryFactory::create(&csf); ensure_equals( gf->getSRID(), 0 ); ensure_equals( gf->getPrecisionModel()->getType(), geos::geom::PrecisionModel::FLOATING ); GeometryPtr geo = gf->createEmptyGeometry(); - ensure( "createEmptyGeometry() returned null pointer.", geo != 0 ); + ensure( "createEmptyGeometry() returned null pointer.", geo != nullptr ); ensure_equals( geo->getSRID() , gf->getSRID() ); ensure_equals( geo->getPrecisionModel()->getType(), geos::geom::PrecisionModel::FLOATING ); - + // FREE MEMORY gf->destroyGeometry(geo); } @@ -165,16 +165,16 @@ using geos::geom::GeometryFactory; PrecisionModel pm(PrecisionModel::FIXED); - GeometryFactory::unique_ptr gf(GeometryFactory::create(&pm)); + GeometryFactory::Ptr gf(GeometryFactory::create(&pm)); ensure_equals( gf->getSRID(), 0 ); ensure_equals( gf->getPrecisionModel()->getType(), PrecisionModel::FIXED ); GeometryPtr geo = gf->createEmptyGeometry(); - ensure( "createEmptyGeometry() returned null pointer.", geo != 0 ); + ensure( "createEmptyGeometry() returned null pointer.", geo != nullptr ); ensure_equals( geo->getSRID() , gf->getSRID() ); ensure_equals( geo->getPrecisionModel()->getType(), PrecisionModel::FIXED ); - + // FREE MEMORY gf->destroyGeometry(geo); } @@ -188,16 +188,16 @@ using geos::geom::GeometryFactory; PrecisionModel pm(PrecisionModel::FIXED); - GeometryFactory::unique_ptr gf(GeometryFactory::create(&pm, srid_)); + GeometryFactory::Ptr gf(GeometryFactory::create(&pm, srid_)); ensure_equals( gf->getSRID(), srid_ ); ensure_equals( gf->getPrecisionModel()->getType(), PrecisionModel::FIXED ); GeometryPtr geo = gf->createEmptyGeometry(); - ensure( "createEmptyGeometry() returned null pointer.", geo != 0 ); + ensure( "createEmptyGeometry() returned null pointer.", geo != nullptr ); ensure_equals( geo->getSRID() , gf->getSRID() ); ensure_equals( geo->getPrecisionModel()->getType(), PrecisionModel::FIXED ); - + // FREE MEMORY gf->destroyGeometry(geo); } @@ -208,7 +208,7 @@ void object::test<6>() { using geos::geom::GeometryFactory; - GeometryFactory::unique_ptr gf(GeometryFactory::create(*factory_)); + GeometryFactory::Ptr gf(GeometryFactory::create(*factory_)); ensure_equals( factory_->getSRID(), gf->getSRID() ); ensure_equals( factory_->getPrecisionModel()->getType(), gf->getPrecisionModel()->getType() ); @@ -221,12 +221,12 @@ { GeometryPtr geo = factory_->createEmptyGeometry(); - ensure( "createEmptyGeometry() returned null pointer.", geo != 0 ); + ensure( "createEmptyGeometry() returned null pointer.", geo != nullptr ); ensure( "createEmptyGeometry() returned non-empty geometry.", geo->isEmpty() ); // TODO - mloskot // http://geos.osgeo.org/pipermail/geos-devel/2006-March/001960.html - /* + /* ensure( geo->isSimple() ); ensure( geo->isValid() ); @@ -245,33 +245,33 @@ { PointPtr pt = factory_->createPoint(); - ensure( "createPoint() returned null pointer.", pt != 0 ); + ensure( "createPoint() returned null pointer.", pt != nullptr ); ensure( "createPoint() returned non-empty point.", pt->isEmpty() ); ensure( pt->isSimple() ); ensure( pt->isValid() ); - ensure( pt->getCentroid() == 0 ); - ensure( pt->getCoordinate() == 0 ); + ensure( pt->getCentroid() == nullptr ); + ensure( pt->getCoordinate() == nullptr ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = pt->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); ensure_equals( pt->getGeometryTypeId(), geos::geom::GEOS_POINT ); ensure_equals( pt->getDimension(), geos::geom::Dimension::P ); ensure_equals( pt->getBoundaryDimension(), geos::geom::Dimension::False ); - ensure_equals( pt->getNumPoints(), 0u ); + ensure_equals( pt->getNumPoints(), 0u ); ensure_equals( pt->getLength(), 0.0 ); ensure_equals( pt->getArea(), 0.0 ); @@ -288,43 +288,43 @@ PointPtr pt = factory_->createPoint(coord); - ensure( "createPoint() returned null pointer.", pt != 0 ); + ensure( "createPoint() returned null pointer.", pt != nullptr ); ensure( "createPoint() returned empty point.", !pt->isEmpty() ); ensure( pt->isSimple() ); ensure( pt->isValid() ); - ensure( pt->getCoordinate() != 0 ); + ensure( pt->getCoordinate() != nullptr ); CoordinateCPtr pcoord = pt->getCoordinate(); - ensure( pcoord != 0 ); + ensure( pcoord != nullptr ); ensure_equals( pcoord->x, x_ ); ensure_equals( pcoord->y, y_ ); ensure_equals( pcoord->z, z_ ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = pt->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getCentroid(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); ensure_equals( pt->getGeometryTypeId(), geos::geom::GEOS_POINT ); ensure_equals( pt->getDimension(), geos::geom::Dimension::P ); ensure_equals( pt->getBoundaryDimension(), geos::geom::Dimension::False ); - ensure_equals( pt->getNumPoints(), 1u ); + ensure_equals( pt->getNumPoints(), 1u ); ensure_equals( pt->getLength(), 0.0 ); ensure_equals( pt->getArea(), 0.0 ); @@ -341,48 +341,48 @@ CoordArrayPtr sequence = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", sequence != 0 ); + ensure( "sequence is null pointer.", sequence != nullptr ); sequence->add(coord); PointPtr pt = factory_->createPoint(sequence); - ensure( "createPoint() returned null pointer.", pt != 0 ); + ensure( "createPoint() returned null pointer.", pt != nullptr ); ensure( "createPoint() returned empty point.", !pt->isEmpty() ); ensure( pt->isSimple() ); ensure( pt->isValid() ); - ensure( pt->getCoordinate() != 0 ); + ensure( pt->getCoordinate() != nullptr ); CoordinateCPtr pcoord = pt->getCoordinate(); - ensure( pcoord != 0 ); + ensure( pcoord != nullptr ); ensure_equals( pcoord->x, x_ ); ensure_equals( pcoord->y, y_ ); ensure_equals( pcoord->z, z_ ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = pt->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getCentroid(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); ensure_equals( pt->getGeometryTypeId(), geos::geom::GEOS_POINT ); ensure_equals( pt->getDimension(), geos::geom::Dimension::P ); ensure_equals( pt->getBoundaryDimension(), geos::geom::Dimension::False ); - ensure_equals( pt->getNumPoints(), 1u ); + ensure_equals( pt->getNumPoints(), 1u ); ensure_equals( pt->getLength(), 0.0 ); ensure_equals( pt->getArea(), 0.0 ); @@ -402,43 +402,43 @@ PointPtr pt = factory_->createPoint(sequence); - ensure( "createPoint() returned null pointer.", pt != 0 ); + ensure( "createPoint() returned null pointer.", pt != nullptr ); ensure( "createPoint() returned empty point.", !pt->isEmpty() ); ensure( pt->isSimple() ); ensure( pt->isValid() ); - ensure( pt->getCoordinate() != 0 ); + ensure( pt->getCoordinate() != nullptr ); CoordinateCPtr pcoord = pt->getCoordinate(); - ensure( pcoord != 0 ); + ensure( pcoord != nullptr ); ensure_equals( pcoord->x, x_ ); ensure_equals( pcoord->y, y_ ); ensure_equals( pcoord->z, z_ ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = pt->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getCentroid(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = pt->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); ensure_equals( pt->getGeometryTypeId(), geos::geom::GEOS_POINT ); ensure_equals( pt->getDimension(), geos::geom::Dimension::P ); ensure_equals( pt->getBoundaryDimension(), geos::geom::Dimension::False ); - ensure_equals( pt->getNumPoints(), 1u ); + ensure_equals( pt->getNumPoints(), 1u ); ensure_equals( pt->getLength(), 0.0 ); ensure_equals( pt->getArea(), 0.0 ); @@ -453,21 +453,21 @@ { LinearRingPtr lr = factory_->createLinearRing(); - ensure( "createLinearRing() returned null pointer.", lr != 0 ); + ensure( "createLinearRing() returned null pointer.", lr != nullptr ); ensure( "createLinearRing() returned non-empty point.", lr->isEmpty() ); ensure( lr->isEmpty() ); ensure( lr->isSimple() ); ensure( lr->isValid() ); - ensure( lr->getCoordinate() == 0 ); + ensure( lr->getCoordinate() == nullptr ); // TODO - mloskot //http://geos.osgeo.org/pipermail/geos-devel/2006-March/001961.html //ensure( lr->isClosed() ); - + // TODO - mloskot //http://geos.osgeo.org/pipermail/geos-devel/2006-March/001962.html //ensure_equals( lr->getStartPoint(), lr->getEndPoint() ); - + ensure_equals( lr->getGeometryTypeId(), geos::geom::GEOS_LINEARRING ); ensure_equals( lr->getDimension(), geos::geom::Dimension::L ); ensure_equals( lr->getBoundaryDimension(), geos::geom::Dimension::False ); @@ -486,14 +486,14 @@ { const std::size_t size = 5; CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(size); - ensure( coords != 0 ); + ensure( coords != nullptr ); ensure_equals( coords->getSize(), size ); LinearRingPtr lr = factory_->createLinearRing(coords); - ensure( "createLinearRing() returned null pointer.", lr != 0 ); + ensure( "createLinearRing() returned null pointer.", lr != nullptr ); ensure( "createLinearRing() returned empty point.", !lr->isEmpty() ); ensure( lr->isSimple() ); - ensure( lr->getCoordinate() != 0 ); + ensure( lr->getCoordinate() != nullptr ); // TODO - mloskot - is this correct? //ensure( !lr->isValid() ); @@ -506,7 +506,7 @@ ensure_equals( lr->getArea(), 0.0 ); // FREE MEMORY - factory_->destroyGeometry(lr); + factory_->destroyGeometry(lr); } // Test of createLinearRing(const CoordinateSequence& coordinates) const @@ -522,8 +522,8 @@ ensure( "createLinearRing() returned empty point.", !lr->isEmpty() ); ensure_equals( lr->getNumPoints(), size ); ensure( lr->isSimple() ); - ensure( lr->getCoordinate() != 0 ); - + ensure( lr->getCoordinate() != nullptr ); + ensure_equals( lr->getGeometryTypeId(), geos::geom::GEOS_LINEARRING ); ensure_equals( lr->getDimension(), geos::geom::Dimension::L ); ensure_equals( lr->getBoundaryDimension(), geos::geom::Dimension::False ); @@ -541,30 +541,30 @@ void object::test<15>() { LineStringPtr line = factory_->createLineString(); - - ensure( "createLineString() returned null pointer.", line != 0 ); + + ensure( "createLineString() returned null pointer.", line != nullptr ); ensure( "createLineString() returned non-empty point.", line->isEmpty() ); ensure( line->isSimple() ); ensure( line->isValid() ); - ensure( line->getCentroid() == 0 ); - + ensure( line->getCentroid() == nullptr ); + // TODO - mloskot - waiting for some decision // http://geos.osgeo.org/pipermail/geos-devel/2006-March/002006.html //ensure( line->getCoordinate() == 0 ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = line->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = line->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = line->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); @@ -586,14 +586,14 @@ { const std::size_t size = 5; CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(size); - ensure( coords != 0 ); + ensure( coords != nullptr ); ensure_equals( coords->getSize(), size ); LineStringPtr line = factory_->createLineString(coords); - ensure( "createLineString() returned null pointer.", line != 0 ); + ensure( "createLineString() returned null pointer.", line != nullptr ); ensure( "createLineString() returned empty point.", !line->isEmpty() ); ensure( line->isSimple() ); - ensure( line->getCoordinate() != 0 ); + ensure( line->getCoordinate() != nullptr ); // TODO - mloskot - is this correct? //ensure( line->isValid() ); @@ -606,7 +606,7 @@ ensure_equals( line->getArea(), 0.0 ); // FREE MEMORY - factory_->destroyGeometry(line); + factory_->destroyGeometry(line); } // Test of createLineString(const CoordinateSequence& coordinates) const @@ -622,8 +622,8 @@ ensure( "createLineString() returned empty point.", !line->isEmpty() ); ensure_equals( line->getNumPoints(), size ); ensure( line->isSimple() ); - ensure( line->getCoordinate() != 0 ); - + ensure( line->getCoordinate() != nullptr ); + ensure_equals( line->getGeometryTypeId(), geos::geom::GEOS_LINESTRING ); ensure_equals( line->getDimension(), geos::geom::Dimension::L ); ensure_equals( line->getBoundaryDimension(), geos::geom::Dimension::False ); @@ -641,17 +641,17 @@ { PolygonPtr poly = factory_->createPolygon(); - ensure( "createPolygon() returned null pointer.", poly != 0 ); + ensure( "createPolygon() returned null pointer.", poly != nullptr ); ensure( "createPolygon() returned non-empty point.", poly->isEmpty() ); ensure( poly->isSimple() ); ensure( poly->isValid() ); - ensure( poly->getCentroid() == 0 ); + ensure( poly->getCentroid() == nullptr ); // TODO - mloskot - waiting for some decision // http://geos.osgeo.org/pipermail/geos-devel/2006-March/002006.html //ensure( poly->getCoordinate() == 0 ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; // TODO - mloskot - waiting for resolution // http://geos.osgeo.org/pipermail/geos-devel/2006-March/002011.html //geo = poly->getEnvelope(); @@ -660,12 +660,12 @@ //factory_->destroyGeometry(geo); geo = poly->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = poly->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); @@ -690,7 +690,7 @@ // Create sequence of coordiantes CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(size); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->setAt(Coordinate(0, 10), 0); coords->setAt(Coordinate(5, 5), 1); coords->setAt(Coordinate(10, 5), 2); @@ -702,7 +702,7 @@ // Create exterior ring LinearRingPtr exterior = factory_->createLinearRing(coords); - ensure( "createLinearRing returned null pointer.", exterior != 0 ); + ensure( "createLinearRing returned null pointer.", exterior != nullptr ); ensure( "createLinearRing() returned empty point.", !exterior->isEmpty() ); ensure( exterior->isSimple() ); ensure_equals( exterior->getGeometryTypeId(), geos::geom::GEOS_LINEARRING ); @@ -713,8 +713,8 @@ ensure( exterior->getLength() != 0.0 ); // Create polygon - PolygonPtr poly = factory_->createPolygon(exterior, 0); - ensure( "createPolygon returned null pointer.", poly != 0 ); + PolygonPtr poly = factory_->createPolygon(exterior, nullptr); + ensure( "createPolygon returned null pointer.", poly != nullptr ); ensure( "createPolygon() returned empty point.", !poly->isEmpty() ); ensure( poly->isSimple() ); ensure_equals( poly->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); @@ -725,7 +725,7 @@ ensure( poly->getLength() != 0.0 ); // FREE MEMORY - factory_->destroyGeometry(poly); + factory_->destroyGeometry(poly); } // Test of createPolygon(const LinearRing& shell, const std::vector& holes) const @@ -739,7 +739,7 @@ // Create sequence of coordiantes CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(exteriorSize); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->setAt(Coordinate(0, 10), 0); coords->setAt(Coordinate(5, 5), 1); coords->setAt(Coordinate(10, 5), 2); @@ -751,7 +751,7 @@ // Create exterior ring LinearRingPtr exterior = factory_->createLinearRing(coords); - ensure( "createLinearRing returned null pointer.", exterior != 0 ); + ensure( "createLinearRing returned null pointer.", exterior != nullptr ); ensure( "createLinearRing() returned empty point.", !exterior->isEmpty() ); ensure( exterior->isSimple() ); ensure_equals( exterior->getGeometryTypeId(), geos::geom::GEOS_LINEARRING ); @@ -763,10 +763,10 @@ // Create collection of holes GeometryPtr geo = reader_.read(("LINEARRING(7 7, 12 7, 12 12, 7 12, 7 7)")); - ensure( geo != 0 ); + ensure( geo != nullptr ); LinearRingPtr hole = dynamic_cast(geo); - ensure( hole != 0 ); + ensure( hole != nullptr ); ensure( hole->isRing() ); ensure_equals( hole->getNumPoints(), interiorSize ); @@ -776,7 +776,7 @@ // Create polygon using copy ctor PolygonPtr poly = factory_->createPolygon((*exterior), holes); - ensure( "createPolygon returned null pointer.", poly != 0 ); + ensure( "createPolygon returned null pointer.", poly != nullptr ); ensure( "createPolygon() returned empty point.", !poly->isEmpty() ); ensure( poly->isSimple() ); ensure_equals( poly->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); @@ -808,22 +808,22 @@ { GeometryColPtr col = factory_->createGeometryCollection(); - ensure( "createGeometryCollection() returned null pointer.", col != 0 ); + ensure( "createGeometryCollection() returned null pointer.", col != nullptr ); ensure( col->isEmpty() ); ensure( col->isValid() ); try { ensure( !col->isSimple() ); - fail("IllegalArgumentException expected"); + fail("IllegalArgumentException expected"); } catch ( geos::util::IllegalArgumentException const& e ) { - const char* msg = e.what(); // ok - ensure( msg != 0 ); + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } - ensure( col->getCentroid() == 0 ); + ensure( col->getCentroid() == nullptr ); ensure_equals( col->getGeometryTypeId(), geos::geom::GEOS_GEOMETRYCOLLECTION ); ensure_equals( col->getDimension(), geos::geom::Dimension::False ); ensure_equals( col->getBoundaryDimension(), geos::geom::Dimension::False ); @@ -848,12 +848,12 @@ // Add single point Coordinate coord(x_, y_, z_); GeometryPtr point = factory_->createPoint(coord); - ensure( point != 0 ); + ensure( point != nullptr ); vec->push_back(point); // Add single LineString CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(3); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->setAt(Coordinate(0, 0), 0); coords->setAt(Coordinate(5, 5), 1); coords->setAt(Coordinate(10, 5), 2); @@ -863,7 +863,7 @@ // Create geometry collection GeometryColPtr col = factory_->createGeometryCollection(vec); - ensure( coords != 0 ); + ensure( coords != nullptr ); ensure_equals( col->getGeometryTypeId(), geos::geom::GEOS_GEOMETRYCOLLECTION ); ensure_equals( col->getNumGeometries(), 2u ); @@ -881,7 +881,7 @@ std::vector vec; - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = factory_->createPoint(coord); vec.push_back(geo); @@ -899,7 +899,7 @@ // Factory creates copy of the vec collection GeometryColPtr col = factory_->createGeometryCollection(vec); - ensure( col != 0 ); + ensure( col != nullptr ); ensure_equals( col->getGeometryTypeId() , geos::geom::GEOS_GEOMETRYCOLLECTION ); ensure_equals( col->getNumGeometries() , size ); @@ -919,13 +919,13 @@ { MultiPointPtr mp = factory_->createMultiPoint(); - ensure( "createMultiPoint() returned null pointer.", mp != 0 ); + ensure( "createMultiPoint() returned null pointer.", mp != nullptr ); ensure( "createMultiPoint() returned non-empty point.", mp->isEmpty() ); ensure( mp->isSimple() ); ensure( mp->isValid() ); - ensure( mp->getCentroid() == 0 ); + ensure( mp->getCentroid() == nullptr ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; // TODO - mloskot - waiting for resolution // http://geos.osgeo.org/pipermail/geos-devel/2006-March/002011.html @@ -935,12 +935,12 @@ //factory_->destroyGeometry(geo); geo = mp->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = mp->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); @@ -965,28 +965,28 @@ std::vector* vec = new std::vector(); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = factory_->createPoint(coord); - ensure( geo != 0 ); + ensure( geo != nullptr ); vec->push_back(geo); coord.x *= 2; coord.y *= 2; coord.z *= 2; geo = factory_->createPoint(coord); - ensure( geo != 0 ); + ensure( geo != nullptr ); vec->push_back(geo); coord.x *= 3; coord.y *= 3; coord.z *= 3; geo = factory_->createPoint(coord); - ensure( geo != 0 ); + ensure( geo != nullptr ); vec->push_back(geo); // Factory creates copy of the vec collection MultiPointPtr mp = factory_->createMultiPoint(vec); - ensure( mp != 0 ); + ensure( mp != nullptr ); ensure( mp->isValid() ); ensure( mp->isSimple() ); ensure_equals( mp->getNumGeometries(), size ); @@ -1006,7 +1006,7 @@ std::vector vec; - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = factory_->createPoint(coord); vec.push_back(geo); @@ -1024,7 +1024,7 @@ // Factory creates copy of the vec collection MultiPointPtr mp = factory_->createMultiPoint(vec); - ensure( mp != 0 ); + ensure( mp != nullptr ); ensure( mp->isValid() ); ensure( mp->isSimple() ); ensure_equals( mp->getNumGeometries(), size ); @@ -1055,12 +1055,12 @@ ensure_equals( coords.getSize(), size ); MultiPointPtr mp = factory_->createMultiPoint(coords); - ensure( mp != 0 ); + ensure( mp != nullptr ); ensure( mp->isValid() ); ensure( mp->isSimple() ); ensure_equals( mp->getNumGeometries(), size ); ensure_equals( mp->getGeometryTypeId(), geos::geom::GEOS_MULTIPOINT ); - + // FREE MEMORY factory_->destroyGeometry(mp); } @@ -1072,13 +1072,13 @@ { MultiLineStringPtr mls = factory_->createMultiLineString(); - ensure( "createMultiLineString() returned null pointer.", mls != 0 ); + ensure( "createMultiLineString() returned null pointer.", mls != nullptr ); ensure( "createMultiLineString() returned non-empty point.", mls->isEmpty() ); ensure( mls->isSimple() ); ensure( mls->isValid() ); - ensure( mls->getCentroid() == 0 ); + ensure( mls->getCentroid() == nullptr ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; // TODO - mloskot - waiting for resolution // http://geos.osgeo.org/pipermail/geos-devel/2006-March/002011.html @@ -1088,12 +1088,12 @@ //factory_->destroyGeometry(geo); geo = mls->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); geo = mls->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); @@ -1114,7 +1114,7 @@ void object::test<29>() { using geos::geom::Coordinate; - + const std::size_t size = 5; const std::size_t lineSize = 2; @@ -1122,9 +1122,9 @@ for (std::size_t i = 0; i < size; ++i) { - const std::size_t factor = i * i; + const double factor = static_cast(i * i); CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(lineSize); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->setAt(Coordinate(0. + factor, 0. + factor), 0); coords->setAt(Coordinate(5. + factor, 5. + factor), 1); ensure_equals( coords->getSize(), lineSize ); @@ -1133,14 +1133,14 @@ ensure( "createLineString() returned empty point.", !line->isEmpty() ); ensure_equals( line->getNumPoints(), lineSize ); ensure( line->isSimple() ); - ensure( line->getCoordinate() != 0 ); + ensure( line->getCoordinate() != nullptr ); ensure_equals( line->getGeometryTypeId(), geos::geom::GEOS_LINESTRING ); lines->push_back(line); } MultiLineStringPtr mls = factory_->createMultiLineString(lines); - ensure( mls != 0 ); + ensure( mls != nullptr ); // TODO - mloskot - why isValid() returns false? //ensure( mls->isValid() ); ensure_equals( mls->getNumGeometries(), size ); @@ -1156,7 +1156,7 @@ void object::test<30>() { using geos::geom::Coordinate; - + const std::size_t size = 5; const std::size_t lineSize = 2; @@ -1164,9 +1164,9 @@ for (std::size_t i = 0; i < size; ++i) { - const std::size_t factor = i * i; + const double factor = static_cast(i * i); CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(lineSize); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->setAt(Coordinate(0. + factor, 0. + factor), 0); coords->setAt(Coordinate(5. + factor, 5. + factor), 1); ensure_equals( coords->getSize(), lineSize ); @@ -1175,14 +1175,14 @@ ensure( "createLineString() returned empty point.", !line->isEmpty() ); ensure_equals( line->getNumPoints(), lineSize ); ensure( line->isSimple() ); - ensure( line->getCoordinate() != 0 ); + ensure( line->getCoordinate() != nullptr ); ensure_equals( line->getGeometryTypeId(), geos::geom::GEOS_LINESTRING ); lines.push_back(line); } MultiLineStringPtr mls = factory_->createMultiLineString(lines); - ensure( mls != 0 ); + ensure( mls != nullptr ); // TODO - mloskot - why isValid() returns false? //ensure( mls->isValid() ); ensure_equals( mls->getNumGeometries(), size ); @@ -1248,7 +1248,7 @@ template<> void object::test<36>() { - typedef std::auto_ptr GeometryAutoPtr; + typedef std::unique_ptr GeometryAutoPtr; typedef std::vector PointVect; const std::size_t size = 3; @@ -1256,7 +1256,7 @@ PointVect vec; - PointPtr geo = 0; + PointPtr geo = nullptr; geo = factory_->createPoint(coord); vec.push_back(geo); @@ -1274,7 +1274,7 @@ // Factory creates copy of the vec collection GeometryAutoPtr g = factory_->buildGeometry(vec.begin(), vec.end()); - ensure( g.get() != 0 ); + ensure( g.get() != nullptr ); ensure_equals( g->getGeometryTypeId(), geos::geom::GEOS_MULTIPOINT ); ensure_equals( g->getNumGeometries(), size ); diff -Nru geos-3.6.2/tests/unit/geom/IntersectionMatrixTest.cpp geos-3.7.1/tests/unit/geom/IntersectionMatrixTest.cpp --- geos-3.6.2/tests/unit/geom/IntersectionMatrixTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/IntersectionMatrixTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,12 +1,12 @@ -// +// // Test Suite for geos::geom::IntersectionMatrix class. -#include +#include // geos #include #include // std -#include +#include #include #include @@ -30,8 +30,8 @@ {} private: // Declare type as noncopyable - test_intersectionmatrix_data(const test_intersectionmatrix_data& other); - test_intersectionmatrix_data& operator=(const test_intersectionmatrix_data& rhs); + test_intersectionmatrix_data(const test_intersectionmatrix_data& other) = delete; + test_intersectionmatrix_data& operator=(const test_intersectionmatrix_data& rhs) = delete; }; typedef test_group group; @@ -58,7 +58,7 @@ { const std::string pattern("012*TF012"); geos::geom::IntersectionMatrix im(pattern); - + ensure_equals( im.toString(), pattern ); } @@ -68,7 +68,7 @@ void object::test<3>() { geos::geom::IntersectionMatrix copy(im_); - + ensure_equals( copy.toString(), im_.toString() ); } @@ -79,11 +79,11 @@ { const std::string pattern("012*TF012"); geos::geom::IntersectionMatrix examplar(pattern); - + ensure_equals( examplar.toString(), pattern ); geos::geom::IntersectionMatrix copy(examplar); - + ensure_equals( copy.toString(), examplar.toString() ); } @@ -94,14 +94,14 @@ { const int dummyAny = 999; ensure( im_.matches(dummyAny, '*') ); - + ensure( im_.matches(geos::geom::Dimension::P, '0') ); - + ensure( im_.matches(geos::geom::Dimension::True , 'T') ); ensure( !im_.matches(geos::geom::Dimension::False , 'T') ); ensure( !im_.matches(geos::geom::Dimension::DONTCARE , 'T') ); } - + // Test of matches(const std::string& requiredDimensionSymbols) template<> template<> @@ -140,7 +140,7 @@ const std::string pattern("012*TF012"); ensure( im_.matches(pattern, pattern) ); } - + // add(IntersectionMatrix *im) template<> template<> @@ -149,12 +149,12 @@ // Create local matrix const std::string pattern("012*TF012"); geos::geom::IntersectionMatrix im_local(pattern); - + ensure_equals( im_local.toString(), pattern ); - + // Add local matrix to the matrix with 'FFFFFFFFF' pattern im_local.add(&im_); - + // Check pattern of local matrix after addition const std::string pattern_result("012FFF012"); ensure_equals( im_local.toString(), pattern_result ); @@ -169,12 +169,12 @@ { // 'im_' is initialized with 'FFFFFFFFF' ensure_equals( im_.toString(), pattern_false_); - + // Do some changes and checks im_.set(0, 0, geos::geom::Dimension::P); - + ensure_equals( im_.toString(), "0FFFFFFFF" ); - + } // Test of set(const std::string& dimensionSymbols); @@ -184,10 +184,10 @@ { // 'im_' is initialized with 'FFFFFFFFF' ensure_equals( im_.toString(), pattern_false_); - + const std::string pattern("012*TF012"); im_.set(pattern); - + ensure_equals( im_.toString(), pattern); } @@ -198,7 +198,7 @@ { // 'im_' is initialized with 'FFFFFFFFF' ensure_equals( im_.toString(), pattern_false_); - + const std::string pattern("000000000"); im_.setAll(geos::geom::Dimension::P); @@ -212,7 +212,7 @@ { // 'im_' is initialized with 'FFFFFFFFF' ensure_equals( im_.toString(), pattern_false_); - + // 1. No change expected im_.setAtLeast(pattern_false_); ensure_equals( im_.toString(), pattern_false_); @@ -220,11 +220,11 @@ // 2. Set new pattern const std::string pattern_new("FT*012FT*"); const std::string pattern_expected("FFF012FFF"); - + im_.setAtLeast(pattern_new); ensure( im_.toString() != pattern_false_); ensure_equals( im_.toString(), pattern_expected); - + // 3. Set old pattern, no change expected im_.setAtLeast(pattern_false_); ensure_equals( im_.toString(), pattern_expected); @@ -240,11 +240,11 @@ // 1. No change expected im_.setAtLeast(0, 0, geos::geom::Dimension::False); - ensure_equals( im_.toString(), pattern_false_); - + ensure_equals( im_.toString(), pattern_false_); + // 2. Change is expected im_.setAtLeast(0, 0, geos::geom::Dimension::A); - ensure_equals( im_.toString(), "2FFFFFFFF"); + ensure_equals( im_.toString(), "2FFFFFFFF"); } @@ -261,7 +261,7 @@ ensure( im_.toString() != pattern_false_); ensure_equals( im_.get(0, 0), geos::geom::Dimension::A); } - + // Test of get(int row, int column) template<> template<> @@ -270,17 +270,17 @@ // Test on the original pattern 'FFFFFFFFF' of the 'im_' object ensure_equals( im_.toString(), pattern_false_); ensure_equals( im_.get(0, 0), geos::geom::Dimension::False ); - + // Change first value and test again im_.setAtLeast(0, 0, geos::geom::Dimension::A); ensure_equals( im_.get(0, 0), geos::geom::Dimension::A ); - + // Change last value and test again im_.setAtLeast(2, 2, geos::geom::Dimension::L); ensure_equals( im_.get(2, 2), geos::geom::Dimension::L ); } - + // Test of isContains() template<> template<> @@ -289,23 +289,23 @@ // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isContains() ); - + // 1. Test 'minimum' version of 'contains' matrix const std::string pattern_minimum("T*****FF*"); geos::geom::IntersectionMatrix minimum(pattern_minimum); ensure_equals( minimum.toString(), pattern_minimum ); ensure( minimum.isContains() ); - + // 2. Test other version of valid 'contains' matrix const std::string pattern_contains("T00000FF0"); geos::geom::IntersectionMatrix contains(pattern_contains); ensure_equals( contains.toString(), pattern_contains ); ensure( contains.isContains() ); - + // 3. Test 'not-contains' version of 'contains' matrix const std::string pattern_notcontains("T0F00F000"); geos::geom::IntersectionMatrix notcontains(pattern_notcontains); - ensure_equals( notcontains.toString(), pattern_notcontains ); + ensure_equals( notcontains.toString(), pattern_notcontains ); ensure( !notcontains.isContains() ); } @@ -315,15 +315,15 @@ void object::test<19>() { using geos::geom::Dimension; - + // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isCrosses(Dimension::L, Dimension::L) ); - + // P/L: dim(I(a) * I(b)) AND dim(I(a) * E(b)) im_.set("TFTFFFFFF"); ensure( im_.isCrosses(Dimension::P, Dimension::L) ); - + // L/P: dim(I(a) * I(b)) AND dim(I(a) * E(b)) im_.set("TFTFFFFFF"); ensure( !im_.isCrosses(Dimension::L, Dimension::P) ); @@ -331,11 +331,11 @@ // P/L: dim(I(a) * I(b)) AND dim(E(a) * I(b)) im_.set("TFFFFFTFF"); ensure( !im_.isCrosses(Dimension::P, Dimension::L) ); - + // L/P: dim(I(a) * I(b)) AND dim(E(a) * I(b)) im_.set("TFFFFFTFF"); ensure( im_.isCrosses(Dimension::L, Dimension::P) ); - + // L/L: dim(I(a) * I(b)) == 0 im_.set("0FFFFFFFF"); ensure( im_.isCrosses(Dimension::L, Dimension::L) ); @@ -349,17 +349,17 @@ template<> template<> void object::test<20>() - { + { // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( im_.isDisjoint() ); - + im_.set("FF*FF****"); ensure( im_.isDisjoint() ); - + im_.set("FF1FF2T*0"); ensure( im_.isDisjoint() ); - + im_.set("*F*FF****"); ensure( !im_.isDisjoint() ); } @@ -370,11 +370,11 @@ void object::test<21>() { using geos::geom::Dimension; - + // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isEquals(Dimension::L, Dimension::L) ); - + // Test geometries with all dimensions im_.set("0FFFFFFF2"); ensure( im_.isEquals(Dimension::P, Dimension::P) ); @@ -404,7 +404,7 @@ // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isIntersects() ); - + im_.set("FF*FF****"); ensure( !im_.isIntersects() ); im_.set("FF1FF2T*0"); @@ -419,7 +419,7 @@ void object::test<23>() { using geos::geom::Dimension; - + // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isEquals(Dimension::L, Dimension::L) ); @@ -448,17 +448,17 @@ void object::test<24>() { using geos::geom::Dimension; - + // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isTouches(Dimension::P, Dimension::P) ); - + im_.set("FT*******"); ensure( im_.isTouches(Dimension::P, Dimension::A) ); im_.set("FT*******"); ensure( im_.isTouches(Dimension::A, Dimension::P) ); im_.set("FT*******"); - ensure( !im_.isTouches(Dimension::P, Dimension::P)); + ensure( !im_.isTouches(Dimension::P, Dimension::P)); } // Test of isWithin() @@ -469,7 +469,7 @@ // Test on the FALSE matrix ensure_equals( im_.toString(), pattern_false_); ensure( !im_.isWithin() ); - + im_.set("T0F00F000"); ensure( im_.isWithin() ); im_.set("T00000FF0"); @@ -486,11 +486,11 @@ IntersectionMatrix input("012*TF012"); IntersectionMatrix transposed(input); - + // transpose() returns 'this' pointer to transposed object MatrixCPtr output = transposed.transpose(); - ensure( output != 0 ); - + ensure( output != nullptr ); + // TODO - mloskot - waiting for equality operators //ensure_equals( (*output), input ); diff -Nru geos-3.6.2/tests/unit/geom/LinearRingTest.cpp geos-3.7.1/tests/unit/geom/LinearRingTest.cpp --- geos-3.6.2/tests/unit/geom/LinearRingTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/LinearRingTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::LinearRing class. // tut -#include +#include // geos #include #include @@ -40,7 +40,7 @@ typedef geos::geom::LinearRing const* LinearRingCPtr; geos::geom::PrecisionModel pm_; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; geos::geom::LinearRing empty_ring_; @@ -54,7 +54,7 @@ ring_size_(7) { // Create non-empty LinearRing - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = reader_.read("LINEARRING(0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10)"); ring_ = dynamic_cast(geo); } @@ -66,8 +66,8 @@ private: // Declare type as noncopyable - test_linearring_data(const test_linearring_data& other); - test_linearring_data& operator=(const test_linearring_data& rhs); + test_linearring_data(const test_linearring_data& other) = delete; + test_linearring_data& operator=(const test_linearring_data& rhs) = delete; }; typedef test_group group; @@ -89,7 +89,7 @@ // Non-empty sequence of coordiantes const size_t size7 = 7; CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", coords != 0 ); + ensure( "sequence is null pointer.", coords != nullptr ); coords->add(Coordinate(0, 10)); coords->add(Coordinate(5, 5)); @@ -174,8 +174,8 @@ template<> void object::test<8>() { - GeometryPtr envelope = empty_ring_.getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = empty_ring_.getEnvelope(); + ensure( envelope != nullptr ); ensure( envelope->isEmpty() ); factory_->destroyGeometry(envelope); } @@ -185,8 +185,8 @@ template<> void object::test<9>() { - GeometryPtr boundary = empty_ring_.getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = empty_ring_.getBoundary(); + ensure( boundary != nullptr ); ensure( boundary->isEmpty() ); factory_->destroyGeometry(boundary); } @@ -196,8 +196,8 @@ template<> void object::test<10>() { - GeometryPtr hull = empty_ring_.convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = empty_ring_.convexHull(); + ensure( hull != nullptr ); ensure( hull->isEmpty() ); factory_->destroyGeometry(hull); } @@ -224,7 +224,7 @@ void object::test<13>() { ensure_equals( empty_ring_.getBoundaryDimension(), geos::geom::Dimension::False ); - } + } // Test of getNumPoints() for empty LinearRing template<> @@ -255,7 +255,7 @@ template<> void object::test<17>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure( !ring_->isEmpty() ); } @@ -264,9 +264,9 @@ template<> void object::test<18>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure( ring_->isClosed() ); - ensure( ring_->isRing() ); + ensure( ring_->isRing() ); } // Test of getEnvelope() for non-empty LinearRing @@ -274,10 +274,10 @@ template<> void object::test<19>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); - GeometryPtr envelope = ring_->getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = ring_->getEnvelope(); + ensure( envelope != nullptr ); ensure( !envelope->isEmpty() ); ensure_equals( envelope->getDimension(), geos::geom::Dimension::A ); @@ -290,10 +290,10 @@ template<> void object::test<20>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); - GeometryPtr boundary = ring_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = ring_->getBoundary(); + ensure( boundary != nullptr ); // OGC 05-126, Version: 1.1.0, Chapter 6.1.6 Curve ensure( "[OGC] The boundary of a closed Curve must be empty.", boundary->isEmpty() ); @@ -307,10 +307,10 @@ template<> void object::test<21>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); - GeometryPtr hull = ring_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = ring_->convexHull(); + ensure( hull != nullptr ); ensure( !hull->isEmpty() ); ensure_equals( hull->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); ensure_equals( hull->getDimension(), geos::geom::Dimension::A ); @@ -324,7 +324,7 @@ template<> void object::test<22>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure_equals( ring_->getGeometryTypeId(), geos::geom::GEOS_LINEARRING ); } @@ -333,7 +333,7 @@ template<> void object::test<23>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure_equals( ring_->getDimension(), geos::geom::Dimension::L ); } @@ -342,7 +342,7 @@ template<> void object::test<24>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure_equals( ring_->getBoundaryDimension(), geos::geom::Dimension::False ); } @@ -351,7 +351,7 @@ template<> void object::test<25>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure_equals( ring_->getNumPoints(), ring_size_ ); } @@ -360,7 +360,7 @@ template<> void object::test<26>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure( ring_->getLength() != 0.0 ); const double tolerance = 0.0001; @@ -374,7 +374,7 @@ template<> void object::test<27>() { - ensure(ring_ != 0); + ensure(ring_ != nullptr); ensure_equals( ring_->getArea(), 0.0 ); } @@ -386,7 +386,7 @@ try { GeometryPtr geo = reader_.read("LINEARRING(0 0, 5 5, 10 10)"); - ensure(geo != 0); + ensure(geo != nullptr); // FREE TESTED LINEARRING factory_->destroyGeometry(geo); @@ -395,8 +395,8 @@ } catch (geos::util::IllegalArgumentException const& e) { - const char* msg = e.what(); // ok - ensure( msg != 0 ); + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } } @@ -409,10 +409,10 @@ { // Construct LinearRing self-intersecting in point (5,5) GeometryPtr geo = reader_.read("LINEARRING(0 0, 5 5, 10 10, 15 5, 5 5, 0 10)"); - ensure(geo != 0); + ensure(geo != nullptr); LinearRingPtr ring = dynamic_cast(geo); - ensure(ring != 0); + ensure(ring != nullptr); ensure( !ring->isValid() ); @@ -423,17 +423,17 @@ } catch (geos::util::IllegalArgumentException const& e) { - const char* msg = e.what(); // ok - ensure( msg != 0 ); + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } } - + // Test of getGeometryType() for non-empty LinearRing template<> template<> void object::test<30>() { - ensure( ring_ != 0 ); + ensure( ring_ != nullptr ); const std::string type("LinearRing"); ensure_equals( ring_->getGeometryType(), type ); diff -Nru geos-3.6.2/tests/unit/geom/LineSegmentTest.cpp geos-3.7.1/tests/unit/geom/LineSegmentTest.cpp --- geos-3.6.2/tests/unit/geom/LineSegmentTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/LineSegmentTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::LineSegment class. -#include +#include // geos #include #include @@ -60,7 +60,7 @@ template<> template<> void object::test<2>() - { + { ensure( h1.isHorizontal() ); v1.reverse(); ensure( h1.isHorizontal() ); diff -Nru geos-3.6.2/tests/unit/geom/LineStringTest.cpp geos-3.7.1/tests/unit/geom/LineStringTest.cpp --- geos-3.6.2/tests/unit/geom/LineStringTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/LineStringTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::LineString class. // tut -#include +#include #include // geos #include @@ -15,7 +15,7 @@ #include #include #include -// std +// std #include #include #include @@ -30,12 +30,12 @@ struct test_linestring_data { // Typedefs used as short names by test cases - typedef std::auto_ptr LineStringAutoPtr; + typedef std::unique_ptr LineStringAutoPtr; geos::geom::PrecisionModel pm_; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; - + LineStringPtr empty_line_; test_linestring_data() @@ -44,13 +44,13 @@ , reader_(factory_.get()) , empty_line_(factory_->createLineString(new geos::geom::CoordinateArraySequence())) { - assert(0 != empty_line_); + assert(nullptr != empty_line_); } - + ~test_linestring_data() { factory_->destroyGeometry(empty_line_); - empty_line_ = 0; + empty_line_ = nullptr; } }; @@ -72,7 +72,7 @@ // Empty sequence of coordiantes CoordArrayPtr pseq = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", pseq != 0 ); + ensure( "sequence is null pointer.", pseq != nullptr ); // Create empty linstring instance LineStringAutoPtr ls(factory_->createLineString(pseq)); @@ -93,8 +93,8 @@ const size_t size3 = 3; CoordArrayPtr pseq = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", pseq != 0 ); - + ensure( "sequence is null pointer.", pseq != nullptr ); + pseq->add(Coordinate(0, 0, 0)); pseq->add(Coordinate(5, 5, 5)); pseq->add(Coordinate(10, 10, 10)); @@ -111,19 +111,19 @@ ensure( !ls->isClosed() ); ensure( !ls->isRing() ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = ls->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = ls->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = ls->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); @@ -142,11 +142,11 @@ void object::test<3>() { // Single-element sequence of coordiantes - CoordArrayPtr pseq = 0; + CoordArrayPtr pseq = nullptr; try { pseq = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", pseq != 0 ); + ensure( "sequence is null pointer.", pseq != nullptr ); pseq->add(geos::geom::Coordinate(0, 0, 0)); ensure_equals( pseq->size(), 1u ); @@ -161,7 +161,7 @@ //delete pseq; const char* msg = e.what(); // OK - ensure( msg != 0 ); + ensure( msg != nullptr ); } } @@ -176,8 +176,8 @@ const size_t size = 3; CoordArrayPtr pseq = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", pseq != 0 ); - + ensure( "sequence is null pointer.", pseq != nullptr ); + pseq->add(Coordinate(0, 0, 0)); pseq->add(Coordinate(5, 5, 5)); pseq->add(Coordinate(10, 10, 10)); @@ -190,7 +190,7 @@ // Create copy LineStringAutoPtr copy(dynamic_cast(examplar->clone())); - ensure( 0 != copy.get() ); + ensure( nullptr != copy.get() ); ensure( !copy->isEmpty() ); ensure( copy->isSimple() ); @@ -199,19 +199,19 @@ ensure( !copy->isClosed() ); ensure( !copy->isRing() ); - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = copy->getEnvelope(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = copy->getBoundary(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); geo = copy->convexHull(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( !geo->isEmpty() ); factory_->destroyGeometry(geo); @@ -237,9 +237,9 @@ template<> void object::test<6>() { - GeometryPtr geo = 0; - geo = empty_line_->getEnvelope(); - ensure( geo != 0 ); + GeometryPtr geo = nullptr; + geo = empty_line_->getEnvelope(); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); } @@ -249,9 +249,9 @@ template<> void object::test<7>() { - GeometryPtr geo = 0; - geo = empty_line_->getBoundary(); - ensure( geo != 0 ); + GeometryPtr geo = nullptr; + geo = empty_line_->getBoundary(); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); } @@ -261,9 +261,9 @@ template<> void object::test<8>() { - GeometryPtr geo = 0; - geo = empty_line_->convexHull(); - ensure( geo != 0 ); + GeometryPtr geo = nullptr; + geo = empty_line_->convexHull(); + ensure( geo != nullptr ); ensure( geo->isEmpty() ); factory_->destroyGeometry(geo); } @@ -290,7 +290,7 @@ void object::test<11>() { ensure_equals( empty_line_->getBoundaryDimension(), geos::geom::Dimension::P ); - } + } // Test of getNumPoints() for empty linestring template<> @@ -322,16 +322,16 @@ void object::test<15>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); LineStringPtr line = dynamic_cast(geo); - ensure(line != 0); + ensure(line != nullptr); ensure( !line->isEmpty() ); ensure( !line->isClosed() ); ensure( !line->isRing() ); ensure( line->getCoordinateDimension() == 2 ); - + // FREE TESTED LINESTRING factory_->destroyGeometry(line); } @@ -342,13 +342,13 @@ void object::test<16>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); LineStringPtr line = dynamic_cast(geo); - ensure(line != 0); - - GeometryPtr envelope = line->getEnvelope(); - ensure( envelope != 0 ); + ensure(line != nullptr); + + GeometryPtr envelope = line->getEnvelope(); + ensure( envelope != nullptr ); ensure( !envelope->isEmpty() ); ensure_equals( envelope->getDimension(), geos::geom::Dimension::A ); @@ -364,13 +364,13 @@ void object::test<17>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); LineStringPtr line = dynamic_cast(geo); - ensure(line != 0); - - GeometryPtr boundary = line->getBoundary(); - ensure( boundary != 0 ); + ensure(line != nullptr); + + GeometryPtr boundary = line->getBoundary(); + ensure( boundary != nullptr ); ensure( !boundary->isEmpty() ); ensure_equals( boundary->getGeometryTypeId(), geos::geom::GEOS_MULTIPOINT ); ensure_equals( boundary->getDimension(), geos::geom::Dimension::P ); @@ -386,13 +386,13 @@ void object::test<18>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); LineStringPtr line = dynamic_cast(geo); - ensure(line != 0); - - GeometryPtr hull = line->convexHull(); - ensure( hull != 0 ); + ensure(line != nullptr); + + GeometryPtr hull = line->convexHull(); + ensure( hull != nullptr ); ensure( !hull->isEmpty() ); ensure_equals( hull->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); ensure_equals( hull->getDimension(), geos::geom::Dimension::A ); @@ -408,7 +408,7 @@ void object::test<19>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure_equals( geo->getGeometryTypeId(), geos::geom::GEOS_LINESTRING ); @@ -422,7 +422,7 @@ void object::test<20>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure_equals( geo->getDimension(), geos::geom::Dimension::L ); @@ -436,7 +436,7 @@ void object::test<21>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure_equals( geo->getBoundaryDimension(), geos::geom::Dimension::P ); @@ -451,7 +451,7 @@ { const size_t size = 4; GeometryPtr geo = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure_equals( geo->getNumPoints(), size ); @@ -467,7 +467,7 @@ const double tolerance = 0.0001; const double expected = 2 * 14.142135600000000; GeometryPtr geo = reader_.read("LINESTRING (0 0, 10 10, 20 0)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->getLength() != 0.0 ); @@ -484,7 +484,7 @@ void object::test<24>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 10 10, 20 0)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure_equals( geo->getArea(), 0.0 ); @@ -498,7 +498,7 @@ void object::test<25>() { GeometryPtr geo = reader_.read("LINESTRING (0 0, 10 10, 20 0)"); - ensure( geo != 0 ); + ensure( geo != nullptr ); const std::string type("LineString"); ensure_equals( geo->getGeometryType(), type ); diff -Nru geos-3.6.2/tests/unit/geom/LocationTest.cpp geos-3.7.1/tests/unit/geom/LocationTest.cpp --- geos-3.6.2/tests/unit/geom/LocationTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/LocationTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::Location class. // tut -#include +#include // geos #include #include @@ -65,18 +65,18 @@ { using geos::geom::Location; - try + try { Location::toLocationSymbol(101); Location::toLocationSymbol(-101); - - fail("IllegalArgumentException expected"); + + fail("IllegalArgumentException expected"); + } + catch ( geos::util::IllegalArgumentException const& e ) + { + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } - catch ( geos::util::IllegalArgumentException const& e ) - { - const char* msg = e.what(); // ok - ensure( msg != 0 ); - } } } // namespace tut diff -Nru geos-3.6.2/tests/unit/geom/MultiLineStringTest.cpp geos-3.7.1/tests/unit/geom/MultiLineStringTest.cpp --- geos-3.6.2/tests/unit/geom/MultiLineStringTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/MultiLineStringTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::MultiLineString class. -#include +#include // geos #include diff -Nru geos-3.6.2/tests/unit/geom/MultiPointTest.cpp geos-3.7.1/tests/unit/geom/MultiPointTest.cpp --- geos-3.6.2/tests/unit/geom/MultiPointTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/MultiPointTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::MultiPoint class. // tut -#include +#include #include // geos #include @@ -24,11 +24,11 @@ // Common data used by tests struct test_multipoint_data { - typedef std::auto_ptr MultiPointAutoPtr; + typedef std::unique_ptr MultiPointAutoPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; MultiPointAutoPtr empty_mp_; @@ -42,7 +42,7 @@ , empty_mp_(factory_->createMultiPoint()), mp_size_(5) { // Create non-empty MultiPoint - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = reader_.read("MULTIPOINT(0 0, 5 5, 10 10, 15 15, 20 20)"); mp_ = dynamic_cast(geo); } @@ -54,8 +54,8 @@ private: // Declare type as noncopyable - test_multipoint_data(const test_multipoint_data& other); - test_multipoint_data& operator=(const test_multipoint_data& rhs); + test_multipoint_data(const test_multipoint_data& other) = delete; + test_multipoint_data& operator=(const test_multipoint_data& rhs) = delete; }; typedef test_group group; @@ -74,11 +74,11 @@ { const size_t size0 = 0; MultiPointAutoPtr mp(factory_->createMultiPoint()); - + ensure( mp->isEmpty() ); ensure( mp->isSimple() ); ensure( mp->isValid() ); - ensure( mp->getCentroid() == 0 ); + ensure( mp->getCentroid() == nullptr ); ensure_equals( mp->getNumPoints(), size0 ); ensure_equals( mp->getNumGeometries(), size0 ); } @@ -90,12 +90,12 @@ { const size_t size0 = 0; MultiPointAutoPtr copy(dynamic_cast(empty_mp_->clone())); - ensure( 0 != copy.get() ); - + ensure( nullptr != copy.get() ); + ensure( copy->isEmpty() ); ensure( copy->isSimple() ); ensure( copy->isValid() ); - ensure( copy->getCentroid() == 0 ); + ensure( copy->getCentroid() == nullptr ); ensure_equals( copy->getNumPoints(), size0 ); ensure_equals( copy->getNumGeometries(), size0 ); } @@ -112,7 +112,7 @@ ensure( mp->isEmpty() ); ensure( mp->isSimple() ); ensure( mp->isValid() ); - ensure( mp->getCentroid() == 0 ); + ensure( mp->getCentroid() == nullptr ); ensure_equals( mp->getNumPoints(), size0 ); ensure_equals( mp->getNumGeometries(), size0 ); @@ -149,8 +149,8 @@ template<> void object::test<7>() { - GeometryPtr envelope = empty_mp_->getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = empty_mp_->getEnvelope(); + ensure( envelope != nullptr ); ensure( envelope->isEmpty() ); factory_->destroyGeometry(envelope); } @@ -160,8 +160,8 @@ template<> void object::test<8>() { - GeometryPtr boundary = empty_mp_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = empty_mp_->getBoundary(); + ensure( boundary != nullptr ); ensure( boundary->isEmpty() ); factory_->destroyGeometry(boundary); } @@ -171,8 +171,8 @@ template<> void object::test<9>() { - GeometryPtr hull = empty_mp_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = empty_mp_->convexHull(); + ensure( hull != nullptr ); ensure( hull->isEmpty() ); factory_->destroyGeometry(hull); } @@ -208,7 +208,7 @@ void object::test<13>() { ensure_equals( empty_mp_->getBoundaryDimension(), geos::geom::Dimension::False ); - } + } // Test of getNumPoints() for empty MultiPoint template<> @@ -239,7 +239,7 @@ template<> void object::test<17>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure( !mp_->isEmpty() ); } @@ -248,10 +248,10 @@ template<> void object::test<18>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); - GeometryPtr envelope = mp_->getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = mp_->getEnvelope(); + ensure( envelope != nullptr ); ensure( !envelope->isEmpty() ); ensure_equals( envelope->getDimension(), geos::geom::Dimension::A ); @@ -264,10 +264,10 @@ template<> void object::test<19>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); - GeometryPtr boundary = mp_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = mp_->getBoundary(); + ensure( boundary != nullptr ); // OGC 05-126, Version: 1.1.0, Chapter 6.1.5 MultiPoint ensure( "[OGC] The boundary of a MultiPoint is the empty set.", boundary->isEmpty() ); @@ -281,10 +281,10 @@ template<> void object::test<20>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); - GeometryPtr hull = mp_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = mp_->convexHull(); + ensure( hull != nullptr ); ensure( !hull->isEmpty() ); ensure_equals( hull->getGeometryTypeId(), geos::geom::GEOS_LINESTRING ); ensure_equals( hull->getDimension(), geos::geom::Dimension::L ); @@ -298,7 +298,7 @@ template<> void object::test<21>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure_equals( mp_->getGeometryTypeId(), geos::geom::GEOS_MULTIPOINT ); } @@ -307,7 +307,7 @@ template<> void object::test<22>() { - ensure( mp_ != 0 ); + ensure( mp_ != nullptr ); const std::string type("MultiPoint"); ensure_equals( mp_->getGeometryType(), type ); @@ -318,7 +318,7 @@ template<> void object::test<23>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure_equals( mp_->getDimension(), geos::geom::Dimension::P ); } @@ -327,7 +327,7 @@ template<> void object::test<24>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure_equals( mp_->getBoundaryDimension(), geos::geom::Dimension::False ); } @@ -336,7 +336,7 @@ template<> void object::test<25>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure_equals( mp_->getNumPoints(), mp_size_ ); } @@ -345,7 +345,7 @@ template<> void object::test<26>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure_equals( mp_->getLength(), 0.0 ); } @@ -354,7 +354,7 @@ template<> void object::test<27>() { - ensure(mp_ != 0); + ensure(mp_ != nullptr); ensure_equals( mp_->getArea(), 0.0 ); } @@ -366,7 +366,7 @@ try { GeometryPtr geo = reader_.read("MULTIPOINT(0 0, 5)"); - ensure(geo != 0); + ensure(geo != nullptr); // FREE TESTED LINEARRING factory_->destroyGeometry(geo); @@ -375,8 +375,8 @@ } catch (geos::io::ParseException const& e) { - const char* msg = e.what(); // ok - ensure( msg != 0 ); + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } } diff -Nru geos-3.6.2/tests/unit/geom/MultiPolygonTest.cpp geos-3.7.1/tests/unit/geom/MultiPolygonTest.cpp --- geos-3.6.2/tests/unit/geom/MultiPolygonTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/MultiPolygonTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::MultiPolygon class. -#include +#include // geos #include diff -Nru geos-3.6.2/tests/unit/geom/PointTest.cpp geos-3.7.1/tests/unit/geom/PointTest.cpp --- geos-3.6.2/tests/unit/geom/PointTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/PointTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::Point class. -#include +#include // geos #include #include @@ -30,16 +30,16 @@ typedef geos::geom::Coordinate const* CoordinateCPtr; typedef geos::geom::Geometry* GeometryPtr; - typedef std::auto_ptr GeometryAutoPtr; + typedef std::unique_ptr GeometryAutoPtr; typedef geos::geom::Geometry const* GeometryCPtr; typedef geos::geom::Point* PointPtr; - typedef std::auto_ptr PointAutoPtr; + typedef std::unique_ptr PointAutoPtr; typedef geos::geom::Point const* PointCPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; PointAutoPtr empty_point_; PointPtr point_; @@ -49,11 +49,11 @@ , reader_(factory_.get()), empty_point_(factory_->createPoint()) { // Create non-empty Point - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = reader_.read("POINT(1.234 5.678)"); point_ = dynamic_cast(geo); } - + ~test_point_data() { factory_->destroyGeometry(point_); @@ -85,15 +85,15 @@ { using geos::geom::Coordinate; using geos::geom::CoordinateArraySequence; - + CoordinateArraySequence* coords = new CoordinateArraySequence(); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->add(Coordinate(1.234, 5.678)); PointAutoPtr point(factory_->createPoint(coords)); ensure( !point->isEmpty() ); - - // currently the empty CoordinateArraySequence constructor + + // currently the empty CoordinateArraySequence constructor // produces a dimension 3 sequence. ensure( point->getCoordinateDimension() == 3 ); } @@ -107,11 +107,11 @@ using geos::geom::CoordinateArraySequence; // TODO - mloskot - temporary solution of Bug #89 - CoordinateArraySequence* coords = 0; + CoordinateArraySequence* coords = nullptr; try { coords = new CoordinateArraySequence(); - ensure( coords != 0 ); + ensure( coords != nullptr ); coords->add(Coordinate(1.234, 5.678)); coords->add(Coordinate(4.321, 8.765)); @@ -124,8 +124,8 @@ // TODO - mloskot - Bug #89: Possible memory leaks caused by Point constructor //delete coords; - const char* msg = e.what(); // ok - ensure( msg != 0 ); + const char* msg = e.what(); // ok + ensure( msg != nullptr ); } } @@ -167,8 +167,8 @@ template<> void object::test<8>() { - GeometryPtr envelope = empty_point_->getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = empty_point_->getEnvelope(); + ensure( envelope != nullptr ); ensure( envelope->isEmpty() ); factory_->destroyGeometry(envelope); } @@ -178,8 +178,8 @@ template<> void object::test<9>() { - GeometryPtr boundary = empty_point_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = empty_point_->getBoundary(); + ensure( boundary != nullptr ); ensure( boundary->isEmpty() ); factory_->destroyGeometry(boundary); } @@ -189,8 +189,8 @@ template<> void object::test<10>() { - GeometryPtr hull = empty_point_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = empty_point_->convexHull(); + ensure( hull != nullptr ); ensure( hull->isEmpty() ); factory_->destroyGeometry(hull); } @@ -226,7 +226,7 @@ void object::test<14>() { ensure_equals( empty_point_->getBoundaryDimension(), geos::geom::Dimension::False ); - } + } // Test of getNumPoints() for empty Point template<> @@ -281,8 +281,8 @@ template<> void object::test<21>() { - GeometryPtr envelope = point_->getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = point_->getEnvelope(); + ensure( envelope != nullptr ); ensure( !envelope->isEmpty() ); factory_->destroyGeometry(envelope); } @@ -292,8 +292,8 @@ template<> void object::test<22>() { - GeometryPtr boundary = point_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = point_->getBoundary(); + ensure( boundary != nullptr ); ensure( boundary->isEmpty() ); factory_->destroyGeometry(boundary); } @@ -303,8 +303,8 @@ template<> void object::test<23>() { - GeometryPtr hull = point_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = point_->convexHull(); + ensure( hull != nullptr ); ensure( !hull->isEmpty() ); factory_->destroyGeometry(hull); } @@ -340,7 +340,7 @@ void object::test<27>() { ensure_equals( empty_point_->getBoundaryDimension(), geos::geom::Dimension::False ); - } + } // Test of getNumPoints() for non-empty Point template<> @@ -383,10 +383,10 @@ { GeometryPtr p1 = reader_.read("POINT(1.234 5.678)"); GeometryPtr p2 = reader_.read("POINT(1.234 5.678)"); - + // WARNING! If test fails, memory leaks occur. ensure( p1->equals(p2) ); - + // FREE MEMORY factory_->destroyGeometry(p1); factory_->destroyGeometry(p2); @@ -399,10 +399,10 @@ { GeometryPtr p1 = reader_.read("POINT(1.23 5.67)"); GeometryPtr p2 = reader_.read("POINT(1.23 5.67)"); - + // WARNING! If test fails, memory leaks occur. ensure( p1->equals(p2) ); - + // FREE MEMORY factory_->destroyGeometry(p1); factory_->destroyGeometry(p2); @@ -415,10 +415,10 @@ { GeometryPtr p1 = reader_.read("POINT(1.235 5.678)"); GeometryPtr p2 = reader_.read("POINT(1.234 5.678)"); - + // WARNING! If test fails, memory leaks occur. ensure( !p1->equals(p2) ); - + // FREE MEMORY factory_->destroyGeometry(p1); factory_->destroyGeometry(p2); @@ -431,10 +431,10 @@ { GeometryPtr p1 = reader_.read("POINT(1.2334 5.678)"); GeometryPtr p2 = reader_.read("POINT(1.2333 5.678)"); - + // WARNING! If test fails, memory leaks occur. ensure( p1->equals(p2) ); - + // FREE MEMORY factory_->destroyGeometry(p1); factory_->destroyGeometry(p2); @@ -447,7 +447,7 @@ { GeometryPtr p1 = reader_.read("POINT(1.2334 5.678)"); GeometryPtr p2 = reader_.read("POINT(1.2335 5.678)"); - + // WARNING! If test fails, memory leaks occur. ensure( !p1->equals(p2) ); @@ -466,7 +466,7 @@ // WARNING! If test fails, memory leaks occur. ensure( !p1->equals(p2) ); - + // FREE MEMORY factory_->destroyGeometry(p1); factory_->destroyGeometry(p2); @@ -479,7 +479,7 @@ { GeometryPtr p1 = reader_.read("POINT(1.2324 5.678)"); GeometryPtr p2 = reader_.read("POINT EMPTY"); - + // WARNING! If test fails, memory leaks occur. ensure( !p1->equals(p2) ); diff -Nru geos-3.6.2/tests/unit/geom/PolygonTest.cpp geos-3.7.1/tests/unit/geom/PolygonTest.cpp --- geos-3.6.2/tests/unit/geom/PolygonTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/PolygonTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::geom::Polygon class. -#include +#include #include // geos #include @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include @@ -31,31 +32,31 @@ struct test_polygon_data { // Typedefs used as short names by test cases - typedef std::auto_ptr GeometryAutoPtr; - typedef std::auto_ptr PolygonAutoPtr; + typedef std::unique_ptr GeometryAutoPtr; + typedef std::unique_ptr PolygonAutoPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; PolygonAutoPtr empty_poly_; PolygonPtr poly_; const size_t poly_size_; - test_polygon_data() + test_polygon_data() : pm_(1) , factory_(GeometryFactory::create(&pm_, 0)) , reader_(factory_.get()) , empty_poly_(factory_->createPolygon()), poly_size_(7) { // Create non-empty LinearRing - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = reader_.read("POLYGON((0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10))"); poly_ = dynamic_cast(geo); } - ~test_polygon_data() + ~test_polygon_data() { // FREE MEMORY factory_->destroyGeometry(poly_); @@ -63,8 +64,8 @@ private: // Declare type as noncopyable - test_polygon_data(const test_polygon_data& other); - test_polygon_data& operator=(const test_polygon_data& rhs); + test_polygon_data(const test_polygon_data& other) = delete; + test_polygon_data& operator=(const test_polygon_data& rhs) = delete; }; typedef test_group group; @@ -86,7 +87,7 @@ // Create non-empty Coordiantes sequence for Exterior LinearRing const size_t size = 7; CoordArrayPtr coords = new geos::geom::CoordinateArraySequence(); - ensure( "sequence is null pointer.", coords != 0 ); + ensure( "sequence is null pointer.", coords != nullptr ); coords->add(Coordinate(0, 10)); coords->add(Coordinate(5, 5)); @@ -110,11 +111,11 @@ // Exterior (clone is required here because Polygon takes ownership) GeometryPtr geo = ring.clone(); LinearRingPtr exterior = dynamic_cast(geo); - + // Create non-empty Polygon //geos::geom::Polygon poly(exterior, 0, &factory_); - PolygonAutoPtr poly(factory_->createPolygon(exterior, 0)); - + PolygonAutoPtr poly(factory_->createPolygon(exterior, nullptr)); + ensure( !poly->isEmpty() ); ensure( poly->isSimple() ); ensure( poly->isValid() ); @@ -186,8 +187,8 @@ template<> void object::test<7>() { - GeometryPtr boundary = empty_poly_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = empty_poly_->getBoundary(); + ensure( boundary != nullptr ); ensure( boundary->isEmpty() ); factory_->destroyGeometry(boundary); } @@ -197,8 +198,8 @@ template<> void object::test<8>() { - GeometryPtr hull = empty_poly_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = empty_poly_->convexHull(); + ensure( hull != nullptr ); ensure( hull->isEmpty() ); factory_->destroyGeometry(hull); } @@ -225,7 +226,7 @@ void object::test<11>() { ensure_equals( empty_poly_->getBoundaryDimension(), geos::geom::Dimension::L ); - } + } // Test of getNumPoints() for empty Polygon template<> @@ -250,13 +251,13 @@ { ensure_equals( empty_poly_->getArea(), 0.0 ); } - + // Test of isEmpty() for non-empty Polygon template<> template<> void object::test<15>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure( !poly_->isEmpty() ); } @@ -265,10 +266,10 @@ template<> void object::test<17>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); - GeometryPtr envelope = poly_->getEnvelope(); - ensure( envelope != 0 ); + GeometryPtr envelope = poly_->getEnvelope(); + ensure( envelope != nullptr ); ensure( !envelope->isEmpty() ); ensure_equals( envelope->getDimension(), geos::geom::Dimension::A ); @@ -281,10 +282,10 @@ template<> void object::test<18>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); - GeometryPtr boundary = poly_->getBoundary(); - ensure( boundary != 0 ); + GeometryPtr boundary = poly_->getBoundary(); + ensure( boundary != nullptr ); // OGC 05-126, Version: 1.1.0, Chapter 6.1.10 Surface ensure( "[OGC] The boundary of Polygin is the set of closed Curves.", !boundary->isEmpty() ); @@ -298,10 +299,10 @@ template<> void object::test<19>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); - GeometryPtr hull = poly_->convexHull(); - ensure( hull != 0 ); + GeometryPtr hull = poly_->convexHull(); + ensure( hull != nullptr ); ensure( !hull->isEmpty() ); ensure_equals( hull->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); ensure_equals( hull->getDimension(), geos::geom::Dimension::A ); @@ -315,7 +316,7 @@ template<> void object::test<20>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure_equals( poly_->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); } @@ -324,7 +325,7 @@ template<> void object::test<21>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure_equals( poly_->getDimension(), geos::geom::Dimension::A ); } @@ -333,7 +334,7 @@ template<> void object::test<22>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure_equals( poly_->getBoundaryDimension(), geos::geom::Dimension::L ); } @@ -342,7 +343,7 @@ template<> void object::test<23>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure_equals( poly_->getNumPoints(), poly_size_ ); } @@ -351,7 +352,7 @@ template<> void object::test<24>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure( poly_->getLength() != 0.0 ); const double tolerance = 0.0001; @@ -365,20 +366,20 @@ template<> void object::test<25>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure( poly_->getArea() != 0.0 ); } - + // Test of getCoordinates() for non-empty Polygon template<> template<> void object::test<26>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); // Caller takes ownership of 'coords' CoordSeqPtr coords = poly_->getCoordinates(); - ensure( coords != 0 ); + ensure( coords != nullptr ); ensure( !coords->isEmpty() ); ensure_equals( coords->getSize(), poly_->getNumPoints() ); @@ -391,10 +392,10 @@ template<> void object::test<27>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); GeometryPtr geo = poly_->clone(); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure( geo->equals(poly_) ); factory_->destroyGeometry(geo); @@ -405,10 +406,10 @@ template<> void object::test<28>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); LineStringCPtr ring = poly_->getExteriorRing(); - ensure( ring != 0 ); + ensure( ring != nullptr ); ensure( ring->isRing() ); ensure_equals( ring->getNumPoints(), poly_size_ ); } @@ -418,7 +419,7 @@ template<> void object::test<29>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); ensure_equals( poly_->getNumInteriorRing(), 0u ); } @@ -429,17 +430,17 @@ { const size_t holesNum = 1; - GeometryPtr geo = 0; + GeometryPtr geo = nullptr; geo = reader_.read("POLYGON ((0 0, 100 0, 100 100, 0 100, 0 0), (1 1, 1 10, 10 10, 10 1, 1 1) )"); - ensure( geo != 0 ); + ensure( geo != nullptr ); ensure_equals( geo->getGeometryTypeId(), geos::geom::GEOS_POLYGON ); - + PolygonPtr poly = dynamic_cast(geo); - ensure( poly != 0 ); + ensure( poly != nullptr ); ensure_equals( poly->getNumInteriorRing(), holesNum ); LineStringCPtr interior = poly->getInteriorRingN(0); - ensure( interior != 0 ); + ensure( interior != nullptr ); ensure( interior->isRing() ); ensure_equals( interior->getGeometryTypeId(), geos::geom::GEOS_LINEARRING ); @@ -452,11 +453,11 @@ template<> void object::test<31>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); // "POLYGON((0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10))" CoordinateCPtr coord = poly_->getCoordinate(); - ensure( coord != 0 ); + ensure( coord != nullptr ); ensure_equals( coord->x, 0 ); ensure_equals( coord->y, 10 ); } @@ -466,11 +467,11 @@ template<> void object::test<32>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); // "POLYGON((0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10))" CoordSeqPtr coords = poly_->getCoordinates(); - ensure( coords != 0 ); + ensure( coords != nullptr ); ensure_equals( coords->getSize(), poly_size_ ); // Check first and last coordinates @@ -491,7 +492,7 @@ template<> void object::test<33>() { - ensure( poly_ != 0 ); + ensure( poly_ != nullptr ); const std::string type("Polygon"); ensure_equals( poly_->getGeometryType(), type ); @@ -501,16 +502,16 @@ template<> template<> void object::test<34>() - { + { PointPtr point = empty_poly_->getCentroid(); - ensure( point == 0 ); + ensure( point == nullptr ); } // Test of Geometry::getCentroid(Coordinate& ret) const for empty Polygon template<> template<> void object::test<35>() - { + { geos::geom::Coordinate centroid; bool isCentroid = empty_poly_->getCentroid(centroid); ensure( !isCentroid ); @@ -522,7 +523,7 @@ void object::test<36>() { PointPtr point = poly_->getCentroid(); - ensure( point != 0 ); + ensure( point != nullptr ); ensure( !point->isEmpty() ); ensure_equals( point->getGeometryTypeId(), geos::geom::GEOS_POINT ); @@ -534,7 +535,7 @@ template<> template<> void object::test<37>() - { + { geos::geom::Coordinate centroid; bool isCentroid = poly_->getCentroid(centroid); ensure( isCentroid ); @@ -547,12 +548,12 @@ { // First centroid PointPtr point = poly_->getCentroid(); - ensure( point != 0 ); + ensure( point != nullptr ); ensure( !point->isEmpty() ); ensure_equals( point->getGeometryTypeId(), geos::geom::GEOS_POINT ); CoordinateCPtr pointCoord = point->getCoordinate(); - ensure( pointCoord != 0 ); + ensure( pointCoord != nullptr ); geos::geom::Coordinate pointCentr(*pointCoord); // FREE MEMORY factory_->destroyGeometry(point); @@ -566,5 +567,16 @@ ensure_equals( "Check Polygon::getCentroid() functions.", coordCentr, pointCentr ); } + // Test of Geometry::buffer(0) with convex polygon + template<> + template<> + void object::test<39>() + { + std::unique_ptr gBuffer(poly_->buffer(0)); + ensure_not(gBuffer->isEmpty()); + ensure(gBuffer->isValid()); + ensure_equals(gBuffer->getGeometryTypeId(), geos::geom::GEOS_POLYGON); + ensure(gBuffer->getNumPoints() == poly_->getNumPoints()); + } } // namespace tut diff -Nru geos-3.6.2/tests/unit/geom/PrecisionModelTest.cpp geos-3.7.1/tests/unit/geom/PrecisionModelTest.cpp --- geos-3.6.2/tests/unit/geom/PrecisionModelTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/PrecisionModelTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::PrecisionModel class. // tut -#include +#include // geos #include #include @@ -25,9 +25,9 @@ double x2, double y2) { Coordinate p(x1, y1); - + pm.makePrecise(p); - + Coordinate pPrecise(x2, y2); ensure(p.equals2D(pPrecise)); } diff -Nru geos-3.6.2/tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp geos-3.7.1/tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp --- geos-3.6.2/tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/prep/PreparedGeometryFactoryTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::prep::PreparedGeometryFactory class. // tut -#include +#include #include // geos #include @@ -31,25 +31,25 @@ GeometryPtr g_; PreparedGeometryPtr pg_; geos::geom::PrecisionModel pm_; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; test_preparedgeometryfactory_data() - : g_(0), pg_(0), pm_(1.0) + : g_(nullptr), pg_(nullptr), pm_(1.0) , factory_(GeometryFactory::create(&pm_)) , reader_(factory_.get()) { - assert(0 == g_); - assert(0 == pg_); + assert(nullptr == g_); + assert(nullptr == pg_); } - + ~test_preparedgeometryfactory_data() { // FREE MEMORY per test case prep::PreparedGeometryFactory::destroy(pg_); factory_->destroyGeometry(g_); - pg_ = 0; - g_ = 0; + pg_ = nullptr; + g_ = nullptr; } }; @@ -79,7 +79,7 @@ { try { - GeometryPtr nullgeom = 0; // intentionally nullptr + GeometryPtr nullgeom = nullptr; // intentionally nullptr prep::PreparedGeometryFactory::prepare(nullgeom); @@ -88,7 +88,7 @@ catch (geos::util::IllegalArgumentException const& e) { const char* msg = e.what(); // ok - ensure( msg != 0 ); + ensure( msg != nullptr ); } } @@ -99,7 +99,7 @@ { try { - GeometryPtr nullgeom = 0; // intentionally nullptr + GeometryPtr nullgeom = nullptr; // intentionally nullptr prep::PreparedGeometryFactory pgf; pgf.create(nullgeom); @@ -109,7 +109,7 @@ catch (geos::util::IllegalArgumentException const& e) { const char* msg = e.what(); // ok - ensure( msg != 0 ); + ensure( msg != nullptr ); } } @@ -119,10 +119,10 @@ void object::test<4>() { g_ = factory_->createEmptyGeometry(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } @@ -133,26 +133,26 @@ void object::test<5>() { g_ = factory_->createEmptyGeometry(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare empty POINT template<> template<> void object::test<6>() { g_ = factory_->createPoint(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -162,25 +162,25 @@ void object::test<7>() { g_ = factory_->createPoint(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } - + // Test prepare empty LINESTRING template<> template<> void object::test<8>() { g_ = factory_->createLineString(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } @@ -191,25 +191,25 @@ void object::test<9>() { g_ = factory_->createLineString(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare empty POLYGON template<> template<> void object::test<10>() { g_ = factory_->createPolygon(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -219,26 +219,26 @@ void object::test<11>() { g_ = factory_->createPolygon(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare empty MULTIPOINT template<> template<> void object::test<12>() { g_ = factory_->createMultiPoint(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -248,26 +248,26 @@ void object::test<13>() { g_ = factory_->createMultiPoint(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare empty MULTILINESTRING template<> template<> void object::test<14>() { g_ = factory_->createMultiLineString(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -277,26 +277,26 @@ void object::test<15>() { g_ = factory_->createMultiLineString(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare empty MULTIPOLYGON template<> template<> void object::test<16>() { g_ = factory_->createMultiPolygon(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -306,12 +306,12 @@ void object::test<17>() { g_ = factory_->createMultiPolygon(); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -321,26 +321,26 @@ void object::test<18>() { g_ = reader_.read("POINT(1.234 5.678)"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test create non-empty POINT template<> template<> void object::test<19>() { g_ = reader_.read("POINT(1.234 5.678)"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -350,84 +350,84 @@ void object::test<20>() { g_ = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } - + // Test create non-empty LINESTRING template<> template<> void object::test<21>() { g_ = reader_.read("LINESTRING (0 0, 5 5, 10 5, 10 10)"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare non-empty LINESTRING template<> template<> void object::test<22>() { g_ = reader_.read("POLYGON((0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10))"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } - + // Test create non-empty LINESTRING template<> template<> void object::test<23>() { g_ = reader_.read("POLYGON((0 10, 5 5, 10 5, 15 10, 10 15, 5 15, 0 10))"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare non-empty MULTIPOINT template<> template<> void object::test<24>() { g_ = reader_.read("MULTIPOINT(0 0, 5 5, 10 10, 15 15, 20 20)"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test create non-empty MULTIPOINT template<> template<> void object::test<25>() { g_ = reader_.read("MULTIPOINT(0 0, 5 5, 10 10, 15 15, 20 20)"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } @@ -437,55 +437,55 @@ void object::test<26>() { g_ = reader_.read("MULTILINESTRING ((20 120, 120 20), (20 20, 120 120))"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } - + // Test create non-empty MULTILINESTRING template<> template<> void object::test<27>() { g_ = reader_.read("MULTILINESTRING ((20 120, 120 20), (20 20, 120 120))"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } - + // Test prepare non-empty POLYGON template<> template<> void object::test<28>() { g_ = reader_.read("MULTIPOLYGON(((0 0, 10 0, 10 10, 0 10, 0 0),(2 2, 2 6, 6 4, 2 2)),((60 60, 60 50, 70 40, 60 60)))"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + pg_ = prep::PreparedGeometryFactory::prepare(g_); - ensure( 0 != pg_ ); + ensure( nullptr != pg_ ); ensure_equals_geometry( g_, pg_ ); } - + // Test create non-empty POLYGON template<> template<> void object::test<29>() { g_ = reader_.read("MULTIPOLYGON(((0 0, 10 0, 10 10, 0 10, 0 0),(2 2, 2 6, 6 4, 2 2)),((60 60, 60 50, 70 40, 60 60)))"); - ensure( 0 != g_ ); - + ensure( nullptr != g_ ); + prep::PreparedGeometryFactory pgf; pg_ = pgf.create(g_); - ensure( 0 != pg_ ); - + ensure( nullptr != pg_ ); + ensure_equals_geometry( g_, pg_ ); } diff -Nru geos-3.6.2/tests/unit/geom/TriangleTest.cpp geos-3.7.1/tests/unit/geom/TriangleTest.cpp --- geos-3.6.2/tests/unit/geom/TriangleTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/TriangleTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::Triangle class. // tut -#include +#include // geos #include #include @@ -57,7 +57,7 @@ void object::test<2>() { geos::geom::Triangle abc(a, b, c); - + ensure_equals( abc.p0, a ); ensure_equals( abc.p1, b ); ensure_equals( abc.p2, c ); @@ -108,7 +108,7 @@ { geos::geom::Coordinate center; geos::geom::Triangle abc(a, b, c); - + // Expected: ~4.2426406871192857 abc.inCentre(center); // 1e-16 fails sometimes @@ -121,7 +121,7 @@ template<> template<> void object::test<6>() - { + { using geos::geom::Triangle; using geos::geom::Coordinate; diff -Nru geos-3.6.2/tests/unit/geom/util/GeometryExtracterTest.cpp geos-3.7.1/tests/unit/geom/util/GeometryExtracterTest.cpp --- geos-3.6.2/tests/unit/geom/util/GeometryExtracterTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/geom/util/GeometryExtracterTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::geom::util::GeometryExtracter class. // tut -#include +#include // geos #include #include @@ -26,11 +26,11 @@ struct test_geometryextracter_data { geos::geom::PrecisionModel pm; - geos::geom::GeometryFactory::unique_ptr gf; + geos::geom::GeometryFactory::Ptr gf; geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; typedef geos::io::WKTReader WKTReader; typedef geos::io::WKTWriter WKTWriter; @@ -72,7 +72,7 @@ ensure_equals( lst_lines.size(), 0u ); } - // Test extraction of multiple types + // Test extraction of multiple types template<> template<> void object::test<2>() diff -Nru geos-3.6.2/tests/unit/geos_unit.cpp geos-3.7.1/tests/unit/geos_unit.cpp --- geos-3.6.2/tests/unit/geos_unit.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/geos_unit.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,4 +1,4 @@ -// +// // Test Suite Runner // #ifdef _MSC_VER @@ -8,9 +8,9 @@ #endif // tut -#include -#include -// geos +#include +#include +// geos #include // std #include @@ -83,7 +83,7 @@ tut::groupnames::difference_type d = std::distance(b, e); std::cout << "Registered " << d << " test groups:\n" << std::endl; - + while ( b != e ) { std::cout << " " << *b << std::endl; @@ -114,5 +114,5 @@ // XXX - mloskot - this should be removed in future! geos::io::Unload::Release(); - return (visi.all_ok() ? EXIT_SUCCESS : EXIT_FAILURE); + return (visi.all_ok() ? EXIT_SUCCESS : EXIT_FAILURE); } diff -Nru geos-3.6.2/tests/unit/index/quadtree/DoubleBitsTest.cpp geos-3.7.1/tests/unit/index/quadtree/DoubleBitsTest.cpp --- geos-3.6.2/tests/unit/index/quadtree/DoubleBitsTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/index/quadtree/DoubleBitsTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::index::quadtree::DoubleBits class. -#include +#include // geos #include diff -Nru geos-3.6.2/tests/unit/index/strtree/SIRtreeTest.cpp geos-3.7.1/tests/unit/index/strtree/SIRtreeTest.cpp --- geos-3.6.2/tests/unit/index/strtree/SIRtreeTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ geos-3.7.1/tests/unit/index/strtree/SIRtreeTest.cpp 2018-11-29 22:42:04.000000000 +0000 @@ -0,0 +1,34 @@ +#include +// geos +#include + +using namespace geos::index::strtree; + +namespace tut +{ + // dummy data, not used + struct test_sirtree_data {}; + + using group = test_group; + using object = group::object; + + group test_sirtree_group("geos::index::strtree::SIRtree"); + + // + // Test Cases + // + + // Make sure no memory is leaked. + // See https://trac.osgeo.org/geos/ticket/919 + template<> + template<> + void object::test<1>() + { + SIRtree t; + double value = 3; + t.insert(1, 5, &value); + } + + +} // namespace tut + diff -Nru geos-3.6.2/tests/unit/io/ByteOrderValuesTest.cpp geos-3.7.1/tests/unit/io/ByteOrderValuesTest.cpp --- geos-3.6.2/tests/unit/io/ByteOrderValuesTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/io/ByteOrderValuesTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// -// Test Suite for geos::io::ByteOrderValues +// +// Test Suite for geos::io::ByteOrderValues // tut -#include +#include // geos #include #include // for int64 @@ -31,11 +31,11 @@ // Test Cases // - // 1 - Read/write an int + // 1 - Read/write an int template<> template<> void object::test<1>() - { + { using geos::io::ByteOrderValues; unsigned char buf[4]; @@ -67,7 +67,7 @@ template<> template<> void object::test<2>() - { + { using geos::io::ByteOrderValues; unsigned char buf[8]; @@ -109,7 +109,7 @@ template<> template<> void object::test<3>() - { + { using geos::io::ByteOrderValues; unsigned char buf[8]; diff -Nru geos-3.6.2/tests/unit/io/WKBReaderTest.cpp geos-3.7.1/tests/unit/io/WKBReaderTest.cpp --- geos-3.6.2/tests/unit/io/WKBReaderTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/io/WKBReaderTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,12 +1,12 @@ -// -// Test Suite for geos::io::WKBReader +// +// Test Suite for geos::io::WKBReader // Uses geos::io::WKTReader to check correctness. // Uses geos::io::WKBWriter to check correctness. // Currently only tests 2D geoms of all (7) types. // Tests NDR and XDR input and output . // tut -#include +#include // geos #include #include @@ -31,13 +31,13 @@ struct test_wkbreader_data { geos::geom::PrecisionModel pm; - geos::geom::GeometryFactory::unique_ptr gf; + geos::geom::GeometryFactory::Ptr gf; geos::io::WKBReader wkbreader; geos::io::WKBWriter xdrwkbwriter; geos::io::WKBWriter ndrwkbwriter; geos::io::WKTReader wktreader; - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; test_wkbreader_data() : @@ -102,7 +102,7 @@ template<> template<> void object::test<1>() - { + { testInputOutput( // WKT @@ -121,7 +121,7 @@ template<> template<> void object::test<2>() - { + { testInputOutput( @@ -142,7 +142,7 @@ template<> template<> void object::test<3>() - { + { testInputOutput( // WKT @@ -162,7 +162,7 @@ template<> template<> void object::test<4>() - { + { testInputOutput( @@ -183,7 +183,7 @@ template<> template<> void object::test<5>() - { + { testInputOutput( @@ -204,7 +204,7 @@ template<> template<> void object::test<6>() - { + { testInputOutput( @@ -221,11 +221,11 @@ } - // 7 - Read a collection + // 7 - Read a collection template<> template<> void object::test<7>() - { + { testInputOutput( @@ -246,7 +246,7 @@ template<> template<> void object::test<8>() - { + { std::stringstream hexwkb; // NOTE: add a 0 to make valid hexwkb << "01010000000000000000000000000000000000000"; @@ -265,7 +265,7 @@ template<> template<> void object::test<9>() - { + { std::stringstream hexwkb; hexwkb << // SRID=4326;POINT(1 2 3) diff -Nru geos-3.6.2/tests/unit/io/WKBWriterTest.cpp geos-3.7.1/tests/unit/io/WKBWriterTest.cpp --- geos-3.6.2/tests/unit/io/WKBWriterTest.cpp 2016-12-01 14:50:32.000000000 +0000 +++ geos-3.7.1/tests/unit/io/WKBWriterTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::io::WKBWriter // tut -#include +#include // geos #include #include @@ -27,7 +27,7 @@ struct test_wkbwriter_data { geos::geom::PrecisionModel pm; - geos::geom::GeometryFactory::unique_ptr gf; + geos::geom::GeometryFactory::Ptr gf; geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; geos::io::WKBReader wkbreader; @@ -57,21 +57,21 @@ template<> template<> void object::test<1>() - { + { geos::geom::Geometry *geom = wktreader.read("POINT(-117 33)"); std::stringstream result_stream; wkbwriter.setOutputDimension( 3 ); wkbwriter.write( *geom, result_stream ); delete geom; - geom = NULL; + geom = nullptr; ensure( result_stream.str().length() == 21 ); result_stream.seekg( 0 ); geom = wkbreader.read( result_stream ); - ensure( geom != NULL ); + ensure( geom != nullptr ); ensure( geom->getCoordinateDimension() == 2 ); ensure( geom->getCoordinate()->x == -117.0 ); @@ -85,14 +85,14 @@ template<> template<> void object::test<2>() - { + { geos::geom::Geometry *geom = wktreader.read("POINT(-117 33 11)"); std::stringstream result_stream; wkbwriter.setOutputDimension( 3 ); wkbwriter.write( *geom, result_stream ); delete geom; - geom = NULL; + geom = nullptr; ensure( result_stream.str().length() == 29 ); @@ -111,14 +111,14 @@ template<> template<> void object::test<3>() - { + { geos::geom::Geometry *geom = wktreader.read("POINT(-117 33 11)"); std::stringstream result_stream; wkbwriter.setOutputDimension( 2 ); wkbwriter.write( *geom, result_stream ); delete geom; - geom = NULL; + geom = nullptr; ensure( result_stream.str().length() == 21 ); @@ -138,7 +138,7 @@ template<> template<> void object::test<4>() - { + { typedef geos::geom::Geometry Geom; typedef std::vector GeomVect; GeomVect *geoms = new GeomVect; diff -Nru geos-3.6.2/tests/unit/io/WKTReaderTest.cpp geos-3.7.1/tests/unit/io/WKTReaderTest.cpp --- geos-3.6.2/tests/unit/io/WKTReaderTest.cpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/io/WKTReaderTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,8 +1,8 @@ -// -// Test Suite for geos::io::WKTReader +// +// Test Suite for geos::io::WKTReader // tut -#include +#include // geos #include #include @@ -26,11 +26,11 @@ struct test_wktreader_data { geos::geom::PrecisionModel pm; - geos::geom::GeometryFactory::unique_ptr gf; + geos::geom::GeometryFactory::Ptr gf; geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; test_wktreader_data() : @@ -57,7 +57,7 @@ template<> template<> void object::test<1>() - { + { GeomPtr geom(wktreader.read("POINT(-117 33)")); geos::geom::CoordinateSequence *coords = geom->getCoordinates(); @@ -71,7 +71,7 @@ template<> template<> void object::test<2>() - { + { GeomPtr geom(wktreader.read("POINT(-117 33 10)")); geos::geom::CoordinateSequence *coords = geom->getCoordinates(); @@ -84,7 +84,7 @@ template<> template<> void object::test<3>() - { + { GeomPtr geom(wktreader.read("LINESTRING(-117 33, -116 34)")); geos::geom::CoordinateSequence *coords = geom->getCoordinates(); @@ -97,13 +97,13 @@ template<> template<> void object::test<4>() - { + { GeomPtr geom(wktreader.read("LINESTRING ZM (-117 33 2 3, -116 34 4 5)")); geos::geom::CoordinateSequence *coords = geom->getCoordinates(); ensure( coords->getDimension() == 3 ); - ensure_equals( wktwriter.write(geom.get()), + ensure_equals( wktwriter.write(geom.get()), std::string("LINESTRING Z (-117 33 2, -116 34 4)") ); delete coords; @@ -113,9 +113,9 @@ template<> template<> void object::test<5>() - { + { GeomPtr geom(wktreader.read("LineString (-117 33 2, -116 34 4)")); - ensure_equals( wktwriter.write(geom.get()), + ensure_equals( wktwriter.write(geom.get()), std::string("LINESTRING Z (-117 33 2, -116 34 4)") ); } @@ -123,7 +123,7 @@ template<> template<> void object::test<6>() - { + { GeomPtr geom; try { @@ -141,7 +141,7 @@ template<> template<> void object::test<7>() - { + { GeomPtr geom; try @@ -150,7 +150,7 @@ namespace ggm = geos::geom; namespace gio = geos::io; ggm::PrecisionModel pm(ggm::PrecisionModel::FLOATING); - ggm::GeometryFactory::unique_ptr gf = ggm::GeometryFactory::create(&pm); + ggm::GeometryFactory::Ptr gf = ggm::GeometryFactory::create(&pm); gio::WKTReader wktReader(gf.get()); const std::string str = " POINT (0 0) "; geom.reset(wktReader.read(str)); //HERE IT FAILS diff -Nru geos-3.6.2/tests/unit/io/WKTWriterTest.cpp geos-3.7.1/tests/unit/io/WKTWriterTest.cpp --- geos-3.6.2/tests/unit/io/WKTWriterTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/io/WKTWriterTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// -// Test Suite for geos::io::WKTWriter +// +// Test Suite for geos::io::WKTWriter // tut -#include +#include // geos #include #include @@ -27,10 +27,10 @@ typedef geos::geom::GeometryFactory GeometryFactory; typedef geos::io::WKTReader WKTReader; typedef geos::io::WKTWriter WKTWriter; - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; PrecisionModel pm; - GeometryFactory::unique_ptr gf; + GeometryFactory::Ptr gf; WKTReader wktreader; WKTWriter wktwriter; @@ -57,7 +57,7 @@ template<> template<> void object::test<1>() - { + { GeomPtr geom ( wktreader.read("POINT(-117 33)") ); std::string result; @@ -76,7 +76,7 @@ template<> template<> void object::test<2>() - { + { GeomPtr geom ( wktreader.read("POINT(-117.1234567 33.1234567)") ); std::string result; @@ -91,12 +91,12 @@ ensure_equals( result , "POINT (-117.12 33.12)" ); } - + // 3 - Test 3D generation from a 3D geometry. template<> template<> void object::test<3>() - { + { GeomPtr geom ( wktreader.read("POINT Z (-117 33 120)") ); std::string result; @@ -114,12 +114,12 @@ ensure_equals( result, std::string("POINT (-117 33 120)") ); } - + // 4 - Test 2D generation from a 3D geometry. template<> template<> void object::test<4>() - { + { GeomPtr geom ( wktreader.read("POINT(-117 33 120)") ); std::string result; @@ -132,19 +132,19 @@ ensure_equals( result, std::string("POINT (-117 33)") ); } - // 5 - Test negative number of digits in precision model + // 5 - Test negative number of digits in precision model template<> template<> void object::test<5>() - { + { PrecisionModel pm3(0.001); - GeometryFactory::unique_ptr gf3(GeometryFactory::create(&pm3)); + GeometryFactory::Ptr gf3(GeometryFactory::create(&pm3)); WKTReader wktreader3(gf3.get()); GeomPtr geom ( wktreader3.read("POINT(123456 654321)") ); std::string result = wktwriter.write( geom.get() ); ensure_equals( result, std::string("POINT (123000 654000)") ); } - + } // namespace tut diff -Nru geos-3.6.2/tests/unit/io/WriterTest.cpp geos-3.7.1/tests/unit/io/WriterTest.cpp --- geos-3.6.2/tests/unit/io/WriterTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/io/WriterTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::io::Writer // tut -#include +#include // geos #include // std @@ -37,7 +37,7 @@ template<> template<> void object::test<1>() - { + { geos::io::Writer writer; writer.write("Hello "); @@ -48,7 +48,7 @@ template<> template<> void object::test<2>() - { + { geos::io::Writer writer; writer.reserve(512); @@ -60,7 +60,7 @@ template<> template<> void object::test<3>() - { + { geos::io::Writer writer; writer.reserve(1); @@ -72,7 +72,7 @@ template<> template<> void object::test<4>() - { + { geos::io::Writer writer; writer.reserve(512); diff -Nru geos-3.6.2/tests/unit/linearref/LengthIndexedLineTest.cpp geos-3.7.1/tests/unit/linearref/LengthIndexedLineTest.cpp --- geos-3.6.2/tests/unit/linearref/LengthIndexedLineTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/linearref/LengthIndexedLineTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Ported from JTS junit/linearref/AbstractIndexedLineTestCase.java r466 // and junit/linearref/LengthIndexedLineTestCase.java r466 -#include +#include #include // geos #include @@ -10,8 +10,8 @@ #include #include #include -#include // required for use in auto_ptr -#include +#include // required for use in unique_ptr +#include #include #include @@ -21,8 +21,8 @@ #include #include -using namespace geos::geom; -using namespace geos::linearref; +using namespace geos::geom; +using namespace geos::linearref; using namespace std; /** @@ -30,7 +30,7 @@ */ namespace tut { -typedef auto_ptr GeomPtr; +typedef unique_ptr GeomPtr; static const double TOLERANCE_DIST = 0.001; struct test_lengthindexedline_data @@ -40,40 +40,40 @@ { writer.setTrim(true); } - + geos::io::WKTReader reader; geos::io::WKTWriter writer; - + void checkExpected(Geometry* result, string const& expected) { GeomPtr subLine(reader.read(expected)); checkExpected(result, subLine.get()); } - + void checkExpected(Geometry* result, const Geometry* expected) { bool isEqual = result->equalsExact(expected, 1.0e-5); ensure_equals("Expect: "+writer.write(expected)+" Obtained: "+writer.write(result), isEqual, true); } - + void runIndicesOfThenExtract(string const& inputStr, string const& subLineStr) { GeomPtr input(reader.read(inputStr)); GeomPtr subLine(reader.read(subLineStr)); GeomPtr result(indicesOfThenExtract(input.get(), subLine.get())); - + checkExpected(result.get(), subLine.get()); } - + bool indexOfAfterCheck(Geometry* linearGeom, Coordinate testPt) { LengthIndexedLine indexedLine(linearGeom); - + // check locations are consecutive double loc1 = indexedLine.indexOf(testPt); double loc2 = indexedLine.indexOfAfter(testPt, loc1); if (loc2 <= loc1) return false; - + // check extracted points are the same as the input Coordinate pt1 = indexedLine.extractPoint(loc1); Coordinate pt2 = indexedLine.extractPoint(loc2); @@ -240,7 +240,7 @@ template<> void object::test<10>() { - runIndexOfAfterTest("LINESTRING (0 0, 0 10, 10 10, 10 0, 0 0)", + runIndexOfAfterTest("LINESTRING (0 0, 0 10, 10 10, 10 0, 0 0)", "POINT (0 0)"); } @@ -249,7 +249,7 @@ template<> void object::test<11>() { - runIndexOfAfterTest("LINESTRING (0 0, 0 60, 50 60, 50 20, -20 20)", + runIndexOfAfterTest("LINESTRING (0 0, 0 60, 50 60, 50 20, -20 20)", "POINT (0 20)"); } @@ -382,7 +382,7 @@ double projIndex = indexedLine.project(Coordinate(5, 5)); Coordinate projPt = indexedLine.extractPoint(projIndex); // System.out.println(projPt); - ensure(projPt.equals3D(Coordinate(5, 5, 5))); + ensure(projPt.equals3D(Coordinate(5, 5, 5))); } /** @@ -445,12 +445,12 @@ - + #if 0 template<> template<> -void object::test<28>() +void object::test<28>() { GeomPtr linearGeom(reader.read( @@ -469,6 +469,16 @@ ensure_equals(projPt, Coordinate(0, 2)); } #endif - + +template<> +template<> +void object::test<29>() +{ + GeomPtr linearGeom(reader.read("LINESTRING EMPTY")); + LengthIndexedLine indexedLine(linearGeom.get()); + Coordinate pt = indexedLine.extractPoint(100); + ensure(pt.isNull()); +} + } // namespace tut diff -Nru geos-3.6.2/tests/unit/Makefile.am geos-3.7.1/tests/unit/Makefile.am --- geos-3.6.2/tests/unit/Makefile.am 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/Makefile.am 2018-11-29 22:42:04.000000000 +0000 @@ -1,5 +1,5 @@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # AUTOMAKE_OPTIONS = subdir-objects @@ -47,6 +47,7 @@ algorithm/CGAlgorithms/signedAreaTest.cpp \ algorithm/ConvexHullTest.cpp \ algorithm/distance/DiscreteHausdorffDistanceTest.cpp \ + algorithm/distance/DiscreteFrechetDistanceTest.cpp \ algorithm/MinimumDiameterTest.cpp \ algorithm/PointLocatorTest.cpp \ algorithm/RobustLineIntersectionTest.cpp \ @@ -78,6 +79,7 @@ geom/TriangleTest.cpp \ geom/util/GeometryExtracterTest.cpp \ index/quadtree/DoubleBitsTest.cpp \ + index/strtree/SIRtreeTest.cpp \ io/ByteOrderValuesTest.cpp \ io/WKBReaderTest.cpp \ io/WKBWriterTest.cpp \ @@ -129,11 +131,15 @@ capi/GEOSVoronoiDiagramTest.cpp \ capi/GEOSGeomFromWKBTest.cpp \ capi/GEOSGeomToWKTTest.cpp \ + capi/GEOSGeom_extentTest.cpp \ capi/GEOSGeom_setPrecisionTest.cpp \ capi/GEOSGetCentroidTest.cpp \ + capi/GEOSCAPIDefinesTest.cpp \ capi/GEOSContainsTest.cpp \ capi/GEOSConvexHullTest.cpp \ capi/GEOSDistanceTest.cpp \ + capi/GEOSHausdorffDistanceTest.cpp \ + capi/GEOSFrechetDistanceTest.cpp \ capi/GEOSEqualsTest.cpp \ capi/GEOSInterruptTest.cpp \ capi/GEOSIntersectsTest.cpp \ @@ -160,9 +166,11 @@ capi/GEOSSTRtreeTest.cpp \ capi/GEOSRelateBoundaryNodeRuleTest.cpp \ capi/GEOSRelatePatternMatchTest.cpp \ + capi/GEOSReverseTest.cpp \ capi/GEOSUnaryUnionTest.cpp \ capi/GEOSisValidDetailTest.cpp \ - capi/GEOSisClosedTest.cpp + capi/GEOSisClosedTest.cpp \ + capi/GEOSInterpolateTest.cpp noinst_HEADERS = \ utility.h diff -Nru geos-3.6.2/tests/unit/Makefile.in geos-3.7.1/tests/unit/Makefile.in --- geos-3.6.2/tests/unit/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/unit/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,7 @@ @SET_MAKE@ # -# This file is part of project GEOS (http://trac.osgeo.org/geos/) +# This file is part of project GEOS (http://trac.osgeo.org/geos/) # VPATH = @srcdir@ @@ -99,6 +99,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -125,6 +128,7 @@ algorithm/CGAlgorithms/signedAreaTest.$(OBJEXT) \ algorithm/ConvexHullTest.$(OBJEXT) \ algorithm/distance/DiscreteHausdorffDistanceTest.$(OBJEXT) \ + algorithm/distance/DiscreteFrechetDistanceTest.$(OBJEXT) \ algorithm/MinimumDiameterTest.$(OBJEXT) \ algorithm/PointLocatorTest.$(OBJEXT) \ algorithm/RobustLineIntersectionTest.$(OBJEXT) \ @@ -150,6 +154,7 @@ geom/TriangleTest.$(OBJEXT) \ geom/util/GeometryExtracterTest.$(OBJEXT) \ index/quadtree/DoubleBitsTest.$(OBJEXT) \ + index/strtree/SIRtreeTest.$(OBJEXT) \ io/ByteOrderValuesTest.$(OBJEXT) io/WKBReaderTest.$(OBJEXT) \ io/WKBWriterTest.$(OBJEXT) io/WKTReaderTest.$(OBJEXT) \ io/WKTWriterTest.$(OBJEXT) io/WriterTest.$(OBJEXT) \ @@ -198,12 +203,16 @@ capi/GEOSVoronoiDiagramTest.$(OBJEXT) \ capi/GEOSGeomFromWKBTest.$(OBJEXT) \ capi/GEOSGeomToWKTTest.$(OBJEXT) \ + capi/GEOSGeom_extentTest.$(OBJEXT) \ capi/GEOSGeom_setPrecisionTest.$(OBJEXT) \ capi/GEOSGetCentroidTest.$(OBJEXT) \ + capi/GEOSCAPIDefinesTest.$(OBJEXT) \ capi/GEOSContainsTest.$(OBJEXT) \ capi/GEOSConvexHullTest.$(OBJEXT) \ - capi/GEOSDistanceTest.$(OBJEXT) capi/GEOSEqualsTest.$(OBJEXT) \ - capi/GEOSInterruptTest.$(OBJEXT) \ + capi/GEOSDistanceTest.$(OBJEXT) \ + capi/GEOSHausdorffDistanceTest.$(OBJEXT) \ + capi/GEOSFrechetDistanceTest.$(OBJEXT) \ + capi/GEOSEqualsTest.$(OBJEXT) capi/GEOSInterruptTest.$(OBJEXT) \ capi/GEOSIntersectsTest.$(OBJEXT) \ capi/GEOSIntersectionTest.$(OBJEXT) \ capi/GEOSMinimumClearanceTest.$(OBJEXT) \ @@ -226,9 +235,11 @@ capi/GEOSSTRtreeTest.$(OBJEXT) \ capi/GEOSRelateBoundaryNodeRuleTest.$(OBJEXT) \ capi/GEOSRelatePatternMatchTest.$(OBJEXT) \ + capi/GEOSReverseTest.$(OBJEXT) \ capi/GEOSUnaryUnionTest.$(OBJEXT) \ capi/GEOSisValidDetailTest.$(OBJEXT) \ - capi/GEOSisClosedTest.$(OBJEXT) + capi/GEOSisClosedTest.$(OBJEXT) \ + capi/GEOSInterpolateTest.$(OBJEXT) geos_unit_OBJECTS = $(am_geos_unit_OBJECTS) geos_unit_DEPENDENCIES = $(top_builddir)/src/libgeos.la \ $(top_builddir)/capi/libgeos_c.la @@ -250,7 +261,136 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/geos_unit.Po \ + algorithm/$(DEPDIR)/AngleTest.Po \ + algorithm/$(DEPDIR)/ConvexHullTest.Po \ + algorithm/$(DEPDIR)/InteriorPointAreaTest.Po \ + algorithm/$(DEPDIR)/MinimumDiameterTest.Po \ + algorithm/$(DEPDIR)/PointLocatorTest.Po \ + algorithm/$(DEPDIR)/RobustLineIntersectionTest.Po \ + algorithm/$(DEPDIR)/RobustLineIntersectorTest.Po \ + algorithm/CGAlgorithms/$(DEPDIR)/computeOrientationTest.Po \ + algorithm/CGAlgorithms/$(DEPDIR)/isCCWTest.Po \ + algorithm/CGAlgorithms/$(DEPDIR)/isPointInRingTest.Po \ + algorithm/CGAlgorithms/$(DEPDIR)/signedAreaTest.Po \ + algorithm/distance/$(DEPDIR)/DiscreteFrechetDistanceTest.Po \ + algorithm/distance/$(DEPDIR)/DiscreteHausdorffDistanceTest.Po \ + capi/$(DEPDIR)/GEOSBufferTest.Po \ + capi/$(DEPDIR)/GEOSCAPIDefinesTest.Po \ + capi/$(DEPDIR)/GEOSClipByRectTest.Po \ + capi/$(DEPDIR)/GEOSContainsTest.Po \ + capi/$(DEPDIR)/GEOSConvexHullTest.Po \ + capi/$(DEPDIR)/GEOSCoordSeqTest.Po \ + capi/$(DEPDIR)/GEOSDelaunayTriangulationTest.Po \ + capi/$(DEPDIR)/GEOSDistanceTest.Po \ + capi/$(DEPDIR)/GEOSEqualsTest.Po \ + capi/$(DEPDIR)/GEOSFrechetDistanceTest.Po \ + capi/$(DEPDIR)/GEOSGeomFromWKBTest.Po \ + capi/$(DEPDIR)/GEOSGeomToWKTTest.Po \ + capi/$(DEPDIR)/GEOSGeom_create.Po \ + capi/$(DEPDIR)/GEOSGeom_extentTest.Po \ + capi/$(DEPDIR)/GEOSGeom_extractUniquePointsTest.Po \ + capi/$(DEPDIR)/GEOSGeom_setPrecisionTest.Po \ + capi/$(DEPDIR)/GEOSGetCentroidTest.Po \ + capi/$(DEPDIR)/GEOSHausdorffDistanceTest.Po \ + capi/$(DEPDIR)/GEOSInterpolateTest.Po \ + capi/$(DEPDIR)/GEOSInterruptTest.Po \ + capi/$(DEPDIR)/GEOSIntersectionTest.Po \ + capi/$(DEPDIR)/GEOSIntersectsTest.Po \ + capi/$(DEPDIR)/GEOSLineString_PointTest.Po \ + capi/$(DEPDIR)/GEOSMinimumClearanceTest.Po \ + capi/$(DEPDIR)/GEOSMinimumRectangleTest.Po \ + capi/$(DEPDIR)/GEOSMinimumWidthTest.Po \ + capi/$(DEPDIR)/GEOSNearestPointsTest.Po \ + capi/$(DEPDIR)/GEOSNodeTest.Po \ + capi/$(DEPDIR)/GEOSOffsetCurveTest.Po \ + capi/$(DEPDIR)/GEOSOrientationIndex.Po \ + capi/$(DEPDIR)/GEOSPointOnSurfaceTest.Po \ + capi/$(DEPDIR)/GEOSPolygonizer_getCutEdgesTest.Po \ + capi/$(DEPDIR)/GEOSPreparedGeometryTest.Po \ + capi/$(DEPDIR)/GEOSRelateBoundaryNodeRuleTest.Po \ + capi/$(DEPDIR)/GEOSRelatePatternMatchTest.Po \ + capi/$(DEPDIR)/GEOSReverseTest.Po \ + capi/$(DEPDIR)/GEOSSTRtreeTest.Po \ + capi/$(DEPDIR)/GEOSSharedPathsTest.Po \ + capi/$(DEPDIR)/GEOSSimplifyTest.Po \ + capi/$(DEPDIR)/GEOSSnapTest.Po \ + capi/$(DEPDIR)/GEOSUnaryUnionTest.Po \ + capi/$(DEPDIR)/GEOSUserDataTest.Po \ + capi/$(DEPDIR)/GEOSVoronoiDiagramTest.Po \ + capi/$(DEPDIR)/GEOSWithinTest.Po \ + capi/$(DEPDIR)/GEOSisClosedTest.Po \ + capi/$(DEPDIR)/GEOSisValidDetailTest.Po \ + geom/$(DEPDIR)/CoordinateArraySequenceFactoryTest.Po \ + geom/$(DEPDIR)/CoordinateArraySequenceTest.Po \ + geom/$(DEPDIR)/CoordinateListTest.Po \ + geom/$(DEPDIR)/CoordinateTest.Po \ + geom/$(DEPDIR)/DimensionTest.Po geom/$(DEPDIR)/EnvelopeTest.Po \ + geom/$(DEPDIR)/GeometryFactoryTest.Po \ + geom/$(DEPDIR)/IntersectionMatrixTest.Po \ + geom/$(DEPDIR)/LineSegmentTest.Po \ + geom/$(DEPDIR)/LineStringTest.Po \ + geom/$(DEPDIR)/LinearRingTest.Po \ + geom/$(DEPDIR)/LocationTest.Po \ + geom/$(DEPDIR)/MultiLineStringTest.Po \ + geom/$(DEPDIR)/MultiPointTest.Po \ + geom/$(DEPDIR)/MultiPolygonTest.Po geom/$(DEPDIR)/PointTest.Po \ + geom/$(DEPDIR)/PolygonTest.Po \ + geom/$(DEPDIR)/PrecisionModelTest.Po \ + geom/$(DEPDIR)/TriangleTest.Po \ + geom/Geometry/$(DEPDIR)/clone.Po \ + geom/Geometry/$(DEPDIR)/coversTest.Po \ + geom/Geometry/$(DEPDIR)/equalsTest.Po \ + geom/Geometry/$(DEPDIR)/isRectangleTest.Po \ + geom/Geometry/$(DEPDIR)/normalize.Po \ + geom/prep/$(DEPDIR)/PreparedGeometryFactoryTest.Po \ + geom/util/$(DEPDIR)/GeometryExtracterTest.Po \ + index/quadtree/$(DEPDIR)/DoubleBitsTest.Po \ + index/strtree/$(DEPDIR)/SIRtreeTest.Po \ + io/$(DEPDIR)/ByteOrderValuesTest.Po \ + io/$(DEPDIR)/WKBReaderTest.Po io/$(DEPDIR)/WKBWriterTest.Po \ + io/$(DEPDIR)/WKTReaderTest.Po io/$(DEPDIR)/WKTWriterTest.Po \ + io/$(DEPDIR)/WriterTest.Po \ + linearref/$(DEPDIR)/LengthIndexedLineTest.Po \ + noding/$(DEPDIR)/BasicSegmentStringTest.Po \ + noding/$(DEPDIR)/NodedSegmentStringTest.Po \ + noding/$(DEPDIR)/OrientedCoordinateArray.Po \ + noding/$(DEPDIR)/SegmentNodeTest.Po \ + noding/$(DEPDIR)/SegmentPointComparatorTest.Po \ + noding/snapround/$(DEPDIR)/HotPixelTest.Po \ + noding/snapround/$(DEPDIR)/MCIndexSnapRounderTest.Po \ + operation/$(DEPDIR)/IsSimpleOpTest.Po \ + operation/buffer/$(DEPDIR)/BufferBuilderTest.Po \ + operation/buffer/$(DEPDIR)/BufferOpTest.Po \ + operation/buffer/$(DEPDIR)/BufferParametersTest.Po \ + operation/distance/$(DEPDIR)/DistanceOpTest.Po \ + operation/intersection/$(DEPDIR)/RectangleIntersectionTest.Po \ + operation/linemerge/$(DEPDIR)/LineMergerTest.Po \ + operation/linemerge/$(DEPDIR)/LineSequencerTest.Po \ + operation/overlay/$(DEPDIR)/OverlayOpUnionTest.Po \ + operation/overlay/snap/$(DEPDIR)/GeometrySnapperTest.Po \ + operation/overlay/snap/$(DEPDIR)/LineStringSnapperTest.Po \ + operation/overlay/validate/$(DEPDIR)/FuzzyPointLocatorTest.Po \ + operation/overlay/validate/$(DEPDIR)/OffsetPointGeneratorTest.Po \ + operation/overlay/validate/$(DEPDIR)/OverlayResultValidatorTest.Po \ + operation/polygonize/$(DEPDIR)/PolygonizeTest.Po \ + operation/sharedpaths/$(DEPDIR)/SharedPathsOpTest.Po \ + operation/union/$(DEPDIR)/CascadedPolygonUnionTest.Po \ + operation/union/$(DEPDIR)/UnaryUnionOpTest.Po \ + operation/valid/$(DEPDIR)/IsValidTest.Po \ + operation/valid/$(DEPDIR)/ValidClosedRingTest.Po \ + operation/valid/$(DEPDIR)/ValidSelfTouchingRingFormingHoleTest.Po \ + precision/$(DEPDIR)/GeometryPrecisionReducerTest.Po \ + precision/$(DEPDIR)/SimpleGeometryPrecisionReducerTest.Po \ + simplify/$(DEPDIR)/DouglasPeuckerSimplifierTest.Po \ + simplify/$(DEPDIR)/TopologyPreservingSimplifierTest.Po \ + triangulate/$(DEPDIR)/DelaunayTest.Po \ + triangulate/$(DEPDIR)/VoronoiTest.Po \ + triangulate/quadedge/$(DEPDIR)/QuadEdgeSubdivisionTest.Po \ + triangulate/quadedge/$(DEPDIR)/QuadEdgeTest.Po \ + triangulate/quadedge/$(DEPDIR)/VertexTest.Po \ + util/$(DEPDIR)/UniqueCoordinateArrayFilterTest.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -545,6 +685,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -593,6 +734,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -613,6 +756,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -662,7 +806,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -711,6 +854,7 @@ algorithm/CGAlgorithms/signedAreaTest.cpp \ algorithm/ConvexHullTest.cpp \ algorithm/distance/DiscreteHausdorffDistanceTest.cpp \ + algorithm/distance/DiscreteFrechetDistanceTest.cpp \ algorithm/MinimumDiameterTest.cpp \ algorithm/PointLocatorTest.cpp \ algorithm/RobustLineIntersectionTest.cpp \ @@ -742,6 +886,7 @@ geom/TriangleTest.cpp \ geom/util/GeometryExtracterTest.cpp \ index/quadtree/DoubleBitsTest.cpp \ + index/strtree/SIRtreeTest.cpp \ io/ByteOrderValuesTest.cpp \ io/WKBReaderTest.cpp \ io/WKBWriterTest.cpp \ @@ -793,11 +938,15 @@ capi/GEOSVoronoiDiagramTest.cpp \ capi/GEOSGeomFromWKBTest.cpp \ capi/GEOSGeomToWKTTest.cpp \ + capi/GEOSGeom_extentTest.cpp \ capi/GEOSGeom_setPrecisionTest.cpp \ capi/GEOSGetCentroidTest.cpp \ + capi/GEOSCAPIDefinesTest.cpp \ capi/GEOSContainsTest.cpp \ capi/GEOSConvexHullTest.cpp \ capi/GEOSDistanceTest.cpp \ + capi/GEOSHausdorffDistanceTest.cpp \ + capi/GEOSFrechetDistanceTest.cpp \ capi/GEOSEqualsTest.cpp \ capi/GEOSInterruptTest.cpp \ capi/GEOSIntersectsTest.cpp \ @@ -824,9 +973,11 @@ capi/GEOSSTRtreeTest.cpp \ capi/GEOSRelateBoundaryNodeRuleTest.cpp \ capi/GEOSRelatePatternMatchTest.cpp \ + capi/GEOSReverseTest.cpp \ capi/GEOSUnaryUnionTest.cpp \ capi/GEOSisValidDetailTest.cpp \ - capi/GEOSisClosedTest.cpp + capi/GEOSisClosedTest.cpp \ + capi/GEOSInterpolateTest.cpp noinst_HEADERS = \ utility.h @@ -852,8 +1003,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -912,6 +1063,9 @@ algorithm/distance/DiscreteHausdorffDistanceTest.$(OBJEXT): \ algorithm/distance/$(am__dirstamp) \ algorithm/distance/$(DEPDIR)/$(am__dirstamp) +algorithm/distance/DiscreteFrechetDistanceTest.$(OBJEXT): \ + algorithm/distance/$(am__dirstamp) \ + algorithm/distance/$(DEPDIR)/$(am__dirstamp) algorithm/MinimumDiameterTest.$(OBJEXT): algorithm/$(am__dirstamp) \ algorithm/$(DEPDIR)/$(am__dirstamp) algorithm/PointLocatorTest.$(OBJEXT): algorithm/$(am__dirstamp) \ @@ -1006,6 +1160,14 @@ index/quadtree/DoubleBitsTest.$(OBJEXT): \ index/quadtree/$(am__dirstamp) \ index/quadtree/$(DEPDIR)/$(am__dirstamp) +index/strtree/$(am__dirstamp): + @$(MKDIR_P) index/strtree + @: > index/strtree/$(am__dirstamp) +index/strtree/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) index/strtree/$(DEPDIR) + @: > index/strtree/$(DEPDIR)/$(am__dirstamp) +index/strtree/SIRtreeTest.$(OBJEXT): index/strtree/$(am__dirstamp) \ + index/strtree/$(DEPDIR)/$(am__dirstamp) io/$(am__dirstamp): @$(MKDIR_P) io @: > io/$(am__dirstamp) @@ -1265,16 +1427,24 @@ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSGeomToWKTTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) +capi/GEOSGeom_extentTest.$(OBJEXT): capi/$(am__dirstamp) \ + capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSGeom_setPrecisionTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSGetCentroidTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) +capi/GEOSCAPIDefinesTest.$(OBJEXT): capi/$(am__dirstamp) \ + capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSContainsTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSConvexHullTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSDistanceTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) +capi/GEOSHausdorffDistanceTest.$(OBJEXT): capi/$(am__dirstamp) \ + capi/$(DEPDIR)/$(am__dirstamp) +capi/GEOSFrechetDistanceTest.$(OBJEXT): capi/$(am__dirstamp) \ + capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSEqualsTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSInterruptTest.$(OBJEXT): capi/$(am__dirstamp) \ @@ -1327,12 +1497,16 @@ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSRelatePatternMatchTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) +capi/GEOSReverseTest.$(OBJEXT): capi/$(am__dirstamp) \ + capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSUnaryUnionTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSisValidDetailTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) capi/GEOSisClosedTest.$(OBJEXT): capi/$(am__dirstamp) \ capi/$(DEPDIR)/$(am__dirstamp) +capi/GEOSInterpolateTest.$(OBJEXT): capi/$(am__dirstamp) \ + capi/$(DEPDIR)/$(am__dirstamp) geos_unit$(EXEEXT): $(geos_unit_OBJECTS) $(geos_unit_DEPENDENCIES) $(EXTRA_geos_unit_DEPENDENCIES) @rm -f geos_unit$(EXEEXT) @@ -1349,6 +1523,7 @@ -rm -f geom/prep/*.$(OBJEXT) -rm -f geom/util/*.$(OBJEXT) -rm -f index/quadtree/*.$(OBJEXT) + -rm -f index/strtree/*.$(OBJEXT) -rm -f io/*.$(OBJEXT) -rm -f linearref/*.$(OBJEXT) -rm -f noding/*.$(OBJEXT) @@ -1374,131 +1549,145 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geos_unit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/AngleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/ConvexHullTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/InteriorPointAreaTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/MinimumDiameterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/PointLocatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/RobustLineIntersectionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/RobustLineIntersectorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/computeOrientationTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/isCCWTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/isPointInRingTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/signedAreaTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@algorithm/distance/$(DEPDIR)/DiscreteHausdorffDistanceTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSBufferTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSClipByRectTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSContainsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSConvexHullTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSCoordSeqTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSDelaunayTriangulationTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSDistanceTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSEqualsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeomFromWKBTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeomToWKTTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_create.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_extractUniquePointsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_setPrecisionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGetCentroidTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSInterruptTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSIntersectionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSIntersectsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSLineString_PointTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSMinimumClearanceTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSMinimumRectangleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSMinimumWidthTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSNearestPointsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSNodeTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSOffsetCurveTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSOrientationIndex.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSPointOnSurfaceTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSPolygonizer_getCutEdgesTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSPreparedGeometryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSRelateBoundaryNodeRuleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSRelatePatternMatchTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSTRtreeTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSharedPathsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSimplifyTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSnapTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSUnaryUnionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSUserDataTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSVoronoiDiagramTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSWithinTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSisClosedTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSisValidDetailTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateArraySequenceFactoryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateArraySequenceTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateListTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/DimensionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/EnvelopeTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/GeometryFactoryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/IntersectionMatrixTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LineSegmentTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LineStringTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LinearRingTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LocationTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/MultiLineStringTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/MultiPointTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/MultiPolygonTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/PointTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/PolygonTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/PrecisionModelTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/TriangleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/clone.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/coversTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/equalsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/isRectangleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/normalize.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/prep/$(DEPDIR)/PreparedGeometryFactoryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@geom/util/$(DEPDIR)/GeometryExtracterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@index/quadtree/$(DEPDIR)/DoubleBitsTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/ByteOrderValuesTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKBReaderTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKBWriterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKTReaderTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKTWriterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WriterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@linearref/$(DEPDIR)/LengthIndexedLineTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/BasicSegmentStringTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/NodedSegmentStringTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/OrientedCoordinateArray.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/SegmentNodeTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/SegmentPointComparatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/snapround/$(DEPDIR)/HotPixelTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@noding/snapround/$(DEPDIR)/MCIndexSnapRounderTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/$(DEPDIR)/IsSimpleOpTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/buffer/$(DEPDIR)/BufferBuilderTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/buffer/$(DEPDIR)/BufferOpTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/buffer/$(DEPDIR)/BufferParametersTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/distance/$(DEPDIR)/DistanceOpTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/intersection/$(DEPDIR)/RectangleIntersectionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/linemerge/$(DEPDIR)/LineMergerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/linemerge/$(DEPDIR)/LineSequencerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/$(DEPDIR)/OverlayOpUnionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/snap/$(DEPDIR)/GeometrySnapperTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/snap/$(DEPDIR)/LineStringSnapperTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/validate/$(DEPDIR)/FuzzyPointLocatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/validate/$(DEPDIR)/OffsetPointGeneratorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/validate/$(DEPDIR)/OverlayResultValidatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/polygonize/$(DEPDIR)/PolygonizeTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/sharedpaths/$(DEPDIR)/SharedPathsOpTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/union/$(DEPDIR)/CascadedPolygonUnionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/union/$(DEPDIR)/UnaryUnionOpTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/valid/$(DEPDIR)/IsValidTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/valid/$(DEPDIR)/ValidClosedRingTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@operation/valid/$(DEPDIR)/ValidSelfTouchingRingFormingHoleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@precision/$(DEPDIR)/GeometryPrecisionReducerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@precision/$(DEPDIR)/SimpleGeometryPrecisionReducerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@simplify/$(DEPDIR)/DouglasPeuckerSimplifierTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@simplify/$(DEPDIR)/TopologyPreservingSimplifierTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@triangulate/$(DEPDIR)/DelaunayTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@triangulate/$(DEPDIR)/VoronoiTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@triangulate/quadedge/$(DEPDIR)/QuadEdgeSubdivisionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@triangulate/quadedge/$(DEPDIR)/QuadEdgeTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@triangulate/quadedge/$(DEPDIR)/VertexTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/UniqueCoordinateArrayFilterTest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/geos_unit.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/AngleTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/ConvexHullTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/InteriorPointAreaTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/MinimumDiameterTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/PointLocatorTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/RobustLineIntersectionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/$(DEPDIR)/RobustLineIntersectorTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/computeOrientationTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/isCCWTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/isPointInRingTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/CGAlgorithms/$(DEPDIR)/signedAreaTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/distance/$(DEPDIR)/DiscreteFrechetDistanceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@algorithm/distance/$(DEPDIR)/DiscreteHausdorffDistanceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSBufferTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSCAPIDefinesTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSClipByRectTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSContainsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSConvexHullTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSCoordSeqTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSDelaunayTriangulationTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSDistanceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSEqualsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSFrechetDistanceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeomFromWKBTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeomToWKTTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_create.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_extentTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_extractUniquePointsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGeom_setPrecisionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSGetCentroidTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSHausdorffDistanceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSInterpolateTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSInterruptTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSIntersectionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSIntersectsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSLineString_PointTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSMinimumClearanceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSMinimumRectangleTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSMinimumWidthTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSNearestPointsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSNodeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSOffsetCurveTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSOrientationIndex.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSPointOnSurfaceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSPolygonizer_getCutEdgesTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSPreparedGeometryTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSRelateBoundaryNodeRuleTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSRelatePatternMatchTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSReverseTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSTRtreeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSharedPathsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSimplifyTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSSnapTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSUnaryUnionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSUserDataTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSVoronoiDiagramTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSWithinTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSisClosedTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@capi/$(DEPDIR)/GEOSisValidDetailTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateArraySequenceFactoryTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateArraySequenceTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateListTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/CoordinateTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/DimensionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/EnvelopeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/GeometryFactoryTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/IntersectionMatrixTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LineSegmentTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LineStringTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LinearRingTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/LocationTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/MultiLineStringTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/MultiPointTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/MultiPolygonTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/PointTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/PolygonTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/PrecisionModelTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/$(DEPDIR)/TriangleTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/clone.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/coversTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/equalsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/isRectangleTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/Geometry/$(DEPDIR)/normalize.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/prep/$(DEPDIR)/PreparedGeometryFactoryTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@geom/util/$(DEPDIR)/GeometryExtracterTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@index/quadtree/$(DEPDIR)/DoubleBitsTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@index/strtree/$(DEPDIR)/SIRtreeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/ByteOrderValuesTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKBReaderTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKBWriterTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKTReaderTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WKTWriterTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/WriterTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@linearref/$(DEPDIR)/LengthIndexedLineTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/BasicSegmentStringTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/NodedSegmentStringTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/OrientedCoordinateArray.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/SegmentNodeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/$(DEPDIR)/SegmentPointComparatorTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/snapround/$(DEPDIR)/HotPixelTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@noding/snapround/$(DEPDIR)/MCIndexSnapRounderTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/$(DEPDIR)/IsSimpleOpTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/buffer/$(DEPDIR)/BufferBuilderTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/buffer/$(DEPDIR)/BufferOpTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/buffer/$(DEPDIR)/BufferParametersTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/distance/$(DEPDIR)/DistanceOpTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/intersection/$(DEPDIR)/RectangleIntersectionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/linemerge/$(DEPDIR)/LineMergerTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/linemerge/$(DEPDIR)/LineSequencerTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/$(DEPDIR)/OverlayOpUnionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/snap/$(DEPDIR)/GeometrySnapperTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/snap/$(DEPDIR)/LineStringSnapperTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/validate/$(DEPDIR)/FuzzyPointLocatorTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/validate/$(DEPDIR)/OffsetPointGeneratorTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/overlay/validate/$(DEPDIR)/OverlayResultValidatorTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/polygonize/$(DEPDIR)/PolygonizeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/sharedpaths/$(DEPDIR)/SharedPathsOpTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/union/$(DEPDIR)/CascadedPolygonUnionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/union/$(DEPDIR)/UnaryUnionOpTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/valid/$(DEPDIR)/IsValidTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/valid/$(DEPDIR)/ValidClosedRingTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@operation/valid/$(DEPDIR)/ValidSelfTouchingRingFormingHoleTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@precision/$(DEPDIR)/GeometryPrecisionReducerTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@precision/$(DEPDIR)/SimpleGeometryPrecisionReducerTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@simplify/$(DEPDIR)/DouglasPeuckerSimplifierTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@simplify/$(DEPDIR)/TopologyPreservingSimplifierTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@triangulate/$(DEPDIR)/DelaunayTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@triangulate/$(DEPDIR)/VoronoiTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@triangulate/quadedge/$(DEPDIR)/QuadEdgeSubdivisionTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@triangulate/quadedge/$(DEPDIR)/QuadEdgeTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@triangulate/quadedge/$(DEPDIR)/VertexTest.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/UniqueCoordinateArrayFilterTest.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @@ -1702,7 +1891,7 @@ fi; \ $$success || exit 1 -check-TESTS: +check-TESTS: $(check_PROGRAMS) @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) @@ -1745,7 +1934,10 @@ @am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ @am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -1828,6 +2020,8 @@ -rm -f geom/util/$(am__dirstamp) -rm -f index/quadtree/$(DEPDIR)/$(am__dirstamp) -rm -f index/quadtree/$(am__dirstamp) + -rm -f index/strtree/$(DEPDIR)/$(am__dirstamp) + -rm -f index/strtree/$(am__dirstamp) -rm -f io/$(DEPDIR)/$(am__dirstamp) -rm -f io/$(am__dirstamp) -rm -f linearref/$(DEPDIR)/$(am__dirstamp) @@ -1880,7 +2074,139 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) algorithm/$(DEPDIR) algorithm/CGAlgorithms/$(DEPDIR) algorithm/distance/$(DEPDIR) capi/$(DEPDIR) geom/$(DEPDIR) geom/Geometry/$(DEPDIR) geom/prep/$(DEPDIR) geom/util/$(DEPDIR) index/quadtree/$(DEPDIR) io/$(DEPDIR) linearref/$(DEPDIR) noding/$(DEPDIR) noding/snapround/$(DEPDIR) operation/$(DEPDIR) operation/buffer/$(DEPDIR) operation/distance/$(DEPDIR) operation/intersection/$(DEPDIR) operation/linemerge/$(DEPDIR) operation/overlay/$(DEPDIR) operation/overlay/snap/$(DEPDIR) operation/overlay/validate/$(DEPDIR) operation/polygonize/$(DEPDIR) operation/sharedpaths/$(DEPDIR) operation/union/$(DEPDIR) operation/valid/$(DEPDIR) precision/$(DEPDIR) simplify/$(DEPDIR) triangulate/$(DEPDIR) triangulate/quadedge/$(DEPDIR) util/$(DEPDIR) + -rm -f ./$(DEPDIR)/geos_unit.Po + -rm -f algorithm/$(DEPDIR)/AngleTest.Po + -rm -f algorithm/$(DEPDIR)/ConvexHullTest.Po + -rm -f algorithm/$(DEPDIR)/InteriorPointAreaTest.Po + -rm -f algorithm/$(DEPDIR)/MinimumDiameterTest.Po + -rm -f algorithm/$(DEPDIR)/PointLocatorTest.Po + -rm -f algorithm/$(DEPDIR)/RobustLineIntersectionTest.Po + -rm -f algorithm/$(DEPDIR)/RobustLineIntersectorTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/computeOrientationTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/isCCWTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/isPointInRingTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/signedAreaTest.Po + -rm -f algorithm/distance/$(DEPDIR)/DiscreteFrechetDistanceTest.Po + -rm -f algorithm/distance/$(DEPDIR)/DiscreteHausdorffDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSBufferTest.Po + -rm -f capi/$(DEPDIR)/GEOSCAPIDefinesTest.Po + -rm -f capi/$(DEPDIR)/GEOSClipByRectTest.Po + -rm -f capi/$(DEPDIR)/GEOSContainsTest.Po + -rm -f capi/$(DEPDIR)/GEOSConvexHullTest.Po + -rm -f capi/$(DEPDIR)/GEOSCoordSeqTest.Po + -rm -f capi/$(DEPDIR)/GEOSDelaunayTriangulationTest.Po + -rm -f capi/$(DEPDIR)/GEOSDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSEqualsTest.Po + -rm -f capi/$(DEPDIR)/GEOSFrechetDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeomFromWKBTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeomToWKTTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_create.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_extentTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_extractUniquePointsTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_setPrecisionTest.Po + -rm -f capi/$(DEPDIR)/GEOSGetCentroidTest.Po + -rm -f capi/$(DEPDIR)/GEOSHausdorffDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSInterpolateTest.Po + -rm -f capi/$(DEPDIR)/GEOSInterruptTest.Po + -rm -f capi/$(DEPDIR)/GEOSIntersectionTest.Po + -rm -f capi/$(DEPDIR)/GEOSIntersectsTest.Po + -rm -f capi/$(DEPDIR)/GEOSLineString_PointTest.Po + -rm -f capi/$(DEPDIR)/GEOSMinimumClearanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSMinimumRectangleTest.Po + -rm -f capi/$(DEPDIR)/GEOSMinimumWidthTest.Po + -rm -f capi/$(DEPDIR)/GEOSNearestPointsTest.Po + -rm -f capi/$(DEPDIR)/GEOSNodeTest.Po + -rm -f capi/$(DEPDIR)/GEOSOffsetCurveTest.Po + -rm -f capi/$(DEPDIR)/GEOSOrientationIndex.Po + -rm -f capi/$(DEPDIR)/GEOSPointOnSurfaceTest.Po + -rm -f capi/$(DEPDIR)/GEOSPolygonizer_getCutEdgesTest.Po + -rm -f capi/$(DEPDIR)/GEOSPreparedGeometryTest.Po + -rm -f capi/$(DEPDIR)/GEOSRelateBoundaryNodeRuleTest.Po + -rm -f capi/$(DEPDIR)/GEOSRelatePatternMatchTest.Po + -rm -f capi/$(DEPDIR)/GEOSReverseTest.Po + -rm -f capi/$(DEPDIR)/GEOSSTRtreeTest.Po + -rm -f capi/$(DEPDIR)/GEOSSharedPathsTest.Po + -rm -f capi/$(DEPDIR)/GEOSSimplifyTest.Po + -rm -f capi/$(DEPDIR)/GEOSSnapTest.Po + -rm -f capi/$(DEPDIR)/GEOSUnaryUnionTest.Po + -rm -f capi/$(DEPDIR)/GEOSUserDataTest.Po + -rm -f capi/$(DEPDIR)/GEOSVoronoiDiagramTest.Po + -rm -f capi/$(DEPDIR)/GEOSWithinTest.Po + -rm -f capi/$(DEPDIR)/GEOSisClosedTest.Po + -rm -f capi/$(DEPDIR)/GEOSisValidDetailTest.Po + -rm -f geom/$(DEPDIR)/CoordinateArraySequenceFactoryTest.Po + -rm -f geom/$(DEPDIR)/CoordinateArraySequenceTest.Po + -rm -f geom/$(DEPDIR)/CoordinateListTest.Po + -rm -f geom/$(DEPDIR)/CoordinateTest.Po + -rm -f geom/$(DEPDIR)/DimensionTest.Po + -rm -f geom/$(DEPDIR)/EnvelopeTest.Po + -rm -f geom/$(DEPDIR)/GeometryFactoryTest.Po + -rm -f geom/$(DEPDIR)/IntersectionMatrixTest.Po + -rm -f geom/$(DEPDIR)/LineSegmentTest.Po + -rm -f geom/$(DEPDIR)/LineStringTest.Po + -rm -f geom/$(DEPDIR)/LinearRingTest.Po + -rm -f geom/$(DEPDIR)/LocationTest.Po + -rm -f geom/$(DEPDIR)/MultiLineStringTest.Po + -rm -f geom/$(DEPDIR)/MultiPointTest.Po + -rm -f geom/$(DEPDIR)/MultiPolygonTest.Po + -rm -f geom/$(DEPDIR)/PointTest.Po + -rm -f geom/$(DEPDIR)/PolygonTest.Po + -rm -f geom/$(DEPDIR)/PrecisionModelTest.Po + -rm -f geom/$(DEPDIR)/TriangleTest.Po + -rm -f geom/Geometry/$(DEPDIR)/clone.Po + -rm -f geom/Geometry/$(DEPDIR)/coversTest.Po + -rm -f geom/Geometry/$(DEPDIR)/equalsTest.Po + -rm -f geom/Geometry/$(DEPDIR)/isRectangleTest.Po + -rm -f geom/Geometry/$(DEPDIR)/normalize.Po + -rm -f geom/prep/$(DEPDIR)/PreparedGeometryFactoryTest.Po + -rm -f geom/util/$(DEPDIR)/GeometryExtracterTest.Po + -rm -f index/quadtree/$(DEPDIR)/DoubleBitsTest.Po + -rm -f index/strtree/$(DEPDIR)/SIRtreeTest.Po + -rm -f io/$(DEPDIR)/ByteOrderValuesTest.Po + -rm -f io/$(DEPDIR)/WKBReaderTest.Po + -rm -f io/$(DEPDIR)/WKBWriterTest.Po + -rm -f io/$(DEPDIR)/WKTReaderTest.Po + -rm -f io/$(DEPDIR)/WKTWriterTest.Po + -rm -f io/$(DEPDIR)/WriterTest.Po + -rm -f linearref/$(DEPDIR)/LengthIndexedLineTest.Po + -rm -f noding/$(DEPDIR)/BasicSegmentStringTest.Po + -rm -f noding/$(DEPDIR)/NodedSegmentStringTest.Po + -rm -f noding/$(DEPDIR)/OrientedCoordinateArray.Po + -rm -f noding/$(DEPDIR)/SegmentNodeTest.Po + -rm -f noding/$(DEPDIR)/SegmentPointComparatorTest.Po + -rm -f noding/snapround/$(DEPDIR)/HotPixelTest.Po + -rm -f noding/snapround/$(DEPDIR)/MCIndexSnapRounderTest.Po + -rm -f operation/$(DEPDIR)/IsSimpleOpTest.Po + -rm -f operation/buffer/$(DEPDIR)/BufferBuilderTest.Po + -rm -f operation/buffer/$(DEPDIR)/BufferOpTest.Po + -rm -f operation/buffer/$(DEPDIR)/BufferParametersTest.Po + -rm -f operation/distance/$(DEPDIR)/DistanceOpTest.Po + -rm -f operation/intersection/$(DEPDIR)/RectangleIntersectionTest.Po + -rm -f operation/linemerge/$(DEPDIR)/LineMergerTest.Po + -rm -f operation/linemerge/$(DEPDIR)/LineSequencerTest.Po + -rm -f operation/overlay/$(DEPDIR)/OverlayOpUnionTest.Po + -rm -f operation/overlay/snap/$(DEPDIR)/GeometrySnapperTest.Po + -rm -f operation/overlay/snap/$(DEPDIR)/LineStringSnapperTest.Po + -rm -f operation/overlay/validate/$(DEPDIR)/FuzzyPointLocatorTest.Po + -rm -f operation/overlay/validate/$(DEPDIR)/OffsetPointGeneratorTest.Po + -rm -f operation/overlay/validate/$(DEPDIR)/OverlayResultValidatorTest.Po + -rm -f operation/polygonize/$(DEPDIR)/PolygonizeTest.Po + -rm -f operation/sharedpaths/$(DEPDIR)/SharedPathsOpTest.Po + -rm -f operation/union/$(DEPDIR)/CascadedPolygonUnionTest.Po + -rm -f operation/union/$(DEPDIR)/UnaryUnionOpTest.Po + -rm -f operation/valid/$(DEPDIR)/IsValidTest.Po + -rm -f operation/valid/$(DEPDIR)/ValidClosedRingTest.Po + -rm -f operation/valid/$(DEPDIR)/ValidSelfTouchingRingFormingHoleTest.Po + -rm -f precision/$(DEPDIR)/GeometryPrecisionReducerTest.Po + -rm -f precision/$(DEPDIR)/SimpleGeometryPrecisionReducerTest.Po + -rm -f simplify/$(DEPDIR)/DouglasPeuckerSimplifierTest.Po + -rm -f simplify/$(DEPDIR)/TopologyPreservingSimplifierTest.Po + -rm -f triangulate/$(DEPDIR)/DelaunayTest.Po + -rm -f triangulate/$(DEPDIR)/VoronoiTest.Po + -rm -f triangulate/quadedge/$(DEPDIR)/QuadEdgeSubdivisionTest.Po + -rm -f triangulate/quadedge/$(DEPDIR)/QuadEdgeTest.Po + -rm -f triangulate/quadedge/$(DEPDIR)/VertexTest.Po + -rm -f util/$(DEPDIR)/UniqueCoordinateArrayFilterTest.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -1926,7 +2252,139 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) algorithm/$(DEPDIR) algorithm/CGAlgorithms/$(DEPDIR) algorithm/distance/$(DEPDIR) capi/$(DEPDIR) geom/$(DEPDIR) geom/Geometry/$(DEPDIR) geom/prep/$(DEPDIR) geom/util/$(DEPDIR) index/quadtree/$(DEPDIR) io/$(DEPDIR) linearref/$(DEPDIR) noding/$(DEPDIR) noding/snapround/$(DEPDIR) operation/$(DEPDIR) operation/buffer/$(DEPDIR) operation/distance/$(DEPDIR) operation/intersection/$(DEPDIR) operation/linemerge/$(DEPDIR) operation/overlay/$(DEPDIR) operation/overlay/snap/$(DEPDIR) operation/overlay/validate/$(DEPDIR) operation/polygonize/$(DEPDIR) operation/sharedpaths/$(DEPDIR) operation/union/$(DEPDIR) operation/valid/$(DEPDIR) precision/$(DEPDIR) simplify/$(DEPDIR) triangulate/$(DEPDIR) triangulate/quadedge/$(DEPDIR) util/$(DEPDIR) + -rm -f ./$(DEPDIR)/geos_unit.Po + -rm -f algorithm/$(DEPDIR)/AngleTest.Po + -rm -f algorithm/$(DEPDIR)/ConvexHullTest.Po + -rm -f algorithm/$(DEPDIR)/InteriorPointAreaTest.Po + -rm -f algorithm/$(DEPDIR)/MinimumDiameterTest.Po + -rm -f algorithm/$(DEPDIR)/PointLocatorTest.Po + -rm -f algorithm/$(DEPDIR)/RobustLineIntersectionTest.Po + -rm -f algorithm/$(DEPDIR)/RobustLineIntersectorTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/computeOrientationTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/isCCWTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/isPointInRingTest.Po + -rm -f algorithm/CGAlgorithms/$(DEPDIR)/signedAreaTest.Po + -rm -f algorithm/distance/$(DEPDIR)/DiscreteFrechetDistanceTest.Po + -rm -f algorithm/distance/$(DEPDIR)/DiscreteHausdorffDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSBufferTest.Po + -rm -f capi/$(DEPDIR)/GEOSCAPIDefinesTest.Po + -rm -f capi/$(DEPDIR)/GEOSClipByRectTest.Po + -rm -f capi/$(DEPDIR)/GEOSContainsTest.Po + -rm -f capi/$(DEPDIR)/GEOSConvexHullTest.Po + -rm -f capi/$(DEPDIR)/GEOSCoordSeqTest.Po + -rm -f capi/$(DEPDIR)/GEOSDelaunayTriangulationTest.Po + -rm -f capi/$(DEPDIR)/GEOSDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSEqualsTest.Po + -rm -f capi/$(DEPDIR)/GEOSFrechetDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeomFromWKBTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeomToWKTTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_create.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_extentTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_extractUniquePointsTest.Po + -rm -f capi/$(DEPDIR)/GEOSGeom_setPrecisionTest.Po + -rm -f capi/$(DEPDIR)/GEOSGetCentroidTest.Po + -rm -f capi/$(DEPDIR)/GEOSHausdorffDistanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSInterpolateTest.Po + -rm -f capi/$(DEPDIR)/GEOSInterruptTest.Po + -rm -f capi/$(DEPDIR)/GEOSIntersectionTest.Po + -rm -f capi/$(DEPDIR)/GEOSIntersectsTest.Po + -rm -f capi/$(DEPDIR)/GEOSLineString_PointTest.Po + -rm -f capi/$(DEPDIR)/GEOSMinimumClearanceTest.Po + -rm -f capi/$(DEPDIR)/GEOSMinimumRectangleTest.Po + -rm -f capi/$(DEPDIR)/GEOSMinimumWidthTest.Po + -rm -f capi/$(DEPDIR)/GEOSNearestPointsTest.Po + -rm -f capi/$(DEPDIR)/GEOSNodeTest.Po + -rm -f capi/$(DEPDIR)/GEOSOffsetCurveTest.Po + -rm -f capi/$(DEPDIR)/GEOSOrientationIndex.Po + -rm -f capi/$(DEPDIR)/GEOSPointOnSurfaceTest.Po + -rm -f capi/$(DEPDIR)/GEOSPolygonizer_getCutEdgesTest.Po + -rm -f capi/$(DEPDIR)/GEOSPreparedGeometryTest.Po + -rm -f capi/$(DEPDIR)/GEOSRelateBoundaryNodeRuleTest.Po + -rm -f capi/$(DEPDIR)/GEOSRelatePatternMatchTest.Po + -rm -f capi/$(DEPDIR)/GEOSReverseTest.Po + -rm -f capi/$(DEPDIR)/GEOSSTRtreeTest.Po + -rm -f capi/$(DEPDIR)/GEOSSharedPathsTest.Po + -rm -f capi/$(DEPDIR)/GEOSSimplifyTest.Po + -rm -f capi/$(DEPDIR)/GEOSSnapTest.Po + -rm -f capi/$(DEPDIR)/GEOSUnaryUnionTest.Po + -rm -f capi/$(DEPDIR)/GEOSUserDataTest.Po + -rm -f capi/$(DEPDIR)/GEOSVoronoiDiagramTest.Po + -rm -f capi/$(DEPDIR)/GEOSWithinTest.Po + -rm -f capi/$(DEPDIR)/GEOSisClosedTest.Po + -rm -f capi/$(DEPDIR)/GEOSisValidDetailTest.Po + -rm -f geom/$(DEPDIR)/CoordinateArraySequenceFactoryTest.Po + -rm -f geom/$(DEPDIR)/CoordinateArraySequenceTest.Po + -rm -f geom/$(DEPDIR)/CoordinateListTest.Po + -rm -f geom/$(DEPDIR)/CoordinateTest.Po + -rm -f geom/$(DEPDIR)/DimensionTest.Po + -rm -f geom/$(DEPDIR)/EnvelopeTest.Po + -rm -f geom/$(DEPDIR)/GeometryFactoryTest.Po + -rm -f geom/$(DEPDIR)/IntersectionMatrixTest.Po + -rm -f geom/$(DEPDIR)/LineSegmentTest.Po + -rm -f geom/$(DEPDIR)/LineStringTest.Po + -rm -f geom/$(DEPDIR)/LinearRingTest.Po + -rm -f geom/$(DEPDIR)/LocationTest.Po + -rm -f geom/$(DEPDIR)/MultiLineStringTest.Po + -rm -f geom/$(DEPDIR)/MultiPointTest.Po + -rm -f geom/$(DEPDIR)/MultiPolygonTest.Po + -rm -f geom/$(DEPDIR)/PointTest.Po + -rm -f geom/$(DEPDIR)/PolygonTest.Po + -rm -f geom/$(DEPDIR)/PrecisionModelTest.Po + -rm -f geom/$(DEPDIR)/TriangleTest.Po + -rm -f geom/Geometry/$(DEPDIR)/clone.Po + -rm -f geom/Geometry/$(DEPDIR)/coversTest.Po + -rm -f geom/Geometry/$(DEPDIR)/equalsTest.Po + -rm -f geom/Geometry/$(DEPDIR)/isRectangleTest.Po + -rm -f geom/Geometry/$(DEPDIR)/normalize.Po + -rm -f geom/prep/$(DEPDIR)/PreparedGeometryFactoryTest.Po + -rm -f geom/util/$(DEPDIR)/GeometryExtracterTest.Po + -rm -f index/quadtree/$(DEPDIR)/DoubleBitsTest.Po + -rm -f index/strtree/$(DEPDIR)/SIRtreeTest.Po + -rm -f io/$(DEPDIR)/ByteOrderValuesTest.Po + -rm -f io/$(DEPDIR)/WKBReaderTest.Po + -rm -f io/$(DEPDIR)/WKBWriterTest.Po + -rm -f io/$(DEPDIR)/WKTReaderTest.Po + -rm -f io/$(DEPDIR)/WKTWriterTest.Po + -rm -f io/$(DEPDIR)/WriterTest.Po + -rm -f linearref/$(DEPDIR)/LengthIndexedLineTest.Po + -rm -f noding/$(DEPDIR)/BasicSegmentStringTest.Po + -rm -f noding/$(DEPDIR)/NodedSegmentStringTest.Po + -rm -f noding/$(DEPDIR)/OrientedCoordinateArray.Po + -rm -f noding/$(DEPDIR)/SegmentNodeTest.Po + -rm -f noding/$(DEPDIR)/SegmentPointComparatorTest.Po + -rm -f noding/snapround/$(DEPDIR)/HotPixelTest.Po + -rm -f noding/snapround/$(DEPDIR)/MCIndexSnapRounderTest.Po + -rm -f operation/$(DEPDIR)/IsSimpleOpTest.Po + -rm -f operation/buffer/$(DEPDIR)/BufferBuilderTest.Po + -rm -f operation/buffer/$(DEPDIR)/BufferOpTest.Po + -rm -f operation/buffer/$(DEPDIR)/BufferParametersTest.Po + -rm -f operation/distance/$(DEPDIR)/DistanceOpTest.Po + -rm -f operation/intersection/$(DEPDIR)/RectangleIntersectionTest.Po + -rm -f operation/linemerge/$(DEPDIR)/LineMergerTest.Po + -rm -f operation/linemerge/$(DEPDIR)/LineSequencerTest.Po + -rm -f operation/overlay/$(DEPDIR)/OverlayOpUnionTest.Po + -rm -f operation/overlay/snap/$(DEPDIR)/GeometrySnapperTest.Po + -rm -f operation/overlay/snap/$(DEPDIR)/LineStringSnapperTest.Po + -rm -f operation/overlay/validate/$(DEPDIR)/FuzzyPointLocatorTest.Po + -rm -f operation/overlay/validate/$(DEPDIR)/OffsetPointGeneratorTest.Po + -rm -f operation/overlay/validate/$(DEPDIR)/OverlayResultValidatorTest.Po + -rm -f operation/polygonize/$(DEPDIR)/PolygonizeTest.Po + -rm -f operation/sharedpaths/$(DEPDIR)/SharedPathsOpTest.Po + -rm -f operation/union/$(DEPDIR)/CascadedPolygonUnionTest.Po + -rm -f operation/union/$(DEPDIR)/UnaryUnionOpTest.Po + -rm -f operation/valid/$(DEPDIR)/IsValidTest.Po + -rm -f operation/valid/$(DEPDIR)/ValidClosedRingTest.Po + -rm -f operation/valid/$(DEPDIR)/ValidSelfTouchingRingFormingHoleTest.Po + -rm -f precision/$(DEPDIR)/GeometryPrecisionReducerTest.Po + -rm -f precision/$(DEPDIR)/SimpleGeometryPrecisionReducerTest.Po + -rm -f simplify/$(DEPDIR)/DouglasPeuckerSimplifierTest.Po + -rm -f simplify/$(DEPDIR)/TopologyPreservingSimplifierTest.Po + -rm -f triangulate/$(DEPDIR)/DelaunayTest.Po + -rm -f triangulate/$(DEPDIR)/VoronoiTest.Po + -rm -f triangulate/quadedge/$(DEPDIR)/QuadEdgeSubdivisionTest.Po + -rm -f triangulate/quadedge/$(DEPDIR)/QuadEdgeTest.Po + -rm -f triangulate/quadedge/$(DEPDIR)/VertexTest.Po + -rm -f util/$(DEPDIR)/UniqueCoordinateArrayFilterTest.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -1947,16 +2405,16 @@ .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \ - clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \ - ctags ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-TESTS \ + check-am clean clean-checkPROGRAMS clean-generic clean-libtool \ + cscopelist-am ctags ctags-am distclean distclean-compile \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ recheck tags tags-am uninstall uninstall-am diff -Nru geos-3.6.2/tests/unit/noding/BasicSegmentStringTest.cpp geos-3.7.1/tests/unit/noding/BasicSegmentStringTest.cpp --- geos-3.6.2/tests/unit/noding/BasicSegmentStringTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/BasicSegmentStringTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::noding::BasicSegmentString class. -#include +#include // geos #include #include @@ -21,16 +21,16 @@ struct test_basicsegmentstring_data { - typedef std::auto_ptr \ + typedef std::unique_ptr \ CoordinateSequenceAutoPtr; - typedef std::auto_ptr \ + typedef std::unique_ptr \ SegmentStringAutoPtr; - + const geos::geom::CoordinateSequenceFactory* csFactory; SegmentStringAutoPtr - makeSegmentString(geos::geom::CoordinateSequence* cs, void *d = 0) + makeSegmentString(geos::geom::CoordinateSequence* cs, void *d = nullptr) { return SegmentStringAutoPtr( new geos::noding::BasicSegmentString(cs, d) @@ -42,7 +42,7 @@ csFactory(geos::geom::CoordinateArraySequenceFactory::instance()) { } - + ~test_basicsegmentstring_data() { } @@ -65,7 +65,7 @@ { CoordinateSequenceAutoPtr cs(csFactory->create((size_t)0, 2)); - ensure(0 != cs.get()); + ensure(nullptr != cs.get()); geos::geom::Coordinate c0(0, 0); geos::geom::Coordinate c1(0, 0); @@ -76,11 +76,11 @@ ensure_equals(cs->size(), 2u); SegmentStringAutoPtr ss(makeSegmentString(cs.get())); - ensure(0 != ss.get()); + ensure(nullptr != ss.get()); ensure_equals(ss->size(), 2u); - ensure_equals(ss->getData(), (void*)0); + ensure_equals(ss->getData(), (void*)nullptr); ensure_equals(ss->getCoordinates(), cs.get()); @@ -108,7 +108,7 @@ { CoordinateSequenceAutoPtr cs(csFactory->create((size_t)0, 2)); - ensure(0 != cs.get()); + ensure(nullptr != cs.get()); geos::geom::Coordinate c0(0, 0); geos::geom::Coordinate c1(1, 0); @@ -119,11 +119,11 @@ ensure_equals(cs->size(), 2u); SegmentStringAutoPtr ss(makeSegmentString(cs.get())); - ensure(0 != ss.get()); + ensure(nullptr != ss.get()); ensure_equals(ss->size(), 2u); - ensure_equals(ss->getData(), (void*)0); + ensure_equals(ss->getData(), (void*)nullptr); ensure_equals(ss->getCoordinates(), cs.get()); @@ -144,7 +144,7 @@ { CoordinateSequenceAutoPtr cs(csFactory->create((size_t)0, 2)); - ensure(0 != cs.get()); + ensure(nullptr != cs.get()); geos::geom::Coordinate c0(0, 0); geos::geom::Coordinate c1(1, 0); @@ -158,11 +158,11 @@ ensure_equals(cs->size(), 4u); SegmentStringAutoPtr ss(makeSegmentString(cs.get())); - ensure(0 != ss.get()); + ensure(nullptr != ss.get()); ensure_equals(ss->size(), 4u); - ensure_equals(ss->getData(), (void*)0); + ensure_equals(ss->getData(), (void*)nullptr); ensure_equals(ss->getCoordinates(), cs.get()); diff -Nru geos-3.6.2/tests/unit/noding/NodedSegmentStringTest.cpp geos-3.7.1/tests/unit/noding/NodedSegmentStringTest.cpp --- geos-3.6.2/tests/unit/noding/NodedSegmentStringTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/NodedSegmentStringTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::noding::NodedSegmentString class. -#include +#include // geos #include #include @@ -21,16 +21,16 @@ struct test_nodedsegmentstring_data { - typedef std::auto_ptr \ + typedef std::unique_ptr \ CoordinateSequenceAutoPtr; - typedef std::auto_ptr \ + typedef std::unique_ptr \ SegmentStringAutoPtr; - + const geos::geom::CoordinateSequenceFactory* csFactory; SegmentStringAutoPtr - makeSegmentString(geos::geom::CoordinateSequence* cs, void *d = 0) + makeSegmentString(geos::geom::CoordinateSequence* cs, void *d = nullptr) { return SegmentStringAutoPtr( new geos::noding::NodedSegmentString(cs, d) @@ -65,7 +65,7 @@ { CoordinateSequenceAutoPtr cs(csFactory->create((size_t)0, 2)); - ensure(0 != cs.get()); + ensure(nullptr != cs.get()); geos::geom::Coordinate c0(0, 0); geos::geom::Coordinate c1(0, 0); @@ -76,11 +76,11 @@ ensure_equals(cs->size(), 2u); SegmentStringAutoPtr ss(makeSegmentString(cs.release())); - ensure(0 != ss.get()); + ensure(nullptr != ss.get()); ensure_equals(ss->size(), 2u); - ensure_equals(ss->getData(), (void*)0); + ensure_equals(ss->getData(), (void*)nullptr); ensure_equals(ss->getCoordinate(0), c0); @@ -100,7 +100,7 @@ { CoordinateSequenceAutoPtr cs(csFactory->create((size_t)0, 2)); - ensure(0 != cs.get()); + ensure(nullptr != cs.get()); geos::geom::Coordinate c0(0, 0); geos::geom::Coordinate c1(1, 0); @@ -111,11 +111,11 @@ ensure_equals(cs->size(), 2u); SegmentStringAutoPtr ss(makeSegmentString(cs.release())); - ensure(0 != ss.get()); + ensure(nullptr != ss.get()); ensure_equals(ss->size(), 2u); - ensure_equals(ss->getData(), (void*)0); + ensure_equals(ss->getData(), (void*)nullptr); ensure_equals(ss->getCoordinate(0), c0); @@ -135,7 +135,7 @@ { CoordinateSequenceAutoPtr cs(csFactory->create((size_t)0, 2)); - ensure(0 != cs.get()); + ensure(nullptr != cs.get()); geos::geom::Coordinate c0(0, 0); geos::geom::Coordinate c1(1, 0); @@ -149,11 +149,11 @@ ensure_equals(cs->size(), 4u); SegmentStringAutoPtr ss(makeSegmentString(cs.release())); - ensure(0 != ss.get()); + ensure(nullptr != ss.get()); ensure_equals(ss->size(), 4u); - ensure_equals(ss->getData(), (void*)0); + ensure_equals(ss->getData(), (void*)nullptr); ensure_equals(ss->getCoordinate(0), c0); @@ -255,7 +255,7 @@ // SegmentString::NonConstVect inputStrings; // inputStrings.push_back(makeSegmentString(cs2.get()).get()); // -// std::auto_ptr nodedStrings( +// std::unique_ptr nodedStrings( // NodedSegmentString::getNodedSubstrings(inputStrings) // ); // diff -Nru geos-3.6.2/tests/unit/noding/OrientedCoordinateArray.cpp geos-3.7.1/tests/unit/noding/OrientedCoordinateArray.cpp --- geos-3.6.2/tests/unit/noding/OrientedCoordinateArray.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/OrientedCoordinateArray.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ // $Id$ -// +// // Test Suite for geos::noding::OrientedCoordinateArray class. -#include +#include // geos #include #include @@ -29,11 +29,11 @@ typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; - typedef std::auto_ptr CoordSeqPtr; - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr CoordSeqPtr; + typedef std::unique_ptr GeomPtr; test_orientedcoordinatearray_data() : pm_() diff -Nru geos-3.6.2/tests/unit/noding/SegmentNodeTest.cpp geos-3.7.1/tests/unit/noding/SegmentNodeTest.cpp --- geos-3.6.2/tests/unit/noding/SegmentNodeTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/SegmentNodeTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::noding::SegmentNode class. -#include +#include // geos #include #include @@ -21,12 +21,12 @@ struct test_segmentnode_data { - typedef std::auto_ptr + typedef std::unique_ptr CoordSeqPtr; - typedef std::auto_ptr + typedef std::unique_ptr SegmentStringPtr; - + const geos::geom::CoordinateSequenceFactory* factory_; test_segmentnode_data() @@ -56,7 +56,7 @@ const size_t coords_size = 2; CoordSeqPtr cs( factory_->create((size_t)0, coords_size) ); - ensure( 0 != cs.get() ); + ensure( nullptr != cs.get() ); Coordinate c0(0, 0); Coordinate c1(3, 3); @@ -66,8 +66,8 @@ ensure_equals( cs->size(), coords_size ); // Create SegmentString instance - - NodedSegmentString segment(cs.release(), 0); + + NodedSegmentString segment(cs.release(), nullptr); ensure_equals( segment.size(), coords_size ); @@ -80,10 +80,10 @@ ensure_equals( node.segmentIndex, segment_index ); // only first endpoint is considered interior - ensure( node.isInterior() ); + ensure( node.isInterior() ); - // - // TODO - mloskot + // + // TODO - mloskot // 1. What's the purpose of isEndPoint() and how to test it? // 2. Add new test cases // @@ -104,7 +104,7 @@ const size_t coords_size = 2; CoordSeqPtr cs( factory_->create((size_t)0, coords_size) ); - ensure( 0 != cs.get() ); + ensure( nullptr != cs.get() ); Coordinate c0(0, 0); Coordinate c1(3, 3); @@ -114,8 +114,8 @@ ensure_equals( cs->size(), coords_size ); // Create SegmentString instance - - NodedSegmentString segment(cs.release(), 0); + + NodedSegmentString segment(cs.release(), nullptr); ensure_equals( segment.size(), coords_size ); @@ -128,7 +128,7 @@ ensure_equals( node.segmentIndex, segment_index ); // on first endpoint ... - ensure( ! node.isInterior() ); + ensure( ! node.isInterior() ); } @@ -146,7 +146,7 @@ const size_t coords_size = 2; CoordSeqPtr cs( factory_->create((size_t)0, coords_size) ); - ensure( 0 != cs.get() ); + ensure( nullptr != cs.get() ); Coordinate c0(0, 0); Coordinate c1(3, 3); @@ -156,8 +156,8 @@ ensure_equals( cs->size(), coords_size ); // Create SegmentString instance - - NodedSegmentString segment(cs.release(), 0); + + NodedSegmentString segment(cs.release(), nullptr); ensure_equals( segment.size(), coords_size ); @@ -170,7 +170,7 @@ ensure_equals( node.segmentIndex, segment_index ); // on first endpoint ... - ensure( node.isInterior() ); + ensure( node.isInterior() ); } @@ -188,7 +188,7 @@ const size_t coords_size = 2; CoordSeqPtr cs( factory_->create((size_t)0, coords_size) ); - ensure( 0 != cs.get() ); + ensure( nullptr != cs.get() ); Coordinate c0(0, 0); Coordinate c1(3, 3); @@ -198,8 +198,8 @@ ensure_equals( cs->size(), coords_size ); // Create SegmentString instance - - NodedSegmentString segment(cs.release(), 0); + + NodedSegmentString segment(cs.release(), nullptr); ensure_equals( segment.size(), coords_size ); @@ -212,7 +212,7 @@ ensure_equals( node.segmentIndex, segment_index ); // on first endpoint ... - ensure( node.isInterior() ); + ensure( node.isInterior() ); } diff -Nru geos-3.6.2/tests/unit/noding/SegmentPointComparatorTest.cpp geos-3.7.1/tests/unit/noding/SegmentPointComparatorTest.cpp --- geos-3.6.2/tests/unit/noding/SegmentPointComparatorTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/SegmentPointComparatorTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,10 +1,10 @@ -// +// // Test Suite for geos::noding::SegmentPointComparator class. // // Ports tests found in jts/junit/noding/SegmentPointComparatorTest.java // and jts/junit/noding/SegmentPointComparatorFullTest.java -#include +#include // geos #include #include @@ -28,16 +28,16 @@ struct test_segmentpointcomparator_data { - typedef std::auto_ptr + typedef std::unique_ptr CoordinateSequenceAutoPtr; - typedef std::auto_ptr + typedef std::unique_ptr SegmentStringAutoPtr; typedef geos::geom::Coordinate Coordinate; typedef geos::geom::LineSegment LineSegment; typedef geos::geom::PrecisionModel PrecisionModel; - + PrecisionModel pm; test_segmentpointcomparator_data() @@ -133,7 +133,7 @@ checkNodePosition(0, 1, 0, 1, 1, -1); } - // testQuadrant0 + // testQuadrant0 template<> template<> void object::test<2>() diff -Nru geos-3.6.2/tests/unit/noding/snapround/HotPixelTest.cpp geos-3.7.1/tests/unit/noding/snapround/HotPixelTest.cpp --- geos-3.6.2/tests/unit/noding/snapround/HotPixelTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/snapround/HotPixelTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::noding::snapround::HotPixel class. -#include +#include // geos #include #include diff -Nru geos-3.6.2/tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp geos-3.7.1/tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp --- geos-3.6.2/tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/noding/snapround/MCIndexSnapRounderTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::noding::snapround::MCIndexSnapRounder class. -#include +#include // geos #include #include @@ -49,9 +49,9 @@ typedef geos::geom::PrecisionModel PrecisionModel; typedef geos::geom::CoordinateSequence CoordinateSequence; - typedef std::auto_ptr CoordSeqPtr; - typedef std::auto_ptr GeomPtr; - + typedef std::unique_ptr CoordSeqPtr; + typedef std::unique_ptr GeomPtr; + typedef std::vector SegStrVct; typedef std::vector GeomVct; @@ -75,7 +75,7 @@ void getSegmentStrings(const Geometry& g, SegStrVct& vct) { CoordSeqPtr s ( g.getCoordinates() ); - vct.push_back( new NodedSegmentString(s.release(), 0) ); + vct.push_back( new NodedSegmentString(s.release(), nullptr) ); } GeomPtr readGeometry(const std::string& wkt) @@ -129,16 +129,16 @@ std::string wkt0("LINESTRING(99739.70596 -2239218.0625,99739.85604 -2239218.21258,99739.85605 -2239218.21258, 99739.85605 -2239218.21258,99739.86851 -2239218.21258,99739.86851 -2239218.20012, 99739.86851 -2239218.20012,99739.86851 -2239218.04, 99739.95848 -2239218.11015,99739.86851 -2239218.20012, 99739.86851 -2239218.20012,99739.85605 -2239218.21258, 99739.85605 -2239218.21258,99739.80901 -2239218.25961, 99739.80901 -2239218.25961,99739.68863 -2239218.38, 99739.86204 -2239218.31264,99739.80901 -2239218.25961, 99739.80901 -2239218.25961,99739.66841 -2239218.11901)"); SegStrVct nodable; getSegmentStrings(wkt0, nodable); - ensure_equals( nodable.size(), 1u ); + ensure_equals( nodable.size(), 1u ); - PrecisionModel pm(1e-5); + PrecisionModel pm(1e-5); MCIndexSnapRounder noder(pm); - ensure_equals( nodable.size(), 1u ); + ensure_equals( nodable.size(), 1u ); noder.computeNodes(&nodable); - std::auto_ptr noded ( noder.getNodedSubstrings() ); + std::unique_ptr noded ( noder.getNodedSubstrings() ); - ensure_equals( "1e-5", noded->size(), 178u ); + ensure_equals( "1e-5", noded->size(), 178u ); freeSegmentStrings(*noded); freeSegmentStrings(nodable); diff -Nru geos-3.6.2/tests/unit/operation/buffer/BufferBuilderTest.cpp geos-3.7.1/tests/unit/operation/buffer/BufferBuilderTest.cpp --- geos-3.6.2/tests/unit/operation/buffer/BufferBuilderTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/buffer/BufferBuilderTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,130 +1,130 @@ -// -// Test Suite for geos::operation::buffer::BufferBuilder class. - -// tut -#include -// geos -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -// std -#include -#include -#include - -namespace tut -{ - // - // Test Group - // - - // Common data used by tests - struct test_bufferbuilder_data - { - const geos::geom::GeometryFactory &gf; - geos::io::WKTReader wktreader; - int const default_quadrant_segments; - - typedef geos::geom::Geometry::AutoPtr GeomPtr; - typedef std::auto_ptr CSPtr; - - test_bufferbuilder_data() - : gf(*geos::geom::GeometryFactory::getDefaultInstance()) - , wktreader(&gf) - , default_quadrant_segments(geos::operation::buffer::BufferParameters::DEFAULT_QUADRANT_SEGMENTS) - { - ensure_equals(default_quadrant_segments, int(8)); - } - private: - // noncopyable - test_bufferbuilder_data(test_bufferbuilder_data const& other); - test_bufferbuilder_data& operator=(test_bufferbuilder_data const& rhs); - }; - - typedef test_group group; - typedef group::object object; - - group test_bufferbuilder_group("geos::operation::buffer::BufferBuilder"); - - // - // Test Cases - // - - // Left-side and right-side offset curve - // See http://trac.osgeo.org/geos/ticket/633 - template<> - template<> - void object::test<1>() - { - using geos::operation::buffer::BufferBuilder; - using geos::operation::buffer::BufferParameters; - using geos::algorithm::CGAlgorithms; - using geos::geom::LineString; - - // Original input from test in ticket #633 - //std::string wkt0("LINESTRING (" - // "665.7317504882812500 133.0762634277343700," - // "1774.4752197265625000 19.9391822814941410," - // "756.2413940429687500 466.8306579589843700," - // "626.1337890625000000 1898.0147705078125000," - // "433.8007202148437500 404.6052856445312500)"); - //double const distance = 57.164000837203; - - // Simplified equivalent input - std::string wkt0("LINESTRING(0 0, 50 -10, 10 10, 0 50, -10 10)"); - double const distance = 5; - - GeomPtr g0(wktreader.read(wkt0)); - ensure(0 != g0.get()); - ensure_equals(g0->getNumPoints(), std::size_t(5)); - - BufferParameters params; - params.setEndCapStyle(BufferParameters::CAP_FLAT); - params.setQuadrantSegments(8); - params.setJoinStyle(BufferParameters::JOIN_MITRE); - params.setMitreLimit(5.57F); - //params.setSingleSided(true); // DO NOT switch for non-areal input, see ticket #633 - BufferBuilder builder(params); - ensure(distance > 0); - - // left-side - { - GeomPtr gB(builder.bufferLineSingleSided(g0.get(), distance, true)); - ensure(0 != gB.get()); - ensure_equals(gB->getGeometryTypeId(), geos::geom::GEOS_LINESTRING); - // Left-side offset curve expected with 5+ vertices - ensure(gB->getNumPoints() >= g0->getNumPoints()); - - // For left-side offset curve, the offset will be at the left side of the input line - // and retain the same direction. - ensure_equals( - CGAlgorithms::isCCW(dynamic_cast(g0.get())->getCoordinatesRO()), - CGAlgorithms::isCCW(dynamic_cast(gB.get())->getCoordinatesRO())); - } - - // right-side - { - GeomPtr gB(builder.bufferLineSingleSided(g0.get(), distance, false)); - ensure(0 != gB.get()); - ensure_equals(gB->getGeometryTypeId(), geos::geom::GEOS_LINESTRING); - // Right-side offset curve expected with 5+ vertices - ensure(gB->getNumPoints() >= g0->getNumPoints()); - - // For right-side offset curve, it'll be at the right side - // and in the opposite direction. - ensure_equals( - CGAlgorithms::isCCW(dynamic_cast(g0.get())->getCoordinatesRO()), - !CGAlgorithms::isCCW(dynamic_cast(gB.get())->getCoordinatesRO())); - } - } - -} // namespace tut - +// +// Test Suite for geos::operation::buffer::BufferBuilder class. + +// tut +#include +// geos +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +// std +#include +#include +#include + +namespace tut +{ + // + // Test Group + // + + // Common data used by tests + struct test_bufferbuilder_data + { + const geos::geom::GeometryFactory &gf; + geos::io::WKTReader wktreader; + int const default_quadrant_segments; + + typedef geos::geom::Geometry::Ptr GeomPtr; + typedef std::unique_ptr CSPtr; + + test_bufferbuilder_data() + : gf(*geos::geom::GeometryFactory::getDefaultInstance()) + , wktreader(&gf) + , default_quadrant_segments(geos::operation::buffer::BufferParameters::DEFAULT_QUADRANT_SEGMENTS) + { + ensure_equals(default_quadrant_segments, int(8)); + } + private: + // noncopyable + test_bufferbuilder_data(test_bufferbuilder_data const& other) = delete; + test_bufferbuilder_data& operator=(test_bufferbuilder_data const& rhs) = delete; + }; + + typedef test_group group; + typedef group::object object; + + group test_bufferbuilder_group("geos::operation::buffer::BufferBuilder"); + + // + // Test Cases + // + + // Left-side and right-side offset curve + // See http://trac.osgeo.org/geos/ticket/633 + template<> + template<> + void object::test<1>() + { + using geos::operation::buffer::BufferBuilder; + using geos::operation::buffer::BufferParameters; + using geos::algorithm::CGAlgorithms; + using geos::geom::LineString; + + // Original input from test in ticket #633 + //std::string wkt0("LINESTRING (" + // "665.7317504882812500 133.0762634277343700," + // "1774.4752197265625000 19.9391822814941410," + // "756.2413940429687500 466.8306579589843700," + // "626.1337890625000000 1898.0147705078125000," + // "433.8007202148437500 404.6052856445312500)"); + //double const distance = 57.164000837203; + + // Simplified equivalent input + std::string wkt0("LINESTRING(0 0, 50 -10, 10 10, 0 50, -10 10)"); + double const distance = 5; + + GeomPtr g0(wktreader.read(wkt0)); + ensure(nullptr != g0.get()); + ensure_equals(g0->getNumPoints(), std::size_t(5)); + + BufferParameters params; + params.setEndCapStyle(BufferParameters::CAP_FLAT); + params.setQuadrantSegments(8); + params.setJoinStyle(BufferParameters::JOIN_MITRE); + params.setMitreLimit(5.57F); + //params.setSingleSided(true); // DO NOT switch for non-areal input, see ticket #633 + BufferBuilder builder(params); + ensure(distance > 0); + + // left-side + { + GeomPtr gB(builder.bufferLineSingleSided(g0.get(), distance, true)); + ensure(nullptr != gB.get()); + ensure_equals(gB->getGeometryTypeId(), geos::geom::GEOS_LINESTRING); + // Left-side offset curve expected with 5+ vertices + ensure(gB->getNumPoints() >= g0->getNumPoints()); + + // For left-side offset curve, the offset will be at the left side of the input line + // and retain the same direction. + ensure_equals( + CGAlgorithms::isCCW(dynamic_cast(g0.get())->getCoordinatesRO()), + CGAlgorithms::isCCW(dynamic_cast(gB.get())->getCoordinatesRO())); + } + + // right-side + { + GeomPtr gB(builder.bufferLineSingleSided(g0.get(), distance, false)); + ensure(nullptr != gB.get()); + ensure_equals(gB->getGeometryTypeId(), geos::geom::GEOS_LINESTRING); + // Right-side offset curve expected with 5+ vertices + ensure(gB->getNumPoints() >= g0->getNumPoints()); + + // For right-side offset curve, it'll be at the right side + // and in the opposite direction. + ensure_equals( + CGAlgorithms::isCCW(dynamic_cast(g0.get())->getCoordinatesRO()), + !CGAlgorithms::isCCW(dynamic_cast(gB.get())->getCoordinatesRO())); + } + } + +} // namespace tut + diff -Nru geos-3.6.2/tests/unit/operation/buffer/BufferOpTest.cpp geos-3.7.1/tests/unit/operation/buffer/BufferOpTest.cpp --- geos-3.6.2/tests/unit/operation/buffer/BufferOpTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/buffer/BufferOpTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::buffer::BufferOp class. // tut -#include +#include // geos #include #include @@ -31,8 +31,8 @@ geos::io::WKTReader wktreader; int const default_quadrant_segments; - typedef geos::geom::Geometry::AutoPtr GeomPtr; - typedef std::auto_ptr CSPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; + typedef std::unique_ptr CSPtr; test_bufferop_data() : gf(*geos::geom::GeometryFactory::getDefaultInstance()) @@ -43,8 +43,8 @@ } private: // noncopyable - test_bufferop_data(test_bufferop_data const& other); - test_bufferop_data& operator=(test_bufferop_data const& rhs); + test_bufferop_data(test_bufferop_data const& other) = delete; + test_bufferop_data& operator=(test_bufferop_data const& rhs) = delete; }; typedef test_group group; @@ -107,7 +107,7 @@ // Buffer point with custom parameters: 32 quadrant segments int const segments = 32; BufferParameters params(segments); - + BufferOp op(g0.get(), params); double const distance = 1.0; @@ -304,7 +304,7 @@ ensure(gBuffer2->getNumPoints() >= std::size_t(5)); ensure(gBuffer1->equals(gBuffer2.get())); - ensure(gBuffer2->equals(gBuffer1.get())); + ensure(gBuffer2->equals(gBuffer1.get())); } // Test for ticket #473 diff -Nru geos-3.6.2/tests/unit/operation/buffer/BufferParametersTest.cpp geos-3.7.1/tests/unit/operation/buffer/BufferParametersTest.cpp --- geos-3.6.2/tests/unit/operation/buffer/BufferParametersTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/buffer/BufferParametersTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::buffer::BufferParameters class. // tut -#include +#include // geos #include #include @@ -24,8 +24,8 @@ private: // noncopyable - test_bufferparameters_data(test_bufferparameters_data const& other); - test_bufferparameters_data& operator=(test_bufferparameters_data const& rhs); + test_bufferparameters_data(test_bufferparameters_data const& other) = delete; + test_bufferparameters_data& operator=(test_bufferparameters_data const& rhs) = delete; }; typedef test_group group; diff -Nru geos-3.6.2/tests/unit/operation/distance/DistanceOpTest.cpp geos-3.7.1/tests/unit/operation/distance/DistanceOpTest.cpp --- geos-3.6.2/tests/unit/operation/distance/DistanceOpTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/distance/DistanceOpTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::distance::DistanceOp class. // tut -#include +#include // geos #include #include @@ -30,8 +30,8 @@ { geos::io::WKTReader wktreader; - typedef geos::geom::Geometry::AutoPtr GeomPtr; - typedef std::auto_ptr CSPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; + typedef std::unique_ptr CSPtr; test_distanceop_data() : wktreader() @@ -220,7 +220,7 @@ ensure_equals(dist.distance(), 0); - ensure_equals(dist.closestPoints(), (void*)0); + ensure_equals(dist.closestPoints(), (void*)nullptr); } template<> @@ -398,7 +398,7 @@ ensure_equals(dist.distance(), 0); - ensure_equals(dist.closestPoints(), (void*)0); + ensure_equals(dist.closestPoints(), (void*)nullptr); } @@ -466,7 +466,7 @@ const char* wkb_geom2 = "010100000000000000000000000000000000000000"; geos::geom::PrecisionModel precision(geos::geom::PrecisionModel::FLOATING); - GeometryFactory::unique_ptr f(GeometryFactory::create(&precision)); + GeometryFactory::Ptr f(GeometryFactory::create(&precision)); std::istringstream istr1(wkb_geom1); std::istringstream istr2(wkb_geom2); geos::io::WKBReader wkb(*f); diff -Nru geos-3.6.2/tests/unit/operation/intersection/RectangleIntersectionTest.cpp geos-3.7.1/tests/unit/operation/intersection/RectangleIntersectionTest.cpp --- geos-3.6.2/tests/unit/operation/intersection/RectangleIntersectionTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/intersection/RectangleIntersectionTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::intersection::RectangleIntersection class. // tut -#include +#include // geos #include #include @@ -29,7 +29,7 @@ geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; typedef geos::geom::Geometry Geom; typedef geos::operation::intersection::Rectangle Rectangle; typedef geos::operation::intersection::RectangleIntersection RectangleIntersection; @@ -101,7 +101,6 @@ typedef group::object object; group test_rectangleintersectiontest_group("geos::operation::intersection::RectangleIntersection"); - // inside template<> template<> void object::test<1>() { @@ -1514,4 +1513,19 @@ "POLYGON((0 0,0 10,10 10,10 0,0 0))"; doClipTest(inp, exp, r); } + + // PostGIS hanging unit test + template<> template<> void object::test<208>() + { + Rectangle r(3.0481343214686657e-14, -20000000.000000, 20000000.000000, -1.000000); + const char *clip = + "POLYGON((3.0481343214686657e-14 -20000000, 200000000 -20000000, 200000000 -1, 3.0481343214686657e-14 -1, 3.0481343214686657e-14 -20000000))"; + const char *inp = + "POLYGON((3.0481343214686657e-14 -20000000, 3.0481343214686657e-14 -1, 1.570795680861262382313481289e-3 -0.999998766299703523152686557296, 3.141587485909849188081555127e-3 -0.999995065201858102099663483386, 3.0481343214686657e-14 -20000000))"; + + GeomPtr isect{readWKT(clip)->intersection(readWKT(inp).get())}; + std::string exp = wktwriter.write(isect.get()); + + doClipTest(inp, exp, r, 1e-20); + } } diff -Nru geos-3.6.2/tests/unit/operation/IsSimpleOpTest.cpp geos-3.7.1/tests/unit/operation/IsSimpleOpTest.cpp --- geos-3.6.2/tests/unit/operation/IsSimpleOpTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/IsSimpleOpTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::IsSimpleOp class // Ported from JTS junit/operation/IsSimpleTest.java -#include +#include // geos #include #include @@ -28,7 +28,7 @@ { typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; double tolerance_; @@ -55,7 +55,7 @@ void object::test<1>() { const std::string wkt("MULTILINESTRING ((20 120, 120 20), (20 20, 120 120))"); - const Geometry::AutoPtr geom(reader_.read(wkt)); + const Geometry::Ptr geom(reader_.read(wkt)); // TODO - mloskot: What about support of new features of BoundaryNodeRule, in JTS @@ -79,7 +79,7 @@ void object::test<2>() { const std::string wkt("MULTILINESTRING ((100 100, 20 20, 200 20, 100 100), (100 200, 100 100))"); - const Geometry::AutoPtr geom(reader_.read(wkt)); + const Geometry::Ptr geom(reader_.read(wkt)); IsSimpleOp op; bool simple = op.isSimpleLinearGeometry(geom.get()); @@ -93,7 +93,7 @@ void object::test<3>() { const std::string wkt("LINESTRING (100 100, 20 20, 200 20, 100 100)"); - const Geometry::AutoPtr geom(reader_.read(wkt)); + const Geometry::Ptr geom(reader_.read(wkt)); IsSimpleOp op; bool simple = op.isSimpleLinearGeometry(geom.get()); diff -Nru geos-3.6.2/tests/unit/operation/linemerge/LineMergerTest.cpp geos-3.7.1/tests/unit/operation/linemerge/LineMergerTest.cpp --- geos-3.6.2/tests/unit/operation/linemerge/LineMergerTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/linemerge/LineMergerTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::linemerge::LineMerger class. // tut -#include +#include // geos #include #include @@ -34,14 +34,14 @@ geos::io::WKTWriter wktwriter; typedef geos::geom::Geometry Geom; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; GeomVect inpGeoms; GeomVect expGeoms; LineVect* mrgGeoms; test_linemerger_data() - : wktreader(), wktwriter(), mrgGeoms(0) + : wktreader(), wktwriter(), mrgGeoms(nullptr) { wktwriter.setTrim(true); } @@ -128,13 +128,13 @@ return false; } - + private: // noncopyable - test_linemerger_data(test_linemerger_data const& other); - test_linemerger_data& operator=(test_linemerger_data const& rhs); + test_linemerger_data(test_linemerger_data const& other) = delete; + test_linemerger_data& operator=(test_linemerger_data const& rhs) = delete; }; typedef test_group group; @@ -152,10 +152,10 @@ const char* inpWKT[] = { "LINESTRING (120 120, 180 140)", "LINESTRING (200 180, 180 140)", "LINESTRING (200 180, 240 180)", - NULL }; + nullptr }; const char* expWKT[] = { "LINESTRING (120 120, 180 140, 200 180, 240 180)", - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -172,12 +172,12 @@ "LINESTRING (40 320, 60 320, 80 340)", "LINESTRING (160 320, 180 340, 200 320)", "LINESTRING (200 320, 180 300, 160 320)", - NULL }; + nullptr }; const char* expWKT[] = { "LINESTRING (160 320, 180 340, 200 320, 180 300, 160 320)", "LINESTRING (40 320, 20 340, 0 320, 20 300, 40 320)", "LINESTRING (40 320, 60 320, 80 340, 120 300, 140 320, 160 320)", - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -188,10 +188,10 @@ { const char* inpWKT[] = { "LINESTRING (0 0, 100 100)", "LINESTRING (0 100, 100 0)", - NULL }; + nullptr }; const char* expWKT[] = { "LINESTRING (0 0, 100 100)", "LINESTRING (0 100, 100 0)", - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -202,9 +202,9 @@ const char* inpWKT[] = { "LINESTRING EMPTY", "LINESTRING EMPTY", - NULL }; + nullptr }; const char* expWKT[] = { - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -214,9 +214,9 @@ void object::test<5>() { const char* inpWKT[] = { - NULL }; + nullptr }; const char* expWKT[] = { - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -227,9 +227,9 @@ { const char* inpWKT[] = { "LINESTRING (10642 31441, 10642 31441)", - NULL }; + nullptr }; const char* expWKT[] = { - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -243,10 +243,10 @@ "LINESTRING(0 5, 5 5)", "LINESTRING(5 5, 5 0)", "LINESTRING(5 0, 0 0)", - NULL }; + nullptr }; const char* expWKT[] = { "LINESTRING(0 0, 0 5, 5 5, 5 0, 0 0)", - NULL }; + nullptr }; doTest(inpWKT, expWKT); } @@ -261,7 +261,7 @@ GeomPtr line4(readWKT("LINESTRING(5 0, 0 0)")); // Union segments incrementally GeomPtr lines12(line1->Union(line2.get())); - GeomPtr lines123(lines12->Union(line3.get())); + GeomPtr lines123(lines12->Union(line3.get())); GeomPtr lines1234(lines123->Union(line4.get())); // MultiLineString expected by design, see corresponding test in OverlayOpUnionTest diff -Nru geos-3.6.2/tests/unit/operation/linemerge/LineSequencerTest.cpp geos-3.7.1/tests/unit/operation/linemerge/LineSequencerTest.cpp --- geos-3.6.2/tests/unit/operation/linemerge/LineSequencerTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/linemerge/LineSequencerTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::linemerge::LineSequencer class. // tut -#include +#include // geos #include #include @@ -34,7 +34,7 @@ geos::io::WKTWriter wktwriter; typedef geos::geom::Geometry Geom; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; GeomVect inpGeoms; @@ -71,7 +71,7 @@ if ( ! sequencer.isSequenceable() ) { ensure( expectedWKT.empty() ); - } else { + } else { GeomPtr expected = readWKT(expectedWKT); GeomPtr result ( sequencer.getSequencedLineStrings() ); ensure( expected->equalsExact( result.get() ) ); @@ -102,8 +102,8 @@ private: // noncopyable - test_linesequencer_data(test_linesequencer_data const& other); - test_linesequencer_data& operator=(test_linesequencer_data const& rhs); + test_linesequencer_data(test_linesequencer_data const& other) = delete; + test_linesequencer_data& operator=(test_linesequencer_data const& rhs) = delete; }; typedef test_group group; @@ -123,8 +123,8 @@ "LINESTRING ( 0 0, 0 10 )", "LINESTRING ( 0 20, 0 30 )", "LINESTRING ( 0 10, 0 20 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 0 20), (0 20, 0 30))"; runLineSequencer(inpWKT, expWKT); @@ -137,8 +137,8 @@ const char* inpWKT[] = { "LINESTRING ( 0 0, 0 10 )", "LINESTRING ( 0 10, 0 0 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 0 0))"; runLineSequencer(inpWKT, expWKT); } @@ -152,8 +152,8 @@ "LINESTRING ( 0 20, 0 30 )", "LINESTRING ( 0 30, 0 00 )", "LINESTRING ( 0 10, 0 20 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 0 20), (0 20, 0 30), (0 30, 0 0))"; runLineSequencer(inpWKT, expWKT); } @@ -167,8 +167,8 @@ "LINESTRING ( 0 10, 0 0 )", "LINESTRING ( 0 0, 0 20 )", "LINESTRING ( 0 20, 0 0 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 10, 0 0), (0 0, 0 20), (0 20, 0 0), (0 0, 0 10))"; runLineSequencer(inpWKT, expWKT); } @@ -185,9 +185,9 @@ "LINESTRING ( 0 10, 0 20 )", "LINESTRING ( 10 10, 10 20 )", "LINESTRING ( 0 20, 10 20 )", - + "LINESTRING ( 10 20, 30 30 )", - NULL }; + nullptr }; const char* expWKT = ""; runLineSequencer(inpWKT, expWKT); } @@ -200,8 +200,8 @@ "LINESTRING ( 0 0, 0 10 )", "LINESTRING ( 0 10, 10 10 )", "LINESTRING ( 10 10, 10 20, 0 10 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 10 10), (10 10, 10 20, 0 10))"; runLineSequencer(inpWKT, expWKT); } @@ -215,8 +215,8 @@ "LINESTRING ( 0 10, 10 10, 10 20, 0 10 )", "LINESTRING ( 0 30, 0 20 )", "LINESTRING ( 0 20, 0 10 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 10 10, 10 20, 0 10), (0 10, 0 20), (0 20, 0 30))"; runLineSequencer(inpWKT, expWKT); } @@ -232,8 +232,8 @@ "LINESTRING ( 0 20, 0 10 )", "LINESTRING ( 0 60, 0 50 )", "LINESTRING ( 0 40, 0 50 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 10 10, 10 20, 0 10), (0 10, 0 20), (0 20, 0 30), (0 40, 0 50), (0 50, 0 60))"; runLineSequencer(inpWKT, expWKT); } @@ -250,8 +250,8 @@ "LINESTRING ( 0 20, 0 10 )", "LINESTRING ( 0 60, 0 50 )", "LINESTRING ( 0 40, 0 50 )", - NULL }; - const char* expWKT = + nullptr }; + const char* expWKT = "MULTILINESTRING ((0 0, 0 10), (0 10, 40 40, 40 20, 0 10), (0 10, 10 10, 10 20, 0 10), (0 10, 0 20), (0 20, 0 30), (0 40, 0 50), (0 50, 0 60))"; runLineSequencer(inpWKT, expWKT); diff -Nru geos-3.6.2/tests/unit/operation/overlay/OverlayOpUnionTest.cpp geos-3.7.1/tests/unit/operation/overlay/OverlayOpUnionTest.cpp --- geos-3.6.2/tests/unit/operation/overlay/OverlayOpUnionTest.cpp 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/overlay/OverlayOpUnionTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,7 +1,7 @@ -// +// // Test Suite for geos::operation::OverlayOp class for UNION -#include +#include // geos #include #include @@ -24,9 +24,9 @@ struct test_overlayopunion_data { - typedef geos::geom::Geometry::AutoPtr GeometryPtr; + typedef geos::geom::Geometry::Ptr GeometryPtr; typedef geos::geom::GeometryFactory GeometryFactory; - typedef geos::geom::GeometryFactory::unique_ptr GeometryFactoryPtr; + typedef geos::geom::GeometryFactory::Ptr GeometryFactoryPtr; }; typedef test_group group; @@ -52,11 +52,11 @@ // union segments incrementally GeometryPtr lines12(line1->Union(line2.get())); - GeometryPtr lines123(lines12->Union(line3.get())); + GeometryPtr lines123(lines12->Union(line3.get())); GeometryPtr lines1234(lines123->Union(line4.get())); ensure_equals(lines1234->getGeometryTypeId(), geos::geom::GEOS_MULTILINESTRING); - + // NOTE: Since the union operation makes no effort to simplify and // drop nodes of degree 2 from the built topology, // do not expect GEOS_LINESTRING. diff -Nru geos-3.6.2/tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp geos-3.7.1/tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp --- geos-3.6.2/tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/overlay/snap/GeometrySnapperTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::overlay::snap::GeometrySnapper class. // tut -#include +#include // geos #include #include @@ -22,7 +22,7 @@ // Common data used by tests struct test_geometrysnapper_data { - typedef std::auto_ptr GeomAutoPtr; + typedef std::unique_ptr GeomPtr; geos::io::WKTReader reader; @@ -49,21 +49,21 @@ template<> void object::test<1>() { - GeomAutoPtr src(reader.read( + GeomPtr src(reader.read( "POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0))" )); GeometrySnapper snapper( *(src.get()) ); - GeomAutoPtr snap(reader.read( + GeomPtr snap(reader.read( "MULTIPOINT ((0 0), (0 100.0000001), (100 100), (100 0))" )); - GeomAutoPtr expected(reader.read( + GeomPtr expected(reader.read( "POLYGON ((0 0, 0 100.0000001, 100 100, 100 0, 0 0))" )); - GeomAutoPtr ret(snapper.snapTo( *(snap.get()), 0.000001 )); + GeomPtr ret(snapper.snapTo( *(snap.get()), 0.000001 )); ensure( ret->equalsExact(expected.get(),0) ); @@ -74,21 +74,21 @@ template<> void object::test<2>() { - GeomAutoPtr src(reader.read( + GeomPtr src(reader.read( "POLYGON ((0 0, 0 100, 100 100, 100 0, 0 0))" )); GeometrySnapper snapper( *(src.get()) ); - GeomAutoPtr snap(reader.read( + GeomPtr snap(reader.read( "MULTIPOINT ((0.0000001 50))" )); - GeomAutoPtr expected(reader.read( + GeomPtr expected(reader.read( "POLYGON ((0 0, 0.0000001 50, 0 100, 100 100, 100 0, 0 0))" )); - GeomAutoPtr ret(snapper.snapTo( *(snap.get()), 0.000001 )); + GeomPtr ret(snapper.snapTo( *(snap.get()), 0.000001 )); ensure( ret->equalsExact(expected.get(),0) ); } diff -Nru geos-3.6.2/tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp geos-3.7.1/tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp --- geos-3.6.2/tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp 2016-10-03 15:03:53.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/overlay/snap/LineStringSnapperTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::overlay::snap::LineStringSnapper class. // tut -#include +#include // geos #include #include @@ -42,7 +42,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // source coordinates @@ -80,7 +80,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // source coordinates @@ -104,7 +104,7 @@ CoordsVectAptr ret(snapper.snapTo(snpCoords)); // snap point a should be inserted - ensure_equals(ret->size(), 3u); + ensure_equals(ret->size(), 3u); ensure_equals(ret->operator[](0), src_a); ensure_equals(ret->operator[](1), snp_a); ensure_equals(ret->operator[](2), src_b); @@ -119,7 +119,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // source coordinates @@ -164,7 +164,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // source coordinates @@ -196,7 +196,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // source coordinates @@ -223,7 +223,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // source coordinates @@ -252,7 +252,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // Source: (0 0, 10 0, 0 1) @@ -300,7 +300,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // Source: (0 0, 1 0, 1 1) @@ -338,7 +338,7 @@ using geos::geom::Coordinate; using geos::operation::overlay::snap::LineStringSnapper; - typedef std::auto_ptr CoordsVectAptr; + typedef std::unique_ptr CoordsVectAptr; // Source: (1 1, 5 9, 9 1, 1 1) diff -Nru geos-3.6.2/tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp geos-3.7.1/tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp --- geos-3.6.2/tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/overlay/validate/FuzzyPointLocatorTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,9 +1,9 @@ -// +// // Test Suite for geos::operation::overlay::validate::FuzzyPointLocator class. // tut -#include +#include // geos #include #include @@ -28,7 +28,7 @@ geos::io::WKTReader wktreader; geos::io::WKBReader wkbreader; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; GeomPtr g; @@ -41,7 +41,7 @@ g.reset(wktreader.read(wkt)); } }; - + typedef test_group group; typedef group::object object; @@ -63,11 +63,11 @@ FuzzyPointLocator locator(*g, 10); ensure_equals(locator.getLocation(Coordinate(10, 0)), - Location::BOUNDARY); + Location::BOUNDARY); // 8 units away from boundary ensure_equals(locator.getLocation(Coordinate(18, 5)), - Location::BOUNDARY); + Location::BOUNDARY); } template<> @@ -88,11 +88,11 @@ // 10 units away from boundary ensure_equals(locator.getLocation(Coordinate(20, 2)), - Location::EXTERIOR); + Location::EXTERIOR); // 10 units away from boundary ensure_equals(locator.getLocation(Coordinate(-10, 5)), - Location::EXTERIOR); + Location::EXTERIOR); } template<> @@ -107,11 +107,11 @@ // 5 units away from boundary ensure_equals(locator.getLocation(Coordinate(5, 5)), - Location::BOUNDARY); + Location::BOUNDARY); // 2 units away from boundary ensure_equals(locator.getLocation(Coordinate(2, 8)), - Location::BOUNDARY); + Location::BOUNDARY); } template<> @@ -126,11 +126,11 @@ // 5 units away from boundary ensure_equals(locator.getLocation(Coordinate(5, 5)), - Location::INTERIOR); + Location::INTERIOR); // 3 units away from boundary ensure_equals(locator.getLocation(Coordinate(3, 7)), - Location::INTERIOR); + Location::INTERIOR); } @@ -148,7 +148,7 @@ FuzzyPointLocator locator(*g0, 0.00001); // On the boundary ? - ensure_equals(locator.getLocation(pt), Location::BOUNDARY); + ensure_equals(locator.getLocation(pt), Location::BOUNDARY); } @@ -168,7 +168,7 @@ FuzzyPointLocator locator(*g0, 0.000001); // On the boundary ? - ensure_equals(locator.getLocation(pt), Location::INTERIOR); + ensure_equals(locator.getLocation(pt), Location::INTERIOR); } @@ -188,7 +188,7 @@ FuzzyPointLocator locator(*g0, 0.000001); // On the boundary ? - ensure_equals(locator.getLocation(pt), Location::EXTERIOR); + ensure_equals(locator.getLocation(pt), Location::EXTERIOR); } diff -Nru geos-3.6.2/tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp geos-3.7.1/tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp --- geos-3.6.2/tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/overlay/validate/OffsetPointGeneratorTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::overlay::validate::OffsetPointGenerator class. // tut -#include +#include // geos #include #include @@ -31,7 +31,7 @@ geos::io::WKTReader wktreader; geos::algorithm::PointLocator locator; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; GeomPtr g; @@ -55,7 +55,7 @@ for (size_t i=0, n=coords.size(); i pg(gf.createPoint(c)); + unique_ptr pg(gf.createPoint(c)); double rdist = g->distance(pg.get()); if ( rdist > dist ) { @@ -66,7 +66,7 @@ } }; - + typedef test_group group; typedef group::object object; @@ -84,7 +84,7 @@ using geos::operation::overlay::validate::OffsetPointGenerator; using geos::geom::Coordinate; using geos::algorithm::PointLocator; - using std::auto_ptr; + using std::unique_ptr; using std::vector; std::string wkt("POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))"); @@ -93,7 +93,7 @@ double dist = 10; OffsetPointGenerator gen(*g, dist); - auto_ptr< vector > coords(gen.getPoints()); + unique_ptr< vector > coords(gen.getPoints()); ensure_equals(coords->size(), (g->getNumPoints()-1)*2); @@ -108,7 +108,7 @@ using geos::operation::overlay::validate::OffsetPointGenerator; using geos::geom::Location; using geos::geom::Coordinate; - using std::auto_ptr; + using std::unique_ptr; using std::vector; std::string wkt("POLYGON((0 0, 10 0, 10 5, 10 10, 0 10, 0 0))"); @@ -118,7 +118,7 @@ OffsetPointGenerator gen(*g, dist); - auto_ptr< vector > coords(gen.getPoints()); + unique_ptr< vector > coords(gen.getPoints()); ensure_equals(coords->size(), 10u); @@ -132,7 +132,7 @@ using geos::operation::overlay::validate::OffsetPointGenerator; using geos::geom::Location; using geos::geom::Coordinate; - using std::auto_ptr; + using std::unique_ptr; using std::vector; std::string wkt("POINT(10 -10)"); @@ -142,7 +142,7 @@ OffsetPointGenerator gen(*g, dist); - auto_ptr< vector > coords(gen.getPoints()); + unique_ptr< vector > coords(gen.getPoints()); ensure_equals(coords->size(), 0u); @@ -156,7 +156,7 @@ using geos::operation::overlay::validate::OffsetPointGenerator; using geos::geom::Location; using geos::geom::Coordinate; - using std::auto_ptr; + using std::unique_ptr; using std::vector; std::string wkt("LINESTRING(10 -10, 5 600)"); @@ -166,7 +166,7 @@ OffsetPointGenerator gen(*g, dist); - auto_ptr< vector > coords(gen.getPoints()); + unique_ptr< vector > coords(gen.getPoints()); ensure_equals(coords->size(), 2u); @@ -180,7 +180,7 @@ using geos::operation::overlay::validate::OffsetPointGenerator; using geos::geom::Location; using geos::geom::Coordinate; - using std::auto_ptr; + using std::unique_ptr; using std::vector; std::string wkt("MULTILINESTRING((10 -10, 5 600), (1045 -12, 0 0, -435 34))"); @@ -190,7 +190,7 @@ OffsetPointGenerator gen(*g, dist); - auto_ptr< vector > coords(gen.getPoints()); + unique_ptr< vector > coords(gen.getPoints()); ensure_equals(coords->size(), 6u); diff -Nru geos-3.6.2/tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cpp geos-3.7.1/tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cpp --- geos-3.6.2/tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/overlay/validate/OverlayResultValidatorTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::overlay::validate::OverlayResultValidator class. // tut -#include +#include // geos #include #include @@ -30,7 +30,7 @@ geos::io::WKTReader wktreader; geos::algorithm::PointLocator locator; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; GeomPtr g0, g1, gres; @@ -41,7 +41,7 @@ } }; - + typedef test_group group; typedef group::object object; @@ -152,7 +152,7 @@ template<> template<> - void object::test<6>() + void object::test<6>() { std::string wkt0("POLYGON ((20.0 40.0, 20.0 200.0, 180.0 200.0, 180.0 120.0, 140.0 120.0, 180.0 119.0, 180.0 40.0, 20.0 40.0), (140.0 160.0, 80.0 120.0, 140.0 80.0, 140.0 160.0))"); diff -Nru geos-3.6.2/tests/unit/operation/polygonize/PolygonizeTest.cpp geos-3.7.1/tests/unit/operation/polygonize/PolygonizeTest.cpp --- geos-3.6.2/tests/unit/operation/polygonize/PolygonizeTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/polygonize/PolygonizeTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,11 +1,11 @@ -// +// // Test Suite for geos::operation::polygonize::Polygonizer class. // // Port of junit/operation/polygonize/PolygonizeTest.java // // tut -#include +#include // geos #include #include @@ -32,7 +32,7 @@ geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; typedef geos::geom::Geometry Geom; typedef geos::geom::Polygon Poly; typedef geos::operation::polygonize::Polygonizer Polygonizer; @@ -72,7 +72,7 @@ } template - bool contains( T& cnt, const Geom* g) + bool contains( T& cnt, const Geom* g) { for (typename T::iterator i=cnt.begin(), e=cnt.end(); i!=e; ++i) { const Geom* element = *i; @@ -84,13 +84,13 @@ } template - bool compare( T& ex, S& ob) + bool compare( T& ex, S& ob) { using std::cout; using std::endl; if ( ex.size() != ob.size() ) { - cout << "Expected " << ex.size() << " polygons, obtained " + cout << "Expected " << ex.size() << " polygons, obtained " << ob.size() << endl; return false; } @@ -103,7 +103,7 @@ } return true; - + } bool doTest(const char* const* inputWKT, const char* const* expectWKT) @@ -119,7 +119,7 @@ Polygonizer polygonizer; polygonizer.add(&inputGeoms); - std::auto_ptr< std::vector > retGeoms; + std::unique_ptr< std::vector > retGeoms; retGeoms.reset( polygonizer.getPolygons() ); delAll(inputGeoms); @@ -154,11 +154,11 @@ static char const* const inp[] = { "LINESTRING EMPTY", "LINESTRING EMPTY", - NULL + nullptr }; static char const* const exp[] = { - NULL + nullptr }; doTest(inp, exp); @@ -172,13 +172,13 @@ static char const* const inp[] = { "LINESTRING (100 180, 20 20, 160 20, 100 180)", "LINESTRING (100 180, 80 60, 120 60, 100 180)", - NULL + nullptr }; static char const* const exp[] = { "POLYGON ((100 180, 120 60, 80 60, 100 180))", "POLYGON ((100 180, 160 20, 20 20, 100 180), (100 180, 80 60, 120 60, 100 180))", - NULL + nullptr }; doTest(inp, exp); diff -Nru geos-3.6.2/tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp geos-3.7.1/tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp --- geos-3.6.2/tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/sharedpaths/SharedPathsOpTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::sharedpaths::SharedPathsOp class. // tut -#include +#include // geos #include #include @@ -31,7 +31,7 @@ geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; SharedPathsOp::PathList forwDir; SharedPathsOp::PathList backDir; @@ -44,8 +44,8 @@ private: // noncopyable - test_shpathop_data(test_shpathop_data const& other); - test_shpathop_data& operator=(test_shpathop_data const& rhs); + test_shpathop_data(test_shpathop_data const& other) = delete; + test_shpathop_data& operator=(test_shpathop_data const& rhs) = delete; }; typedef test_group group; @@ -297,7 +297,7 @@ forwDir.clear(); backDir.clear(); SharedPathsOp::sharedPathsOp(*g0, *g1, forwDir, backDir); ensure_equals(forwDir.size(), 2u); - ensure_equals(wktwriter.write(forwDir[0]), "LINESTRING (0 0, 5 10)"); + ensure_equals(wktwriter.write(forwDir[0]), "LINESTRING (0 0, 5 10)"); ensure_equals(wktwriter.write(forwDir[1]), "LINESTRING (5 10, 10 10)"); SharedPathsOp::clearEdges(forwDir); @@ -314,7 +314,7 @@ forwDir.clear(); backDir.clear(); SharedPathsOp::sharedPathsOp(*g0, *g1, forwDir, backDir); ensure_equals(backDir.size(), 2u); - ensure_equals(wktwriter.write(backDir[0]), "LINESTRING (0 0, 5 10)"); + ensure_equals(wktwriter.write(backDir[0]), "LINESTRING (0 0, 5 10)"); ensure_equals(wktwriter.write(backDir[1]), "LINESTRING (5 10, 10 10)"); SharedPathsOp::clearEdges(backDir); @@ -331,7 +331,7 @@ forwDir.clear(); backDir.clear(); SharedPathsOp::sharedPathsOp(*g0, *g1, forwDir, backDir); ensure_equals(forwDir.size(), 1u); - ensure_equals(wktwriter.write(forwDir[0]), "LINESTRING (0 0, 10 0)"); + ensure_equals(wktwriter.write(forwDir[0]), "LINESTRING (0 0, 10 0)"); SharedPathsOp::clearEdges(forwDir); ensure(backDir.empty()); @@ -347,7 +347,7 @@ forwDir.clear(); backDir.clear(); SharedPathsOp::sharedPathsOp(*g0, *g1, forwDir, backDir); ensure_equals(forwDir.size(), 1u); - ensure_equals(wktwriter.write(forwDir[0]), "LINESTRING (0 0, 10 0)"); + ensure_equals(wktwriter.write(forwDir[0]), "LINESTRING (0 0, 10 0)"); SharedPathsOp::clearEdges(forwDir); ensure(backDir.empty()); @@ -363,13 +363,13 @@ forwDir.clear(); backDir.clear(); SharedPathsOp::sharedPathsOp(*g0, *g1, forwDir, backDir); ensure_equals(backDir.size(), 1u); - ensure_equals(wktwriter.write(backDir[0]), "LINESTRING (0 0, 10 0)"); + ensure_equals(wktwriter.write(backDir[0]), "LINESTRING (0 0, 10 0)"); SharedPathsOp::clearEdges(backDir); ensure(forwDir.empty()); } - // line_closed_rhr - line + // line_closed_rhr - line template<> template<> void object::test<21>() { @@ -379,7 +379,7 @@ forwDir.clear(); backDir.clear(); SharedPathsOp::sharedPathsOp(*g0, *g1, forwDir, backDir); ensure_equals(backDir.size(), 1u); - ensure_equals(wktwriter.write(backDir[0]), "LINESTRING (10 0, 0 0)"); + ensure_equals(wktwriter.write(backDir[0]), "LINESTRING (10 0, 0 0)"); SharedPathsOp::clearEdges(backDir); ensure(forwDir.empty()); diff -Nru geos-3.6.2/tests/unit/operation/union/CascadedPolygonUnionTest.cpp geos-3.7.1/tests/unit/operation/union/CascadedPolygonUnionTest.cpp --- geos-3.6.2/tests/unit/operation/union/CascadedPolygonUnionTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/union/CascadedPolygonUnionTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::geounion::CascadedPolygonUnion class. // tut -#include +#include // geos #include #include @@ -29,7 +29,7 @@ geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; test_cascadedpolygonuniontest_data() : gf(*geos::geom::GeometryFactory::getDefaultInstance()) @@ -48,7 +48,7 @@ { typedef std::vector::iterator iterator; - std::auto_ptr unionAll; + std::unique_ptr unionAll; iterator end = geoms->end(); for (iterator i = geoms->begin(); i != end; ++i) { @@ -72,12 +72,12 @@ } void test_runner(test_cascadedpolygonuniontest_data& t, - std::vector* geoms) + std::vector* geoms) { - std::auto_ptr union1(unionIterated(geoms)); - std::auto_ptr union2(unionCascaded(geoms)); + std::unique_ptr union1(unionIterated(geoms)); + std::unique_ptr union2(unionCascaded(geoms)); - // For now we compare the WKT representations of the two generated + // For now we compare the WKT representations of the two generated // geometries which works well for simple geometries only. // More complex geometries require to use special similarity measure // criteria instead. @@ -100,44 +100,44 @@ template<> void object::test<1>() { - static char const* const polygons[] = + static char const* const polygons[] = { "POLYGON ((80 260, 200 260, 200 30, 80 30, 80 260))", "POLYGON ((30 180, 300 180, 300 110, 30 110, 30 180))", "POLYGON ((30 280, 30 150, 140 150, 140 280, 30 280))", - NULL + nullptr }; std::vector g; - for (char const* const* p = polygons; *p != NULL; ++p) + for (char const* const* p = polygons; *p != nullptr; ++p) { std::string wkt(*p); - geos::geom::Polygon* geom = + geos::geom::Polygon* geom = dynamic_cast(wktreader.read(wkt)); g.push_back(geom); } - test_runner(*this, &g); + test_runner(*this, &g); for_each(g.begin(), g.end(), delete_geometry); } - void create_discs(geos::geom::GeometryFactory& gf, int num, double radius, + void create_discs(geos::geom::GeometryFactory& gf, int num, double radius, std::vector* g) { for (int i = 0; i < num; ++i) { for (int j = 0; j < num; ++j) { - std::auto_ptr pt( + std::unique_ptr pt( gf.createPoint(geos::geom::Coordinate(i, j))); g->push_back(dynamic_cast(pt->buffer(radius))); } } } -// these tests currently fail because the geometries generated by the different -// union algoritms are slightly different. In order to make those tests pass -// we need to port the similarity measure classes from JTS, allowing to -// approximately compare the two results +// these tests currently fail because the geometries generated by the different +// union algoritms are slightly different. In order to make those tests pass +// we need to port the similarity measure classes from JTS, allowing to +// approximately compare the two results // template<> // template<> @@ -145,9 +145,9 @@ // { // std::vector g; // create_discs(gf, 5, 0.7, &g); -// -// test_runner(*this, &g); -// +// +// test_runner(*this, &g); +// // std::for_each(g.begin(), g.end(), delete_geometry); // } @@ -157,9 +157,9 @@ // { // std::vector g; // create_discs(gf, 5, 0.55, &g); -// -// test_runner(*this, &g); -// +// +// test_runner(*this, &g); +// // std::for_each(g.begin(), g.end(), delete_geometry); // } diff -Nru geos-3.6.2/tests/unit/operation/union/UnaryUnionOpTest.cpp geos-3.7.1/tests/unit/operation/union/UnaryUnionOpTest.cpp --- geos-3.6.2/tests/unit/operation/union/UnaryUnionOpTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/union/UnaryUnionOpTest.cpp 2018-11-09 23:03:28.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::geounion::UnaryUnionOp class. // tut -#include +#include // geos #include #include @@ -27,11 +27,11 @@ struct test_unaryuniontest_data { typedef geos::geom::GeometryFactory GeometryFactory; - GeometryFactory::unique_ptr gf; + GeometryFactory::Ptr gf; geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; typedef geos::geom::Geometry Geom; typedef geos::operation::geounion::UnaryUnionOp UnaryUnionOp; @@ -107,7 +107,7 @@ template<> void object::test<1>() { - static char const* const geoms[] = { NULL }; + static char const* const geoms[] = { nullptr }; doTest(geoms, "GEOMETRYCOLLECTION EMPTY"); } @@ -117,7 +117,7 @@ { static char const* const geoms[] = { "POINT (1 1)", "POINT (2 2)", - NULL + nullptr }; doTest(geoms, "MULTIPOINT ((1 1), (2 2))"); } @@ -128,7 +128,7 @@ { static char const* const geoms[] = { "GEOMETRYCOLLECTION (POLYGON ((0 0, 0 90, 90 90, 90 0, 0 0)), POLYGON ((120 0, 120 90, 210 90, 210 0, 120 0)), LINESTRING (40 50, 40 140), LINESTRING (160 50, 160 140), POINT (60 50), POINT (60 140), POINT (40 140))", - NULL + nullptr }; doTest(geoms, "GEOMETRYCOLLECTION (POINT (60 140), LINESTRING (40 90, 40 140), LINESTRING (160 90, 160 140), POLYGON ((0 0, 0 90, 40 90, 90 90, 90 0, 0 0)), POLYGON ((120 0, 120 90, 160 90, 210 90, 210 0, 120 0)))"); } @@ -137,7 +137,7 @@ template<> void object::test<4>() { - static char const* const geoms[] = + static char const* const geoms[] = { "POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0))", "MULTIPOLYGON (((20 0, 20 10, 40 10, 40 0, 20 0)),((5 5, 5 8, 8 8, 8 5, 5 5)))", @@ -145,7 +145,7 @@ "POINT (-5 5)", "LINESTRING (-10 -10, -10 0, -10 20)", "LINESTRING (-10 2, 10 2)", - NULL + nullptr }; doTest(geoms, "GEOMETRYCOLLECTION (POLYGON ((0 0, 0 2, 0 10, 10 10, 10 2, 10 0, 0 0)), POLYGON ((20 0, 20 10, 40 10, 40 0, 20 0)), LINESTRING (-10 -10, -10 0, -10 2), LINESTRING (-10 2, 0 2), LINESTRING (-10 2, -10 20), POINT (-5 5))"); @@ -155,14 +155,14 @@ template<> void object::test<5>() { - static char const* const geoms[] = + static char const* const geoms[] = { "LINESTRING (40 60, 120 110)", "POINT (120 110)", "POINT (40 60)", "POINT (100 70)", "POINT (80 50)", - NULL + nullptr }; doTest(geoms, "GEOMETRYCOLLECTION (POINT (80 50), POINT (100 70), LINESTRING (40 60, 120 110))"); } @@ -171,13 +171,25 @@ template<> void object::test<6>() { - static char const* const geoms[] = + static char const* const geoms[] = { "LINESTRING (0 0, 10 0, 5 -5, 5 5)", - NULL + nullptr }; doTest(geoms, "MULTILINESTRING ((0 0, 5 0), (5 0, 10 0, 5 -5, 5 0), (5 0, 5 5))"); } + template<> + template<> + void object::test<7>() + { + static char const* const geoms[] = + { + "LINESTRING EMPTY", + nullptr + }; + doTest(geoms, "GEOMETRYCOLLECTION EMPTY"); + } + } // namespace tut diff -Nru geos-3.6.2/tests/unit/operation/valid/IsValidTest.cpp geos-3.7.1/tests/unit/operation/valid/IsValidTest.cpp --- geos-3.6.2/tests/unit/operation/valid/IsValidTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/valid/IsValidTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::valid::IsValidOp class // Ported from JTS junit/operation/valid/IsValidTest.java rev. 1.1 -#include +#include // geos #include #include @@ -32,11 +32,11 @@ struct test_isvalidop_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; test_isvalidop_data() : pm_(1), factory_(GeometryFactory::create(&pm_, 0)) @@ -67,7 +67,7 @@ bool valid = isValidOp.isValid(); TopologyValidationError* err = isValidOp.getValidationError(); - ensure(0 != err); + ensure(nullptr != err); const Coordinate& errCoord = err->getCoordinate(); ensure_equals( err->getErrorType(), diff -Nru geos-3.6.2/tests/unit/operation/valid/ValidClosedRingTest.cpp geos-3.7.1/tests/unit/operation/valid/ValidClosedRingTest.cpp --- geos-3.6.2/tests/unit/operation/valid/ValidClosedRingTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/valid/ValidClosedRingTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::valid::IsValidOp class // Ported from JTS junit/operation/valid/ValidClosedRingTest.java rev. 1.1 -#include +#include // geos #include #include @@ -37,11 +37,11 @@ struct test_validclosedring_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader rdr; test_validclosedring_data() @@ -97,7 +97,7 @@ { GeomPtr geom = fromWKT("LINEARRING (0 0, 0 10, 10 10, 10 0, 0 0)"); LinearRing* ring_chk = dynamic_cast(geom.get()); - ensure(0 != ring_chk); + ensure(nullptr != ring_chk); LinearRing& ring = *ring_chk; //cout << ring.toString() << endl; updateNonClosedRing(ring); @@ -121,11 +121,11 @@ { GeomPtr geom = fromWKT("POLYGON ((0 0, 0 10, 10 10, 10 0, 0 0), (1 1, 2 1, 2 2, 1 2, 1 1) ))"); Polygon* poly = dynamic_cast(geom.get()); - ensure(0 != poly); + ensure(nullptr != poly); const LineString* ring = poly->getExteriorRing(); const LinearRing* lr = dynamic_cast(ring); - ensure(0 != lr); + ensure(nullptr != lr); LinearRing* nclr = const_cast(lr); @@ -140,11 +140,11 @@ { GeomPtr geom = fromWKT("POLYGON ((0 0, 0 10, 10 10, 10 0, 0 0), (1 1, 2 1, 2 2, 1 2, 1 1) ))"); Polygon* poly = dynamic_cast(geom.get()); - ensure(0 != poly); + ensure(nullptr != poly); const LineString* ring = poly->getInteriorRingN(0); const LinearRing* lr = dynamic_cast(ring); - ensure(0 != lr); + ensure(nullptr != lr); LinearRing* nclr = const_cast(lr); diff -Nru geos-3.6.2/tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp geos-3.7.1/tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp --- geos-3.6.2/tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/operation/valid/ValidSelfTouchingRingFormingHoleTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::operation::valid::IsValidOp class // Ported from JTS junit/operation/valid/ValidSelfTouchingRingFormingHoleTest.java rev. 1.4 -#include +#include // geos #include #include @@ -37,11 +37,11 @@ struct test_ValidSelfTouchingRingFormingHole_data { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; geos::geom::PrecisionModel pm_; typedef geos::geom::GeometryFactory GeometryFactory; - geos::geom::GeometryFactory::unique_ptr factory_; + geos::geom::GeometryFactory::Ptr factory_; geos::io::WKTReader rdr; test_ValidSelfTouchingRingFormingHole_data() diff -Nru geos-3.6.2/tests/unit/precision/GeometryPrecisionReducerTest.cpp geos-3.7.1/tests/unit/precision/GeometryPrecisionReducerTest.cpp --- geos-3.6.2/tests/unit/precision/GeometryPrecisionReducerTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/precision/GeometryPrecisionReducerTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,9 +1,9 @@ // $Id$ -// +// // Test Suite for geos::precision::GeometryPrecisionReducer class. // tut -#include +#include // geos #include #include @@ -24,13 +24,13 @@ // Common data used by tests struct test_gpr_data { - typedef std::auto_ptr GeometryPtr; + typedef std::unique_ptr GeometryPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_float_; geos::geom::PrecisionModel pm_fixed_; - GeometryFactory::unique_ptr factory_; - GeometryFactory::unique_ptr factory_fixed_; + GeometryFactory::Ptr factory_; + GeometryFactory::Ptr factory_fixed_; geos::io::WKTReader reader_; geos::precision::GeometryPrecisionReducer reducer_; geos::precision::GeometryPrecisionReducer reducerKeepCollapse_; // keep collapse diff -Nru geos-3.6.2/tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp geos-3.7.1/tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp --- geos-3.6.2/tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/precision/SimpleGeometryPrecisionReducerTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::precision::SimpleGeometryPrecisionReducer class. // tut -#include +#include // geos #include #include @@ -22,12 +22,12 @@ // Common data used by tests struct test_sgpr_data { - typedef std::auto_ptr GeometryPtr; + typedef std::unique_ptr GeometryPtr; typedef geos::geom::GeometryFactory GeometryFactory; geos::geom::PrecisionModel pm_float_; geos::geom::PrecisionModel pm_fixed_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; geos::precision::SimpleGeometryPrecisionReducer reducer_; geos::precision::SimpleGeometryPrecisionReducer reducer2_; // keep collapse diff -Nru geos-3.6.2/tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp geos-3.7.1/tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp --- geos-3.6.2/tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp 2016-12-02 13:59:59.000000000 +0000 +++ geos-3.7.1/tests/unit/simplify/DouglasPeuckerSimplifierTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,7 +1,7 @@ // // Test Suite for geos::simplify::DouglasPeuckerSimplifierTest -#include +#include // geos #include #include @@ -30,7 +30,7 @@ geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; test_dpsimp_data() : @@ -301,18 +301,18 @@ { double f; Multiplier(double f) : f(f) {} - void filter_rw(CoordinateSequence& seq, std::size_t i) + void filter_rw(CoordinateSequence& seq, std::size_t i) override { seq.setOrdinate(i, CoordinateSequence::X, seq[i].x * f); seq.setOrdinate(i, CoordinateSequence::Y, seq[i].y * f); } - void filter_ro(const CoordinateSequence& seq, std::size_t i) + void filter_ro(const CoordinateSequence& seq, std::size_t i) override { ::geos::ignore_unused_variable_warning(seq); ::geos::ignore_unused_variable_warning(i); } - bool isDone() const { return false; } - bool isGeometryChanged() const { return true; } + bool isDone() const override { return false; } + bool isGeometryChanged() const override { return true; } }; Multiplier m(2047); diff -Nru geos-3.6.2/tests/unit/simplify/TopologyPreservingSimplifierTest.cpp geos-3.7.1/tests/unit/simplify/TopologyPreservingSimplifierTest.cpp --- geos-3.6.2/tests/unit/simplify/TopologyPreservingSimplifierTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/simplify/TopologyPreservingSimplifierTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -2,7 +2,7 @@ // // Last port: junit/simplify/TopologyPreservingSimplifierTest.java r536 -#include +#include #include // geos #include @@ -19,7 +19,7 @@ namespace tut { using namespace geos::simplify; - + // // Test Group // @@ -29,11 +29,11 @@ { geos::geom::PrecisionModel pm; typedef geos::geom::GeometryFactory GeometryFactory; - GeometryFactory::unique_ptr gf; + GeometryFactory::Ptr gf; geos::io::WKTReader wktreader; geos::io::WKTWriter wktwriter; - typedef geos::geom::Geometry::AutoPtr GeomPtr; + typedef geos::geom::Geometry::Ptr GeomPtr; test_tpsimp_data() : pm(1.0) @@ -105,7 +105,7 @@ template<> template<> void object::test<4>() - { + { std::string wkt("POLYGON ((3312459.605 6646878.353, \ 3312460.524 6646875.969, 3312459.427 6646878.421, \ 3312460.014 6646886.391, 3312465.889 6646887.398, \ @@ -139,7 +139,7 @@ template<> template<> void object::test<5>() - { + { std::string wkt("POLYGON((20 220, 40 220, 60 220, 80 220, \ 100 220, 120 220, 140 220, 140 180, 100 180, \ 60 180, 20 180, 20 220))"); @@ -159,7 +159,7 @@ { std::string wkt("POLYGON ((40 240, 160 241, 280 240, 280 160, \ 160 240, 40 140, 40 240))"); - + GeomPtr g(wktreader.read(wkt)); GeomPtr simplified = TopologyPreservingSimplifier::simplify(g.get(), 10.0); @@ -178,7 +178,7 @@ std::string wkt_expected("POLYGON ((80 200, 240 200, 240 60, 80 60, 80 200), \ (120 120, 220 120, 180 199, 160 200, 140 199, 120 120))"); - + GeomPtr g(wktreader.read(wkt)); GeomPtr simplified = TopologyPreservingSimplifier::simplify(g.get(), 10.0); @@ -294,7 +294,7 @@ ensure( "Simplified geometry is invalid!", simplified->isValid() ); ensure_equals_geometry(g.get(), simplified.get() ); } - + // GeometryCollection template<> template<> diff -Nru geos-3.6.2/tests/unit/triangulate/DelaunayTest.cpp geos-3.7.1/tests/unit/triangulate/DelaunayTest.cpp --- geos-3.6.2/tests/unit/triangulate/DelaunayTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/triangulate/DelaunayTest.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -1,9 +1,9 @@ -// +// // Test Suite for geos::triangulate::quadedge::QuadEdge // // tut -#include +#include // geos #include #include @@ -44,7 +44,7 @@ void runDelaunay(const char *sitesWkt, bool computeTriangles, const char *expectedWkt, double tolerance=0.0) { WKTReader reader; - std::auto_ptr results; + std::unique_ptr results; Geometry *sites = reader.read(sitesWkt); Geometry *expected = reader.read(expectedWkt); DelaunayTriangulationBuilder builder; @@ -59,7 +59,7 @@ results->normalize(); expected->normalize(); - + ensure(results->toString(), results->equalsExact(expected, 1e-7)); ensure_equals(results->getCoordinateDimension(), expected->getCoordinateDimension()); @@ -85,7 +85,7 @@ //extract the triangles from the subdivision const GeometryFactory& geomFact(*GeometryFactory::getDefaultInstance()); - std::auto_ptr tris = sub.getTriangles(geomFact); + std::unique_ptr tris = sub.getTriangles(geomFact); } // 2 - Test Triangle @@ -148,7 +148,7 @@ runDelaunay(wkt, false, expectedEdges); } - + // 7 - Test grid (2.5d) template<> template<> @@ -176,7 +176,7 @@ template<> template<> void object::test<9>() - { + { std::vector* v = new std::vector(); v->push_back( Coordinate (150,200) ); v->push_back( Coordinate (180,270) ); diff -Nru geos-3.6.2/tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp geos-3.7.1/tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp --- geos-3.6.2/tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/triangulate/quadedge/QuadEdgeSubdivisionTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,9 +1,9 @@ -// +// // Test Suite for geos::triangulate::quadedge::QuadEdge // // tut -#include +#include // geos #include #include @@ -74,8 +74,8 @@ ensure(!sub.isOnEdge(e, Coordinate(10, 10))); ensure(!sub.isVertexOfEdge(e, Vertex(10, 10))); - GeometryFactory::unique_ptr geomFact(GeometryFactory::create()); - std::auto_ptr tris = sub.getTriangles(*geomFact); + GeometryFactory::Ptr geomFact(GeometryFactory::create()); + std::unique_ptr tris = sub.getTriangles(*geomFact); tris.reset(); //WKTWriter wkt; //printf("%s\n", wkt.writeFormatted(tris).c_str()); @@ -100,7 +100,7 @@ //Test for getVoronoiDiagram:: const GeometryFactory& geomFact(*GeometryFactory::getDefaultInstance()); - std::auto_ptr polys = subdiv->getVoronoiDiagram(geomFact); + std::unique_ptr polys = subdiv->getVoronoiDiagram(geomFact); const char *expected_str = "GEOMETRYCOLLECTION (POLYGON ((-5849.974929324658 2268.0517257497568, -4529.9920486948895 2247.139449440667, 221.20588235294116 210.91176470588235, -684.4227119984187 -2848.644297291955, -5849.974929324658 2268.0517257497568)), POLYGON ((212.5 -3774.5, -684.4227119984187 -2848.644297291955, 221.20588235294116 210.91176470588235, 2448.7167655626645 2188.608343256571, 6235.0370264064295 2248.0370264064295, 212.5 -3774.5)), POLYGON ((-4529.9920486948895 2247.139449440667, 2448.7167655626645 2188.608343256571, 221.20588235294116 210.91176470588235, -4529.9920486948895 2247.139449440667)))"; // std::cout << polys->toString() << std::endl; @@ -120,26 +120,26 @@ // See http://trac.osgeo.org/geos/ticket/705 template<> template<> void object::test<3>() { - const char *wkt = + const char *wkt = "MULTIPOINT (" " (170 270)," " (190 230)," " (230 250)," " (210 290)" ")"; - std::auto_ptr sites ( reader.read(wkt) ); - std::auto_ptr siteCoords ( + std::unique_ptr sites ( reader.read(wkt) ); + std::unique_ptr siteCoords ( DelaunayTriangulationBuilder::extractUniqueCoordinates(*sites) ); Envelope env = DelaunayTriangulationBuilder::envelope(*siteCoords); double expandBy = std::max(env.getWidth() , env.getHeight()); env.expandBy(expandBy); - std::auto_ptr subdiv( + std::unique_ptr subdiv( new quadedge::QuadEdgeSubdivision(env,10) ); - std::auto_ptr vertices ( + std::unique_ptr vertices ( DelaunayTriangulationBuilder::toVertices(*siteCoords) ); @@ -148,11 +148,11 @@ //Test for getVoronoiDiagram:: const GeometryFactory& geomFact(*GeometryFactory::getDefaultInstance()); - std::auto_ptr polys = subdiv->getVoronoiDiagram(geomFact); + std::unique_ptr polys = subdiv->getVoronoiDiagram(geomFact); for (std::size_t i=0; igetNumGeometries(); ++i) { const Polygon* p = dynamic_cast(polys->getGeometryN(i)); ensure(p); - std::auto_ptr cs ( + std::unique_ptr cs ( p->getExteriorRing()->getCoordinates() ); size_t from = cs->size(); diff -Nru geos-3.6.2/tests/unit/triangulate/quadedge/QuadEdgeTest.cpp geos-3.7.1/tests/unit/triangulate/quadedge/QuadEdgeTest.cpp --- geos-3.6.2/tests/unit/triangulate/quadedge/QuadEdgeTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/triangulate/quadedge/QuadEdgeTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::triangulate::quadedge::QuadEdge // // tut -#include +#include // geos #include #include @@ -39,16 +39,16 @@ template<> template<> void object::test<1>() - { + { Vertex v1(0, 0); Vertex v2(0, 1); Vertex v3(1, 0); Vertex v4(1, 1); - std::auto_ptr q0; - std::auto_ptr r0; - std::auto_ptr s0; + std::unique_ptr q0; + std::unique_ptr r0; + std::unique_ptr s0; q0 = QuadEdge::makeEdge(v1, v2); r0 = QuadEdge::makeEdge(v3, v4); @@ -71,16 +71,16 @@ template<> template<> void object::test<2>() - { + { Vertex v1(0, 0); Vertex v2(0, 1); Vertex v3(1, 0); Vertex v4(1, 1); - std::auto_ptr q0; - std::auto_ptr r0; - std::auto_ptr s0; + std::unique_ptr q0; + std::unique_ptr r0; + std::unique_ptr s0; q0 = QuadEdge::makeEdge(v1, v2); r0 = QuadEdge::makeEdge(v2, v3); @@ -103,18 +103,18 @@ template<> template<> void object::test<3>() - { + { Vertex v1(0, 0); Vertex v2(0, 1); Vertex v3(1, 0); Vertex v4(1, 1); - std::auto_ptr q0; - std::auto_ptr r0; - std::auto_ptr s0; - std::auto_ptr t0; - std::auto_ptr u0; + std::unique_ptr q0; + std::unique_ptr r0; + std::unique_ptr s0; + std::unique_ptr t0; + std::unique_ptr u0; //make a quadilateral q0 = QuadEdge::makeEdge(v1, v2); diff -Nru geos-3.6.2/tests/unit/triangulate/quadedge/VertexTest.cpp geos-3.7.1/tests/unit/triangulate/quadedge/VertexTest.cpp --- geos-3.6.2/tests/unit/triangulate/quadedge/VertexTest.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/triangulate/quadedge/VertexTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,9 +1,9 @@ -// +// // Test Suite for geos::triangulate::quadedge::Vertex // // tut -#include +#include // geos #include //#include @@ -37,7 +37,7 @@ // Test Cases // - // 1 - Test for operator< + // 1 - Test for operator< template<> template<> void object::test<1>() diff -Nru geos-3.6.2/tests/unit/triangulate/VoronoiTest.cpp geos-3.7.1/tests/unit/triangulate/VoronoiTest.cpp --- geos-3.6.2/tests/unit/triangulate/VoronoiTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/triangulate/VoronoiTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,9 +1,9 @@ -// +// // Test Suite for geos::triangulate::Voronoi // // tut -#include +#include // geos #include #include @@ -49,9 +49,9 @@ WKTReader reader; WKTWriter writer; geos::triangulate::VoronoiDiagramBuilder builder; - std::auto_ptr sites ( reader.read(sitesWkt) ); - std::auto_ptr expected ( reader.read(expectedWkt) ); - std::auto_ptr results; + std::unique_ptr sites ( reader.read(sitesWkt) ); + std::unique_ptr expected ( reader.read(expectedWkt) ); + std::unique_ptr results; const GeometryFactory& geomFact(*GeometryFactory::getDefaultInstance()); builder.setSites(*sites); @@ -87,7 +87,7 @@ Coordinate d(244,284); geos::triangulate::VoronoiDiagramBuilder builder; - std::auto_ptr< std::vector > v(new std::vector()); + std::unique_ptr< std::vector > v(new std::vector()); v->push_back(a); v->push_back(b); v->push_back(c); @@ -97,7 +97,7 @@ builder.setSites(seq); //getting the subdiv() - std::auto_ptr subdiv = builder.getSubdivision(); + std::unique_ptr subdiv = builder.getSubdivision(); ensure_equals(subdiv->getTolerance() , 0); ensure_equals(subdiv->getEnvelope().toString(),"Env[-3540:4020,-3436:4050]"); @@ -129,7 +129,7 @@ void object::test<4>() { const char *wkt = "MULTIPOINT ((280 300), (420 330), (380 230), (320 160))"; - + const char *expected = "GEOMETRYCOLLECTION (POLYGON ((110 175.71428571428572, 110 500, 310.35714285714283 500, 353.515625 298.59375, 306.875 231.96428571428572, 110 175.71428571428572)), POLYGON ((590 204, 590 -10, 589.1666666666666 -10, 306.875 231.96428571428572, 353.515625 298.59375, 590 204)), POLYGON ((110 -10, 110 175.71428571428572, 306.875 231.96428571428572, 589.1666666666666 -10, 110 -10)), POLYGON ((310.35714285714283 500, 590 500, 590 204, 353.515625 298.59375, 310.35714285714283 500)))"; runVoronoi(wkt,expected,0); } @@ -139,7 +139,7 @@ void object::test<5>() { const char *wkt = "MULTIPOINT ((320 170), (366 246), (530 230), (530 300), (455 277), (490 160))"; - + const char *expected = "GEOMETRYCOLLECTION (POLYGON ((110 -50, 110 349.02631578947364, 405.31091180866963 170.28550074738416, 392.35294117647055 -50, 110 -50)), POLYGON ((740 63.57142857142859, 740 -50, 392.35294117647055 -50, 405.31091180866963 170.28550074738416, 429.9147677857019 205.76082797008175, 470.12061711079946 217.7882187938289, 740 63.57142857142859)), POLYGON ((110 349.02631578947364, 110 510, 323.9438202247191 510, 429.9147677857019 205.76082797008175, 405.31091180866963 170.28550074738416, 110 349.02631578947364)), POLYGON ((323.9438202247191 510, 424.57333333333327 510, 499.70666666666665 265, 470.12061711079946 217.7882187938289, 429.9147677857019 205.76082797008175, 323.9438202247191 510)),POLYGON ((740 265, 740 63.57142857142859, 470.12061711079946 217.7882187938289, 499.70666666666665 265, 740 265)), POLYGON ((424.57333333333327 510, 740 510, 740 265, 499.70666666666665 265, 424.57333333333327 510)))"; runVoronoi(wkt,expected,0); } @@ -149,7 +149,7 @@ void object::test<6>() { const char *wkt = "MULTIPOINT ((280 200), (406 285), (580 280), (550 190), (370 190), (360 90), (480 110), (440 160), (450 180), (480 180), (460 160), (360 210), (360 220), (370 210), (375 227))"; - + const char *expected = "GEOMETRYCOLLECTION (POLYGON ((-20 -102.27272727272727, -20 585, 111.9484126984127 585, 293.54906542056074 315.803738317757, 318.75 215, 323.2352941176471 179.11764705882354, 319.3956043956044 144.56043956043956, -20 -102.27272727272727)), POLYGON ((365 200, 365 215, 369.40909090909093 219.4090909090909, 414.2119205298013 206.2317880794702, 411.875 200, 365 200)), POLYGON ((365 215, 365 200, 323.2352941176471 179.11764705882354, 318.75 215, 365 215)), POLYGON ((-20 -210, -20 -102.27272727272727, 319.3956043956044 144.56043956043956, 388.972602739726 137.60273972602738, 419.55882352941177 102.64705882352942, 471.66666666666674 -210, -20 -210)), POLYGON ((319.3956043956044 144.56043956043956, 323.2352941176471 179.11764705882354, 365 200, 411.875 200, 410.29411764705884 187.35294117647058, 388.972602739726 137.60273972602738, 319.3956043956044 144.56043956043956)), POLYGON ((410.29411764705884 187.35294117647058, 411.875 200, 414.2119205298013 206.2317880794702, 431.62536593766146 234.01920096435336, 465 248.0047619047619, 465 175, 450 167.5, 410.29411764705884 187.35294117647058)), POLYGON ((365 215, 318.75 215, 293.54906542056074 315.803738317757, 339.6500765696784 283.1784073506891, 369.40909090909093 219.4090909090909, 365 215)), POLYGON ((111.9484126984127 585, 501.69252873563215 585, 492.5670391061452 267.4329608938547, 465 248.0047619047619, 431.62536593766146 234.01920096435336, 339.6500765696784 283.1784073506891, 293.54906542056074 315.803738317757, 111.9484126984127 585)), POLYGON ((369.40909090909093 219.4090909090909, 339.6500765696784 283.1784073506891, 431.62536593766146 234.01920096435336, 414.2119205298013 206.2317880794702, 369.40909090909093 219.4090909090909)), POLYGON ((388.972602739726 137.60273972602738, 410.29411764705884 187.35294117647058, 450 167.5, 450 127, 419.55882352941177 102.64705882352942, 388.972602739726 137.60273972602738)), POLYGON ((465 175, 465 248.0047619047619, 492.5670391061452 267.4329608938547, 505 255, 520.7142857142857 145, 495 145, 465 175)),POLYGON ((880 -169.375, 880 -210, 471.66666666666674 -210, 419.55882352941177 102.64705882352942, 450 127, 495 145, 520.7142857142857 145, 880 -169.375)), POLYGON ((450 167.5, 465 175, 495 145, 450 127, 450 167.5)), POLYGON ((501.69252873563215 585, 880 585, 880 130.00000000000006, 505 255, 492.5670391061452 267.4329608938547, 501.69252873563215 585)), POLYGON ((880 130.00000000000006, 880 -169.375, 520.7142857142857 145, 505 255, 880 130.00000000000006)))"; runVoronoi(wkt,expected,0); @@ -162,7 +162,7 @@ const char *wkt = "MULTIPOINT ((100 200), (105 202), (110 200), (140 230), (210 240), (220 190), (170 170), (170 260), (213 245), (220 190))"; const char *expected = "GEOMETRYCOLLECTION (POLYGON ((-20 50, -20 380, -3.75 380, 105 235, 105 115, 77.14285714285714 50, -20 50)), POLYGON ((247 50, 77.14285714285714 50, 105 115, 145 195, 178.33333333333334 211.66666666666666, 183.51851851851853 208.7037037037037, 247 50)), POLYGON ((-3.75 380, 20.000000000000007 380, 176.66666666666666 223.33333333333334, 178.33333333333334 211.66666666666666, 145 195, 105 235, -3.75 380)), POLYGON ((105 115, 105 235, 145 195, 105 115)), POLYGON ((20.000000000000007 380, 255 380, 176.66666666666666 223.33333333333334, 20.000000000000007 380)), POLYGON ((255 380, 340 380, 340 240, 183.51851851851853 208.7037037037037, 178.33333333333334 211.66666666666666, 176.66666666666666 223.33333333333334, 255 380)), POLYGON ((340 240, 340 50, 247 50, 183.51851851851853 208.7037037037037, 340 240)))"; - + runVoronoi(wkt,expected,6); } template<> diff -Nru geos-3.6.2/tests/unit/tut/tut_console_reporter.hpp geos-3.7.1/tests/unit/tut/tut_console_reporter.hpp --- geos-3.6.2/tests/unit/tut/tut_console_reporter.hpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/tut/tut_console_reporter.hpp 2018-11-29 22:42:00.000000000 +0000 @@ -108,12 +108,12 @@ init(); } - void run_started() + void run_started() override { init(); } - void test_completed(const tut::test_result& tr) + void test_completed(const tut::test_result& tr) override { if (tr.group != current_group) { @@ -156,7 +156,7 @@ } } - void run_completed() + void run_completed() override { os << std::endl; @@ -256,7 +256,7 @@ os << std::endl; } - virtual bool all_ok() const + bool all_ok() const override { return not_passed.empty(); } diff -Nru geos-3.6.2/tests/unit/tut/tut_exception.hpp geos-3.7.1/tests/unit/tut/tut_exception.hpp --- geos-3.6.2/tests/unit/tut/tut_exception.hpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/tut/tut_exception.hpp 2018-11-29 22:42:00.000000000 +0000 @@ -27,12 +27,12 @@ return "tut::tut_error"; } - const char* what() const throw() + const char* what() const throw() override { return err_msg.c_str(); } - ~tut_error() throw() + ~tut_error() throw() override { } @@ -52,12 +52,12 @@ { } - virtual std::string type() const + std::string type() const override { return "tut::no_such_group"; } - ~no_such_group() throw() + ~no_such_group() throw() override { } }; @@ -72,12 +72,12 @@ { } - virtual std::string type() const + std::string type() const override { return "tut::no_such_test"; } - ~no_such_test() throw() + ~no_such_test() throw() override { } }; @@ -93,17 +93,17 @@ { } - test_result::result_type result() const + test_result::result_type result() const override { return test_result::ex_ctor; } - virtual std::string type() const + std::string type() const override { return "tut::bad_ctor"; } - ~bad_ctor() throw() + ~bad_ctor() throw() override { } }; @@ -118,17 +118,17 @@ { } - test_result::result_type result() const + test_result::result_type result() const override { return test_result::fail; } - virtual std::string type() const + std::string type() const override { return "tut::failure"; } - ~failure() throw() + ~failure() throw() override { } }; @@ -143,17 +143,17 @@ { } - test_result::result_type result() const + test_result::result_type result() const override { return test_result::warn; } - virtual std::string type() const + std::string type() const override { return "tut::warning"; } - ~warning() throw() + ~warning() throw() override { } }; @@ -168,17 +168,17 @@ { } - virtual test_result::result_type result() const + test_result::result_type result() const override { return test_result::term; } - virtual std::string type() const + std::string type() const override { return "tut::seh"; } - ~seh() throw() + ~seh() throw() override { } }; @@ -193,17 +193,17 @@ { } - virtual test_result::result_type result() const + test_result::result_type result() const override { return test_result::rethrown; } - virtual std::string type() const + std::string type() const override { return "tut::rethrown"; } - ~rethrown() throw() + ~rethrown() throw() override { } @@ -217,17 +217,17 @@ { } - virtual test_result::result_type result() const + test_result::result_type result() const override { return test_result::skipped; } - virtual std::string type() const + std::string type() const override { return "tut::skipped"; } - ~skipped() throw() + ~skipped() throw() override { } }; diff -Nru geos-3.6.2/tests/unit/tut/tut.hpp geos-3.7.1/tests/unit/tut/tut.hpp --- geos-3.6.2/tests/unit/tut/tut.hpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/tut/tut.hpp 2018-10-19 22:32:06.000000000 +0000 @@ -107,7 +107,7 @@ */ bool called_method_was_a_dummy_test_; - virtual ~test_object() + ~test_object() override { } @@ -188,7 +188,7 @@ public: safe_holder() - : p_(0), + : p_(nullptr), permit_throw_in_dtor(false) { } @@ -276,7 +276,7 @@ { #endif T* p = p_; - p_ = 0; + p_ = nullptr; delete p; #if defined(TUT_USE_SEH) } @@ -338,7 +338,7 @@ /** * Reset test position before first test. */ - void rewind() + void rewind() override { current_test_ = tests_.begin(); } @@ -346,7 +346,7 @@ /** * Runs next test. */ - bool run_next(test_result &tr) + bool run_next(test_result &tr) override { if (current_test_ == tests_.end()) { @@ -371,7 +371,7 @@ /** * Runs one test by position. */ - bool run_test(int n, test_result &tr) + bool run_test(int n, test_result &tr) override { if (tests_.rbegin() == tests_.rend() || tests_.rbegin()->first < n) @@ -470,7 +470,7 @@ __try { #endif - if (obj.get() == 0) + if (obj.get() == nullptr) { reset_holder_(obj); } diff -Nru geos-3.6.2/tests/unit/tut/tut_result.hpp geos-3.7.1/tests/unit/tut/tut_result.hpp --- geos-3.6.2/tests/unit/tut/tut_result.hpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/tut/tut_result.hpp 2018-11-29 22:42:00.000000000 +0000 @@ -169,7 +169,7 @@ { } - virtual ~test_result() + ~test_result() override { } }; diff -Nru geos-3.6.2/tests/unit/tut/tut_runner.hpp geos-3.7.1/tests/unit/tut/tut_runner.hpp --- geos-3.6.2/tests/unit/tut/tut_runner.hpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/unit/tut/tut_runner.hpp 2018-10-19 22:32:06.000000000 +0000 @@ -131,7 +131,7 @@ */ void register_group(const std::string& name, group_base* gr) { - if (gr == 0) + if (gr == nullptr) { throw tut_error("group shall be non-null"); } @@ -161,7 +161,7 @@ */ void insert_callback(callback* cb) { - if(cb != NULL) + if(cb != nullptr) { callbacks_.insert(cb); } diff -Nru geos-3.6.2/tests/unit/util/UniqueCoordinateArrayFilterTest.cpp geos-3.7.1/tests/unit/util/UniqueCoordinateArrayFilterTest.cpp --- geos-3.6.2/tests/unit/util/UniqueCoordinateArrayFilterTest.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/unit/util/UniqueCoordinateArrayFilterTest.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -1,8 +1,8 @@ -// +// // Test Suite for geos::util::UniqueCoordinateArrayFilter class. // tut -#include +#include // geos #include #include @@ -24,18 +24,18 @@ // Common data used in test cases. struct test_uniquecoordinatearrayfilter_data { - typedef std::auto_ptr GeometryPtr; + typedef std::unique_ptr GeometryPtr; typedef geos::geom::GeometryFactory GeometryFactory; - + geos::geom::PrecisionModel pm_; - GeometryFactory::unique_ptr factory_; + GeometryFactory::Ptr factory_; geos::io::WKTReader reader_; test_uniquecoordinatearrayfilter_data() : pm_(1) , factory_(GeometryFactory::create(&pm_, 0)) , reader_(factory_.get()) - {} + {} }; typedef test_group group; @@ -53,30 +53,30 @@ void object::test<1>() { using geos::geom::Coordinate; - + // Create geometry from WKT const Coordinate::ConstVect::size_type size5 = 5; const std::string wkt("MULTIPOINT(10 10, 20 20, 30 30, 20 20, 10 10)"); GeometryPtr geo(reader_.read(wkt)); - + ensure_equals( geo->getGeometryTypeId(), geos::geom::GEOS_MULTIPOINT ); - std::auto_ptr cs; + std::unique_ptr cs; cs.reset(geo->getCoordinates()); ensure_equals(cs->getSize(), size5 ); - + // Create collection buffer for filtered coordinates const Coordinate::ConstVect::size_type size0 = 0; Coordinate::ConstVect coords; - - // Create filtering object - geos::util::UniqueCoordinateArrayFilter filter(coords); - + + // Create filtering object + geos::util::UniqueCoordinateArrayFilter filter(coords); + ensure_equals( coords.size(), size0 ); - + // Apply filter const Coordinate::ConstVect::size_type size3 = 3; geo->apply_ro(&filter); - + cs.reset(geo->getCoordinates()); ensure_equals( cs->getSize(), size5 ); ensure_equals( coords.size(), size3 ); @@ -86,7 +86,7 @@ ensure_equals( coords.at(1)->y, 20 ); ensure_equals( coords.at(2)->x, 30 ); ensure_equals( coords.at(2)->y, 30 ); - } + } } // namespace tut diff -Nru geos-3.6.2/tests/unit/utility.h geos-3.7.1/tests/unit/utility.h --- geos-3.6.2/tests/unit/utility.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/unit/utility.h 2018-10-19 22:32:06.000000000 +0000 @@ -1,11 +1,11 @@ -// +// // GEOS Unit Test utilities, extension of TUT Framework namespace // #ifndef GEOS_TUT_UTILITY_H_INCLUDED -#define GEOS_TUT_UTILITY_H_INCLUDED +#define GEOS_TUT_UTILITY_H_INCLUDED // tut -#include +#include // geos #include #include @@ -79,34 +79,17 @@ template inline bool isInstanceOf(InstanceType const* instance) { - assert(0 != instance); - return (0 != dynamic_cast(instance) ); + assert(nullptr != instance); + return (nullptr != dynamic_cast(instance) ); } template inline Type const* instanceOf(InstanceType const* instance) { - assert(0 != instance); + assert(nullptr != instance); return dynamic_cast(instance); } -template -std::auto_ptr dynamic_cast_auto_ptr(std::auto_ptr& ptr) -{ - Dst* res = dynamic_cast(ptr.get()); - if (0 != res) - { - ptr.release(); - } - return std::auto_ptr(res); -} - -template -std::auto_ptr static_cast_auto_ptr(std::auto_ptr& ptr) -{ - return std::auto_ptr(static_cast(ptr.release())); -} - // // Geometries structure comparators // @@ -123,12 +106,12 @@ template inline void ensure_equals_geometry(T const* lhs, T const* rhs) { - assert(0 != lhs); - assert(0 != rhs); + assert(nullptr != lhs); + assert(nullptr != rhs); using geos::geom::Polygon; using geos::geom::GeometryCollection; - + ensure_equals("is-valid do not match", lhs->isValid(), rhs->isValid()); @@ -178,8 +161,8 @@ inline void ensure_equals_geometry(geos::geom::Polygon const* lhs, geos::geom::Polygon const* rhs) { - assert(0 != lhs); - assert(0 != rhs); + assert(nullptr != lhs); + assert(nullptr != rhs); ensure_equals("number of interior ring do not match", lhs->getNumInteriorRing(), rhs->getNumInteriorRing()); @@ -189,8 +172,8 @@ inline void ensure_equals_geometry(geos::geom::GeometryCollection const* lhs, geos::geom::GeometryCollection const* rhs) { - assert(0 != lhs); - assert(0 != rhs); + assert(nullptr != lhs); + assert(nullptr != rhs); using geos::geom::Geometry; @@ -201,7 +184,7 @@ { Geometry const* g1 = lhs->getGeometryN(i); Geometry const* g2 = rhs->getGeometryN(i); - ensure_equals_geometry(g1, g2); // breaks on failure + ensure_equals_geometry(g1, g2); // breaks on failure } } @@ -209,9 +192,9 @@ inline void ensure_equals_geometry(geos::geom::Geometry const* lhs, geos::geom::prep::PreparedGeometry const* rhs) { - assert(0 != lhs); - assert(0 != rhs); - + assert(nullptr != lhs); + assert(nullptr != rhs); + geos::geom::Geometry const& pg = rhs->getGeometry(); ensure_equals_geometry(lhs, &pg); } diff -Nru geos-3.6.2/tests/xmltester/BufferResultMatcher.cpp geos-3.7.1/tests/xmltester/BufferResultMatcher.cpp --- geos-3.6.2/tests/xmltester/BufferResultMatcher.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/xmltester/BufferResultMatcher.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -70,7 +70,7 @@ const geom::Geometry& actualBuffer, const geom::Geometry& expectedBuffer) { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; using namespace operation::overlay; using geos::geom::BinaryOp; @@ -80,12 +80,12 @@ overlayOp(OverlayOp::opSYMDIFFERENCE)); double areaDiff = diff->getArea(); - - // can't get closer than difference area = 0 ! + + // can't get closer than difference area = 0 ! // This also handles case when symDiff is empty if (areaDiff <= 0.0) return true; - if (area <= 0) return false; + if (area <= 0) return false; double frac = areaDiff / area; bool ret = frac < MAX_RELATIVE_AREA_DIFFERENCE; @@ -101,7 +101,7 @@ const geom::Geometry& actualBuffer, const geom::Geometry& expectedBuffer, double distance) { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; using geos::algorithm::distance::DiscreteHausdorffDistance; diff -Nru geos-3.6.2/tests/xmltester/BufferResultMatcher.h geos-3.7.1/tests/xmltester/BufferResultMatcher.h --- geos-3.6.2/tests/xmltester/BufferResultMatcher.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/xmltester/BufferResultMatcher.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/tests/xmltester/CMakeLists.txt geos-3.7.1/tests/xmltester/CMakeLists.txt --- geos-3.6.2/tests/xmltester/CMakeLists.txt 2016-10-03 10:55:03.000000000 +0000 +++ geos-3.7.1/tests/xmltester/CMakeLists.txt 2018-11-29 22:42:00.000000000 +0000 @@ -6,12 +6,12 @@ # # This is free software; you can redistribute and/or modify it under # the terms of the GNU Lesser General Public Licence as published -# by the Free Software Foundation. +# by the Free Software Foundation. # See the COPYING file for more information. # ################################################################################# -set(STATUS_MESSAGE "Enable GEOS XML Tester build") +set(STATUS_MESSAGE "Enable GEOS XML tests build") set(STATUS_RESULT "OFF") if(GEOS_ENABLE_TESTS) @@ -30,18 +30,20 @@ BufferResultMatcher.cpp SingleSidedBufferResultMatcher.cpp) - add_executable(simplewkttester ${simplewkttester_SOURCES}) + add_executable(test_simplewkttester ${simplewkttester_SOURCES}) + if(APPLE AND GEOS_ENABLE_MACOSX_FRAMEWORK) - target_link_libraries(simplewkttester GEOS) + target_link_libraries(test_simplewkttester GEOS) else() - target_link_libraries(simplewkttester geos) + target_link_libraries(test_simplewkttester geos) endif() - add_executable(xmltester ${xmltester_SOURCES}) + add_executable(test_xmltester ${xmltester_SOURCES}) + if(APPLE AND GEOS_ENABLE_MACOSX_FRAMEWORK) - target_link_libraries(xmltester GEOS) + target_link_libraries(test_xmltester GEOS) else() - target_link_libraries(xmltester geos) + target_link_libraries(test_xmltester geos) endif() set(XMLTESTS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/tests) @@ -105,7 +107,7 @@ ${XMLTESTS_DIR}/safe/16595.xml ${XMLTESTS_DIR}/safe/16596.xml) - add_test(xmltester ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xmltester ${SAVE_XMLTESTS}) + add_test(test_xmltester ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_xmltester ${SAVE_XMLTESTS}) set(STATUS_RESULT "ON") endif() diff -Nru geos-3.6.2/tests/xmltester/Makefile.am geos-3.7.1/tests/xmltester/Makefile.am --- geos-3.6.2/tests/xmltester/Makefile.am 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/xmltester/Makefile.am 2018-11-29 22:42:00.000000000 +0000 @@ -136,10 +136,6 @@ XMLTester_LDADD = $(LIBS) -# Intentionally drop -ansi -pedantic -# See http://trac.osgeo.org/geos/ticket/319 -XMLTester_CXXFLAGS = $(INLINE_FLAGS) - AM_CPPFLAGS = -I$(top_srcdir)/include AM_CPPFLAGS += -I$(top_srcdir)/src/io/tinyxml -DTIXML_USE_STL diff -Nru geos-3.6.2/tests/xmltester/Makefile.in geos-3.7.1/tests/xmltester/Makefile.in --- geos-3.6.2/tests/xmltester/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tests/xmltester/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -101,6 +101,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -125,18 +128,12 @@ am__v_lt_0 = --silent am__v_lt_1 = am__dirstamp = $(am__leading_dot)dirstamp -am_XMLTester_OBJECTS = XMLTester-XMLTester.$(OBJEXT) \ - tinyxml/XMLTester-tinyxml.$(OBJEXT) \ - tinyxml/XMLTester-tinystr.$(OBJEXT) \ - tinyxml/XMLTester-tinyxmlerror.$(OBJEXT) \ - tinyxml/XMLTester-tinyxmlparser.$(OBJEXT) \ - XMLTester-BufferResultMatcher.$(OBJEXT) \ - XMLTester-SingleSidedBufferResultMatcher.$(OBJEXT) +am_XMLTester_OBJECTS = XMLTester.$(OBJEXT) tinyxml/tinyxml.$(OBJEXT) \ + tinyxml/tinystr.$(OBJEXT) tinyxml/tinyxmlerror.$(OBJEXT) \ + tinyxml/tinyxmlparser.$(OBJEXT) BufferResultMatcher.$(OBJEXT) \ + SingleSidedBufferResultMatcher.$(OBJEXT) XMLTester_OBJECTS = $(am_XMLTester_OBJECTS) XMLTester_DEPENDENCIES = $(LIBS) -XMLTester_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(XMLTester_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -151,7 +148,13 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include -I$(top_builddir)/include/geos depcomp = $(SHELL) $(top_srcdir)/depcomp -am__depfiles_maybe = depfiles +am__maybe_remake_depfiles = depfiles +am__depfiles_remade = ./$(DEPDIR)/BufferResultMatcher.Po \ + ./$(DEPDIR)/SimpleWKTTester.Po \ + ./$(DEPDIR)/SingleSidedBufferResultMatcher.Po \ + ./$(DEPDIR)/XMLTester.Po tinyxml/$(DEPDIR)/tinystr.Po \ + tinyxml/$(DEPDIR)/tinyxml.Po tinyxml/$(DEPDIR)/tinyxmlerror.Po \ + tinyxml/$(DEPDIR)/tinyxmlparser.Po am__mv = mv -f CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) @@ -463,6 +466,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -513,6 +517,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -533,6 +539,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -582,7 +589,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -710,10 +716,6 @@ SingleSidedBufferResultMatcher.cpp XMLTester_LDADD = $(LIBS) - -# Intentionally drop -ansi -pedantic -# See http://trac.osgeo.org/geos/ticket/319 -XMLTester_CXXFLAGS = $(INLINE_FLAGS) AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src/io/tinyxml \ -DTIXML_USE_STL all: all-am @@ -737,8 +739,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -768,18 +770,18 @@ tinyxml/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) tinyxml/$(DEPDIR) @: > tinyxml/$(DEPDIR)/$(am__dirstamp) -tinyxml/XMLTester-tinyxml.$(OBJEXT): tinyxml/$(am__dirstamp) \ +tinyxml/tinyxml.$(OBJEXT): tinyxml/$(am__dirstamp) \ tinyxml/$(DEPDIR)/$(am__dirstamp) -tinyxml/XMLTester-tinystr.$(OBJEXT): tinyxml/$(am__dirstamp) \ +tinyxml/tinystr.$(OBJEXT): tinyxml/$(am__dirstamp) \ tinyxml/$(DEPDIR)/$(am__dirstamp) -tinyxml/XMLTester-tinyxmlerror.$(OBJEXT): tinyxml/$(am__dirstamp) \ +tinyxml/tinyxmlerror.$(OBJEXT): tinyxml/$(am__dirstamp) \ tinyxml/$(DEPDIR)/$(am__dirstamp) -tinyxml/XMLTester-tinyxmlparser.$(OBJEXT): tinyxml/$(am__dirstamp) \ +tinyxml/tinyxmlparser.$(OBJEXT): tinyxml/$(am__dirstamp) \ tinyxml/$(DEPDIR)/$(am__dirstamp) XMLTester$(EXEEXT): $(XMLTester_OBJECTS) $(XMLTester_DEPENDENCIES) $(EXTRA_XMLTester_DEPENDENCIES) @rm -f XMLTester$(EXEEXT) - $(AM_V_CXXLD)$(XMLTester_LINK) $(XMLTester_OBJECTS) $(XMLTester_LDADD) $(LIBS) + $(AM_V_CXXLD)$(CXXLINK) $(XMLTester_OBJECTS) $(XMLTester_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -788,14 +790,20 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleWKTTester.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLTester-BufferResultMatcher.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLTester-XMLTester.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/XMLTester-tinystr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/XMLTester-tinyxml.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BufferResultMatcher.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleWKTTester.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SingleSidedBufferResultMatcher.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XMLTester.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/tinystr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/tinyxml.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/tinyxmlerror.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@tinyxml/$(DEPDIR)/tinyxmlparser.Po@am__quote@ # am--include-marker + +$(am__depfiles_remade): + @$(MKDIR_P) $(@D) + @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + +am--depfiles: $(am__depfiles_remade) .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @@ -821,104 +829,6 @@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $< -XMLTester-XMLTester.o: XMLTester.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT XMLTester-XMLTester.o -MD -MP -MF $(DEPDIR)/XMLTester-XMLTester.Tpo -c -o XMLTester-XMLTester.o `test -f 'XMLTester.cpp' || echo '$(srcdir)/'`XMLTester.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/XMLTester-XMLTester.Tpo $(DEPDIR)/XMLTester-XMLTester.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='XMLTester.cpp' object='XMLTester-XMLTester.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o XMLTester-XMLTester.o `test -f 'XMLTester.cpp' || echo '$(srcdir)/'`XMLTester.cpp - -XMLTester-XMLTester.obj: XMLTester.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT XMLTester-XMLTester.obj -MD -MP -MF $(DEPDIR)/XMLTester-XMLTester.Tpo -c -o XMLTester-XMLTester.obj `if test -f 'XMLTester.cpp'; then $(CYGPATH_W) 'XMLTester.cpp'; else $(CYGPATH_W) '$(srcdir)/XMLTester.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/XMLTester-XMLTester.Tpo $(DEPDIR)/XMLTester-XMLTester.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='XMLTester.cpp' object='XMLTester-XMLTester.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o XMLTester-XMLTester.obj `if test -f 'XMLTester.cpp'; then $(CYGPATH_W) 'XMLTester.cpp'; else $(CYGPATH_W) '$(srcdir)/XMLTester.cpp'; fi` - -tinyxml/XMLTester-tinyxml.o: tinyxml/tinyxml.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinyxml.o -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinyxml.Tpo -c -o tinyxml/XMLTester-tinyxml.o `test -f 'tinyxml/tinyxml.cpp' || echo '$(srcdir)/'`tinyxml/tinyxml.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinyxml.Tpo tinyxml/$(DEPDIR)/XMLTester-tinyxml.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinyxml.cpp' object='tinyxml/XMLTester-tinyxml.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinyxml.o `test -f 'tinyxml/tinyxml.cpp' || echo '$(srcdir)/'`tinyxml/tinyxml.cpp - -tinyxml/XMLTester-tinyxml.obj: tinyxml/tinyxml.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinyxml.obj -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinyxml.Tpo -c -o tinyxml/XMLTester-tinyxml.obj `if test -f 'tinyxml/tinyxml.cpp'; then $(CYGPATH_W) 'tinyxml/tinyxml.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinyxml.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinyxml.Tpo tinyxml/$(DEPDIR)/XMLTester-tinyxml.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinyxml.cpp' object='tinyxml/XMLTester-tinyxml.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinyxml.obj `if test -f 'tinyxml/tinyxml.cpp'; then $(CYGPATH_W) 'tinyxml/tinyxml.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinyxml.cpp'; fi` - -tinyxml/XMLTester-tinystr.o: tinyxml/tinystr.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinystr.o -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinystr.Tpo -c -o tinyxml/XMLTester-tinystr.o `test -f 'tinyxml/tinystr.cpp' || echo '$(srcdir)/'`tinyxml/tinystr.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinystr.Tpo tinyxml/$(DEPDIR)/XMLTester-tinystr.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinystr.cpp' object='tinyxml/XMLTester-tinystr.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinystr.o `test -f 'tinyxml/tinystr.cpp' || echo '$(srcdir)/'`tinyxml/tinystr.cpp - -tinyxml/XMLTester-tinystr.obj: tinyxml/tinystr.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinystr.obj -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinystr.Tpo -c -o tinyxml/XMLTester-tinystr.obj `if test -f 'tinyxml/tinystr.cpp'; then $(CYGPATH_W) 'tinyxml/tinystr.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinystr.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinystr.Tpo tinyxml/$(DEPDIR)/XMLTester-tinystr.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinystr.cpp' object='tinyxml/XMLTester-tinystr.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinystr.obj `if test -f 'tinyxml/tinystr.cpp'; then $(CYGPATH_W) 'tinyxml/tinystr.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinystr.cpp'; fi` - -tinyxml/XMLTester-tinyxmlerror.o: tinyxml/tinyxmlerror.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinyxmlerror.o -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Tpo -c -o tinyxml/XMLTester-tinyxmlerror.o `test -f 'tinyxml/tinyxmlerror.cpp' || echo '$(srcdir)/'`tinyxml/tinyxmlerror.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Tpo tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinyxmlerror.cpp' object='tinyxml/XMLTester-tinyxmlerror.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinyxmlerror.o `test -f 'tinyxml/tinyxmlerror.cpp' || echo '$(srcdir)/'`tinyxml/tinyxmlerror.cpp - -tinyxml/XMLTester-tinyxmlerror.obj: tinyxml/tinyxmlerror.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinyxmlerror.obj -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Tpo -c -o tinyxml/XMLTester-tinyxmlerror.obj `if test -f 'tinyxml/tinyxmlerror.cpp'; then $(CYGPATH_W) 'tinyxml/tinyxmlerror.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinyxmlerror.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Tpo tinyxml/$(DEPDIR)/XMLTester-tinyxmlerror.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinyxmlerror.cpp' object='tinyxml/XMLTester-tinyxmlerror.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinyxmlerror.obj `if test -f 'tinyxml/tinyxmlerror.cpp'; then $(CYGPATH_W) 'tinyxml/tinyxmlerror.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinyxmlerror.cpp'; fi` - -tinyxml/XMLTester-tinyxmlparser.o: tinyxml/tinyxmlparser.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinyxmlparser.o -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Tpo -c -o tinyxml/XMLTester-tinyxmlparser.o `test -f 'tinyxml/tinyxmlparser.cpp' || echo '$(srcdir)/'`tinyxml/tinyxmlparser.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Tpo tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinyxmlparser.cpp' object='tinyxml/XMLTester-tinyxmlparser.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinyxmlparser.o `test -f 'tinyxml/tinyxmlparser.cpp' || echo '$(srcdir)/'`tinyxml/tinyxmlparser.cpp - -tinyxml/XMLTester-tinyxmlparser.obj: tinyxml/tinyxmlparser.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT tinyxml/XMLTester-tinyxmlparser.obj -MD -MP -MF tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Tpo -c -o tinyxml/XMLTester-tinyxmlparser.obj `if test -f 'tinyxml/tinyxmlparser.cpp'; then $(CYGPATH_W) 'tinyxml/tinyxmlparser.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinyxmlparser.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Tpo tinyxml/$(DEPDIR)/XMLTester-tinyxmlparser.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tinyxml/tinyxmlparser.cpp' object='tinyxml/XMLTester-tinyxmlparser.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o tinyxml/XMLTester-tinyxmlparser.obj `if test -f 'tinyxml/tinyxmlparser.cpp'; then $(CYGPATH_W) 'tinyxml/tinyxmlparser.cpp'; else $(CYGPATH_W) '$(srcdir)/tinyxml/tinyxmlparser.cpp'; fi` - -XMLTester-BufferResultMatcher.o: BufferResultMatcher.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT XMLTester-BufferResultMatcher.o -MD -MP -MF $(DEPDIR)/XMLTester-BufferResultMatcher.Tpo -c -o XMLTester-BufferResultMatcher.o `test -f 'BufferResultMatcher.cpp' || echo '$(srcdir)/'`BufferResultMatcher.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/XMLTester-BufferResultMatcher.Tpo $(DEPDIR)/XMLTester-BufferResultMatcher.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='BufferResultMatcher.cpp' object='XMLTester-BufferResultMatcher.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o XMLTester-BufferResultMatcher.o `test -f 'BufferResultMatcher.cpp' || echo '$(srcdir)/'`BufferResultMatcher.cpp - -XMLTester-BufferResultMatcher.obj: BufferResultMatcher.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT XMLTester-BufferResultMatcher.obj -MD -MP -MF $(DEPDIR)/XMLTester-BufferResultMatcher.Tpo -c -o XMLTester-BufferResultMatcher.obj `if test -f 'BufferResultMatcher.cpp'; then $(CYGPATH_W) 'BufferResultMatcher.cpp'; else $(CYGPATH_W) '$(srcdir)/BufferResultMatcher.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/XMLTester-BufferResultMatcher.Tpo $(DEPDIR)/XMLTester-BufferResultMatcher.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='BufferResultMatcher.cpp' object='XMLTester-BufferResultMatcher.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o XMLTester-BufferResultMatcher.obj `if test -f 'BufferResultMatcher.cpp'; then $(CYGPATH_W) 'BufferResultMatcher.cpp'; else $(CYGPATH_W) '$(srcdir)/BufferResultMatcher.cpp'; fi` - -XMLTester-SingleSidedBufferResultMatcher.o: SingleSidedBufferResultMatcher.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT XMLTester-SingleSidedBufferResultMatcher.o -MD -MP -MF $(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Tpo -c -o XMLTester-SingleSidedBufferResultMatcher.o `test -f 'SingleSidedBufferResultMatcher.cpp' || echo '$(srcdir)/'`SingleSidedBufferResultMatcher.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Tpo $(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='SingleSidedBufferResultMatcher.cpp' object='XMLTester-SingleSidedBufferResultMatcher.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o XMLTester-SingleSidedBufferResultMatcher.o `test -f 'SingleSidedBufferResultMatcher.cpp' || echo '$(srcdir)/'`SingleSidedBufferResultMatcher.cpp - -XMLTester-SingleSidedBufferResultMatcher.obj: SingleSidedBufferResultMatcher.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -MT XMLTester-SingleSidedBufferResultMatcher.obj -MD -MP -MF $(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Tpo -c -o XMLTester-SingleSidedBufferResultMatcher.obj `if test -f 'SingleSidedBufferResultMatcher.cpp'; then $(CYGPATH_W) 'SingleSidedBufferResultMatcher.cpp'; else $(CYGPATH_W) '$(srcdir)/SingleSidedBufferResultMatcher.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Tpo $(DEPDIR)/XMLTester-SingleSidedBufferResultMatcher.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='SingleSidedBufferResultMatcher.cpp' object='XMLTester-SingleSidedBufferResultMatcher.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(XMLTester_CXXFLAGS) $(CXXFLAGS) -c -o XMLTester-SingleSidedBufferResultMatcher.obj `if test -f 'SingleSidedBufferResultMatcher.cpp'; then $(CYGPATH_W) 'SingleSidedBufferResultMatcher.cpp'; else $(CYGPATH_W) '$(srcdir)/SingleSidedBufferResultMatcher.cpp'; fi` - mostlyclean-libtool: -rm -f *.lo @@ -1097,7 +1007,7 @@ fi; \ $$success || exit 1 -check-TESTS: +check-TESTS: @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) @@ -1140,7 +1050,10 @@ @am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ @am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -1217,7 +1130,14 @@ mostlyclean-am distclean: distclean-am - -rm -rf ./$(DEPDIR) tinyxml/$(DEPDIR) + -rm -f ./$(DEPDIR)/BufferResultMatcher.Po + -rm -f ./$(DEPDIR)/SimpleWKTTester.Po + -rm -f ./$(DEPDIR)/SingleSidedBufferResultMatcher.Po + -rm -f ./$(DEPDIR)/XMLTester.Po + -rm -f tinyxml/$(DEPDIR)/tinystr.Po + -rm -f tinyxml/$(DEPDIR)/tinyxml.Po + -rm -f tinyxml/$(DEPDIR)/tinyxmlerror.Po + -rm -f tinyxml/$(DEPDIR)/tinyxmlparser.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -1263,7 +1183,14 @@ installcheck-am: maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) tinyxml/$(DEPDIR) + -rm -f ./$(DEPDIR)/BufferResultMatcher.Po + -rm -f ./$(DEPDIR)/SimpleWKTTester.Po + -rm -f ./$(DEPDIR)/SingleSidedBufferResultMatcher.Po + -rm -f ./$(DEPDIR)/XMLTester.Po + -rm -f tinyxml/$(DEPDIR)/tinystr.Po + -rm -f tinyxml/$(DEPDIR)/tinyxml.Po + -rm -f tinyxml/$(DEPDIR)/tinyxmlerror.Po + -rm -f tinyxml/$(DEPDIR)/tinyxmlparser.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -1284,19 +1211,20 @@ .MAKE: check-am install-am install-strip -.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \ - clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \ - ctags ctags-am distclean distclean-compile distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - recheck tags tags-am uninstall uninstall-am +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-TESTS \ + check-am clean clean-generic clean-libtool \ + clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am recheck tags tags-am uninstall \ + uninstall-am .PRECIOUS: Makefile diff -Nru geos-3.6.2/tests/xmltester/SimpleWKTTester.cpp geos-3.7.1/tests/xmltester/SimpleWKTTester.cpp --- geos-3.6.2/tests/xmltester/SimpleWKTTester.cpp 2016-04-23 14:13:04.000000000 +0000 +++ geos-3.7.1/tests/xmltester/SimpleWKTTester.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -8,7 +8,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -33,14 +33,14 @@ int main(int /*argc*/, char** /*argv*/) { - + try { ofstream out("WKTOut"); ifstream in("WKTIn"); string instr; string outstr; PrecisionModel pm; - GeometryFactory::unique_ptr gf = GeometryFactory::create(&pm, 10); + GeometryFactory::Ptr gf = GeometryFactory::create(&pm, 10); WKTReader *r = new WKTReader(gf.get()); WKTWriter *w = new WKTWriter(); Geometry *g; diff -Nru geos-3.6.2/tests/xmltester/SingleSidedBufferResultMatcher.cpp geos-3.7.1/tests/xmltester/SingleSidedBufferResultMatcher.cpp --- geos-3.6.2/tests/xmltester/SingleSidedBufferResultMatcher.cpp 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/xmltester/SingleSidedBufferResultMatcher.cpp 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** @@ -74,7 +74,7 @@ const geom::Geometry& actualBuffer, const geom::Geometry& expectedBuffer, double distance) { - typedef std::auto_ptr GeomPtr; + typedef std::unique_ptr GeomPtr; using geos::algorithm::distance::DiscreteHausdorffDistance; diff -Nru geos-3.6.2/tests/xmltester/SingleSidedBufferResultMatcher.h geos-3.7.1/tests/xmltester/SingleSidedBufferResultMatcher.h --- geos-3.6.2/tests/xmltester/SingleSidedBufferResultMatcher.h 2016-11-22 10:45:24.000000000 +0000 +++ geos-3.7.1/tests/xmltester/SingleSidedBufferResultMatcher.h 2018-10-19 22:32:06.000000000 +0000 @@ -3,11 +3,11 @@ * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * - * Copyright (C) 2009 Sandro Santilli + * Copyright (C) 2009 Sandro Santilli * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * ********************************************************************** diff -Nru geos-3.6.2/tests/xmltester/tests/linemerge.xml geos-3.7.1/tests/xmltester/tests/linemerge.xml --- geos-3.6.2/tests/xmltester/tests/linemerge.xml 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/xmltester/tests/linemerge.xml 2018-11-29 22:42:01.000000000 +0000 @@ -1,5 +1,5 @@ - + Case # MULTILINESTRING((0 0, 10 0), (10 0, 20 0)) diff -Nru geos-3.6.2/tests/xmltester/tinyxml/tinystr.h geos-3.7.1/tests/xmltester/tinyxml/tinystr.h --- geos-3.6.2/tests/xmltester/tinyxml/tinystr.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/xmltester/tinyxml/tinystr.h 2018-11-29 22:42:01.000000000 +0000 @@ -80,21 +80,21 @@ } // TiXmlString copy constructor - TiXmlString ( const TiXmlString & copy) : rep_(0) + TiXmlString ( const TiXmlString & copy) : rep_(nullptr) { init(copy.length()); memcpy(start(), copy.data(), length()); } // TiXmlString constructor, based on a string - TIXML_EXPLICIT TiXmlString ( const char * copy) : rep_(0) + TIXML_EXPLICIT TiXmlString ( const char * copy) : rep_(nullptr) { init( static_cast( strlen(copy) )); memcpy(start(), copy, length()); } // TiXmlString constructor, based on a string - TIXML_EXPLICIT TiXmlString ( const char * str, size_type len) : rep_(0) + TIXML_EXPLICIT TiXmlString ( const char * str, size_type len) : rep_(nullptr) { init(len); memcpy(start(), str, len); diff -Nru geos-3.6.2/tests/xmltester/tinyxml/tinyxml.cpp geos-3.7.1/tests/xmltester/tinyxml/tinyxml.cpp --- geos-3.6.2/tests/xmltester/tinyxml/tinyxml.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/xmltester/tinyxml/tinyxml.cpp 2018-11-29 22:42:01.000000000 +0000 @@ -134,19 +134,19 @@ TiXmlNode::TiXmlNode( NodeType _type ) : TiXmlBase() { - parent = 0; + parent = nullptr; type = _type; - firstChild = 0; - lastChild = 0; - prev = 0; - next = 0; + firstChild = nullptr; + lastChild = nullptr; + prev = nullptr; + next = nullptr; } TiXmlNode::~TiXmlNode() { TiXmlNode* node = firstChild; - TiXmlNode* temp = 0; + TiXmlNode* temp = nullptr; while ( node ) { @@ -167,7 +167,7 @@ void TiXmlNode::Clear() { TiXmlNode* node = firstChild; - TiXmlNode* temp = 0; + TiXmlNode* temp = nullptr; while ( node ) { @@ -176,27 +176,27 @@ delete temp; } - firstChild = 0; - lastChild = 0; + firstChild = nullptr; + lastChild = nullptr; } TiXmlNode* TiXmlNode::LinkEndChild( TiXmlNode* node ) { - assert( node->parent == 0 || node->parent == this ); - assert( node->GetDocument() == 0 || node->GetDocument() == this->GetDocument() ); + assert( node->parent == nullptr || node->parent == this ); + assert( node->GetDocument() == nullptr || node->GetDocument() == this->GetDocument() ); if ( node->Type() == TiXmlNode::DOCUMENT ) { delete node; - if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, 0, 0, TIXML_ENCODING_UNKNOWN ); - return 0; + if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); + return nullptr; } node->parent = this; node->prev = lastChild; - node->next = 0; + node->next = nullptr; if ( lastChild ) lastChild->next = node; @@ -212,12 +212,12 @@ { if ( addThis.Type() == TiXmlNode::DOCUMENT ) { - if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, 0, 0, TIXML_ENCODING_UNKNOWN ); - return 0; + if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); + return nullptr; } TiXmlNode* node = addThis.Clone(); if ( !node ) - return 0; + return nullptr; return LinkEndChild( node ); } @@ -226,17 +226,17 @@ TiXmlNode* TiXmlNode::InsertBeforeChild( TiXmlNode* beforeThis, const TiXmlNode& addThis ) { if ( !beforeThis || beforeThis->parent != this ) { - return 0; + return nullptr; } if ( addThis.Type() == TiXmlNode::DOCUMENT ) { - if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, 0, 0, TIXML_ENCODING_UNKNOWN ); - return 0; + if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); + return nullptr; } TiXmlNode* node = addThis.Clone(); if ( !node ) - return 0; + return nullptr; node->parent = this; node->next = beforeThis; @@ -258,17 +258,17 @@ TiXmlNode* TiXmlNode::InsertAfterChild( TiXmlNode* afterThis, const TiXmlNode& addThis ) { if ( !afterThis || afterThis->parent != this ) { - return 0; + return nullptr; } if ( addThis.Type() == TiXmlNode::DOCUMENT ) { - if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, 0, 0, TIXML_ENCODING_UNKNOWN ); - return 0; + if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); + return nullptr; } TiXmlNode* node = addThis.Clone(); if ( !node ) - return 0; + return nullptr; node->parent = this; node->prev = afterThis; @@ -290,11 +290,11 @@ TiXmlNode* TiXmlNode::ReplaceChild( TiXmlNode* replaceThis, const TiXmlNode& withThis ) { if ( replaceThis->parent != this ) - return 0; + return nullptr; TiXmlNode* node = withThis.Clone(); if ( !node ) - return 0; + return nullptr; node->next = replaceThis->next; node->prev = replaceThis->prev; @@ -345,7 +345,7 @@ if ( strcmp( node->Value(), _value ) == 0 ) return node; } - return 0; + return nullptr; } @@ -357,7 +357,7 @@ if ( strcmp( node->Value(), _value ) == 0 ) return node; } - return 0; + return nullptr; } @@ -397,7 +397,7 @@ if ( strcmp( node->Value(), _value ) == 0 ) return node; } - return 0; + return nullptr; } @@ -409,7 +409,7 @@ if ( strcmp( node->Value(), _value ) == 0 ) return node; } - return 0; + return nullptr; } @@ -439,7 +439,7 @@ if ( node->ToElement() ) return node->ToElement(); } - return 0; + return nullptr; } @@ -454,7 +454,7 @@ if ( node->ToElement() ) return node->ToElement(); } - return 0; + return nullptr; } @@ -469,7 +469,7 @@ if ( node->ToElement() ) return node->ToElement(); } - return 0; + return nullptr; } @@ -484,7 +484,7 @@ if ( node->ToElement() ) return node->ToElement(); } - return 0; + return nullptr; } @@ -497,14 +497,14 @@ if ( node->ToDocument() ) return node->ToDocument(); } - return 0; + return nullptr; } TiXmlElement::TiXmlElement (const char * _value) : TiXmlNode( TiXmlNode::ELEMENT ) { - firstChild = lastChild = 0; + firstChild = lastChild = nullptr; value = _value; } @@ -522,7 +522,7 @@ TiXmlElement::TiXmlElement( const TiXmlElement& copy) : TiXmlNode( TiXmlNode::ELEMENT ) { - firstChild = lastChild = 0; + firstChild = lastChild = nullptr; copy.CopyTo( this ); } @@ -557,7 +557,7 @@ const TiXmlAttribute* node = attributeSet.Find( name ); if ( node ) return node->Value(); - return 0; + return nullptr; } @@ -739,7 +739,7 @@ else { TiXmlDocument* document = GetDocument(); - if ( document ) document->SetError( TIXML_ERROR_OUT_OF_MEMORY, 0, 0, TIXML_ENCODING_UNKNOWN ); + if ( document ) document->SetError( TIXML_ERROR_OUT_OF_MEMORY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); } } @@ -828,7 +828,7 @@ // Element class: // Clone the attributes, then clone the children. - const TiXmlAttribute* attribute = 0; + const TiXmlAttribute* attribute = nullptr; for( attribute = attributeSet.First(); attribute; attribute = attribute->Next() ) @@ -836,7 +836,7 @@ target->SetAttribute( attribute->Name(), attribute->Value() ); } - TiXmlNode* node = 0; + TiXmlNode* node = nullptr; for ( node = firstChild; node; node = node->NextSibling() ) { target->LinkEndChild( node->Clone() ); @@ -861,7 +861,7 @@ { TiXmlElement* clone = new TiXmlElement( Value() ); if ( !clone ) - return 0; + return nullptr; CopyTo( clone ); return clone; @@ -877,7 +877,7 @@ return childText->Value(); } } - return 0; + return nullptr; } @@ -965,7 +965,7 @@ } else { - SetError( TIXML_ERROR_OPENING_FILE, 0, 0, TIXML_ENCODING_UNKNOWN ); + SetError( TIXML_ERROR_OPENING_FILE, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); return false; } } @@ -974,7 +974,7 @@ { if ( !file ) { - SetError( TIXML_ERROR_OPENING_FILE, 0, 0, TIXML_ENCODING_UNKNOWN ); + SetError( TIXML_ERROR_OPENING_FILE, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); return false; } @@ -991,7 +991,7 @@ // Strange case, but good to handle up front. if ( length <= 0 ) { - SetError( TIXML_ERROR_DOCUMENT_EMPTY, 0, 0, TIXML_ENCODING_UNKNOWN ); + SetError( TIXML_ERROR_DOCUMENT_EMPTY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); return false; } @@ -1026,7 +1026,7 @@ if ( fread( buf, length, 1, file ) != 1 ) { delete [] buf; - SetError( TIXML_ERROR_OPENING_FILE, 0, 0, TIXML_ENCODING_UNKNOWN ); + SetError( TIXML_ERROR_OPENING_FILE, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); return false; } @@ -1074,9 +1074,9 @@ data.append( lastPos, p-lastPos ); } delete [] buf; - buf = 0; + buf = nullptr; - Parse( data.c_str(), 0, encoding ); + Parse( data.c_str(), nullptr, encoding ); if ( Error() ) return false; @@ -1127,7 +1127,7 @@ target->errorLocation = errorLocation; target->useMicrosoftBOM = useMicrosoftBOM; - TiXmlNode* node = 0; + TiXmlNode* node = nullptr; for ( node = firstChild; node; node = node->NextSibling() ) { target->LinkEndChild( node->Clone() ); @@ -1139,7 +1139,7 @@ { TiXmlDocument* clone = new TiXmlDocument(); if ( !clone ) - return 0; + return nullptr; CopyTo( clone ); return clone; @@ -1176,7 +1176,7 @@ // We are using knowledge of the sentinel. The sentinel // have a value or name. if ( next->value.empty() && next->name.empty() ) - return 0; + return nullptr; return next; } @@ -1196,7 +1196,7 @@ // We are using knowledge of the sentinel. The sentinel // have a value or name. if ( prev->value.empty() && prev->name.empty() ) - return 0; + return nullptr; return prev; } @@ -1325,7 +1325,7 @@ TiXmlComment* clone = new TiXmlComment(); if ( !clone ) - return 0; + return nullptr; CopyTo( clone ); return clone; @@ -1368,11 +1368,11 @@ TiXmlNode* TiXmlText::Clone() const { - TiXmlText* clone = 0; + TiXmlText* clone = nullptr; clone = new TiXmlText( "" ); if ( !clone ) - return 0; + return nullptr; CopyTo( clone ); return clone; @@ -1460,7 +1460,7 @@ TiXmlDeclaration* clone = new TiXmlDeclaration(); if ( !clone ) - return 0; + return nullptr; CopyTo( clone ); return clone; @@ -1492,7 +1492,7 @@ TiXmlUnknown* clone = new TiXmlUnknown(); if ( !clone ) - return 0; + return nullptr; CopyTo( clone ); return clone; @@ -1538,8 +1538,8 @@ { node->prev->next = node->next; node->next->prev = node->prev; - node->next = 0; - node->prev = 0; + node->next = nullptr; + node->prev = nullptr; return; } } @@ -1579,7 +1579,7 @@ if ( strcmp( node->name.c_str(), name ) == 0 ) return node; } - return 0; + return nullptr; } /* @@ -1639,7 +1639,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1651,7 +1651,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1663,7 +1663,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1675,7 +1675,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1694,7 +1694,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1713,7 +1713,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1732,7 +1732,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1751,7 +1751,7 @@ if ( child ) return TiXmlHandle( child ); } - return TiXmlHandle( 0 ); + return TiXmlHandle( nullptr ); } @@ -1774,7 +1774,7 @@ for( const TiXmlAttribute* attrib = firstAttribute; attrib; attrib = attrib->Next() ) { buffer += " "; - attrib->Print( 0, 0, &buffer ); + attrib->Print( nullptr, 0, &buffer ); } if ( !element.FirstChild() ) @@ -1859,7 +1859,7 @@ bool TiXmlPrinter::Visit( const TiXmlDeclaration& declaration ) { DoIndent(); - declaration.Print( 0, 0, &buffer ); + declaration.Print( nullptr, 0, &buffer ); DoLineBreak(); return true; } diff -Nru geos-3.6.2/tests/xmltester/tinyxml/tinyxml.h geos-3.7.1/tests/xmltester/tinyxml/tinyxml.h --- geos-3.6.2/tests/xmltester/tinyxml/tinyxml.h 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/xmltester/tinyxml/tinyxml.h 2018-11-29 22:42:01.000000000 +0000 @@ -147,7 +147,7 @@ virtual bool Visit( const TiXmlText& /*text*/ ) { return true; } /// Visit a comment node virtual bool Visit( const TiXmlComment& /*comment*/ ) { return true; } - /// Visit an unknow node + /// Visit an unknown node virtual bool Visit( const TiXmlUnknown& /*unknown*/ ) { return true; } }; @@ -199,7 +199,7 @@ friend class TiXmlDocument; public: - TiXmlBase() : userData(0) {} + TiXmlBase() : userData(nullptr) {} virtual ~TiXmlBase() {} /** All TinyXml classes can print themselves to a filestream @@ -357,7 +357,7 @@ else { // Not valid text. - return 0; + return nullptr; } } @@ -471,7 +471,7 @@ TYPECOUNT }; - virtual ~TiXmlNode(); + ~TiXmlNode() override; /** The meaning of 'value' changes for the specific type of TiXmlNode. @@ -695,19 +695,19 @@ /// Returns true if this node has no children. bool NoChildren() const { return !firstChild; } - virtual const TiXmlDocument* ToDocument() const { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual const TiXmlElement* ToElement() const { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual const TiXmlComment* ToComment() const { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual const TiXmlUnknown* ToUnknown() const { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual const TiXmlText* ToText() const { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual const TiXmlDeclaration* ToDeclaration() const { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - - virtual TiXmlDocument* ToDocument() { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual TiXmlElement* ToElement() { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual TiXmlComment* ToComment() { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual TiXmlUnknown* ToUnknown() { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual TiXmlText* ToText() { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. - virtual TiXmlDeclaration* ToDeclaration() { return 0; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual const TiXmlDocument* ToDocument() const { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual const TiXmlElement* ToElement() const { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual const TiXmlComment* ToComment() const { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual const TiXmlUnknown* ToUnknown() const { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual const TiXmlText* ToText() const { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual const TiXmlDeclaration* ToDeclaration() const { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + + virtual TiXmlDocument* ToDocument() { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual TiXmlElement* ToElement() { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual TiXmlComment* ToComment() { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual TiXmlUnknown* ToUnknown() { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual TiXmlText* ToText() { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. + virtual TiXmlDeclaration* ToDeclaration() { return nullptr; } ///< Cast to a more defined type. Will return null if not of the requested type. /** Create an exact duplicate of this node and return it. The memory must be deleted by the caller. @@ -785,8 +785,8 @@ /// Construct an empty attribute. TiXmlAttribute() : TiXmlBase() { - document = 0; - prev = next = 0; + document = nullptr; + prev = next = nullptr; } #ifdef TIXML_USE_STL @@ -805,8 +805,8 @@ { name = _name; value = _value; - document = 0; - prev = next = 0; + document = nullptr; + prev = next = nullptr; } const char* Name() const { return name.c_str(); } ///< Return the name of this attribute. @@ -865,11 +865,11 @@ /* Attribute parsing starts: first letter of the name returns: the next char after the value end quote */ - virtual const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ); + const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) override; // Prints this Attribute to a FILE stream. - virtual void Print( FILE* cfile, int depth ) const { - Print( cfile, depth, 0 ); + void Print( FILE* cfile, int depth ) const override { + Print( cfile, depth, nullptr ); } void Print( FILE* cfile, int depth, TIXML_STRING* str ) const; @@ -910,10 +910,10 @@ void Add( TiXmlAttribute* attribute ); void Remove( TiXmlAttribute* attribute ); - const TiXmlAttribute* First() const { return ( sentinel.next == &sentinel ) ? 0 : sentinel.next; } - TiXmlAttribute* First() { return ( sentinel.next == &sentinel ) ? 0 : sentinel.next; } - const TiXmlAttribute* Last() const { return ( sentinel.prev == &sentinel ) ? 0 : sentinel.prev; } - TiXmlAttribute* Last() { return ( sentinel.prev == &sentinel ) ? 0 : sentinel.prev; } + const TiXmlAttribute* First() const { return ( sentinel.next == &sentinel ) ? nullptr : sentinel.next; } + TiXmlAttribute* First() { return ( sentinel.next == &sentinel ) ? nullptr : sentinel.next; } + const TiXmlAttribute* Last() const { return ( sentinel.prev == &sentinel ) ? nullptr : sentinel.prev; } + TiXmlAttribute* Last() { return ( sentinel.prev == &sentinel ) ? nullptr : sentinel.prev; } const TiXmlAttribute* Find( const char* _name ) const; TiXmlAttribute* Find( const char* _name ) { @@ -956,7 +956,7 @@ void operator=( const TiXmlElement& base ); - virtual ~TiXmlElement(); + ~TiXmlElement() override; /** Given an attribute name, Attribute() returns the value for the attribute of that name, or null if none exists. @@ -1112,21 +1112,21 @@ const char* GetText() const; /// Creates a new Element and returns it - the returned element is a copy. - virtual TiXmlNode* Clone() const; + TiXmlNode* Clone() const override; // Print the Element to a FILE stream. - virtual void Print( FILE* cfile, int depth ) const; + void Print( FILE* cfile, int depth ) const override; /* Attribtue parsing starts: next char past '<' returns: next char past '>' */ - virtual const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ); + const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) override; - virtual const TiXmlElement* ToElement() const { return this; } ///< Cast to a more defined type. Will return null not of the requested type. - virtual TiXmlElement* ToElement() { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + const TiXmlElement* ToElement() const override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + TiXmlElement* ToElement() override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. /** Walk the XML tree visiting this node and all of its children. */ - virtual bool Accept( TiXmlVisitor* visitor ) const; + bool Accept( TiXmlVisitor* visitor ) const override; protected: @@ -1163,24 +1163,24 @@ TiXmlComment( const TiXmlComment& ); void operator=( const TiXmlComment& base ); - virtual ~TiXmlComment() {} + ~TiXmlComment() override {} /// Returns a copy of this Comment. - virtual TiXmlNode* Clone() const; + TiXmlNode* Clone() const override; // Write this Comment to a FILE stream. - virtual void Print( FILE* cfile, int depth ) const; + void Print( FILE* cfile, int depth ) const override; /* Attribtue parsing starts: at the ! of the !-- returns: next char past '>' */ - virtual const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ); + const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) override; - virtual const TiXmlComment* ToComment() const { return this; } ///< Cast to a more defined type. Will return null not of the requested type. - virtual TiXmlComment* ToComment() { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + const TiXmlComment* ToComment() const override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + TiXmlComment* ToComment() override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. /** Walk the XML tree visiting this node and all of its children. */ - virtual bool Accept( TiXmlVisitor* visitor ) const; + bool Accept( TiXmlVisitor* visitor ) const override; protected: void CopyTo( TiXmlComment* target ) const; @@ -1214,7 +1214,7 @@ SetValue( initValue ); cdata = false; } - virtual ~TiXmlText() {} + ~TiXmlText() override {} #ifdef TIXML_USE_STL /// Constructor. @@ -1229,25 +1229,25 @@ void operator=( const TiXmlText& base ) { base.CopyTo( this ); } // Write this text object to a FILE stream. - virtual void Print( FILE* cfile, int depth ) const; + void Print( FILE* cfile, int depth ) const override; /// Queries whether this represents text using a CDATA section. bool CDATA() const { return cdata; } /// Turns on or off a CDATA representation of text. void SetCDATA( bool _cdata ) { cdata = _cdata; } - virtual const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ); + const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) override; - virtual const TiXmlText* ToText() const { return this; } ///< Cast to a more defined type. Will return null not of the requested type. - virtual TiXmlText* ToText() { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + const TiXmlText* ToText() const override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + TiXmlText* ToText() override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. /** Walk the XML tree visiting this node and all of its children. */ - virtual bool Accept( TiXmlVisitor* content ) const; + bool Accept( TiXmlVisitor* content ) const override; protected : /// [internal use] Creates a new Element and returns it. - virtual TiXmlNode* Clone() const; + TiXmlNode* Clone() const override; void CopyTo( TiXmlText* target ) const; bool Blank() const; // returns true if all white space and new lines @@ -1295,7 +1295,7 @@ TiXmlDeclaration( const TiXmlDeclaration& copy ); void operator=( const TiXmlDeclaration& copy ); - virtual ~TiXmlDeclaration() {} + ~TiXmlDeclaration() override {} /// Version. Will return an empty string if none was found. const char *Version() const { return version.c_str (); } @@ -1305,21 +1305,21 @@ const char *Standalone() const { return standalone.c_str (); } /// Creates a copy of this Declaration and returns it. - virtual TiXmlNode* Clone() const; + TiXmlNode* Clone() const override; // Print this declaration to a FILE stream. virtual void Print( FILE* cfile, int depth, TIXML_STRING* str ) const; - virtual void Print( FILE* cfile, int depth ) const { - Print( cfile, depth, 0 ); + void Print( FILE* cfile, int depth ) const override { + Print( cfile, depth, nullptr ); } - virtual const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ); + const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) override; - virtual const TiXmlDeclaration* ToDeclaration() const { return this; } ///< Cast to a more defined type. Will return null not of the requested type. - virtual TiXmlDeclaration* ToDeclaration() { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + const TiXmlDeclaration* ToDeclaration() const override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + TiXmlDeclaration* ToDeclaration() override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. /** Walk the XML tree visiting this node and all of its children. */ - virtual bool Accept( TiXmlVisitor* visitor ) const; + bool Accept( TiXmlVisitor* visitor ) const override; protected: void CopyTo( TiXmlDeclaration* target ) const; @@ -1347,24 +1347,24 @@ { public: TiXmlUnknown() : TiXmlNode( TiXmlNode::UNKNOWN ) {} - virtual ~TiXmlUnknown() {} + ~TiXmlUnknown() override {} TiXmlUnknown( const TiXmlUnknown& copy ) : TiXmlNode( TiXmlNode::UNKNOWN ) { copy.CopyTo( this ); } void operator=( const TiXmlUnknown& copy ) { copy.CopyTo( this ); } /// Creates a copy of this Unknown and returns it. - virtual TiXmlNode* Clone() const; + TiXmlNode* Clone() const override; // Print this Unknown to a FILE stream. - virtual void Print( FILE* cfile, int depth ) const; + void Print( FILE* cfile, int depth ) const override; - virtual const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ); + const char* Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) override; - virtual const TiXmlUnknown* ToUnknown() const { return this; } ///< Cast to a more defined type. Will return null not of the requested type. - virtual TiXmlUnknown* ToUnknown() { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + const TiXmlUnknown* ToUnknown() const override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + TiXmlUnknown* ToUnknown() override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. /** Walk the XML tree visiting this node and all of its children. */ - virtual bool Accept( TiXmlVisitor* content ) const; + bool Accept( TiXmlVisitor* content ) const override; protected: void CopyTo( TiXmlUnknown* target ) const; @@ -1398,7 +1398,7 @@ TiXmlDocument( const TiXmlDocument& copy ); void operator=( const TiXmlDocument& copy ); - virtual ~TiXmlDocument() {} + ~TiXmlDocument() override {} /** Load a file using the current document value. Returns true if successful. Will delete any existing @@ -1439,7 +1439,7 @@ method (either TIXML_ENCODING_LEGACY or TIXML_ENCODING_UTF8 will force TinyXml to use that encoding, regardless of what TinyXml might otherwise try to detect. */ - virtual const char* Parse( const char* p, TiXmlParsingData* data = 0, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING ); + const char* Parse( const char* p, TiXmlParsingData* data = nullptr, TiXmlEncoding encoding = TIXML_DEFAULT_ENCODING ) override; /** Get the root element -- the only top level element -- of the document. In well formed XML, there should only be one. TinyXml is tolerant of @@ -1521,20 +1521,20 @@ //char* PrintToMemory() const; /// Print this Document to a FILE stream. - virtual void Print( FILE* cfile, int depth = 0 ) const; + void Print( FILE* cfile, int depth = 0 ) const override; // [internal use] void SetError( int err, const char* errorLocation, TiXmlParsingData* prevData, TiXmlEncoding encoding ); - virtual const TiXmlDocument* ToDocument() const { return this; } ///< Cast to a more defined type. Will return null not of the requested type. - virtual TiXmlDocument* ToDocument() { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + const TiXmlDocument* ToDocument() const override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. + TiXmlDocument* ToDocument() override { return this; } ///< Cast to a more defined type. Will return null not of the requested type. /** Walk the XML tree visiting this node and all of its children. */ - virtual bool Accept( TiXmlVisitor* content ) const; + bool Accept( TiXmlVisitor* content ) const override; protected : // [internal use] - virtual TiXmlNode* Clone() const; + TiXmlNode* Clone() const override; #ifdef TIXML_USE_STL virtual void StreamIn( std::istream * in, TIXML_STRING * tag ); #endif @@ -1681,13 +1681,13 @@ TiXmlNode* ToNode() const { return node; } /** Return the handle as a TiXmlElement. This may return null. */ - TiXmlElement* ToElement() const { return ( ( node && node->ToElement() ) ? node->ToElement() : 0 ); } + TiXmlElement* ToElement() const { return ( ( node && node->ToElement() ) ? node->ToElement() : nullptr ); } /** Return the handle as a TiXmlText. This may return null. */ - TiXmlText* ToText() const { return ( ( node && node->ToText() ) ? node->ToText() : 0 ); } + TiXmlText* ToText() const { return ( ( node && node->ToText() ) ? node->ToText() : nullptr ); } /** Return the handle as a TiXmlUnknown. This may return null. */ - TiXmlUnknown* ToUnknown() const { return ( ( node && node->ToUnknown() ) ? node->ToUnknown() : 0 ); } + TiXmlUnknown* ToUnknown() const { return ( ( node && node->ToUnknown() ) ? node->ToUnknown() : nullptr ); } /** @deprecated use ToNode. Return the handle as a TiXmlNode. This may return null. @@ -1736,16 +1736,16 @@ TiXmlPrinter() : depth( 0 ), simpleTextPrint( false ), buffer(), indent( " " ), lineBreak( "\n" ) {} - virtual bool VisitEnter( const TiXmlDocument& doc ); - virtual bool VisitExit( const TiXmlDocument& doc ); + bool VisitEnter( const TiXmlDocument& doc ) override; + bool VisitExit( const TiXmlDocument& doc ) override; - virtual bool VisitEnter( const TiXmlElement& element, const TiXmlAttribute* firstAttribute ); - virtual bool VisitExit( const TiXmlElement& element ); + bool VisitEnter( const TiXmlElement& element, const TiXmlAttribute* firstAttribute ) override; + bool VisitExit( const TiXmlElement& element ) override; - virtual bool Visit( const TiXmlDeclaration& declaration ); - virtual bool Visit( const TiXmlText& text ); - virtual bool Visit( const TiXmlComment& comment ); - virtual bool Visit( const TiXmlUnknown& unknown ); + bool Visit( const TiXmlDeclaration& declaration ) override; + bool Visit( const TiXmlText& text ) override; + bool Visit( const TiXmlComment& comment ) override; + bool Visit( const TiXmlUnknown& unknown ) override; /** Set the indent characters for printing. By default 4 spaces but tab (\t) is also useful, or null/empty string for no indentation. diff -Nru geos-3.6.2/tests/xmltester/tinyxml/tinyxmlparser.cpp geos-3.7.1/tests/xmltester/tinyxml/tinyxmlparser.cpp --- geos-3.6.2/tests/xmltester/tinyxml/tinyxmlparser.cpp 2016-01-20 20:28:25.000000000 +0000 +++ geos-3.7.1/tests/xmltester/tinyxml/tinyxmlparser.cpp 2018-11-29 22:42:01.000000000 +0000 @@ -105,22 +105,25 @@ output += *length; // Scary scary fall throughs. - switch (*length) + switch (*length) { case 4: - --output; - *output = (char)((input | BYTE_MARK) & BYTE_MASK); + --output; + *output = (char)((input | BYTE_MARK) & BYTE_MASK); input >>= 6; + /* FALLTHRU */ case 3: - --output; - *output = (char)((input | BYTE_MARK) & BYTE_MASK); + --output; + *output = (char)((input | BYTE_MARK) & BYTE_MASK); input >>= 6; + /* FALLTHRU */ case 2: - --output; - *output = (char)((input | BYTE_MARK) & BYTE_MASK); + --output; + *output = (char)((input | BYTE_MARK) & BYTE_MASK); input >>= 6; + /* FALLTHRU */ case 1: - --output; + --output; *output = (char)(input | FIRST_BYTE_MARK[*length]); } } @@ -315,7 +318,7 @@ { if ( !p || !*p ) { - return 0; + return nullptr; } if ( encoding == TIXML_ENCODING_UTF8 ) { @@ -432,7 +435,7 @@ } return p; } - return 0; + return nullptr; } const char* TiXmlBase::GetEntity( const char* p, char* value, int* length, TiXmlEncoding encoding ) @@ -451,12 +454,12 @@ if ( *(p+2) == 'x' ) { // Hexadecimal. - if ( !*(p+3) ) return 0; + if ( !*(p+3) ) return nullptr; const char* q = p+3; q = strchr( q, ';' ); - if ( !q || !*q ) return 0; + if ( !q || !*q ) return nullptr; delta = q-p; --q; @@ -470,7 +473,7 @@ else if ( *q >= 'A' && *q <= 'F' ) ucs += mult * (*q - 'A' + 10 ); else - return 0; + return nullptr; mult *= 16; --q; } @@ -478,12 +481,12 @@ else { // Decimal. - if ( !*(p+2) ) return 0; + if ( !*(p+2) ) return nullptr; const char* q = p+2; q = strchr( q, ';' ); - if ( !q || !*q ) return 0; + if ( !q || !*q ) return nullptr; delta = q-p; --q; @@ -493,7 +496,7 @@ if ( *q >= '0' && *q <= '9' ) ucs += mult * (*q - '0'); else - return 0; + return nullptr; mult *= 10; --q; } @@ -710,8 +713,8 @@ // here is skipping white space. if ( !p || !*p ) { - SetError( TIXML_ERROR_DOCUMENT_EMPTY, 0, 0, TIXML_ENCODING_UNKNOWN ); - return 0; + SetError( TIXML_ERROR_DOCUMENT_EMPTY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); + return nullptr; } // Note that, for a document, this needs to come @@ -747,8 +750,8 @@ p = SkipWhiteSpace( p, encoding ); if ( !p ) { - SetError( TIXML_ERROR_DOCUMENT_EMPTY, 0, 0, TIXML_ENCODING_UNKNOWN ); - return 0; + SetError( TIXML_ERROR_DOCUMENT_EMPTY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); + return nullptr; } while ( p && *p ) @@ -787,8 +790,8 @@ // Was this empty? if ( !firstChild ) { - SetError( TIXML_ERROR_DOCUMENT_EMPTY, 0, 0, encoding ); - return 0; + SetError( TIXML_ERROR_DOCUMENT_EMPTY, nullptr, nullptr, encoding ); + return nullptr; } // All is well. @@ -817,12 +820,12 @@ TiXmlNode* TiXmlNode::Identify( const char* p, TiXmlEncoding encoding ) { - TiXmlNode* returnNode = 0; + TiXmlNode* returnNode = nullptr; p = SkipWhiteSpace( p, encoding ); if( !p || !*p || *p != '<' ) { - return 0; + return nullptr; } TiXmlDocument* doc = GetDocument(); @@ -830,7 +833,7 @@ if ( !p || !*p ) { - return 0; + return nullptr; } // What is this thing? @@ -899,7 +902,7 @@ else { if ( doc ) - doc->SetError( TIXML_ERROR_OUT_OF_MEMORY, 0, 0, TIXML_ENCODING_UNKNOWN ); + doc->SetError( TIXML_ERROR_OUT_OF_MEMORY, nullptr, nullptr, TIXML_ENCODING_UNKNOWN ); } return returnNode; } @@ -1053,8 +1056,8 @@ if ( !p || !*p ) { - if ( document ) document->SetError( TIXML_ERROR_PARSING_ELEMENT, 0, 0, encoding ); - return 0; + if ( document ) document->SetError( TIXML_ERROR_PARSING_ELEMENT, nullptr, nullptr, encoding ); + return nullptr; } if ( data ) @@ -1066,7 +1069,7 @@ if ( *p != '<' ) { if ( document ) document->SetError( TIXML_ERROR_PARSING_ELEMENT, p, data, encoding ); - return 0; + return nullptr; } p = SkipWhiteSpace( p+1, encoding ); @@ -1078,7 +1081,7 @@ if ( !p || !*p ) { if ( document ) document->SetError( TIXML_ERROR_FAILED_TO_READ_ELEMENT_NAME, pErr, data, encoding ); - return 0; + return nullptr; } TIXML_STRING endTag ("SetError( TIXML_ERROR_READING_ATTRIBUTES, pErr, data, encoding ); - return 0; + return nullptr; } if ( *p == '/' ) { @@ -1103,7 +1106,7 @@ if ( *p != '>' ) { if ( document ) document->SetError( TIXML_ERROR_PARSING_EMPTY, p, data, encoding ); - return 0; + return nullptr; } return (p+1); } @@ -1118,7 +1121,7 @@ // We were looking for the end tag, but found nothing. // Fix for [ 1663758 ] Failure to report error on bad XML if ( document ) document->SetError( TIXML_ERROR_READING_END_TAG, p, data, encoding ); - return 0; + return nullptr; } // We should find the end tag now @@ -1130,7 +1133,7 @@ else { if ( document ) document->SetError( TIXML_ERROR_READING_END_TAG, p, data, encoding ); - return 0; + return nullptr; } } else @@ -1140,7 +1143,7 @@ if ( !attrib ) { if ( document ) document->SetError( TIXML_ERROR_OUT_OF_MEMORY, pErr, data, encoding ); - return 0; + return nullptr; } attrib->SetDocument( document ); @@ -1151,7 +1154,7 @@ { if ( document ) document->SetError( TIXML_ERROR_PARSING_ELEMENT, pErr, data, encoding ); delete attrib; - return 0; + return nullptr; } // Handle the strange case of double attributes: @@ -1164,7 +1167,7 @@ { node->SetValue( attrib->Value() ); delete attrib; - return 0; + return nullptr; } attributeSet.Add( attrib ); @@ -1191,8 +1194,8 @@ if ( !textNode ) { - if ( document ) document->SetError( TIXML_ERROR_OUT_OF_MEMORY, 0, 0, encoding ); - return 0; + if ( document ) document->SetError( TIXML_ERROR_OUT_OF_MEMORY, nullptr, nullptr, encoding ); + return nullptr; } if ( TiXmlBase::IsWhiteSpaceCondensed() ) @@ -1230,7 +1233,7 @@ } else { - return 0; + return nullptr; } } } @@ -1240,7 +1243,7 @@ if ( !p ) { - if ( document ) document->SetError( TIXML_ERROR_READING_ELEMENT_VALUE, 0, 0, encoding ); + if ( document ) document->SetError( TIXML_ERROR_READING_ELEMENT_VALUE, nullptr, nullptr, encoding ); } return p; } @@ -1284,7 +1287,7 @@ if ( !p || !*p || *p != '<' ) { if ( document ) document->SetError( TIXML_ERROR_PARSING_UNKNOWN, p, data, encoding ); - return 0; + return nullptr; } ++p; value = ""; @@ -1297,7 +1300,7 @@ if ( !p ) { - if ( document ) document->SetError( TIXML_ERROR_PARSING_UNKNOWN, 0, 0, encoding ); + if ( document ) document->SetError( TIXML_ERROR_PARSING_UNKNOWN, nullptr, nullptr, encoding ); } if ( *p == '>' ) return p+1; @@ -1350,7 +1353,7 @@ if ( !StringEqual( p, startTag, false, encoding ) ) { document->SetError( TIXML_ERROR_PARSING_COMMENT, p, data, encoding ); - return 0; + return nullptr; } p += strlen( startTag ); @@ -1389,7 +1392,7 @@ const char* TiXmlAttribute::Parse( const char* p, TiXmlParsingData* data, TiXmlEncoding encoding ) { p = SkipWhiteSpace( p, encoding ); - if ( !p || !*p ) return 0; + if ( !p || !*p ) return nullptr; // int tabsize = 4; // if ( document ) @@ -1406,13 +1409,13 @@ if ( !p || !*p ) { if ( document ) document->SetError( TIXML_ERROR_READING_ATTRIBUTES, pErr, data, encoding ); - return 0; + return nullptr; } p = SkipWhiteSpace( p, encoding ); if ( !p || !*p || *p != '=' ) { if ( document ) document->SetError( TIXML_ERROR_READING_ATTRIBUTES, p, data, encoding ); - return 0; + return nullptr; } ++p; // skip '=' @@ -1420,7 +1423,7 @@ if ( !p || !*p ) { if ( document ) document->SetError( TIXML_ERROR_READING_ATTRIBUTES, p, data, encoding ); - return 0; + return nullptr; } const char* end; @@ -1454,7 +1457,7 @@ // We did not have an opening quote but seem to have a // closing one. Give up and throw an error. if ( document ) document->SetError( TIXML_ERROR_READING_ATTRIBUTES, p, data, encoding ); - return 0; + return nullptr; } value += *p; ++p; @@ -1516,7 +1519,7 @@ if ( !StringEqual( p, startTag, false, encoding ) ) { document->SetError( TIXML_ERROR_PARSING_CDATA, p, data, encoding ); - return 0; + return nullptr; } p += strlen( startTag ); @@ -1541,7 +1544,7 @@ p = ReadText( p, &value, ignoreWhite, end, false, encoding ); if ( p ) return p-1; // don't truncate the '<' - return 0; + return nullptr; } } @@ -1577,8 +1580,8 @@ TiXmlDocument* document = GetDocument(); if ( !p || !*p || !StringEqual( p, "SetError( TIXML_ERROR_PARSING_DECLARATION, 0, 0, _encoding ); - return 0; + if ( document ) document->SetError( TIXML_ERROR_PARSING_DECLARATION, nullptr, nullptr, _encoding ); + return nullptr; } if ( data ) { @@ -1625,7 +1628,7 @@ ++p; } } - return 0; + return nullptr; } bool TiXmlText::Blank() const diff -Nru geos-3.6.2/tests/xmltester/XMLTester.cpp geos-3.7.1/tests/xmltester/XMLTester.cpp --- geos-3.6.2/tests/xmltester/XMLTester.cpp 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/xmltester/XMLTester.cpp 2018-11-29 22:42:00.000000000 +0000 @@ -91,8 +91,8 @@ namespace { -std::auto_ptr prepare( const geom::Geometry *g ) { - return std::auto_ptr ( PreparedGeometryFactory::prepare(g) ); +std::unique_ptr prepare( const geom::Geometry *g ) { + return std::unique_ptr ( PreparedGeometryFactory::prepare(g) ); } // Asymmetric Rounding Algorithm - equivalent to Java Math.round() @@ -127,7 +127,7 @@ const char * getIndent( unsigned int numIndents ) { static const char * pINDENT = " + "; - static const unsigned int LENGTH = strlen( pINDENT ); + static const unsigned int LENGTH = static_cast(strlen( pINDENT )); if ( numIndents > LENGTH ) numIndents = LENGTH; @@ -177,7 +177,7 @@ const TiXmlNode * pChild; - for ( pChild = pParent->FirstChild(); pChild != 0; pChild = pChild->NextSibling()) + for ( pChild = pParent->FirstChild(); pChild != nullptr; pChild = pChild->NextSibling()) { dump_to_stdout( pChild, indent+2 ); } @@ -303,15 +303,15 @@ XMLTester::XMLTester() : - gA(0), - gB(0), - gT(0), - pm(0), - factory(0), - wktreader(0), - wktwriter(0), - wkbreader(0), - wkbwriter(0), + gA(nullptr), + gB(nullptr), + gT(nullptr), + pm(nullptr), + factory(nullptr), + wktreader(nullptr), + wktwriter(nullptr), + wkbreader(nullptr), + wkbwriter(nullptr), test_predicates(0), failed(0), succeeded(0), @@ -319,7 +319,7 @@ testCount(0), testFileCount(0), totalTestCount(0), - curr_file(NULL), + curr_file(nullptr), testValidOutput(false), testValidInput(false), sqlOutput(false), @@ -651,8 +651,8 @@ std::string geomBin; std::string thrownException; - gA=NULL; - gB=NULL; + gA=nullptr; + gB=nullptr; //dump_to_stdout(node); @@ -673,7 +673,7 @@ geomAin = trimBlanks(geomAin); gA = parseGeometry(geomAin, "Geometry A"); - if ( 0 != (el = node->FirstChild("b")) ) + if ( nullptr != (el = node->FirstChild("b")) ) { geomBin = el->FirstChild()->Value(); geomBin = trimBlanks(geomBin); @@ -745,7 +745,7 @@ { using namespace operation::overlay; - typedef std::auto_ptr< geom::Geometry > GeomAutoPtr; + typedef std::unique_ptr< geom::Geometry > GeomPtr; int success=0; // no success by default std::string opName; @@ -825,7 +825,7 @@ { if (opName=="relate") { - std::auto_ptr im(gA->relate(gB)); + std::unique_ptr im(gA->relate(gB)); assert(im.get()); if (im->matches(opArg3)) actual_result="true"; @@ -835,7 +835,7 @@ } else if (opName=="relatestring") { - std::auto_ptr im(gA->relate(gB)); + std::unique_ptr im(gA->relate(gB)); assert(im.get()); actual_result=im->toString(); @@ -860,15 +860,15 @@ else if (opName=="intersection") { - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); profile.start(); #ifndef USE_BINARYOP - GeomAutoPtr gRealRes(gA->intersection(gB)); + GeomPtr gRealRes(gA->intersection(gB)); #else - GeomAutoPtr gRealRes = BinaryOp(gA, gB, overlayOp(OverlayOp::opINTERSECTION)); + GeomPtr gRealRes = BinaryOp(gA, gB, overlayOp(OverlayOp::opINTERSECTION)); #endif profile.stop(); @@ -886,9 +886,9 @@ else if (opName=="union") { - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); - GeomAutoPtr gRealRes; + GeomPtr gRealRes; if ( gB ) { #ifndef USE_BINARYOP gRealRes.reset(gA->Union(gB)); @@ -911,13 +911,13 @@ else if (opName=="difference") { - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); #ifndef USE_BINARYOP - GeomAutoPtr gRealRes(gA->difference(gB)); + GeomPtr gRealRes(gA->difference(gB)); #else - GeomAutoPtr gRealRes = BinaryOp(gA, gB, overlayOp(OverlayOp::opDIFFERENCE)); + GeomPtr gRealRes = BinaryOp(gA, gB, overlayOp(OverlayOp::opDIFFERENCE)); #endif gRealRes->normalize(); @@ -933,13 +933,13 @@ else if (opName=="symdifference") { - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); #ifndef USE_BINARYOP - GeomAutoPtr gRealRes(gA->symDifference(gB)); + GeomPtr gRealRes(gA->symDifference(gB)); #else - GeomAutoPtr gRealRes = BinaryOp(gA, gB, overlayOp(OverlayOp::opSYMDIFFERENCE)); + GeomPtr gRealRes = BinaryOp(gA, gB, overlayOp(OverlayOp::opSYMDIFFERENCE)); #endif gRealRes->normalize(); @@ -1033,10 +1033,10 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); - GeomAutoPtr gRealRes(gT->getBoundary()); + GeomPtr gRealRes(gT->getBoundary()); gRealRes->normalize(); if (gRes->compareTo(gRealRes.get())==0) success=1; @@ -1053,10 +1053,10 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); - GeomAutoPtr gRealRes(gT->getCentroid()); + GeomPtr gRealRes(gT->getCentroid()); if ( gRealRes.get() ) gRealRes->normalize(); else gRealRes.reset(factory->createPoint()); @@ -1088,10 +1088,10 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); - GeomAutoPtr gRealRes(gT->convexHull()); + GeomPtr gRealRes(gT->convexHull()); gRealRes->normalize(); if (gRes->compareTo(gRealRes.get())==0) success=1; @@ -1110,12 +1110,12 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); profile.start(); - GeomAutoPtr gRealRes; + GeomPtr gRealRes; double dist = std::atof(opArg2.c_str()); BufferParameters params; @@ -1147,12 +1147,12 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); profile.start(); - GeomAutoPtr gRealRes; + GeomPtr gRealRes; double dist = std::atof(opArg2.c_str()); BufferParameters params ; @@ -1192,12 +1192,12 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); profile.start(); - GeomAutoPtr gRealRes; + GeomPtr gRealRes; double dist = std::atof(opArg2.c_str()); BufferParameters params; @@ -1229,10 +1229,10 @@ geom::Geometry *gT=gA; if ( ( opArg1 == "B" || opArg1 == "b" ) && gB ) gT=gB; - GeomAutoPtr gRes(parseGeometry(opRes, "expected")); + GeomPtr gRes(parseGeometry(opRes, "expected")); gRes->normalize(); - GeomAutoPtr gRealRes(gT->getInteriorPoint()); + GeomPtr gRealRes(gT->getInteriorPoint()); if ( gRealRes.get() ) gRealRes->normalize(); else gRealRes.reset(factory->createPoint()); @@ -1261,7 +1261,7 @@ else if (opName=="polygonize") { - GeomAutoPtr gRes(wktreader->read(opRes)); + GeomPtr gRes(wktreader->read(opRes)); gRes->normalize(); Polygonizer plgnzr; @@ -1274,7 +1274,7 @@ newgeoms->push_back((*polys)[i]); delete polys; - GeomAutoPtr gRealRes(factory->createGeometryCollection(newgeoms)); + GeomPtr gRealRes(factory->createGeometryCollection(newgeoms)); gRealRes->normalize(); @@ -1289,7 +1289,7 @@ else if (opName=="linemerge") { - GeomAutoPtr gRes(wktreader->read(opRes)); + GeomPtr gRes(wktreader->read(opRes)); gRes->normalize(); geom::Geometry *gT=gA; @@ -1298,11 +1298,11 @@ LineMerger merger; merger.add(gT); - std::auto_ptr< std::vector > lines ( merger.getMergedLineStrings() ); + std::unique_ptr< std::vector > lines ( merger.getMergedLineStrings() ); std::vector*newgeoms = new std::vector(lines->begin(), lines->end()); - GeomAutoPtr gRealRes(factory->createGeometryCollection(newgeoms)); + GeomPtr gRealRes(factory->createGeometryCollection(newgeoms)); gRealRes->normalize(); if (gRes->compareTo(gRealRes.get())==0) success=1; @@ -1330,9 +1330,9 @@ std::cerr << "Running intersection for areatest" << std::endl; } #ifndef USE_BINARYOP - GeomAutoPtr gI(gA->intersection(gB)); + GeomPtr gI(gA->intersection(gB)); #else - GeomAutoPtr gI = BinaryOp(gA, gB, + GeomPtr gI = BinaryOp(gA, gB, overlayOp(OverlayOp::opINTERSECTION)); #endif @@ -1347,9 +1347,9 @@ } #ifndef USE_BINARYOP - GeomAutoPtr gDab(gA->difference(gB)); + GeomPtr gDab(gA->difference(gB)); #else - GeomAutoPtr gDab = BinaryOp(gA, gB, + GeomPtr gDab = BinaryOp(gA, gB, overlayOp(OverlayOp::opDIFFERENCE)); #endif @@ -1364,9 +1364,9 @@ } #ifndef USE_BINARYOP - GeomAutoPtr gDba(gB->difference(gA)); + GeomPtr gDba(gB->difference(gA)); #else - GeomAutoPtr gDba = BinaryOp(gB, gA, + GeomPtr gDba = BinaryOp(gB, gA, overlayOp(OverlayOp::opDIFFERENCE)); #endif @@ -1381,9 +1381,9 @@ } #ifndef USE_BINARYOP - GeomAutoPtr gSD(gA->symDifference(gB)); + GeomPtr gSD(gA->symDifference(gB)); #else - GeomAutoPtr gSD = BinaryOp(gA, gB, + GeomPtr gSD = BinaryOp(gA, gB, overlayOp(OverlayOp::opSYMDIFFERENCE)); #endif @@ -1398,9 +1398,9 @@ } #ifndef USE_BINARYOP - GeomAutoPtr gU(gA->Union(gB)); + GeomPtr gU(gA->Union(gB)); #else - GeomAutoPtr gU = BinaryOp(gA, gB, + GeomPtr gU = BinaryOp(gA, gB, overlayOp(OverlayOp::opUNION)); #endif @@ -1560,7 +1560,7 @@ } void -request_interrupt(int sig) +request_interrupt(int) { geos::util::Interrupt::request(); } @@ -1663,7 +1663,7 @@ * XMLTester binary ops invoked using the new BinaryOp template function. * * Revision 1.31 2006/04/07 13:26:38 strk - * Use of auto_ptr<> to prevent confusing leaks in tester + * Use of unique_ptr<> to prevent confusing leaks in tester * * Revision 1.30 2006/03/22 16:01:33 strk * indexBintree.h header split, classes renamed to match JTS diff -Nru geos-3.6.2/tests/xmltester/XMLTester.h geos-3.7.1/tests/xmltester/XMLTester.h --- geos-3.6.2/tests/xmltester/XMLTester.h 2017-07-25 09:08:28.000000000 +0000 +++ geos-3.7.1/tests/xmltester/XMLTester.h 2018-11-29 22:42:00.000000000 +0000 @@ -7,7 +7,7 @@ * * This is free software; you can redistribute and/or modify it under * the terms of the GNU Lesser General Public Licence as published - * by the Free Software Foundation. + * by the Free Software Foundation. * See the COPYING file for more information. * **********************************************************************/ @@ -51,12 +51,12 @@ geom::Geometry *gT; bool usePrepared; - std::auto_ptr pm; - geom::GeometryFactory::unique_ptr factory; - std::auto_ptr wktreader; - std::auto_ptr wktwriter; - std::auto_ptr wkbreader; - std::auto_ptr wkbwriter; + std::unique_ptr pm; + geom::GeometryFactory::Ptr factory; + std::unique_ptr wktreader; + std::unique_ptr wktwriter; + std::unique_ptr wkbreader; + std::unique_ptr wkbwriter; TiXmlDocument xml; int verbose; diff -Nru geos-3.6.2/tools/geos-config.in geos-3.7.1/tools/geos-config.in --- geos-3.6.2/tools/geos-config.in 2016-11-22 10:48:36.000000000 +0000 +++ geos-3.7.1/tools/geos-config.in 2018-11-09 23:03:28.000000000 +0000 @@ -38,12 +38,12 @@ echo @VERSION@ ;; --cflags) - echo -I${prefix}/include + echo -I${prefix}/include ;; --libs) # TODO: make an alias for --clibs # see http://trac.osgeo.org/geos/ticket/497 - echo -L${libdir} -lgeos + echo -L${libdir} -lgeos-@VERSION_RELEASE@ ;; --clibs) echo -L${libdir} -lgeos_c @@ -64,7 +64,7 @@ echo ${prefix}/include ;; --jtsport) - echo @JTS_PORT@ + echo @JTS_PORT@ ;; *) usage 1 1>&2 diff -Nru geos-3.6.2/tools/Makefile.in geos-3.7.1/tools/Makefile.in --- geos-3.6.2/tools/Makefile.in 2017-07-25 09:27:30.000000000 +0000 +++ geos-3.7.1/tools/Makefile.in 2018-11-29 23:05:20.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -93,6 +93,9 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/macros/ac_pkg_swig.m4 \ $(top_srcdir)/macros/ac_python_devel.m4 \ + $(top_srcdir)/macros/ax_check_compile_flag.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx.m4 \ + $(top_srcdir)/macros/ax_cxx_compile_stdcxx_11.m4 \ $(top_srcdir)/macros/libtool.m4 \ $(top_srcdir)/macros/ltoptions.m4 \ $(top_srcdir)/macros/ltsugar.m4 \ @@ -200,6 +203,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GREP = @GREP@ +HAVE_CXX11 = @HAVE_CXX11@ INLINE_FLAGS = @INLINE_FLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -248,6 +252,8 @@ PYTHON_VERSION = @PYTHON_VERSION@ RANLIB = @RANLIB@ RUBY = @RUBY@ +RUBY_ARCH_INCLUDE_DIR = @RUBY_ARCH_INCLUDE_DIR@ +RUBY_ARCH_LIB_DIR = @RUBY_ARCH_LIB_DIR@ RUBY_BIN_DIR = @RUBY_BIN_DIR@ RUBY_EXTENSION_DIR = @RUBY_EXTENSION_DIR@ RUBY_INCLUDE_DIR = @RUBY_INCLUDE_DIR@ @@ -268,6 +274,7 @@ VERSION_MAJOR = @VERSION_MAJOR@ VERSION_MINOR = @VERSION_MINOR@ VERSION_PATCH = @VERSION_PATCH@ +VERSION_RELEASE = @VERSION_RELEASE@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -317,7 +324,6 @@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -355,8 +361,8 @@ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -417,7 +423,10 @@ cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \