[geos-commits] [SCM] GEOS branch main updated. ef3cb817095e1439bcce5876b5e9c8ac92b308e3

git at osgeo.org git at osgeo.org
Tue Jul 18 12:16:35 PDT 2023


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GEOS".

The branch, main has been updated
       via  ef3cb817095e1439bcce5876b5e9c8ac92b308e3 (commit)
       via  423dcdc06c5e7194129d96ab992f89edda3e321b (commit)
      from  cf1e312f0f6707ec74facbaababf00424006456b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit ef3cb817095e1439bcce5876b5e9c8ac92b308e3
Author: Martin Davis <mtnclimb at gmail.com>
Date:   Tue Jul 18 12:16:16 2023 -0700

    Update NEWS

diff --git a/NEWS.md b/NEWS.md
index 80c45cb9c..effecd7b6 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -10,6 +10,7 @@
   - WKTWriter: Points with all-NaN coordinates are written as such (GH-927, Casper van der Wel)
   - ConvexHull: Performance improvement for larger geometries (JTS-985, Martin Davis)
   - Intersection: change to using DoubleDouble computation to improve robustness (GH-937, Martin Davis)
+  - Fix LargestEmptyCircle to respect polygonal obstacles (GH-939, Martin Davis)
 
 
 ## Changes in 3.12.0

commit 423dcdc06c5e7194129d96ab992f89edda3e321b
Author: Martin Davis <mtnclimb at gmail.com>
Date:   Tue Jul 18 12:14:00 2023 -0700

    Add geosop op largestEmptyCircleBdy

diff --git a/util/geosop/GeometryOp.cpp b/util/geosop/GeometryOp.cpp
index b66531293..34a854918 100644
--- a/util/geosop/GeometryOp.cpp
+++ b/util/geosop/GeometryOp.cpp
@@ -379,13 +379,22 @@ std::vector<GeometryOpCreator> opRegistry {
 }},
 {"largestEmptyCircle", [](std::string name) { return GeometryOp::create(name,
     catConst,
-    "compute radius line of largest empty circle of geometry up to a distance tolerance",
+    "compute radius line of largest empty circle between obstacles, up to a distance tolerance",
     [](const std::unique_ptr<Geometry>& geom, double d) {
         geos::algorithm::construct::LargestEmptyCircle lec( geom.get(), d );
         std::unique_ptr<Geometry> res = lec.getRadiusLine();
         return new Result( std::move(res) );
     });
 }},
+{"largestEmptyCircleBdy", [](std::string name) { return GeometryOp::create(name,
+    catConst,
+    "compute radius line of largest empty circle between obstacles with center in a boundary, up to a distance tolerance",
+    [](const std::unique_ptr<Geometry>& geom, const std::unique_ptr<Geometry>& geom2, double d) {
+        geos::algorithm::construct::LargestEmptyCircle lec( geom.get(), geom2.get(), d );
+        std::unique_ptr<Geometry> res = lec.getRadiusLine();
+        return new Result( std::move(res) );
+    });
+}},
 {"maxInscribedCircle", [](std::string name) { return GeometryOp::create(name,
     catConst,
     "compute maximum inscribed circle radius of Polygon up to a distance tolerance",

-----------------------------------------------------------------------

Summary of changes:
 NEWS.md                    |  1 +
 util/geosop/GeometryOp.cpp | 11 ++++++++++-
 2 files changed, 11 insertions(+), 1 deletion(-)


hooks/post-receive
-- 
GEOS


More information about the geos-commits mailing list