import urllib, urllib2, httplib import json import socket # User Variables username = "" password = "" # Monkey Patch httplib read def patch_http_response_read(func): def inner(*args): try: return func(*args) except httplib.IncompleteRead, e: return e.partial return inner httplib.HTTPResponse.read = patch_http_response_read(httplib.HTTPResponse.read) # Get token hostname = "Http://" + socket.getfqdn() token_URL = 'https://www.arcgis.com/sharing/generateToken' token_params = {'username':username,'password': password,'referer': hostname,'f':'json'} token_request = urllib2.Request(token_URL, urllib.urlencode(token_params)) token_response = urllib2.urlopen(token_request) token_string = token_response.read() token_obj = json.loads(token_string) token = token_obj['token'] # Build the json string text = {"operationalLayers": [], "baseMap": {"title": "Basemap", "baseMapLayers": [{"visibility": "true", "opacity": 1, "isReference": "true", "url": "http://services.arcgisonline.com/ArcGIS/rest/services/World_Shaded_Relief/MapServer", "minScale":1155581, "maxScale":144448}, {"visibility": "true", "opacity": 1, "url": "http://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer", "minScale":144448, "maxScale":200}, {"visiblity": "true", "opacity": 1, "url": "http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer", "minScale": 500000000, "maxScale": 1155581}]}, "version": "1.7"} query = {"token" : token, "f" : "json", "text" : text, "title" : "Test Basemap", "type" : "Web Map", "tags" : "basemap, test"} serviceURL = 'http://www.arcgis.com/sharing/rest/content/users/{}/addItem'.format(username) createBasemap = urllib2.Request(serviceURL, urllib.urlencode(query)) createBasemap.add_header('Referer', hostname) createBasemap_response = urllib2.urlopen(createBasemap) print createBasemap_response.read()
"baseMapLayers": [ { "id": "World_Imagery_8854", "opacity": 1, "visibility": true, "url": "http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer" }, { "id": "MyDynamicLayer_7237", "opacity": 1, "visibility": true, "url": "http://yourserver/arcgis/rest/services/MyDynamicLayer/MapServer", "minScale": 4000, "maxScale": 1 }, { "id": "BaseScales_9486", "isReference": true, "opacity": 1, "visibility": false, "url": "http://yourserver/arcgis/rest/services/BaseScales/MapServer" } ],
Is it possible to use a multilayer basemap of tiled map services, but specify the LOD's? I have two tiled map services that have most of the same LOD's however one goes into more detail. I want to have the one with more detail on top and use that as the LOD reference.
Thanks!
Angemeldete Mitglieder können Beiträge verfassen, Updates folgen und mehr. Neu hier? Registriere ein kostenloses Konto.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.