Google maps api 3 谷歌地图v3数据功能可编辑?

Google maps api 3 谷歌地图v3数据功能可编辑?,google-maps-api-3,geojson,Google Maps Api 3,Geojson,我有多边形加载使用的方法 map.data.loadGeoJson('geo.json',{ idPropertyName: 'ID' }); 现在,我想制作一个从geojson多边形加载的可编辑多边形 我被审判: map.data.getFeatureById(1).setProperty('editable', true); 但是data.feature似乎没有可编辑属性 有没有办法用最简单的方法制作? 我现在唯一的想法就是用geoJson制作我自己的解析器,并将所有形状绘制成googl

我有多边形加载使用的方法

map.data.loadGeoJson('geo.json',{ idPropertyName: 'ID' });
现在,我想制作一个从geojson多边形加载的可编辑多边形

我被审判:

map.data.getFeatureById(1).setProperty('editable', true);
但是data.feature似乎没有可编辑属性

有没有办法用最简单的方法制作?
我现在唯一的想法就是用geoJson制作我自己的解析器,并将所有形状绘制成google.maps.Polygon()。

也许这不是最好的解决方案,但它现在对我来说很管用。 我正在从特征复制形状几何体,并在适当的位置创建新的多边形

var shape = [];
for (var i = 0; i < map.data.getFeatureById(ID).getGeometry().getLength(); i++) {
        var shapeData = map.data.getFeatureById(ID).getGeometry().getAt(i).getArray();
        shape.push(shapeData);
    }

    nowEditingShape = new google.maps.Polygon({
      paths: shape,
      strokeColor: '#FF0000',
      strokeOpacity: 0.8,
      strokeWeight: 2,
      fillColor: '#FF0000',
      fillOpacity: 0.35,
    editable: true
    });
    map.data.remove(map.data.getFeatureById(ID));
    nowEditingShape.setMap(map);
var-shape=[];
对于(var i=0;i
我认为这是最简单的方法:

map.data.overrideStyle(map.data.getFeatureById(1), { editable: true });
此工具的零件代码


完整的编辑器代码:

我找到了一个解决方案。也许它不是最好的,但现在它解决了我的问题。你试过
map.data.getFeatureById(1).setStyle({editable:true})
?你读过我的问题吗?您的解决方案没有为data.Feature设置可编辑属性。
map.data.overrideStyle(map.data.getFeatureById(1), { editable: true });
  // Initialise the map.
  map = new google.maps.Map(document.getElementById('map-holder'), {
    center: {lat: 0, lng: 0},
    zoom: 3
  });
  map.data.setControls(['Point', 'LineString', 'Polygon']);
  map.data.setStyle({
    editable: true,
    draggable: true
  });