Resumen
Genera un archivo de esquema de ordenamiento en teselas personalizado que define los niveles de escala, las dimensiones de teselas y otras propiedades para una capa de teselas web.
Un esquema de ordenamiento en teselas describe cómo los clientes deben hacer referencia a las teselas en una caché y es una representación cartográfica entre la referencia espacial del documento de mapa fuente y la cuadrícula de ordenamiento en teselas. La cuadrícula de ordenamiento en teselas utiliza un esquema de referencia de nivel de detalle (escala), fila y columna. El esquema además define los niveles de escala (niveles de detalle) en los cuales la caché tiene teselas, el tamaño de las teselas en píxeles y la resolución de la pantalla donde las teselas de mostrarán con mayor frecuencia. Se necesita un esquema de ordenamiento en teselas para generar una caché de mapa.
Uso
Por defecto, el origen del ordenamiento en teselas comienza arriba a la izquierda del sistema de coordenadas que utiliza el documento de mapa fuente del servicio.
Sintaxis
arcpy.server.GenerateMapServerCacheTilingScheme(in_map, tile_origin, output_tiling_scheme, num_of_scales, scales, dots_per_inch, tile_size)
Parámetro | Explicación | Tipo de datos |
in_map | El mapa actual o un documento .mxd existente que se va a usar para el esquema de ordenamiento en teselas. | Map |
tile_origin | La esquina superior izquierda del esquema de ordenamiento en teselas en las coordenadas de la referencia espacial del marco de datos de origen. | Point |
output_tiling_scheme | El nombre de archivo y la ruta del archivo de esquema de ordenamiento en teselas que se creará. | File |
num_of_scales | La cantidad de niveles de escala en el esquema de ordenamiento en teselas. | Long |
scales [scales,...] | Los niveles de escala que se incluirán en el esquema de ordenamiento en teselas. No se representan como fracciones. En cambio, utilice 500 para representar una escala de 1:500, y así sucesivamente. | Value Table |
dots_per_inch | Los puntos por pulgada del dispositivo de salida deseado. Si se elige un DPI que no coincide con la resolución del dispositivo de salida, la escala de la tesela de mapa aparecerá como incorrecta. El valor predeterminado es 96. | Long |
tile_size | El ancho y la altura de las teselas en caché en píxeles. El valor predeterminado es 256 por 256. Para un mejor equilibrio entre rendimiento y manejabilidad, evite desviarse de las dimensiones estándar de 256 por 256 o 512 por 512.
| String |
Muestra de código
Crea un esquema de ordenamiento en teselas de caché de mapa con cuatro escalas.
# 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()
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí