因为自己现在的公司是做遥感监测的,所以在前端经常会接触到各种地图、多边形的数据格式,不过我对这些都还不太熟悉,以此做个记录。
wkt
数据库经常存储的格式,表示的几何对象包括:点,线,多边形,TIN(不规则三角网)及多面体。
例:
POINT(6 10)
LINESTRING(3 4,10 50,20 25)
POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2))
MULTIPOINT(3.5 5.6, 4.8 10.5)
MULTILINESTRING((3 4,10 50,20 25),(-5 -8,-10 -8,-15 -4))
MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2)),((6 3,9 2,9 4,6 3)))
GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10))
POINT ZM (1 1 5 60)
POINT M (1 1 80)
POINT EMPTY
MULTIPOLYGON EMPTY
GeoJSON
用 JSON 的语法表达和存储地理数据
{
"type": "FeatureCollection",
"features": [
{
"type":"Feature",
"properties":{},
"geometry":{
"type":"Point",
"coordinates":[105.380859375,31.57853542647338]
}
}
]
}
相互转换
公司使用的解决方案是wkx包,可以导入直接调用api进行转换
const geojson = wkx.Geometry.parse(wkt).toGeoJSON();
const wkt = wkx.Geometry.parseGeoJSON(geojson).toWkt();
文章评论