Si tengo, digamos, un archivo ráster rectangular y georreferenciado cargado en un documento ArcMap 10 (.tiff w / tfw asociado), ¿cómo puedo encontrar fácilmente su punto central y almacenar ese punto en una capa vectorial de puntos?
Además, si tengo varios rásteres de este tipo en mi documento de ArcMap, ¿cómo aplico el proceso a todos ellos?
Desafortunadamente, tengo cero experiencia en Python. Por lo tanto, una solución programática está bien, pero necesitaré instrucciones específicas sobre cómo cargar un script existente en ArcGIS 10 y ejecutarlo en los rásteres en las preguntas. (Por cierto, los rásteres están todos en sus capas separadas).
Respuestas:
Aunque la pregunta original era para 10.0, he actualizado el siguiente código para 10.3.1.
Copie y pegue esto en la ventana de Python en arcmap para crear la función RasterCenter:
Luego, puede usar la ventana de Python para crear su clase de entidad llamando
Entonces, por ejemplo, si tiene un ráster llamado DEM, llama a RasterCenter ("dem") en la ventana de Python, y agregará una capa llamada "dem_center" con un solo punto en el centro del ráster. La capa se almacena en la memoria, por lo que si desea conservarla, expórtela.
Para ir un paso más allá, puede guardar el script en un archivo .py y colocar el archivo .py en la ruta de búsqueda de python. por ejemplo, guárdelo como RasterCenter.py y colóquelo en PYTHONPATH (normalmente el lugar para esto es C: \ Python26 \ ArcGIS10.0 \ Lib)
Entonces podrías hacer:
fuente
Muy fácil, simple, obtenga las propiedades de los rásteres y calcule el punto central desde min, max x e y
Y el error de comprobación habitual, etc.
Luego agregue a su tabla de puntos con un cursor de actualización
fuente