Proyectar (Administración de datos)
Resumen
Proyecta datos espaciales de un sistema de coordenadas a otro.
Uso
Si la clase de entidad de entrada o dataset tiene un sistema de coordenadas desconocido o no especificado, puede especificar el sistema de coordenadas de dataset de entrada con el parámetro Sistema de coordenadas de entrada. Esto le permite especificar el sistema de coordenadas de datos sin tener que modificar los datos de entrada (lo que puede no ser posible si la entrada es un formato solo de lectura). También puede usar la herramienta Definir proyección para asignarle de manera permanente un sistema de coordenadas al dataset.
-
Todos los tipos de clases de entidades (clase de entidad de geodatabase, clase de entidad de cobertura, clase de entidad de SDC, shapefile), datasets de entidad en un geodatabase y capas de entidades en las aplicaciones ArcGIS (ArcMap, ArcScene y ArcGlobe), son entradas válidas.
-
Las coberturas, coberturas VPF, datasets ráster y catálogos de ráster no son compatibles como entrada con esta herramienta. Para proyectar una cobertura, utilice la herramienta Proyectar en la caja de herramientas Cobertura. Utilice la herramienta Proyectar ráster para proyectar los datasets ráster.
El parámetro Transformación geográfica es opcional. Cuando no es necesaria la transformación de datum o geográfica, no aparecerá ninguna lista desplegable en el parámetro y se deja en blanco. Cuando es necesaria una transformación, una lista desplegable se generará con base en los datums de entrada y salida y se seleccionara una transformación predeterminada.
- Por ejemplo, no se requiere una transformación geográfica cuando se proyecta de GCS_North_American_1983 a NAD_1983_UTM_Zone_12N porque los sistemas de coordenadas de entrada y de salida tienen un datum NAD_1983. Sin embargo, proyectar de GCS_North_American_1983 a WGS_1984_UTM_Zone_12N requiere una transformación geográfica porque el sistema de coordenadas de entrada utiliza el datum NAD_1983, mientras que el sistema de coordenadas de salida utiliza el datum WGS_1984.
- Nota:
Las transformaciones son bidireccionales. Por ejemplo, si se convierten datos de WGS 1984 a NAD 1927, puede elegir una transformación denominada NAD_1927_to_WGS_1984_3 y la herramienta la aplicará correctamente.
- Para obtener una lista de transformaciones y su área de uso, consulte el siguiente artículo de base de conocimiento: 21327 (http://resources.arcgis.com/content/kbase?fa=articleShow&d=21327 )
-
in_memory no es un espacio de trabajo válido para el dataset de salida.
-
Al proyectar los tipos de datos complejos enumerados a continuación, es necesario realizar ciertas operaciones en lo datos resultantes:
- Dataset de entidad que contiene un dataset de red: el dataset de red que se debe construir.
- Dataset de entidad que contiene una topología: revalida toda la extensión de la topología.
-
Si la entrada participa en clases de relación (como con la anotación vinculada a entidad), la clase de relación será transferida a la salida. La excepción a esta regla se relaciona con las tablas individuales.
-
Depende de las coordenadas de la entidad de entrada y el horizonte (extensión válida) del sistema de coordenadas de salida, es posible que los multipuntos, la línea y el polígono estén recortados o divididos en más de una parte comparte de su proyección.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_dataset |
La clase de entidad, capa de entidad o dataset de entidad que se proyectará. | Feature Layer; Feature Dataset |
out_dataset |
El dataset de salida en el que se escribirán los resultados. | Geodataset |
out_coor_system | 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 |
transform_method (Opcional) | Este método se puede utilizar para convertir datos entre dos datums o sistemas de coordenadas geográficas. Este parámetro, inicialmente opcional, puede ser necesario si los sistemas de coordenadas de entrada y salida tienen datos diferentes. Las transformaciones son bidireccionales. Por ejemplo, si se convierten datos de WGS 1984 a NAD 1927, puede elegir una transformación denominada NAD_1927_to_WGS_1984_3 y la herramienta la aplicará correctamente. | String |
in_coor_system (Opcional) |
El sistema de coordenadas del dataset o clase de entidad de entrada. Este parámetro se habilita cuando la entrada tiene un sistema de coordenadas desconocido o no especificado. Esto le permite especificar el sistema de coordenadas de datos sin tener que modificar los datos de entrada (lo que puede no ser posible si la entrada es un formato solo de lectura). | Coordinate System |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función Proyectar en el modo inmediato.
import arcpy input_features = "C:/data/input/projections.gdb/wells" output_features_class = "C:/data/output/wells_UTM11N.shp" install_dir = arcpy.GetInstallInfo()['InstallDir'] out_coordinate_system = os.path.join(install_dir, r"Coordinate Systems/Projected Coordinate Systems/UTM/NAD 1983/NAD 1983 UTM Zone 11N.prj") arcpy.Project_management(input_features, output_features_class, out_coordinate_system)
La siguiente secuencia de comandos independiente demuestra cómo utilizar Proyectar en una secuencia de comandos independiente.
# Name: Project_Example2.py # Description: Project all feature classes in a geodatabase # Requirements: os module # Import system modules import arcpy import os # Set environment settings arcpy.env.workspace = "C:/data/Redlands.gdb" # Set local variables outWorkspace = "c:/data/Redlands_utm_11.gdb" # Use ListFeatureClasses to generate a list of inputs for infc in arcpy.ListFeatureClasses(): # Determine if the input has a defined coordinate system, can't project it if it does not dsc = arcpy.Describe(infc) if dsc.spatialReference.Name == "Unknown": print ('skipped this fc due to undefined coordinate system: ' + infc) else: # Determine the new output feature class path and name outfc = os.path.join(outWorkspace, infc) # Set output coordinate system outCS = arcpy.SpatialReference('NAD 1983 UTM Zone 11N') arcpy.Project_management(infc, outfc, outCS)