Eclipse LocationTech JTS Topology Suite (locationtech.github.io/jts)
The Eclipse LocationTech JTS Topology Suite is an open-source Java library that provides a reference implementation of planar geometric operations and topological functions for vector geometry processing (geospatial data processing).
- Robust geometric predicates and operations on 2D linear geometry models (computational geometry)
- Support for standard geometry types such as points, lines, and polygons with linear boundaries (geospatial vector data)
- Topological validation, overlay, buffering, and spatial analysis functions (spatial analytics)
- Geometry construction, manipulation, and precision control utilities (geometry processing)
- Reusable foundation for GIS, spatial databases, and location-based services in Java environments (geospatial application infrastructure)
More About locationtech.github.io
The Eclipse LocationTech JTS Topology Suite (JTS) is a Java library for creating, analyzing, and processing planar vector geometry, with a focus on robust implementations of geometric and topological operations used in geospatial applications (geospatial data processing). It is hosted under the Eclipse Foundation’s LocationTech working group, which focuses on open-source geospatial technologies.
JTS addresses use cases where applications need to represent and compute relationships between points, line strings, and polygonal geometries in two-dimensional Cartesian space (computational geometry). It provides a geometry model that includes common types such as Point, LineString, LinearRing, Polygon, MultiPoint, MultiLineString, MultiPolygon, and GeometryCollection (geospatial vector data). These types follow a linear geometry model and are compatible in concept with common geospatial standards for simple features geometry (geospatial standards support).
The library includes a range of geometric predicates and operations such as intersection tests, containment checks, equality and distance computations, overlays (union, intersection, difference, symmetric difference), buffering, and line simplification (spatial analytics). These operations are implemented with attention to numerical robustness and topology preservation, which is required for processing large or complex geometry datasets in production workflows (geospatial application infrastructure).
JTS also provides utilities for geometry construction and manipulation, including coordinate sequence handling, precision models, affine transformations, and geometry editors (geometry processing). It includes algorithms for polygonization, linear referencing, and noding, which support workflows like building polygons from linework, measuring along linear networks, and handling segment intersections (geospatial network analysis).
In enterprise environments, JTS is used as a core geometry engine inside GIS systems, spatial middleware, and custom Java services that handle map data, spatial queries, and geometry validation (enterprise geospatial platforms). It is suitable for integration into spatial data pipelines, tile generation services, spatial Extract, Transform, Load (ETL) tools, and analytics platforms where deterministic geometric operations and consistent topology are required (data infrastructure).
From an architectural perspective, JTS functions as a library layer that can be embedded into application servers, microservices, or desktop applications, often sitting beneath higher-level APIs or data access frameworks (application middleware). It does not mandate a particular storage or database system, but is frequently paired with geospatial file formats or databases that manage feature data while delegating computational geometry to JTS (interoperability component).
Within a technical directory, JTS is categorized as a Java geometry and topology engine for planar vector data (geospatial data processing), providing reusable computational geometry primitives and operations that underpin GIS, mapping, and location-based services across enterprise and institutional deployments.