GeoTools¶
GeoTools is an open source (LGPL) Java code library which provides standards compliant methods for the manipulation of geospatial data, for example to implement Geographic Information Systems. The GeoTools library data structures are based on Open Geospatial Consortium (OGC) specifications.
GeoTools is used by a number of projects including web services, command line tools and desktop applications.
Core Features¶
Definition of interfaces for key spatial concepts and data structures
Integrated Geometry support provided by Java Topology Suite (JTS)
Attribute and spatial filters using OGC Filter Encoding specification
A clean data access API supporting feature access, transaction support and locking between threads
Access GIS data in many file formats and spatial databases
Coordinate reference system and transformation support
Work with an extensive range of map projections
filter and analyze data in terms of spatial and non-spatial attributes
A stateless, low memory renderer, particularly useful in server-side environments.
compose and display maps with complex styling
vendor extensions for fine control of text labels and color blending
Powerful schema assisted parsing technology using XML Schema to bind to GML content
The parsing / encoding technology is provided with bindings for many OGC standards including GML, Filter, KML, SLD, and SE.
GeoTools Plugins: open plug-in system allowing you to teach the library additional formats
Plug-ins for the ImageIO-EXT project allowing GeoTools to read additional raster formats from GDAL
GeoTools Extensions
Provide additional capabilities built using the spatial facilities of the core library.
Extensions provide graph and networking support (for finding the shortest path), validation, a web map server client, bindings for XML parsing and encoding and color brewer!
GeoTools Unsupported
GeoTools also operates as part of a wider community with a staging area used to foster new talent and promote experimentation.
Some highlights are swing support (used in our tutorials!), SWT, local and web process support, additional symbology, additional data formats, generation of grids and a couple of implementations of ISO Geometry.
Supported Formats¶
raster formats and data access
arcgrid
geotiff
grassraster
image (
JPEG
TIFF
GIF
PNG
),imageio-ext-gdal
imagemosaic
imagepyramid
JP2K
matlab
Database
jdbc-ng
supportdb2
geopackage
hana
h2
mysql
oracle
postgis
sqlserver
teradata
Vector formats and data access
app-schema
csv
geojson
property
shapefile
wfs
XML Bindings
Java data structures and bindings provided for the following:
xsd-core
(xml simple types)fes
filter
gml2
gml3
kml
ows
sld
wcs
wfs
wms
wmts
wps
Additional Geometry, Filter and Style parser/encoders available for DOM and SAX applications.
Implemented Standards¶
Support of numerous Open Geospatial Consortium (OGC) standards:
OGC Style Layer Descriptor / Symbology Encoding data structures and rendering engine
OGC General Feature Model including Simple Feature support
OGC Grid Coverage representation of raster information
OGC Filter and Common Constraint Language (CQL)
Clients for Web Feature Service, Web Map Service and experimental support for Web Process Service
ISO 19107 Geometry