多くのポリゴン(11 000)でマップを作成しようとしていますが、各ポリゴンの色は同じですが、不透明度が異なるようにします。不透明度/多角形は、次のように保存されています。Google Maps API - geoJSONからポリゴンの不透明度を取得する
{'geometry': {'coordinates': [[[10.927456267537572, 45.68179119797432],
[10.940290010697588, 45.68157387892596],
[10.939979018768243, 45.67257819153854],
[10.927147329501077, 45.672795442796335],
[10.927456267537572, 45.68179119797432]]],
'type': 'Polygon'},
'id': 1,
'properties': {'cellId': 39},
'style': {'opacity': 0.38888888888888884},
'type': 'Feature'}
そして、私はライン'style': {'opacity': 0.38888888888888884},
に保存されている不透明度を持っているIDが1の多角形、およびによって異なる不透明度などを持っているために、ID 2を持つポリゴンを持ちたいですポリゴンはデフォルトで表示されますが、同じ不透明度で表示されます。私は現在試しています:
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
zoom: 7,
center: {lat: 46.0840601, lng: 11.1428063}
});
map.data.loadGeoJson(
'trentino-grid.geojson');
}
map.data.setStyle(function(feature) { //error here
var value = feature.getProperty('opacity');
var opacity = value;
return {
fillOpacity: opacity,
strokeWeight: opacity
};
});
しかし、これは動作しません。コメント付きの行にはエラー番号Cannot read property 'data' of undefined
が表示されます。エラーを取り除き、geoJSONのopacity
に基づいて、これらのポリゴンすべてに独自の不透明度を持たせるにはどうすればよいですか?ありがとうございました!
私のために働く。 [フィドル](http://jsfiddle.net/geocodezip/a9hpgjpL/1/)。参考までに、strokeWeightは「ストロークの幅(ピクセル単位)」です。整数を使用することをお勧めします。 – geocodezip
私は実際には動作しません...不透明度を変更してみてください。同じままです。また、ポリゴンを追加すると、その不透明度もすべて同じになります。 –
間違った場所に不透明度がありません。プロパティーオブジェクトにはありません。 [更新されたフィドル](http://jsfiddle.net/geocodezip/a9hpgjpL/2/) – geocodezip