31 votos

ArcCatalog dice que las referencias espaciales no coinciden entre el conjunto de datos de características y la clase de características con el mismo sistema de coordenadas?

Tengo un conjunto de datos de características que utiliza el GCS_WGS_1984 como sistema de coordenadas geográficas. Incluye algunas clases de características.

Este conjunto de datos de características está a su vez en un archivo de geodatabase que contiene algunas clases de características más en la raíz del gdb. Una de ellas es una clase de características llamada "puntos" que también utiliza el GCS_WGS_1984 como sistema de coordenadas.

Pensé que sería trivial utilizar ArcCatalog para arrastrar la clase de característica de la raíz del gdb en el conjunto de datos de la característica, ya que tienen el mismo sistema de coordenadas. Desafortunadamente ArcGIS da un diálogo de error que dice:

Failed to paste points
The spatial references do not match

¿Por qué falla esto? Si el GCS de la clase de características y el conjunto de datos de características son iguales, ¿no debería funcionar? He comprobado que es el caso a través de los diálogos, así como exportando el archivo prj para el conjunto de datos y la clase y utilizando una herramienta de diferencia para comparar los dos. Son idénticos.

¿La referencia espacial de una clase de rasgo es diferente del sistema de coordenadas/proyección?

Al intentar copiar la clase de característica en el conjunto de datos de características manteniendo la tecla ctrl mientras se arrastra, ArcCatalog se bloquea cada vez (vergüenza para ESRI).

Supongo que podría probar medios alternativos para mover las clases de características. Utilizar CopyFeatures en el conjunto de datos. ¿Proyectar desde la clase de características a una nueva clase de características dentro del conjunto de datos de características?

21voto

Greg Puntos 1756

El mismo sistema de coordenadas no es siempre un idéntico sistema de coordenadas. Me he encontrado con situaciones en las que algunas operaciones y herramientas de geoprocesamiento pensarán que las clases de características no comparten un sistema de coordenadas común porque el nombre descriptivo de la proyección difiere ("Yukon Albers" frente a "Albers - custom") aunque los parámetros sean idénticos, o porque las posiciones decimales difieren (false northing 500000.00 frente a 500000.0000).

Lo que suelo hacer es asegurarme de que los sistemas de coordenadas del Feature Dataset (y F.class) se crean con nuestro archivo estándar .prj colocado en la parte superior de C:\path\to\ArcGIS\Desktop10.0\Coordinate Systems (hace que el CS esté disponible con menos clics) y/o copiando el CS desde una plantilla de clase de característica maestra almacenada en algún lugar siempre a mano.

En parte como respuesta a este problema, también tengo un conjunto de datos de características vacío ( D:\s.gdb\_template ) a través del cual canalizo todos nuestros datos como un filtro de primer paso antes de hacer cualquier otra cosa con ellos. Entre un sistema de coordenadas común, esto también garantiza que la precisión y el dominio espacial, etc., sean idénticos.

Actualización: Ver La respuesta de Andy sobre el uso de python, sólo 2 líneas, para copiar el sistema de referencia espacial del conjunto de datos de características de una clase de características de la plantilla. Esto funcionó para mí en ArcCatalog 10.3 cuando el método interactivo de definir el SR mediante la selección de una clase de característica para importar uno no funcionó.

16voto

Shog9 Puntos 340

Esto es una explicación más que una respuesta.

Nosotros (Esri) realizamos pruebas bastante estrictas de los nombres y valores del sistema de referencia de coordenadas. La prueba 'is equal' no devolverá un fallo al comparar 500000.00 y 500000.000000, pero podría fallar si uno es realmente 500000.0 y el otro 500000.00000005. Estamos trabajando en añadir alias a los nombres para que 'is equal' pase más.

Como mencionaron mindless.panda y matt wilkie, las diferencias podrían estar en los otros valores de una referencia espacial. Una referencia espacial incluye el sistema de referencia de coordenadas y los valores de almacenamiento/procesamiento. Para el almacenamiento: xy, z, y medida de resolución y extensión. Para el procesamiento: xy, z y valores de tolerancia de la medida. Cualquier diferencia en estos puede causar un error no igual.

9voto

tghw Puntos 14244

Esto es lo que hice para resolver el problema (usando arcpy en ArcGIS 10.0) -

Esto supone lo siguiente:

  • FGDB - C:\gisdata\Test.gdb
  • Clase de característica - C:\gisdata\Test.gdb\bldg

Puede modificar sus rutas y nombres de objetos en el código y pegarlo en la ventana de python en ArcCatalog.

sr = arcpy.Describe(r'C:\gisdata\Test.gdb\bldg').spatialReference
arcpy.CreateFeatureDataset_management(r'C:\gisdata\Test.gdb', 'MyFeatureDataset', sr)

Una vez creado el conjunto de datos de características, puede arrastrar y soltar las clases de características.

7voto

Akselsson Puntos 702

¡Este problema me estaba matando! Después de guardar un montón de clases de características de un archivo CAD, intenté varias veces definir sus sistemas de coordenadas y luego organizarlas en conjuntos de datos de características. Intenté definir todas las clases f y los conjuntos de datos f necesarios a partir de la proyección oficial WGS_1984_UTM_42N de ESRI, así como establecer la proyección para el conjunto de datos y luego importar esa proyección para las clases f utilizando la herramienta Definir proyección. O bien no se pegaba ninguna clase f, o bien se pegaba una y las demás no.

Muchas gracias a @Matt Wilkie en este puesto El Clase de característica a clase de característica parece haber resuelto el problema. Importa con éxito las f.classes en el conjunto de datos deseado, aunque todavía no haya definido el sistema de coordenadas para la f.class en cuestión.

Además, descubrí que el Clase de rasgo a base de datos geográficos (múltiple) funciona muy bien para mover f.classes a un f.dataset en masa, excepto que esto debe hacerse de una Geodatabase a otra (no a un f.dataset dentro de la misma geodatabase). Esto parece deberse a que el script no renombra automáticamente las f.classes cuando se copian (o pide al operador un nuevo nombre, como en Feature Class to Feature Class). Sin embargo, como han señalado otros (en el mismo hilo enlazado arriba), el error que se da es un genérico 999999.

4voto

ABC Puntos 101

Tuve este problema cuando simplemente quería mover una clase de característica a un conjunto de datos de características en una GeoDatabase. Hice mi conjunto de datos de características y me aseguré de que tuviera el mismo sistema de coordenadas. Una y otra vez recibí "Fallo al pegar xyz Las referencias espaciales no coinciden" La solución más rápida que encontré fue importar la referencia espacial idéntica en mi conjunto de datos recién creado desde la clase de característica que quería importar en él. En el segundo paso del asistente "Create New Feature Dataset".

No sé por qué las referencias espaciales difieren.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X