summaryrefslogtreecommitdiff
path: root/misc/openlayers/examples/arcgiscache_jsonp.html
diff options
context:
space:
mode:
Diffstat (limited to 'misc/openlayers/examples/arcgiscache_jsonp.html')
-rw-r--r--misc/openlayers/examples/arcgiscache_jsonp.html106
1 files changed, 106 insertions, 0 deletions
diff --git a/misc/openlayers/examples/arcgiscache_jsonp.html b/misc/openlayers/examples/arcgiscache_jsonp.html
new file mode 100644
index 0000000..5a92427
--- /dev/null
+++ b/misc/openlayers/examples/arcgiscache_jsonp.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>OpenLayers ArcGIS Cache Example (Autoconfigure with JSONP)</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link rel="stylesheet" href="../theme/default/style.css" type="text/css">
+ <link rel="stylesheet" href="style.css" type="text/css">
+
+ <script src="../lib/OpenLayers.js"></script>
+
+ <script type="text/javascript">
+ var map,
+ layerURL = "http://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer";
+
+ function init() {
+ var jsonp = new OpenLayers.Protocol.Script();
+ jsonp.createRequest(layerURL, {
+ f: 'json',
+ pretty: 'true'
+ }, initMap);
+ }
+
+ function initMap(layerInfo){
+ /*
+ * The initialize function in this layer has the ability to automatically configure
+ * itself if given the JSON capabilities object from the ArcGIS map server.
+ * This hugely simplifies setting up a new layer, and switching basemaps when using this technique.
+ *
+ * see the 'initialize' function in ArcGISCache.js, or
+ * see the other two ArcGISCache.js examples for direct manual configuration options
+ *
+ */
+ var baseLayer = new OpenLayers.Layer.ArcGISCache("AGSCache", layerURL, {
+ layerInfo: layerInfo
+ });
+
+ /*
+ * Make sure our baselayer and our map are synced up
+ */
+ map = new OpenLayers.Map('map', {
+ maxExtent: baseLayer.maxExtent,
+ units: baseLayer.units,
+ resolutions: baseLayer.resolutions,
+ numZoomLevels: baseLayer.numZoomLevels,
+ tileSize: baseLayer.tileSize,
+ displayProjection: baseLayer.displayProjection
+ });
+ map.addLayers([baseLayer]);
+
+
+ //overlay test layer
+ //http://openlayers.org/dev/examples/web-mercator.html
+ var wms = new OpenLayers.Layer.WMS("Highways",
+ "http://sampleserver1.arcgisonline.com/arcgis/services/Specialty/ESRI_StateCityHighway_USA/MapServer/WMSServer",
+ {layers: "2", format: "image/gif", transparent: "true"},
+ { isBaseLayer: false, wrapDateLine: false }
+ );
+ map.addLayers([wms]);
+
+
+
+ map.addControl(new OpenLayers.Control.LayerSwitcher());
+ map.addControl(new OpenLayers.Control.MousePosition() );
+ //map.zoomToExtent(new OpenLayers.Bounds(-8341644, 4711236, -8339198, 4712459));
+ map.zoomToExtent(new OpenLayers.Bounds(-8725663.6225564, 4683718.6735907, -8099491.4868444, 4996804.7414467));
+ }
+ </script>
+ </head>
+ <body onload="init()">
+ <h1 id="title">OpenLayers ArcGIS Cache Example (Autoconfigure with JSONP)</h1>
+
+ <div id="tags">
+ arcgis, arcgiscache, cache, tms, jsonp
+ </div>
+
+ <p id="shortdesc">
+ Demonstrates the basic initialization of the ArcGIS Cache layer by using the server capabilities object.
+ </p>
+
+ <div id="map" class="smallmap"></div>
+
+ <div id="docs">
+ <p>This example demonstrates using the ArcGISCache layer for
+ accessing ESRI's ArcGIS Server (AGS) Map Cache tiles normally through
+ a live AGS MapServer. Toggle the visibility of the overlay to
+ demonstrate how the two layers are lined up correctly.</p>
+
+ <h2>Notes on this Layer</h2>
+ <p>
+ This method automatically configures the layer using the capabilities object
+ generated by the server itself. This page shows how to construct the url for the server capabilities object,
+ retrieve it using JSONP, and pass it in during construction. Note that in this case,
+ the layer is constructed before the map. This approach greatly simplifies the
+ configuration of your map, and works best when all your tiles / overlays are similarly laid out.
+ If you are using a live AGS map server for your layer, it can be helpful to check your
+ server configuration using this technique before trying one of the other examples for this layer.
+ </p>
+
+ <h2> Other Examples </h2>
+ <p>This is one of three examples for this layer. You can also configure this
+ layer to use <a href="arcgiscache_direct.html">prebuilt tiles in a file store (not a live server).</a>
+ As well a retrieve <a href="arcgiscache_ags.html">tiles from a live server.</a>
+ </p>
+ </div>
+ </body>
+</html>