我有一个大型物体,充满了GIS系统的WKT信息。我循环遍历数据并将其映射到图层,然后将这些图层推送到地图上。这工作正常,我正在显示正确的数据。
for (var j = 0; j < 10; j++) {
var dataLayer = new Microsoft.Maps.Layer($scope.thing);
for (var i = 0; i < bArray.length; i++) {
if (bArray[i].count == $scope.thing) {
dataLayer.add(new Microsoft.Maps.WellKnownText.read(bArray[i].wkt);
dataLayer.item = bArray[i].count;
}
}
Microsoft.Maps.Events.addHandler(dataLayer, "click", polylineClicked);
$scope.map.layers.insert(dataLayer);
$scope.map.layers[j].setVisible(false);
$scope.thing++;
}
每个图层中的数据分解为不同的类别,存储在字段“item”中,并在侧面图例中显示这些类别。
我的问题是如何在地图上找到每个细分的“项目”?当我查看地图对象时,我可以看到图层,当我进入图层时,我可以看到基元,但是当我输入基元时,它们在“项目”中都具有相同的类别,而不是它们应该具有的类别。 / p>
如何找到每个细分的“项目”?
由于 Docmur
答案 0 :(得分:1)
首先,使用图层的元数据属性来存储自定义信息,否则您可能会覆盖图层类的其中一个内部属性。例如:dataLayer.metadata = {item:&#34;自定义数据&#34; };
也就是说,您的item属性位于dataLayer上,而不是单个基元上。看起来你在内循环上再次添加相同的值,所以你最终会得到很多相同的值。您能否提供有关您想要实现的目标的更多详细信息,因为可能有更清洁的方法。