He estado desarrollando algunos complementos de Python y me pregunto cuál es la mejor manera de volver a compilar el complemento cada vez que edito el script.
Actualmente, si hago una edición en el script, parece que tengo que
- Cerrar ArcMap
- Vaya a Mi carpeta de complementos y haga doble clic en el archivo 'makeaddin' de python
- Haga doble clic en 'Archivo de complemento de Python
- Reinicie ArcMap para que los cambios entren en vigencia
Si no sigo estos pasos, no se reconocen las ediciones. Esto se vuelve bastante molesto y requiere mucho tiempo cuando quiero colocar tal vez una línea de impresión simple en algún lugar o hago una pequeña edición solo para probar un resultado.
¿Hay una mejor manera de hacer esto?
fuente
Según la sugerencia de @ blah238, el siguiente script
Guardar en el directorio que contiene makeaddin.py:
fuente
arcmap = "C:/Program Files (x86)/ArcGIS/Desktop10.3/bin/ArcMap.exe"
yMap = '"{0}" {1} /s'.format(arcmap, mapdoc)
a lo anterior. Entoncesos.system(Map)
tendrá éxito dondeos.system(mapdoc)
no.Recibí una respuesta en el sitio web de ArcGIS. Aparentemente, esta es la única forma de volver a compilar complementos de Python. Alguien ha registrado una idea en ArcGIS Ideas y también he votado y comentado.
El hilo del foro de discusión de ArcGIS se encuentra aquí .
fuente
Generalmente uso dos enfoques: uno es, para cualquier herramienta que use que realmente sea solo geoprocesamiento, permita que se importen, y luego puede configurar una sesión interactiva de Python, y hacer
reload(mymodule)
lo mencionado para incluir los cambios más nuevos (o configurar recarga automática en IPython ). Si solo está realizando cambios en una caja de herramientas de Python, puede volver a cargar la caja de herramientas haciendo clic derecho sobre ella en la vista Catálogo y haciendo clic en 'Actualizar'.Para el código que requiere la interacción del usuario en la GUI, utilizo el siguiente script por lotes para acelerar el proceso:
Donde myaddin.mxd tiene capas de datos y contexto que uso para el proyecto específico. Esto activará la instalación del complemento y ArcMap simultáneamente, pero generalmente puedo hacer clic en el botón 'Instalar complemento' más rápido de lo que comienza ArcGIS. Alternativamente, puede agregar
pause
antes del último comando para esperar la entrada antes de iniciar ArcGIS.fuente
ESRIRegAddIn.exe
el/s
interruptor para instalar el complemento de forma silenciosa. La ruta a ESRIRegAddIn en mi máquina esC:\Program Files (x86)\Common Files\ArcGIS\bin
.