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