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?
fuente
Respuestas:
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ó.
fuente
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.
fuente
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).Esto es lo que hice para resolver el problema (usando arcpy en ArcGIS 10.0):
Esto supone lo siguiente:
Puede modificar sus rutas y nombres de objetos en el código y pegarlo en la ventana de Python en ArcCatalog.
Después de crear el dataset de entidades, puede arrastrar y soltar las clases de entidades.
fuente
¡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.
fuente
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.
fuente
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.
fuente
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.
fuente
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.
fuente
¿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.
fuente