Leaflet 如何在非地理地图上显示矢量图
我已经使用传单L.TitleLayer在地图上显示了网格瓷砖层。现在,我有一个geojson文件,希望显示在地图上Leaflet 如何在非地理地图上显示矢量图,leaflet,gis,vector-tiles,Leaflet,Gis,Vector Tiles,我已经使用传单L.TitleLayer在地图上显示了网格瓷砖层。现在,我有一个geojson文件,希望显示在地图上 { "type":"FeatureCollection", "features":[ { "type":"Feature", "id":1, "properties":{ "Entity":"LWPolyline", "Handle":"5D11",
{
"type":"FeatureCollection",
"features":[
{
"type":"Feature",
"id":1,
"properties":{
"Entity":"LWPolyline",
"Handle":"5D11",
"Layer":"JMD",
"LyrFrzn":0,
"LyrLock":0,
"LyrOn":1,
"LyrVPFrzn":0,
"LyrHandle":"16D",
"Color":6,
"EntColor":-1,
"LyrColor":6,
"BlkColor":0,
"Linetype":"Continuous",
"EntLinetyp":"Continuous",
"LyrLnType":"Continuous",
"BlkLinetyp":null,
"Elevation":0.000000,
"Thickness":0.000000,
"LineWt":0,
"EntLineWt":0,
"LyrLineWt":0,
"BlkLineWt":-1,
"RefName":null,
"LTScale":1.000000,
"ExtX":0.000000,
"ExtY":0.000000,
"ExtZ":1.000000,
"DocName":"03.dxf",
"DocPath":"F:\\dataChange\\03.dxf",
"DocType":"DXF",
"DocVer":"AC1021",
"height":0.000000,
"Shape_Leng":18.192087
},
"geometry":{
"type":"LineString",
"coordinates":[
[
3121034.4810791016,
534863.26330566406
],
[
3121039.9448852539,
534866.55871582031
],
[
3121041.3472900391,
534864.23352050781
],
[
3121035.8834838867,
534860.93811035156
],
[
3121034.4810791016,
534863.26330566406
]
]
}
}
]
}
我应该选择什么地图来完成它?因为geojson太大(上面的代码只是其中的一部分),所以我需要使用vectorTile。谢谢 我的建议:
1) 将您的数据放入PostGIS数据库
2) 使用PostGIS ST_ASMVT、ST_ASMVTGEOM函数从后端(nodejs/asp.net/php等)获取矢量平铺数据(pbf二进制文件)
3) 要获得矢量图块,可以使用mapnik(nodejs绑定)或mapserver(fastcgi,mascript无法生成mvt输出)。Mapnik和mapserver能够直接使用geojson源代码(无需postgis应用层)
4) 使用openlayers(我的选择)或传单或MapBox GL js客户端在浏览器中显示矢量平铺。我更喜欢OL,因为它更具可定制性,可以在不同的投影中显示矢量图块(不仅仅是在WebMercator中)。
使用mapserver或mapnik可以生成图像并使用其他输出格式(pdf、kml等)以及MVT(如果需要)和许多其他酷功能,如标签、查询、地理转换等。使用MVT需要客户端样式,但图像分幅完全在服务器上渲染。但是PostGIS的方式是轻量级的,快速的,并且非常简单
有很多其他的方法来制作矢量图块。例如,gdal ogr实现()支持层。您好,欢迎使用StackOverflow。你应该尝试解决你所面临的问题。