Proyección en lotes (Administración de datos)
Resumen
Cambia el sistema de coordenadas de un conjunto de clases de entidad o datasets de entidad de entrada a un sistema de coordenadas en común. Para cambiar el sistema de coordenadas de un solo dataset o clase de entidad, utilice la herramienta Proyecto.
Uso
-
Todas las entradas válidas para la herramienta Proyecto, como todas las clases de entidad o datasets de entidad, son también entradas válidas para esta herramienta.
-
A pesar de que tanto el Sistema de coordenadas de salida como el Dataset de plantilla son parámetros opcionales, se debe introducir uno de los dos. Si se dejan vacíos ambos parámetros, la herramienta no podrá ejecutarse.
-
Dado que la herramienta no valida si se requiere una transformación, utilice la herramienta Proyecto primero con una de las entradas para determinar si es necesaria una transformación. La lista desplegable del parámetro Transformación geográfica de la herramienta Proyecto muestra las transformaciones (si las hubiera) que son válidas.
-
Si un dataset o una clase de entidad tiene un sistema de coordenadas indefinido o "Desconocido", primero debe definir su sistema de coordenadas con la herramienta Definir proyección para poder utilizarlo con la herramienta.
-
Los nombres de las clases de entidad de salida se basarán en los nombres de las clases de entidad de entrada. Por ejemplo, si la entrada es C:\myworkspace\Gondor.shp, la clase de entidad de salida se llamará Gondor.shp. Si el nombre ya existe en el espacio de trabajo de salida, se le adjuntará un número (por ejemplo, _1) al final para que sea único (Gondor_1.shp) en el espacio de trabajo de salida.
Sintaxis
Parámetro | Explicación | Tipo de datos |
Input_Feature_Class_or_Dataset [Input_Feature_Class_or_Dataset,...] |
Datasets o clases de entidad de entrada cuyas coordenadas se convertirán. | Geodataset |
Output_Workspace |
Ubicación de cada nuevo dataset o clase de entidad de salida. | Feature Dataset; Workspace |
Output_Coordinate_System (Opcional) |
El sistema de coordenadas que se utilizará para proyectar las entradas. Los valores válidos son un archivo con extensión .prj (en la carpeta Coordinate System del directorio de instalación de ArcGIS, se encuentran disponibles archivos .prj suministrados junto con ArcGIS) o una representación de cadena de un sistema de coordenadas. Esta representación de cadena se puede generar al agregar una variable de sistema de coordenadas a ModelBuilder, configurar los valores deseados de la variable y exportar el modelo a una secuencia de comandos Python. A continuación, se puede copiar la cadena desde la secuencia de comandos Python. | Coordinate System |
Template_dataset (Opcional) |
Dataset o clase de entidad utilizado para especificar el sistema de coordenadas de salida de la proyección. | Geodataset |
Transformation (Opcional) |
Nombre de la transformación geográfica que se aplicará para convertir los datos entre dos sistemas de coordenadas geográficas (datums). | String |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función BatchProject en el modo inmediato.
import arcpy arcpy.env.workspace = "C:/data/input/batchproject" arcpy.BatchProject_management(["citylim.shp", "flood.shp", "faultzn.shp"], "C:/data/output/batchproject", "", "C:/data/usa.gdb/templatefc")
La siguiente secuencia de comandos de Python demuestra cómo utilizar la función BatchProject en una secuencia de comandos independiente.
# Name: BatchProject.py # Description: Changes coordinate systems of several datasets in a batch. import arcpy from arcpy import env # Set workspace environment env.workspace = "C:/data/wgs1972.gdb" # Input feature classes input_features = ["cities", "counties", "blocks", "crime"] # Output workspace out_workspace = "C:/data/output.gdb" # Output coordinate system - leave it empty out_cs = '' # Template dataset - it has GCS_WGS_1984 coordinate system template = "C:/data/wgs1984.gdb/stateparks" # Geographic transformation - transformation = "WGS_1972_To_WGS_1984_1" try: res = arcpy.BatchProject(input_features, out_workspace, out_cs, template, transformation) if res.maxSeverity == 0: print "projection of all datasets successful" else: print "failed to project one or more datasets" except: print res.getMessages()