¿ArcCatalog dice que las referencias espaciales no coinciden entre el dataset de entidad y la clase de entidad con el mismo sistema de coordenadas?


31

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

Este conjunto de datos de entidades se encuentra en una geodatabase de archivos que contiene algunas clases de entidades más en la raíz del gdb. Una de estas es una clase de entidad llamada "puntos" que también usa el GCS_WGS_1984 como su sistema de coordenadas.

Pensé que sería trivial usar ArcCatalog para arrastrar la clase de entidad desde la raíz del gdb al dataset de entidades, ya que tienen el mismo sistema de coordenadas. Desafortunadamente, ArcGIS muestra un cuadro de 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 entidad y el conjunto de datos de entidad son iguales, ¿no debería funcionar? Verifiqué que este es el caso a través de los cuadros de diálogo, así como exportando el archivo prj tanto para el conjunto de datos como para la clase y usando una herramienta diff para comparar los dos. Son idénticos

¿Es la referencia espacial de una clase de entidad diferente del sistema de coordenadas / proyección?

Intentar copiar la clase de entidad en el conjunto de datos de entidad manteniendo presionada la tecla Ctrl mientras arrastra los resultados en ArcCatalog que se bloquea cada vez (vergüenza en ESRI).

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


¿Puedes publicar el archivo gdb en algún lugar? Tal vez elimine todas o algunas de las características si es grande, parece que podría reproducirse incluso con las clases de características vacías.
Kirk Kuykendall

44
Desearía tener tiempo para analizar cada pequeña peculiaridad con la que me encuentro con ArcGIS, a menudo solo tengo que vivir con ella y encontrar la siguiente solución menos placentera. Usé Gestión de datos -> Copiar entidad para copiar en una nueva clase de entidad (nombre temporal), eliminé la clase de entidad antigua, renombré la nueva clase de entidad para que coincida con la anterior. El uso de ArcGIS no debería requerir un título en pruebas de software. = (
mindless.panda

2
"no debería requerir un título en pruebas de software" , chat.stackexchange.com/transcript/message/1116371
matt wilkie

es solo el nombre, pueden coincidir, pero si tienen un nombre diferente, arroja este mensaje, ignórelo.
Si no lo sabes, solo GIS el

Respuestas:


21

El mismo sistema de coordenadas no siempre es un sistema de coordenadas idéntico . He encontrado situaciones en las que algunas operaciones y herramientas de geoprocesamiento pensarán que las clases de entidad no comparten un sistema de coordenadas común porque el nombre descriptivo de la proyección difiere ("Yukon Albers" vs "Albers - personalizado") aunque los parámetros son idénticos, o porque de diferentes posiciones decimales (falso norte 500000.00 vs 500000.0000).

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

En parte en respuesta a este problema, también tengo un conjunto de datos de características vacío ( D:\s.gdb\_template) que 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: Vea la respuesta de Andy sobre el uso de python, solo 2 líneas, para copiar el sistema de referencia espacial del Conjunto de datos de entidades desde una clase de entidad de plantilla. Esto funcionó para mí en ArcCatalog 10.3 cuando el método interactivo de definir el SR seleccionando una clase de entidad para importar uno no funcionó.


¿No estarían presentes estos ligeros cambios en el bonito nombre de impresión o las posiciones decimales que menciona en el archivo .prj que se exporta con la opción Guardar como? Si es así, ¿por qué los archivos prj diferentes no muestran nada? Me preguntaba si pequeñas diferencias en la resolución x, y también podrían estar causando el conflicto.
mindless.panda

1
Puede ser que el archivo .prj creado con "Guardar como" no sea exactamente el mismo que el almacenado internamente. Yo uso un conjunto de datos característica de "filtro" para asegurar la resolución espacial común, etc.
Wilkie mate

3
Agregaré una faceta adicional a esto: a veces se generarán conjuntos de datos de otras fuentes que contienen valores M y Z cuando en realidad no tienen M o Z. He descubierto que algunas herramientas ESRI detectan el sistema de coordenadas Z vacío como no coincidencia, a pesar del hecho de que los sistemas de coordenadas X / Y realmente coinciden exactamente.
DPierce

16

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

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

Como mencionó 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 almacenamiento: xy, z, y medir la resolución y la extensión. Para procesar: xy, z, y medir valores de tolerancia. Cualquier diferencia en estos puede causar un error no igual.


66
Su respuesta es muy apreciada. Realmente me gustaría ver que el manejo de errores, particularmente en lo que se informa al usuario, mejore en ArcGIS. Se necesitan errores más informativos, con la opción de obtener información aún más detallada si se desea. Nuevamente, gracias a ESRI por tomarse el tiempo de responder.
mindless.panda

2
Secundo la propuesta para proporcionar más información sobre los errores. En las últimas dos semanas, recibí el mismo error ( Error code: 999999: Error executing function. Description: This is a generic error for which the cause of the error does not have an appropriate error ID. ) debido a una variedad de problemas. Este es un mensaje irritante para recibir, ya que no puedo hacer nada excepto intentar ejecutar lo que hice por segunda vez para ver si el error se repite, o renunciar y usar otro método (o software, que es cada vez más el caso).
djq

9

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 entidad - 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)

