#地图 #openstreetmap #tilemap #png #图像 #osm #瓦片

staticmap

基于瓦片的静态地图图像渲染器

9个版本

0.4.2 2024年1月24日
0.4.1 2022年5月27日
0.4.0 2021年5月13日
0.3.2 2021年4月28日
0.1.1 2020年9月30日

#300图像

Download history 28/week @ 2024-04-02 1/week @ 2024-05-21 4/week @ 2024-05-28 3/week @ 2024-06-04

94 每月下载量
用于 mbta-rs

MIT 许可证

460KB
750

Build Status docs crate

StaticMap

StaticMap是一个用于渲染基于瓦片地图的图像库。

功能

  • 将地图渲染为PNG图像。
  • 在地图上绘制特征,如
    • 线条
    • 圆形
    • PNG图标

文档

API文档.

示例

请参阅/examples文件夹,了解如何使用库的不同示例。

示例可以使用cargo run --example <example name>运行。

结果

线条

line

圆形

circle

图标

icon


lib.rs:

StaticMap是一个用于渲染基于瓦片地图的图像库。

StaticMap使用构建器模式来构建地图、线条和标记。

要开始,请使用[StaticMapBuilder][StaticMapBuilder]构建地图实例,并在[tools][tools]模块中查找工具构建器。

功能

  • 将地图渲染为PNG图像。
  • 在地图上绘制特征,如
    • 线条
    • 圆形
    • PNG图标

示例

use staticmap::{
    tools::{Color, LineBuilder},
    StaticMapBuilder, Error,
};

fn main() -> Result<(), Error> {
    let mut map = StaticMapBuilder::default()
        .width(300)
        .height(400)
        .padding((10, 0))
        .build()?;

    let lat: &[f64] = &[52.5, 48.9];
    let lon: Vec<f64> = vec![13.4, 2.3];

    let red = Color::new(true, 255, 0, 0, 255);

    let line = LineBuilder::default()
        .lat_coordinates(lat.to_vec())
        .lon_coordinates(lon)
        .width(3.)
        .simplify(true)
        .color(red)
        .build()?;

    map.add_tool(line);
    map.save_png("line.png")?;

    Ok(())
}

依赖项

~5.5MB
~128K SLoC