2014-11-02 36 views
0

荫试图在浏览器上绘制特定形状以GeoJSON

故事画建筑群形状GeoJSON的是:我想要的(udig或QGIS)形状文件和shape文件转换为GeoJSON的,然后进行形状文件在浏览器上的形状。 我准备好了可以制作shapefile并将其转换为geoJSON

我已经搜索了一切,但只是找到geoJSON(开放图层/ Leaflet/Mapbox)的3个库。 这些都是好的和有益的,但唯一的是他们都需要加载世界地图,我不想被加载。 我无法配置这些库来构建我的自定义地图。

回答

0

我发现单张库解决方案
这里是示例代码

// a GeoJSON multipolygon 
var mp = { 
    "type": "Feature", 
    "geometry": { 
    "type": "MultiPolygon", 
    "coordinates": [ 
     [ 
      [ 
      [101.2, 1.2], [101.8, 1.2], [101.8, 1.8], [101.2, 1.8], [101.2, 1.2] 
      ], 
      [ 
      [101.2, 1.2], [101.3, 1.2], [101.3, 1.3], [101.2, 1.3], [101.2, 1.2] 
      ], 
      [ 
      [101.6, 1.4], [101.7, 1.4], [101.7, 1.5], [101.6, 1.5], [101.6, 1.4] 
      ], 
      [ 
      [101.5, 1.6], [101.6, 1.6], [101.6, 1.7], [101.5, 1.7], [101.5, 1.6] 
      ] 
     ], 
     [ 
      [ 
      [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] 
      ], 
      [ 
      [100.35, 0.35], [100.65, 0.35], [100.65, 0.65], [100.35, 0.65], [100.35, 0.35] 
      ] 
     ] 
     ] 
    }, 
    "properties": { 
    "name": "MultiPolygon", 
    "style": { 
     color: "black", 
     opacity: 1, 
     fillColor: "white", 
     fillOpacity: 1 
    } 
    } 
}; 

// create a map in the "map" div, set the view to a given place and zoom 
var map = L.map('map', { 
    center: [0.8, 100.9], 
    zoom: 8 
}); 
new L.GeoJSON(mp, { 
    style: function(feature) { 
     return feature.properties.style 
    } 
}).addTo(map); 

和HTML

<div id="map" style="height:480px; width:360px;"></div> 

不要忘记装载传单要求文件