Skip to content

Overview ​

GeoTools is an open-source Java library providing tools for geospatial data manipulation, analysis, and visualization. This document introduces the GeoTools library, summarizing its purpose, structure, and capabilities as a comprehensive geospatial toolkit.

Purpose and Scope ​

GeoTools is designed to enable developers to build applications that work with geospatial data. It provides standards-compliant implementations of Open Geospatial Consortium (OGC) specifications while focusing on performance and usability. The library serves as the foundation for numerous geographic information systems and web mapping applications.

For specific implementation details about the architecture and module system, see Core Architecture.

Key Features ​

GeoTools offers a comprehensive set of geospatial capabilities including:

  • Standards-based spatial data model following OGC/ISO specifications
  • Coordinate reference system definitions and transformations
  • Vector and raster data access for numerous formats
  • Rendering system for map generation
  • Filter and query language (CQL) for data selection
  • Styling tools for cartographic representation

For detailed information on specific features, refer to respective sections in Raster Data Processing, Vector Data Processing, and Rendering System.

Library Organization ​

GeoTools uses a modular architecture to organize functionality into logical units while managing dependencies. The diagrams below illustrate the high-level organization and relationships between components.

Module Structure ​

SVG
100%

Data Processing Pipeline ​

SVG
100%

Supported Formats ​

GeoTools provides support for numerous geospatial data formats through its plugin system:

CategoryFormats
VectorShapefile, GeoPackage, PostGIS, Oracle Spatial, WFS
RasterGeoTIFF, ArcGrid, ImageMosaic, NetCDF, JPEG2000, WCS
DatabasePostgreSQL/PostGIS, Oracle, MySQL, SQL Server, H2
ServicesWMS, WFS, WCS, CSW

For detailed information on specific format implementations, refer to Format Support.

Project Information ​

GeoTools is an open-source project with a vibrant community of contributors. The library is distributed under the GNU Lesser General Public License (LGPL).

License ​

Lesser General Public License (LGPL)
http://www.gnu.org/copyleft/lesser.txt

Community ​

The GeoTools community includes developers from various organizations who contribute to the maintenance and enhancement of the library. The project uses a module maintainer system where specific developers take responsibility for different components.

For information on building the library from source or contributing to the project, see Development Guide.

Technical References ​

GeoTools follows several industry standards including:

  • OGC Simple Features Specification
  • ISO 19107 Geographic Information - Spatial Schema
  • ISO 19111 Geographic Information - Spatial Referencing by Coordinates
  • OGC Filter Encoding Specification
  • OGC Styled Layer Descriptor (SLD)

These standards inform the design and implementation of the library, ensuring interoperability with other geospatial systems.