10个版本 (6个稳定版)
1.5.0 | 2024年7月21日 |
---|---|
1.4.0 | 2024年6月4日 |
1.2.0 | 2023年10月26日 |
1.1.0 | 2023年6月20日 |
1.0.0-alpha.3 | 2023年5月29日 |
#139 in WebAssembly
每月260次下载
30KB
436 行
mvt-reader
Rust中的Mapbox矢量瓦片读取器
一个用于解码和读取Mapbox矢量瓦片的Rust和WebAssembly库
特性
- 在Rust中解码和读取Mapbox矢量瓦片
- 提供API以访问矢量瓦片中的图层名称和功能
- 可以作为JavaScript中的WebAssembly模块使用(由
wasm
功能启用)
构建项目
cargo build --release
运行测试
cargo test
wasm-pack build --release --target nodejs -d pkg/node -- --features wasm && npm test
用法
要在Rust项目中使用mvt-reader
库,请将以下内容添加到您的Cargo.toml
文件中
[dependencies]
mvt-reader = "1.5.0"
然后,您可以在代码中导入并使用此库
use mvt_reader::{Reader, ParserError};
fn main() -> Result<(), ParserError> {
// Read a vector tile from file or data
let data = vec![/* Vector tile data */];
let reader = Reader::new(data)?;
// Get layer names
let layer_names = reader.get_layer_names()?;
for name in layer_names {
println!("Layer: {}", name);
}
// Get features for a specific layer
let layer_index = 0;
let features = reader.get_features(layer_index)?;
for feature in features {
todo!()
}
Ok(())
}
WebAssembly用法
要将mvt-reader库作为JavaScript中的WebAssembly模块使用,您可以使用npm安装它并在JavaScript代码中使用它
const { Reader } = require('mvt-reader')
const fs = require('fs')
// Example usage
const reader = new Reader(fs.readFileSync('path/to/tile.mvt'))
const layerNames = reader.getLayerNames()
console.log(layerNames)
// More code...
许可
本项目遵循MIT许可。
依赖
~1–3.5MB
~56K SLoC