2016-10-31 2 views
-1

Я работаю над картой ArcGIS. Мне нужно иметь возможность взаимодействовать с уровнями KML.ArcGIS interactive KML layer

Вот минимальный вариант моего текущего кода:

map = new Map("map", { 
    basemap: "topo", 
    center: [-108.663, 42.68], 
    zoom: 6 
}); 
parser.parse(); 

var kmlUrl = "https://dl.dropboxusercontent.com/u/2142726/esrijs-samples/Wyoming.kml"; 
var kml = new KMLLayer(kmlUrl); 
map.addLayer(kml); 
kml.on("load", function() { 
    console.log("done"); 
}); 

Here is a fiddle

Я ищу, чтобы достичь чего-то более, как this map, который очерчивает слой на парении. (Этот пример относится к классу FeatureLayer, но мой KML динамически сгенерирован. Возможно ли динамическое создание динамика из данных KML?)

Как прослушивать мышь на форме KML?

ответ

0

я понял это ...

var kmlUrl = "https://dl.dropboxusercontent.com/u/2142726/esrijs-samples/Wyoming.kml"; 
var kml = new KMLLayer(kmlUrl); 
map.addLayer(kml); 
kml.on("load", function() { 
    var layers = kml.getLayers() 
    layers[0].on("mouse-over", function() { 
      alert("test"); 
     }); 
}); 

Оказывается слой KML на самом деле состоит из FeatureLayers. Решение состоит в том, чтобы получить функциональные слои из KMLLayer с помощью метода getLayers().

Смежные вопросы