点对象:

leaflet 使用GEOJSON创建矢量图形
function g(feature, layer) {
            // does this feature have a property named popupContent?
            if (feature.properties && feature.properties.popupContent) {
                layer.bindPopup(feature.properties.popupContent);
            }
        }

        var geojsonFeature = {
            "type": "Feature",
            "properties": {
                "name": "Coors Field",
                "amenity": "Baseball Stadium",
                "popupContent": "This is where the Rockies play!"
            },
            "geometry": {
                "type": "Point",
                "coordinates": [100, 31]
            }
        };

        L.geoJSON(geojsonFeature, {
            onEachFeature: g
        }).addTo(map);
leaflet 使用GEOJSON创建矢量图形

线要素:

leaflet 使用GEOJSON创建矢量图形
var draw_line = {
            "type": "Feature",
            "geometry": {
                "type": "LineString",
                "coordinates": [
                    [110, 11],
                    [110, 49]
                ]
            },
            "properties": {
                "popupContent": "This is a free bus line that will take you across downtown.",
                "underConstruction": true
            },
            "id": 2
        };

//绑定事件
function f(feature, layer) {
    layer.bindPopup(feature.properties.popupContent);
}

//增加到地图
var ss = L.geoJson(draw_line, {
    style: {
        "color": 'black',
        "weight": 1
    },
    onEachFeature: f
}).addTo(map);
leaflet 使用GEOJSON创建矢量图形

多边形(Polygon)

leaflet 使用GEOJSON创建矢量图形
var states = [{
    "type": "Feature",
    "properties": {"party": "Republican"},
    "geometry": {
        "type": "Polygon",
        "coordinates": [[
            [-104.05, 48.99],
            [-97.22,  48.98],
            [-96.58,  45.94],
            [-104.03, 45.94],
            [-104.05, 48.99]
        ]]
    }
}, {
    "type": "Feature",
    "properties": {"party": "Democrat"},
    "geometry": {
        "type": "Polygon",
        "coordinates": [[
            [-109.05, 41.00],
            [-102.06, 40.99],
            [-102.03, 36.99],
            [-109.04, 36.99],
            [-109.05, 41.00]
        ]]
    }
}];

L.geoJSON(states, {
    style: function(feature) {
        switch (feature.properties.party) {
            case 'Republican': return {color: "#ff0000"};
            case 'Democrat':   return {color: "#0000ff"};
        }
    }
}).addTo(map);
leaflet 使用GEOJSON创建矢量图形

 

相关文章:

  • 2021-04-17
  • 2021-08-04
  • 2022-12-23
  • 2021-07-23
  • 2021-08-14
  • 2022-01-09
  • 2021-11-15
猜你喜欢
  • 2021-10-15
  • 2022-01-03
  • 2021-12-14
  • 2021-04-10
  • 2021-12-22
  • 2021-07-30
  • 2021-08-26
相关资源
相似解决方案