Anzeigen von Services als KML
Standardmäßig sind Karten-Services und Image-Services auch als KML-Netzwerk-Links (Keyhole Markup Language) verfügbar. Somit kann jede Anwendung, die KML unterstützt, z. B. ArcGIS Explorer, ArcGlobe und Google Earth, diese Services verwenden.
Mithilfe von REST (Representational State Transfer) stellt ArcGIS for Server Informationen zu den Services über eine Reihe von Endpunkten oder URLs bereit. Benutzer müssen nur auf die entsprechenden REST-URLs verweisen, die KML zurückgeben, um den Service als KML zu verwenden. Darüber hinaus können Benutzer über ArcGIS for Server Manager stark angepasste KML-Inhalte als separaten Satz von URLs, die nicht über REST ausgeführt werden, in Form von bereits zusammengestellten Dokumenten für KML-Netzwerk-Links erstellen.
Arbeitsweise von KML-Netzwerk-Links mit Karten-, Geokodierungs-, Geoverarbeitungs-, und Image-Services
KML-Netzwerk-Links bieten die Möglichkeit, dynamischen KML-Inhalt über das Internet anzuzeigen. Sie können Details zu Aktualisierungsintervallen und anderen Verhaltenseigenschaften enthalten und in gezippten KML-(KMZ-)Dateien eingebettet werden. Zur Vereinfachung werden KML-/KMZ-Dateien, die Netzwerk-Link-Informationen enthalten, in diesem Thema von nun an als Netzwerk-Link-Dokumente bezeichnet.
Der standardmäßige KML-Netzwerk-Link, der durch die REST-Endpunkte des Karten-Services und Image-Services angegeben wird, zeigt den Service als Boden-Overlay an, d. h. als Bild, das auf der Globusoberfläche drapiert ist. Wenn der Service ein gecachter Karten-Service in einem unterstützten Koordinatensystem (WGS 1984 Web Mercator, WGS 1984 Web Mercator [Auxiliary Sphere] oder eine andere beliebige Zylinderprojektion) ist, dann wird das Boden-Overlay auch mit Regions zurückgegeben. Regions stellen eine hierarchische Sammlung von Bildern dar und werden zur Optimierung der Performance empfohlen.
Weitere REST-KML-Netzwerk-Links, auf die zugegriffen werden kann, sind beispielsweise Abfrageoperationen für Karten-Service-Layer, Adressengeokodierungs- und Rückwärts-Geokodierungs-Operationen sowie die Ergebnisse übermittelter Geoverarbeitungsaufträge. Diese zurückgegebenen Vektoren werden wie in den Quelldokumenten des Ursprungs-Service und in den in Rastern dargestellten Boden-Overlays (nur Geoverarbeitungs-Service) symbolisiert.
Eine weitere Option in den Karten-Services besteht in der Generierung eines benutzerdefinierten KML-Netzwerk-Links. Sie können einen benutzerdefinierten KML-Netzwerk-Link über ArcGIS for Server Manager, das Services-Verzeichnis oder manuell in einem KML-Client erstellen. Durch diese Technik ist es möglich, dass die bereitgestellte KML Kombinationen aus Raster- und Vektorelementen und nicht nur das einzelne Boden-Overlay-Bild beinhaltet, das über den standardmäßigen REST-Endpunkt geliefert wurde. Wenn Sie z. B. möchten, dass extrudierte Gebäudegrundrisse im Karten-Service vorhanden sind, müssen Sie einen benutzerdefinierten KML-Netzwerk-Link generieren. Unter Erstellen von Karten für die Veröffentlichung als KML und Verwalten von KML-Netzwerk-Links finden Sie nähere Informationen zu diesem Erstellungsprozess.
Finden der URL für einen bestimmten KML-Service
Beim Services-Verzeichnis handelt es sich um eine Anwendung, die in ArcGIS for Server enthalten ist und mit deren Hilfe Sie REST-bezogene Informationen zu Ihren Services, beispielsweise URLs, finden können. Öffnen Sie das Services-Verzeichnis über die installierte Verknüpfung oder öffnen Sie einen Webbrowser, und navigieren Sie zu http://<Servername>:<Portnummer>/arcgis/rest/services. Nachdem Sie den KML-Service im Verzeichnis lokalisiert haben, klicken Sie mit der rechten Maustaste auf Anzeigen in: Google Earth, und kopieren Sie die Verknüpfung, um den Link abzurufen.
Die standardmäßigen REST-URLs für Karten- und Image-Services werden direkt aus den folgenden Bestandteilen erstellt.
http://<Servername>:<Portnummer>/arcgis/rest/services/<Ordnername (falls zutreffend)>/<Servicename>/<Service-Typ>/kml/<Servicename>.kmz
Die verschiedenen Namen werden vom Publisher bei der Erstellung des Service definiert, und der Service-Typ ist entweder MapServer oder ImageServer.
Nachfolgend finden Sie ein Beispiel für eine REST-URL, die eine Verbindung mit einem Karten-Service als KML-Netzwerk-Link herstellt:
http://myserver:6080/arcgis/rest/services/MyKMLService/MapServer/kml/mapImage.kmz
Die MapServer-REST-URL zum Generieren eines benutzerdefinierten KML-Netzwerk-Link-Dokuments befindet sich auf derselben Services-Verzeichnis-Seite wie der MapServer-REST-Endpunkt. Die zugehörige URL wird nach oben dargestelltem Muster erstellt, endet jedoch mit generateKML.kmz. Durch das Öffnen dieses Links wird eine Seite aufgerufen, über die bestimmte Netzwerk-Link-Eigenschaften definiert werden können. Wenn Sie auf KML generieren klicken, wird ein benutzerdefiniertes Netzwerk-Link-Dokument erstellt, das anschließend in ein beliebiges virtuelles Verzeichnis kopiert und von dort veröffentlicht werden kann.
Darüber hinaus wird die Abfrage-Layer-Seite geöffnet, wenn Sie den Link für einen Karten-Service-Layer auswählen und dann als Operation Layer abfragen aufrufen.
Durch das Auswählen von KMZ als Format wird eine Netzwerk-Link-URL erstellt, die Sie in ein Netzwerk-Link-Dokument einfügen können.
http://myserver:6080/arcgis/rest/services/M_Portland_FGDB/MapServer/7/query?text=&geometry=&geometryType=esriGeometryEnvelope&inSR=&spatialRel=esriSpatialRelIntersects&where=&returnGeometry=true&outSR=&outFields=&f=kmz
Mit Administratorberechtigungen können Sie in ArcCatalog auf den Karten- oder Image-Service oder in ArcGIS for Desktop auf das Fenster Katalog zugreifen und die URL zum nicht über REST ausgeführten KML-Service suchen. Diese URL kann zum manuellen Erstellen von benutzerdefinierten KML-Netzwerk-Links in einem KML-Client verwendet werden. Die URL finden Sie, indem Sie mit der rechten Maustaste auf den Namen des Service klicken und Service-Eigenschaften auswählen. Klicken Sie im Service-Editor auf Funktionen > KML.