Changelog History
Page 3
-
v0.23.0 Changes
2020-12-02
๐ Improvements for DCEL operations (
Intersection
,Union
,Difference
, andSymmetricDifference
). Some improvements simplify data structures and algorithms, and other improvements increase performance (~2x speedup).๐ Fixes a compiler warning in the
geos
package.๐จ Internal refactor of WKB error handling to mirror the error handling strategy used for WKT.
-
v0.22.0 Changes
2020-10-30
- โ Add
Intersection
,Union
,Difference
, andSymmetricDifference
operations.
- โ Add
-
v0.21.0 Changes
2020-10-30
- โ Add a
Distance
function that calculates the shortest Euclidean distance between two geometries.
- โ Add a
-
v0.20.0 Changes
2020-08-10
โ Add area calculation options (there are initially 2 options). The first option causes the area calculation to return the signed area. This replaces the
SignedArea
methods, and so is a breaking change. The second area allows the geometries to be transformed inline with the area calculation.โ Add
ForceCW
andForceCCW
methods. These methods force areal geometries to have consistent winding order (orientation).๐ Fix a bug in the convex hull algorithm that causes a crash in some rare scenarios involving almost collinear points.
โ Add GEOS Buffer option wrappers. The following options are now wrapped:
- The number of line segments used to represent curved parts of buffered geometries.
- End-cap style (round, flat, square).
- Join style (round, mitre, bevel).
โ Add a new constructor option
OmitInvalid
. This option causes invalid geometries to be replaced with empty geometries upon construction rather than giving an error.
-
v0.19.0 Changes
2020-06-27
๐ Fix a bug where constructor options were ignored in GeoJSON unmarshalling.
๐ Performance improvements to geometry validations and the Intersects operation (due to improvements to point-in-ring operations and RTree bulk loading).
-
v0.18.0 Changes
2020-05-30
๐ Improve R-Tree delete operation performance.
๐ Fix a bug in MultiPolygon validation.
-
v0.17.0 Changes
2020-05-17
๐ Improve the performance of R-Tree operations (with flow on improvements to many algorithms, including geometry validation).
โ Add a Delete method to the R-Tree implementation.
๐ Improve the numerical stability of the centroid calculation algorithm.
โ Add a method to the R-Tree to find the boxes nearest to another box.
โ Add a wrapper for the GEOS Relate function (which returns a DE-9IM code).
-
v0.16.0 Changes
2020-05-08
โ Add wrappers for the GEOS Difference and Symmetric Difference algorithms.
Implement the Point On Surface algorithm, which finds a point on the interior of a Polygon or Polygon. This algorithm is extended to also work with point and linear geometries.
๐ Improve performance of WKB marshalling and unmarshalling.
Alters the
UnmarshalWKT
function to accept astring
rather than anio.Reader
. A new functionUnmarshalWKTFromReader
has been added that accepts a reader. This makes the WKT interface more consistent with the WKB interface.
-
v0.15.0 Changes
2020-04-27
๐ Allow geometry constructor options to be passed to GEOS operations that produce geometries.
๐ Improve performance for MultiPolygon validation in cases where the child polygons touch at many points.
-
v0.14.0 Changes
2020-04-20
โ Adds an R-Tree data structure (new package,
github.com/peterestace/simplefeatures/rtree
). The implementation follows the approach outlined in R-Trees - A Dynamic Index Structure For Spatial Searching.๐ Improves some nasty worst-case performance behaviour for Polygon and MultiPolygon validation.