0
的目標是:允許用戶打開和關閉數據的不同層;並從地圖移動事件中的數據庫中動態提取當前範圍的數據。虛擬地球VEShapeLayer將不會呈現
這工作正常,好,如果你硬編碼您的VEShapeLayers爲已完成here。
我的層的列表是從數據庫中來,我所擁有的一切工作,我想除了這樣當我添加的形狀,以我的VEShapeLayer沒有被呈現在我的地圖。調用VEShapeLayer.GetShapeCount()返回預期的數...所以該層具有數據..
這裏是代碼的重要位:
var assets = [];
if (WebServiceResult.length > 0) {
for (var i = 0; i < WebServiceResult.length; i++) {
var ix = FindLayerIndex(WebServiceResult[0].AssetMapLayer);
var velatlong = new VELatLong();
velatlong.Latitude = WebServiceResult[i].Latitude;
velatlong.Longitude = WebServiceResult[i].Longitude;
newShape = new VEShape(VEShapeType.Pushpin, velatlong);
assets.push(newShape);
}
// ix is defined above and is vaild and correct
map.GetShapeLayerByIndex(ix).AddShape(assets);
}
// a call here to map.GetShapeLayerByIndex(ix).GetShapeCount()
// returns the expected number of shapes