Expand description
§Godot-GIS
A Godot-Rust GDExtension for integrating Geographic Information Systems (GIS) with Godot.
This crate provides geometry types, coordinate transformations, spatial indexing, and support for loading/saving Mapbox Vector Tiles (MVT).
§Core Modules
geometry- GIS geometry types (Point, Line, Polygon, etc.) with geo algorithm supportprojection- Coordinate reference system transformations using PROJrstar- R*-tree spatial indexing for efficient spatial queriesformats- Resource loaders and savers for geographic data formats (MVT, GPKG, Shapefile)mvt- Mapbox Vector Tile resources and layersgpkg- GeoPackage resources and layersgeojson- GeoJSON resources and layerstext- Experimental; Text rendering utilities for curved pathsgraph- Experimental; Graph networks and algorithmsrenderer- Renderer; Renders features using Godot’s RenderServer API
§Quick Start
When using as a Godot addon, the extension registers automatically. When using as a
Rust crate with the no-extension-library feature, you must register godot_gis manually with godot_gis::register()
inside your own extension.
§Features
mvt(default) - Enables Mapbox Vector Tile (.mvt) supportgpkg(default) - Enables GeoPackage (.gpkg) supportshp(default) - Enables Shapefile (.shp) supportno-extension-library- Disables standalone extension, for embedding in other extensions
Modules§
- formats
- Resource format handlers for geographic data formats.
- geojson
- geometry
- Geometry types and operations for GIS features.
- gpkg
- graph
- Graph structures and algorithms for spatial networks.
- mvt
- projection
- Coordinate reference system transformations using PROJ.
- renderer
- rstar
- R*-tree spatial indexing for GIS features.
- shp
- singleton
- text
- Text rendering utilities for GIS applications.
Macros§
- impl_
geo_ area - impl_
geo_ bounding_ rect - impl_
geo_ buffer - impl_
geo_ centroid - impl_
geo_ closest_ point - impl_
geo_ contains - Implements containment testing methods for various geometry types.
- impl_
geo_ densify - Implements geometry densification (adding intermediate points).
- impl_
geo_ distance - Implements distance calculation methods.
- impl_
geo_ intersection - Implements intersection testing methods for various geometry types.
- impl_
geo_ is_ within - Implements “is within” testing methods for various geometry types.
- impl_
geo_ length - Implements length calculation methods using different distance metrics.
- impl_
geo_ simplify - Implements geometry simplification algorithms.
- impl_
geo_ transform - Implements PROJ coordinate transformation support.
- impl_
geo_ type - Implements basic geometry type methods and geozero::ToGeo conversion.
- impl_
geo_ wkt - Implements WKT (Well-Known Text) serialization and deserialization.