He estado buscando una respuesta a la misma pregunta durante algún tiempo para superar el problema de aplanamiento de los polígonos de búferes superpuestos y creo que encontré una solución sólida para ello. De hecho el comentario de @Whuber,
En principio, el centroide, el perímetro y el área podrían no identificar un polígono de forma única, pero los contraejemplos son un poco artificiales.
en la respuesta de @Paul fue el principal impulso para seguir intentándolo. Utiliza la herramienta Spatial Join SON_IDÉNTICOS_A ya que es el más eficiente entre otros detectores idénticos. Estos son los pasos:
- Self Union su aportación para que todas las formas sean diferentes entre sí;
- Crear un campo ficticio para mantener/copiar los OBJECTID originales (es decir, OID ) de las filas, por ejemplo EX_OID ;
- Ejecute Spatial Join en la clase de característica que que se desea procesar como parámetros de característica de destino y de unión. Asegúrese de que los mapeos de campo de los campos ficticios (aparecen dos veces) creado previamente tiene la regla de fusión de FIRST (que es la predeterminada o elija LAST, los otros pueden no dar la salida deseada ya que utilizan un resumen de solapamientos). Este paso escoge la forma común OBJECTID que se encuentra encima de todos los solapamientos (es decir, PRIMERO);
Los siguientes pasos se pueden hacer de dos maneras, CON Python o SIN:
CON PITÓN
- Utilice el siguiente código para extraer los IDs únicos que queremos encontrar:
print tuple(set([row.getValue("EX_OID_1") for row in arcpy.SearchCursor("Output_of_the_Spatial_Join_Operation")]))
.
Tenga en cuenta que estoy utilizando la segunda copia del campo OID ficticio, que es EX_OID_1 en mi caso;
- Copie el resultado de este código y péguelo en el Definición Consulta de la clase de características original procesada como
OBJECTID IN (<PASTE_COPIED_VALUES_HERE>)
. El resultado será será mostrar las características unificadas de las partes superpuestas. Sin embargo, hay una limitación de tamaño: 30.000 caracteres. Para superar este problema, es necesario seguir los pasos "sin python".
SIN PITÓN
-
Utilice la herramienta de Frecuencia para enumerar los valores únicos en la segunda copia de la simulación OID, que en mi caso es EX_OID_1;
-
Por último, únete OBJECTID de la clase de características original con la salida de la herramienta de frecuencia EX_OID_1 seleccionando la opción "Conservar sólo los registros coincidentes".
0 votos
Así que estás diciendo que hay múltiples registros de idéntico geometría y quiere combinar las que son idénticas? Si ese es el caso... ¿podría disolver basándose en el área o algo así? Tal vez estoy perdiendo su pregunta aquí.
0 votos
Así es, son geometrías idénticas donde el único atributo natural compartido es la propia geometría. Área puede funcionan, pero no hay garantía de que dos geometrías diferentes no tengan la misma área.
0 votos
Vea mi post. Puede ejecutar la disolución en varios campos.
0 votos
@Paul....Veo que has editado tu respuesta para reflejar mi aportación. Espero que te haya servido de ayuda.