#cloud #tile #tileset #api #tilemap #map #maptiler

maptiler-cloud

Maptiler Cloud API 的简单 Rust 封装库

3 个版本 (破坏性更新)

0.3.0 2021年10月25日
0.2.0 2021年10月15日
0.1.0 2021年10月13日

#10 in #tileset

每月下载量 27 次
用于 flight_tracking_erau_se30…

MIT 许可证

19KB
298

maptiler-cloud

Rust 封装 Maptiler Cloud API

支持请求所有当前可用的瓦片集

使用 Tiled Web Map 格式请求瓦片。指定 X 和 Y 坐标,并指定缩放级别。

示例用法

#[tokio::main]
async fn main() {
    // Create a new Maptiler Cloud session
    // Use your own API key from Maptiler Cloud
    let maptiler = maptiler_cloud::Maptiler::new("placeholder api key").unwrap();

    // Create a new tile request
    let x = 2;
    let y = 1;
    let zoom = 2;

    let tile_request = maptiler_cloud::TileRequest::new(
        maptiler_cloud::TileSet::Satellite,
        x,
        y,
        zoom
    ).unwrap();

    // Create the request using the Maptiler session
    let constructed = maptiler.create_request(tile_request);

    // Actually perform the request to get the data
    let satellite_jpg = constructed.execute().await.unwrap();

    // Check for JPEG file magic to make sure we got an image
    assert_eq!(&satellite_jpg[0..3], &[0xFF, 0xD8, 0xFF]);
}

从那里,大多数用户会将这些字节写入文件,或者将它们加载到另一个函数中,该函数能够从原始 JPEG 字节中显示图像。

依赖项

~3–14MB
~214K SLoC