# geo

Canonical: https://gisforweb.com/tools/rust-geo/

Rust crate of geospatial primitives, algorithms and CRS utilities.

geo is a Rust crate providing planar and spherical geometry types such as Point, LineString and Polygon, plus algorithms including DE-9IM topological predicates, boolean operations, buffers, convex hulls and DBSCAN or k-means clustering. Coordinate reference system support comes through the PROJ-backed proj crate, and serialization to GeoJSON and WKT through the geojson and wkt crates. It is the primitive layer that the rest of the Rust Geo ecosystem builds on.

## Details

- Type: library

- Categories: analysis, vector

- Open source: Yes

- Pricing model: open-source

- License: MIT OR Apache-2.0

- Platforms: linux, macos, windows

## Features

- Point, LineString and Polygon primitives

- DE-9IM topological relationship predicates

- Boolean operations, buffers and convex hulls

- DBSCAN and k-means clustering

- Euclidean and haversine distance calculations

- Repairs invalid polygons via constrained triangulation

## Project sources

- Website: https://georust.github.io/geo/

- Documentation: https://docs.rs/geo/latest/geo/

- Repository: https://github.com/georust/geo

Directory descriptions are summaries. Verify current capabilities and terms with the project sources.
