Affichage des services au format KML
Par défaut, chaque service de carte ou d'imagerie ArcGIS Server publié est également disponible sous forme d'un lien réseau KML (Keyhole Markup Language). Ceci signifie que les applications compatibles avec le langage KML (ArcGIS Explorer, ArcGlobe et Google Earth, par exemple) peuvent utiliser vos services ArcGIS Server.
ArcGIS Server applique l'architecture REST (representational state transfer) pour exposer les informations sur vos services par l'intermédiaires d'une série d'extrémités ou URL. Il suffit aux utilisateurs de référencer les URL REST appropriées qui renvoient le langage KML pour utiliser le service au format KML. Par ailleurs, ArcGIS Server expose un ensemble distinct d'URL autres que REST conçues pour les utilisateurs du Gestionnaire qui créent un contenu KML hautement personnalisé sous forme de documents de liaison réseau KML préempaquetés.
Présentation d'un lien réseau KML et fonctionnement avec les services de carte, de géocodage, de géotraitement ou d'imagerie
Les liens réseau KML permettent d'afficher le contenu KML dynamique sur le Web. Ils peuvent comprendre des détails sur les intervalles d'actualisation et d'autres propriétés relatives au comportement. Ils peuvent en outre être intégrés aux fichiers KML compressés (KMZ). Pour plus de simplicité, les fichiers KML/KMZ qui contiennent des informations sur les liens réseau seront nommés "documents de liaison réseau" dans la suite de cette rubrique.
Le lien réseau KML par défaut fourni par l'intermédiaire des extrémités REST du service de carte ou d'imagerie affiche le service ArcGIS Server sous forme d'une superposition terrestre, autrement dit d'une image drapée sur la surface du globe. Si le service est un service de carte mis en cache dans un système de coordonnées pris en charge (WGS84, WGS 1984 Web Mercator ou toute autre projection cylindrique), la superposition terrestre est également renvoyée à l'aide de régions. Les régions exposent un ensemble hiérarchique d'images et permettent d'optimiser les performances. Remarque : les services d'imagerie ArcGIS Server ne peuvent pas être entièrement mis en cache et ne peuvent par conséquent pas être partagés à l'aide de régions.
D'autres liens réseau KML REST sont accessibles : les opérations de requête sur la couche du service de carte, les opérations de géocodage des adresses et de géocodage inversé et les résultats de tâches de géotraitement envoyées. Ces vecteurs de renvoi sont symbolisés de la même manière que dans les documents source du service d'origine et les superpositions terrestres de raster (service de géotraitement uniquement).
Les services de carte peuvent également générer un lien réseau KML personnalisé, par l'intermédiaire du répertoire des services, du Gestionnaire ou manuellement dans un client KML. Cette technique permet au KML diffusé de combiner des éléments raster et vectoriels, plutôt que la simple image de superposition terrestre fournie par l'intermédiaire de l'extrémité REST par défaut. Si, par exemple, vous souhaitez inclure des emprises de bâtiment extrudées dans le service de carte, vous devez générer un lien réseau KML personnalisé. Pour plus d'informations sur ce processus de création, reportez-vous aux rubriques Création de cartes pour publication en tant que KML.
Comment trouver l'URL d'un service particulier ?
Le répertoire des services ArcGIS permet de trouver facilement les URL REST. Application intégrée à ArcGIS Server, ce répertoire vous aide à consulter les informations REST relatives à vos services, y compris les URL. Ouvrez le répertoire des services directement à partir du menu Démarrer ou en vous rendant à l'adresse suivante dans un navigateur : http://<nom du serveur web>/<nom de l'instance>/rest/services. Cliquez sur le lien menant à votre service, puis cliquez avec le bouton droit sur Afficher dans : Google Earth et cliquez sur Copier le raccourci pour copier le lien.
Les URL des extrémités de service de carte et d'imagerie REST par défaut respectent le format suivant : http://<nom_serveur_web>/<nom_instance>/rest/services/<nom_service>/<type_service>/kml/<service>.kmz. Les différents noms sont définis par l'éditeur au moment de la création du service ArcGIS Server ; le type de service est MapServer ou ImageServer.
Voici un exemple d'URL qui renvoie à un service ArcGIS Server sous forme d'un lien réseau KML reposant sur l'architecture REST :
- http://myServer/arcgis/rest/services/serviceName/MapServer/kml/mapImage.kmz
L'URL REST MapService de génération d'un document de liaison réseau KML personnalisé réside sur la même page Répertoire des services que l'extrémité REST MapService par défaut. Son URL suit le même schéma qu'auparavant, mais se termine par generateKML.kmz. Lorsque vous suivez ce lien, une page s'ouvre où vous pouvez définir des propriétés de lien réseau spécifiques. Le fait de cliquer sur Générer le KML crée un document de liaison réseau personnalisé qui peut ensuite être copié dans n'importe quel répertoire virtuel à publier.
En outre, la sélection d'un lien de couche de service de carte, puis de l'opération Couche de la requête, ouvre la page de couche de la requête.
Le fait de choisir le format KML crée une URL de lien réseau que vous pouvez coller dans un document de liaison réseau :
http://myServer/ArcGIS/rest/services/M_Portland_FGDB/MapServer/7/query? text=&geometry=&geometryType=esriGeometryEnvelope&inSR=&spatialRel= esriSpatialRelIntersects&where=&returnGeometry=true&outSR=&outFields=&f=kmz
Si vous disposez de droits d'administrateur, vous pouvez accéder à la boîte de dialogue Propriétés de l'objet serveur de carte dans ArcCatalog et rechercher l'URL vers le service KMLService non REST directement sous l'onglet Fonctionnalités. Cette URL permet de créer manuellement des liens réseau KML personnalisés dans un client KML.
Lorsque vous créez un lien réseau KML personnalisé à l'aide du Gestionnaire, le fichier KMZ est automatiquement copié dans votre répertoire racine virtuel et accessible à tous à l'emplacement suivant : http://<nom du serveur web>/<nom de l'instance>/kml. Il vous suffit d'ouvrir cet emplacement dans un navigateur pour afficher tous les liens réseau KML personnalisés de votre serveur.
Une fois l'URL du document de liaison réseau KML en votre possession, publiez-la sur votre site Web ou à un emplacement public afin que d'autres puissent rapidement et facilement ouvrir le KML.