1 votos

Crear líneas que conecten entre sí los centroides de polígonos adyacentes.

Tengo unos 10 polígonos y he añadido sus centroides al mapa. Quiero crear líneas que conecten los centroides de cada polígono adyacente. Si el polígono 1 limita con los polígonos 2 y 3, quiero una línea que vaya del 1 al 2 y del 1 al 3. Espero que esto tenga sentido y alguien pueda ayudarme. Además, me gustaría indicar las distancias entre los centroides.

1voto

byachna Puntos 583

Me encontré con el mismo problema, mi solución es crear una copia del polígono en primer lugar, añadir un campo con el mismo ID con los puntos centroides (debe estar allí, no es necesario crear). A continuación, utilice el arcobjects C # para juzgar si los polígonos se tocan, de esta manera:

ISpatialFilter pSpatialFilter = new SpatialFilterClass();
pSpatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelTouches;

A continuación, registre el ID de los polígonos tocados, que se conectarán al centroide, a continuación, crear fromlist y tolist para registrar los puntos, crear una nueva clase de característica polilínea para conectar esas líneas.

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