#cartography #brisk #map #style #symbol #layer #rule

macro brisk-cartography

Use of the brisk declarative engine with cartography

1 unstable release

new 0.1.0 Dec 18, 2024

#511 in Procedural macros

MIT license

21KB
415 lines

stable pipeline dev/1 pipeline docs crates.io

brisk-cartography

brisk-cartography provides integration with the cartography.

Example

The following creates a map with a single layer loaded with geojson:

brisk_cartography::brisk_it! {
    Map
    {
        GeoJsonLayer
        {
            name: "Continents",
            source: include_str!("../data/continents.json").as_bytes(),
        }
    }
}

The following defines a style to show the continents with a black outline, and a white background:

brisk_cartography::brisk_it! {
    Style
    {
        background_color: cartography::Rgba::OSM_BLUE,
        Rule {
            geo_type: cartography::GeometryType::Polygon,
            symbol: Symbol {
                stroke_width: 1.0,
                stroke_color: cartography::Rgba::BLACK.into(),
                fill_color: cartography::Rgba::OSM_WHITE.into(),
                },
        }
    }
}

The full example is available in the cartography example.

Dependencies

~235–680KB
~16K SLoC