Después de crear el dataset de entidades, puede arrastrar y soltar las clases de entidades.


1
¡Gracias! Esto funcionó para mí hoy en una situación en la que el uso de la herramienta interactiva para definir el nuevo sistema de coordenadas del conjunto de datos de entidades al seleccionar una clase de entidad existente no funcionó (v10.3).
Matt Wilkie 01 de

7

¡Este problema me estaba matando! Después de guardar un montón de clases de entidades de un archivo CAD, intenté varias veces definir sus sistemas de coordenadas y luego organizarlas en conjuntos de datos de entidades. Intenté definir todos los f.classes y f.datasets necesarios 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 f.classes utilizando la herramienta Definir proyección. O no f.classes se pegarían, o 1 lo haría y los demás no.

Muchas gracias a @Matt Wilkie en esta publicación , la herramienta Feature Class to Feature Class parece haber resuelto el problema. Importa con éxito las f.classes en el conjunto de datos deseado, incluso si aún no he definido el sistema de coordenadas para la f.class en cuestión.

Además, descubrí que la secuencia de comandos Clase de entidad a geodatabase (múltiple) funciona muy bien para mover f.classes a f.dataset de forma masiva, excepto que esto debe hacerse desde Geodatabase a otro (no a f.dataset dentro de la misma geodatabase) . Esto parece deberse a que el script no cambia automáticamente el nombre de las f.classes cuando se copian (o solicita al operador un nuevo nombre, como en Clase de entidad a Clase de entidad). Sin embargo, como lo señalaron otros (mismo hilo vinculado anteriormente), el error dado es un 999999 genérico.


4

Tuve este problema cuando simplemente quería mover una clase de entidad a un conjunto de datos de entidad 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í "No se pudo pegar xyz Las referencias espaciales no coinciden" El trabajo más rápido que encontré fue importar la referencia espacial idéntica en mi conjunto de datos recién creado desde la clase de entidad que quería importar. En el segundo paso del asistente "Crear nuevo conjunto de datos de características".

No sé por qué las referencias espaciales difieren.


Hola, Alan! Gracias por compartir su experiencia y bienvenido a nuestro sitio.
whuber

1
Hola Alan, el asistente de creación de conjuntos de datos / clases de nuevas características no siempre extrae todos los valores de almacenamiento / procesamiento cuando se utiliza el "sistema de coordenadas de importación". Estamos trabajando para arreglarlo. Creo que esto es con lo que te estás encontrando.
mkennedy

1
Estoy viendo este problema: incluso si creo el Conjunto de datos de características y uso el mecanismo de importación y selecciono la clase de entidad, aún no puedo arrastrar / copiar la clase de entidad en el Conjunto de datos de característica recién creado sin el error mencionado anteriormente.
mindless.panda

3

Creo que uno de los mensajes a ESRI es proporcionar información de depuración de diferencias de parámetros más específicas cuando se produce este error. Yo también he encontrado este error incluso después de controlar cuidadosamente los sistemas de referencia espacial y las proyecciones, como creo que la mayoría de los usuarios de SIG hacen.

He encontrado el procedimiento de usar las funciones de copia de ArcToolbox para remediar los mensajes de error que ocurren cuando se utilizan los mecanismos de importación o copia. Aquí dependemos del procedimiento de la caja de herramientas Copiar entidades para resolver correctamente las diferencias de referencia o proyección antes de introducir la clase de entidad en el conjunto de datos de entidad.

Incluso intenté crear el conjunto de datos de entidades con un sistema de proyección definido en el momento de creación del conjunto de datos, y luego proyectar clases de entidades en el conjunto de datos de entidades utilizando la herramienta de proyección ArcToolbox con la misma proyección, y aún recibí el error descrito aquí cuando intento importar o copie la clase de entidad en el conjunto de datos.

Estos problemas del sistema de coordenadas se enmascaran cuando utiliza datos en ArcMap. Dado que ArcMap realiza una proyección sobre la marcha, se pueden agregar múltiples clases de entidad, cada una con diferentes proyecciones, a un mapa de ArcMap sin que el usuario se dé cuenta. ArcMap advertirá sobre los diferentes sistemas de referencia de coordenadas.


1

OKAY. ¡He encontrado una solución! Haga clic con el botón derecho en el Conjunto de datos de características en GDB y haga clic en Importar. Seleccione las características que necesita, luego OK.


0

Intente usar la herramienta Copiar características en Herramientas / características de administración de datos De lo contrario, seguía recibiendo un error sin importar lo que hiciera.


-1

¿Ha intentado traerlo a ArcMap y establecer las capas como su GCS_WGS_1984 y luego exportar todas sus capas a una geodatabase de archivos?

Si tiene una o varias capas que están en proyección diferente, puede exportarlas pero cambiar el marco de datos a GCS_WGS_1984?

No estoy seguro de eso en ArcGIS 10. Todavía no los tengo pero estoy usando 9.3.1.


1
¿Podría aclarar los puntos 1 y 2? Estos no parecen ser precisos.
Aaron
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.