Kachelschema für Kartenserver-Cache erstellen (Server)
Zusammenfassung
Generiert eine Kachelschemadatei im XML-Format, in der die Maßstabsebenen, Kacheldimensionen und andere Eigenschaften für einen Karten-Service-Cache definiert sind. Dieses Werkzeug ist nützlich für die Erstellung eines Kachelschemas zur Verwendung in mehreren Caches. Sie können die Kachelschemadatei laden, wenn Sie in ArcCatalog oder im Manager einen Cache erstellen, oder Sie können Kartenserver-Cache erstellen ausführen und die Kachelschemadatei als Parameter übergeben.
Mit einem Kachelschema wird beschrieben, wie Clients die Kacheln in einem Cache referenzieren sollen. Außerdem stellt es eine Zuordnung zwischen dem Raumbezug des Quellkartendokuments und dem Kachelungs-Raster dar. Das Kachelungs-Raster verwendet ein Schema für Detaillierungsebenen (Maßstabsebenen), Zeilen und Spaltenreferenzierungen. Mit dem Schema werden außerdem die Maßstabsebenen (Detaillierungsebenen) für die Kacheln des Cache sowie die Größe der Kacheln in Pixel und die Bildschirmauflösung, in der die Kacheln am häufigsten angezeigt werden, festgelegt. Ein Kachelschema ist für die Generierung eines Karten-Cache erforderlich.
Verwendung
Falls Sie in ArcCatalog oder im Manager bereits einen Cache definiert haben, müssen Sie dieses Werkzeug nicht ausführen. Sie verfügen im Cache-Ordner dann bereits über ein Kachelschema (conf.xml), und Sie können beim Erstellen anderer Caches darauf verweisen.
-
In der Standardeinstellung beginnt die Kachelung in der oberen linken Ecke des Koordinatensystems, das vom Quellkartendokument des Service verwendet wird.
-
Nachdem der Cache erstellt wurde, sind die Maßstabsebenen der einzige Teil des Kachelschemas, der geändert werden kann. Verwenden Sie Cache-Maßstäbe für Kartenserver verwalten, um Maßstabsebenen hinzuzufügen oder zu entfernen.
Syntax
Parameter | Erläuterung | Datentyp |
map_document |
Das Quellkartendokument, das für das Kachelschema verwendet wird. | File |
data_frame |
Der Datenrahmen, der für das Kachelschema verwendet wird. | String |
tile_origin |
Die obere linke Ecke des Kachelschemas in Koordinaten des Raumbezugs des Quelldatenrahmens. | Point |
tiling_schema |
Pfad und Dateiname der zu erstellenden Datei für das Kachelschema. | File |
cache_levels |
Anzahl der Maßstabsebenen im Kachelschema. | Long |
levels [levels,...] |
Maßstabsebenen, die in das Kachelschema einbezogen werden sollen. Diese werden nicht als Brüche dargestellt. Verwenden Sie stattdessen 500, um einen Maßstab von 1:500 darzustellen, bzw. entsprechende andere Werte. | Value Table |
dpi |
Die Auflösung in DPI (Dots per Inch, Punkte pro Zoll) des betreffenden Ausgabegeräts. Bei einem DPI-Wert, der nicht mit der Auflösung des Ausgabegeräts übereinstimmt, wird der Maßstab der Kartenkachel falsch angezeigt. Der Standardwert ist 96. | Long |
tile_width |
Die Breite der Cache-Kacheln in Pixel. Die Standardeinstellung beträgt 256. Um ein optimales Gleichgewicht zwischen Performance und Verwaltbarkeit zu erzielen, sollten Sie es vermeiden, von den Standardwerten 256 bzw. 512 abzuweichen. | Long |
tile_height |
Die Höhe der Cache-Kacheln in Pixel. Die Standardeinstellung beträgt 256. Um ein optimales Gleichgewicht zwischen Performance und Verwaltbarkeit zu erzielen, sollten Sie es vermeiden, von den Standardwerten 256 bzw. 512 abzuweichen. | Long |
Codebeispiel
In diesem Beispiel wird ein Karten-Cache-Kachelschema mit vier Maßstäben erstellt.
# GeneateMapServerCacheTilingScheme example (stand-alone script) # Name: GeneateMapServerCacheTilingScheme.py # Description: The following stand-alone script demonstrates how to create map # server cache schema using a given map document at a given # "pathForOutputXml" # Requirements: os, sys, time & traceback modules # Any line that begins with a pound sign is a comment and will not be executed # Empty quotes take the default value. # To accept arguments from the command line replace values of variables to # "sys.argv[]" # Import system modules import arcpy from arcpy import env import os, sys, time, datetime, traceback, string # Set environment settings env.workspace = "C:/data" # List of input variables for map service properties pathToMapDocument = "C:/data/94/Portland/mxd/_M_Portland_classic_FGDB_Local.mxd" dataFrame = "" pathForXml = "C:/data/port.xml" tileOrigin = "" scales = "4" scaleValues = "500000,250000,125000,64000" tileWidth = "256" tileHeight = "256" dpi = "96" currentTime = datetime.datetime.now() arg1 = currentTime.strftime("%H-%M") arg2 = currentTime.strftime("%Y-%m-%d %H:%M") file = 'C:/data/report_%s.txt' % arg1 # print results of the script to a report report = open(file,'w') try: starttime = time.clock() result = arcpy.GenerateMapServerCacheTilingScheme_server( pathToMapDocument, dataFrame, tileOrigin, pathForXml,scales, scaleValues, dpi, tileWidth, tileHeight) finishtime = time.clock() elapsedtime = finishtime-starttime #print messages to a file while result.status < 4: time.sleep(0.2) resultValue = result.getMessages() report.write ("completed " + str(resultValue)) print " Created MapServer cache tiling schema successfully using" + pathToMapDocument + " at "+ pathForXml + " in " + str(elapsedtime) + " sec \n on " + arg2 except Exception, e: # If an error occurred, print line number and error message tb = sys.exc_info()[2] report.write("Failed at step 1 \n" "Line %i" % tb.tb_lineno) report.write(e.message) print "Created Map server Cache Tiling schema " report.close()