Expand description
§FlatCityBuf Core Library
A high-performance Rust library for encoding and decoding CityJSON data to the FlatCityBuf (FCB) binary format. FCB uses FlatBuffers for efficient serialization with support for spatial and attribute indexing.
§Attribution
Portions of this software are derived from FlatGeobuf
- Source: https://github.com/flatgeobuf/flatgeobuf
- License: BSD 2-Clause License
- Copyright (c) 2018-2024, Björn Harrtell and contributors
Specifically, the following components contain code derived from FlatGeobuf:
- Spatial indexing algorithms (packed R-tree implementation)
- HTTP range request handling (for Rust native part)
- Binary format design patterns
We extend our gratitude to the FlatGeobuf team for their excellent work on efficient geospatial binary formats, which provided the foundation for FlatCityBuf’s spatial indexing and serialization architecture.
§License
This project is licensed under the MIT License. FlatGeobuf portions remain under their original BSD 2-Clause License.
Re-exports§
pub use error::Error;pub use packed_rtree::NodeItem;pub use packed_rtree::PackedRTree;pub use packed_rtree::Query as SpatialQuery;pub use packed_rtree::SearchResultItem;pub use static_btree::Entry;pub use static_btree::FixedStringKey;pub use static_btree::Key;pub use static_btree::KeyType;pub use static_btree::MemoryIndex;pub use static_btree::MemoryMultiIndex;pub use static_btree::MultiIndex;pub use static_btree::Operator;pub use static_btree::Query;pub use static_btree::QueryCondition;pub use static_btree::StreamIndex;pub use static_btree::StreamMultiIndex;pub use fb::*;pub use http_reader::*;
Modules§
- attribute
- city_
buffer - deserializer
- error
- fb
- feature_
writer - geom_
decoder - geom_
encoder - header_
writer - http_
reader - HTTP reader for FlatCityBuf files
- packed_
rtree - Create and read a packed Hilbert R-Tree to enable fast bounding box spatial filtering.
- serializer
- static_
btree
Structs§
- CityJSON
Seq - FcbReader
- FcbWriter
- Main writer for FlatCityBuf (FCB) format
- Feature
Iter - Float
- A wrapper around floats providing implementations of
Eq,Ord, andHash. - Meta
- Meta
Column
Enums§
Constants§
Traits§
Functions§
- add_
indices_ to_ multi_ memory_ index - add_
indices_ to_ multi_ stream_ index - build_
query - check_
magic_ bytes - read_
cityjson - Read CityJSON from a file path
- read_
cityjson_ from_ reader - Read CityJSON from any reader (file or stdin)