@dfsj/wkx
v4.0.0-alpha.1
Published
WKT/WKB/EWKT/EWKB/TWKB/GeoJSON parser and serializer
Readme
@dfsj/wkx
Well-Known Text/Binary 几何格式解析库,提供 WKT/WKB 与 GeoJSON 之间的相互转换能力
简介
@dfsj/wkx 是 Well-Known Text/Binary 几何格式解析库,提供 Point、LineString、Polygon 等完整几何类型的 WKT/WKB 与 GeoJSON 双向转换能力,适用于 GIS 数据交换和空间数据存储场景。
主要功能
- Geometry 类 - Point / LineString / Polygon / Multi* 完整几何类型
- 格式转换 - WKT ↔ WKB ↔ GeoJSON 双向转换
- TWKB 支持 - Tiny Well-Known Binary 紧凑格式
- EWKT/EWKB - 扩展坐标参考系统支持
安装
pnpm add @dfsj/wkx快速开始
import { Geometry, wktToGeoJSON, geojsonToWKT } from '@dfsj/wkx'
// WKT 转 GeoJSON
const geojson = wktToGeoJSON('POINT(116.39 39.9)')
// => { type: 'Point', coordinates: [116.39, 39.9] }
// GeoJSON 转 WKT
const wkt = geojsonToWKT({ type: 'Point', coordinates: [116.39, 39.9] })
// => 'POINT(116.39 39.9)'
// 使用 Geometry 类
const point = new Point([116.39, 39.9])
console.log(point.toWKT()) // POINT(116.39 39.9)
console.log(point.toGeoJSON())主要导出
| 导出名 | 类型 | 说明 |
|:------|:-----|:-----|
| Point | Class | 点几何 |
| LineString | Class | 线几何 |
| Polygon | Class | 面几何 |
| MultiLineString | Class | 多线 |
| MultiPolygon | Class | 多面 |
| wktToGeoJSON | Function | WKT → GeoJSON |
| geojsonToWKT | Function | GeoJSON → WKT |
| wkbToGeoJSON | Function | WKB → GeoJSON |
| geojsonToWKB | Function | GeoJSON → WKB |
完整 API 文档请查看 在线文档站
使用要求
| 环境 | 要求 | |:-----|:-----| | Node.js | >=18.12.0 |
开发指南
git clone http://10.10.12.18/dfsj/dfsj
pnpm install
cd packages/wkx
pnpm watch文档
许可证
Copyright (c) 2022 - present yangbo
