JTS Topology Suite v1.17.1 Release Notes

Release Date: 2020-08-28 // about 1 year ago
  • ๐Ÿ”– Version 1.17.1

    ๐Ÿš€ Release Date: August 27, 2020

    Java Version: 1.8

    Functionality Improvements

    • โž• Add WKBReader and WKBWriter support for POINT EMPTY (#567)

    ๐ŸŽ Performance Improvements

    • ๐Ÿ‘Œ Improve performance of PreparedPolygon covers and contains for point inputs (#577)

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fix IndexedPointInAreaLocator thread-safety (#572)
    • ๐Ÿ›  Fix WKTReader to handle MultiPoints containing EMPTY (#575)
    • ๐Ÿ›  Fix API compile regression by removing deprecation on geometry reverse methods (#582)

    โœ… JTS TestBuilder

    Functionality Improvements

    • โž• Add per-Layer palette control for Strokes and Fills

    โœ… JTS TestRunner

    Functionality Improvements

    • โœจ Enhance -geomfunc to load multiple function classes
    • ๐Ÿ›  Fix function registry to replace matching loaded functions (#569)

Previous changes from v1.17.0

  • Java Version: 1.8

    API Changes

    • ๐Ÿ”„ Change Polygon getExteriorRing and getInteriorRingN accessors to return LinearRing.
      • 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 methods getDiameter, 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 adding OverlapUnion
    • ๐Ÿ›  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 and SortedPackedIntervalRTree (#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