Résumé
Génère un fichier de structure de tuile personnalisé qui définit les niveaux d'échelle, les cotations de tuiles et d'autres propriétés d'une couche de tuiles Web.
Une structure de tuilage décrit comment les clients doivent faire référence aux tuiles dans un cache. Il s'agit d'un mappage entre la référence spatiale de la carte source et la grille de tuilage. Cette dernière utilise une structure de référence de niveaux de détail (échelles), de lignes et de colonnes. La structure définit également les niveaux d'échelle (niveaux de détail) auxquels le cache comporte des tuiles, la taille des tuiles dans les pixels et la résolution d'écran à laquelle les tuiles doivent généralement être affichées. Une structure de tuilage est requise pour générer un cache de carte.
Utilisation
Par défaut, l'origine du tuilage démarre dans la partie gauche supérieure du système de coordonnées utilisé par le document ArcMap source du service.
Syntaxe
arcpy.server.GenerateMapServerCacheTilingScheme(in_map, tile_origin, output_tiling_scheme, num_of_scales, scales, dots_per_inch, tile_size)
Paramètre | Explication | Type de données |
in_map | Carte actuelle ou document .mxd existant à utiliser pour la structure de tuile. | Map |
tile_origin | Angle supérieur gauche de la structure de tuile, dans les coordonnées de la référence spatiale du bloc de données source. | Point |
output_tiling_scheme | Chemin d'accès et nom de fichier de la structure de tuilage à créer. | File |
num_of_scales | Nombre de niveaux d'échelle dans la structure de tuilage. | Long |
scales [scales,...] | Niveaux d'échelle à inclure dans la structure de tuilage. Ils ne sont pas représentés sous la forme de fractions. Utilisez plutôt 500 pour représenter une échelle de 1:500, etc. | Value Table |
dots_per_inch | Résolution en points par pouce du périphérique en sortie prévu. Si la valeur PPP spécifiée ne correspond pas à la résolution du périphérique en sortie, l'échelle de la tuile de carte paraîtra incorrecte. La valeur par défaut est 96. | Long |
tile_size | Largeur et hauteur des tuiles de cache en pixels. Les dimensions par défaut sont 256 x 256. Pour un meilleur équilibre entre performance et fonctionnalité, évitez de vous écarter des dimensions standard de 256 sur 256 ou de 512 sur 512.
| String |
Exemple de code
Crée une structure de tuile de cache de carte avec quatre échelles.
# 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
mapDocument = "C:/data/101/Portland/mxd/_M_Portland_classic_FGDB_Local.mxd"
dataFrame = ""
outputTilingScheme = "C:/data/port.xml"
tileOrigin = ""
numOfScales = "4"
scales = "500000,250000,125000,64000"
tileSize = "256 x 256"
dotsPerInch = "96"
currentTime = datetime.datetime.now()
arg1 = currentTime.strftime("%H-%M")
arg2 = currentTime.strftime("%Y-%m-%d %H:%M")
file = r'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(mapDocument, dataFrame,
tileOrigin, outputTilingScheme,
numOfScales, scales,
dotsPerInch, tileSize)
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" + \
mapDocument + " at "+ outputTilingScheme + " in " + str(elapsedtime) + \
" sec \n on " + arg2)
except Exception as 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(str(e))
print("Created Map server Cache Tiling schema ")
report.close()
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?