JTS Release 1.17.0
Java Version: 1.8
API Changes
- Change
Polygon
getExteriorRing
andgetInteriorRingN
accessors to returnLinearRing
.- This is a binary incompatible change to the method signature. Recompilation is necessary. No source code changes are required.
Functionality Improvements
- Added
IndexedFacetDistance.isWithinDistance
- Added
OrdinateFormat
to ensure that ordinate text output is accurate and consistent - Added
Triangle.circumcentreDD
- Added
DD.determinant
methods - Added
Envelope
methodsgetDiameter
,copy
,disjoint
(#483) - Added
Intersection
class, refactored library to use it (#468) - Added
CascadedPolygonUnion
union-by-buffer on error capability (#470) - Added
HalfEdge
support for direction points (#479) - Added
CoordinateList.toCoordinateArray(isForward)
(#482) - Addded
HPRtree
Hilbert Packed R-tree (#494) - Added
VariableBuffer
class for computing varying-distance buffers (#495) - Added
LineSegment.reflect
method (#495) - Added
MaximumInscribedCircle
algorithm (#530) - Added
LargestEmptyCircle
algorithm (#530)
Performance Improvements
- Improve performance of
UniqueCoordinateFilter
(#422) - Improve performance of
Polygonizer
(#431) - Avoid use of
ArrayList
in MonotoneChain builders - Add DistanceOp line-line envelope short-circuit optimizations (#534)
Bug Fixes
- Fix
PackedCoordinateSequence.Float
construction methods (#379, #381) - Fix bug in
Quadtree.ensureExtent
(#416) - Fix bugs in
LinearLocation
endpoint handling (#421) - Fix bug in
MinimumBoundingCircle
maximum diameter algorithm, and provide method for it - Improve robustness of
CascadedPolygonUnion
by addingOverlapUnion
- Fix bug in
HalfEdge.insert
method which caused CCW order not to be preserved in some cases - Fix generation of Voronoi diagrams for cases with sites in a square (#447)
- Fix use of clipping envelope in
VoronoiDiagramBuilder
- Fix infinite loop on empty input in
IndexedPointInAreaLocator
andSortedPackedIntervalRTree
(#462) - Fix WKT parsing in Turkish locale (#456)
- Improve accuracy of
LineSegment.lineIntersection
(#468) - Fix
Distance3DOp
coordinate ordering (#480) - Fix
Geometry.reverse()
to have consistent behaviour and to copy all fields (#513) - Fix
MinimumBoundingCircle.farthestPoints
to work correctly (#522 and #533) - Fix
DistanceOp
handling of geometry collections with empty components (#524) - Fix GML parsing of coordinates and SRS name (#553)
JTS TestBuilder
Functionality Improvements
- Add a UI to run external commands
- Allow creating additional view layers
- Add map view title, legend and border options
- Support points in Reveal Topology mode
- Add WKT panel Copy as WKB via Ctl-click
JTS TestRunner
Functionality Improvements
- Allow test files/dirs to be specified as free args
- Only load
.xml
files from directories
JtsOp
- Added command-line utility to run JTS operations