私はうまく動作するページを持っています.Bingマップをロードし、ポリゴンで塗りつぶされたレイヤーを作成します。ポリゴンを作成するJSONデータをリロードする必要がありますが、データは別のレイヤーに追加されるため、上に表示されます。私は、レイヤーを削除するなどのレイヤーをクリアしようとしましたが、何も動作していないようです。Bing Maps Apiはレイヤーをクリアします
ご了承ください。私は
dataLayer.clear();
を使用して第一層をクリアしようとしているしかし、それは何もしないようだと述べてきたように
これはそれをすべて行う関数...
function AddData() {
dataLayer = new Microsoft.Maps.Layer();
Microsoft.Maps.loadModule('Microsoft.Maps.GeoJson', function() {
var featureCollection = Microsoft.Maps.GeoJson.read(json, {
polygonOptions: {
strokeColor: 'LightSkyBlue',
strokeThickness: 2
}
});
for (var i = 0; i < featureCollection.length; i++) {
var fillColour = featureCollection[i].metadata.FillColor;
featureCollection[i].setOptions({ fillColor: fillColour });
Microsoft.Maps.Events.addHandler(featureCollection[i], 'click', displayClickBox);
Microsoft.Maps.Events.addHandler(featureCollection[i], 'mouseover', displayMouseOverBox);
Microsoft.Maps.Events.addHandler(featureCollection[i],'mouseout', displayMouseOut);
dataLayer.add(featureCollection[i], 0);
}
map.layers.insert(dataLayer);
});
}
var getJson = function() {
var onContentComplete = function (response) {
//Load the JSON data into the local variable for use latter in the project...
json = response.data;
//load the map now that we have the polygon data...
AddData();
};
var onError = function (reason) {
//An error has occured so display a message to the user...
$scope.error = "Server communication error please try again...";
//Log the error to the console for admin debug...
console.log(reason.data);
};
//Load the JSON for the map polygons into memory ready for display...
$http.get("../JSON/MapData.json")
.then(onContentComplete, onError);
}
です。
私はここで何時間も働いているように助けてください。
ありがとう
クリフ。
問題ではありません私にはとても明確です。あなたは「上に現れる」という意味はどうですか?何の上に - 地図ですか?地図の上に表示してはいけませんか?現在の状況と欲しい状況は何ですか? (スクリーンショットが役立つかもしれません) –
レイヤー同士が重なり合っています。レイヤーが1つだけで、Alphaが0.3に設定されているので、ポリゴンの下にマップが表示されます。しかし、関数が繰り返されるにつれて、最後のレイヤーの上に別のレイヤーがロードされ、マップは新しいレイヤーごとに徐々に暗くなります。私は1つのレイヤーが複数ではないことを望みます。 –
addDataの呼び出しを追加できますか?addDataは完全に動作するように思えますが、同じポリゴン(ポリゴンを保持する同じjsonオブジェクト)で複数回呼び出されます。 –