J'ai développé quelques compléments python et je me demande simplement quelle est la meilleure façon de recompiler le complément chaque fois que je modifie le script.
Actuellement, si je modifie le script, il semble que je doive
- Fermer ArcMap
- Accédez au dossier My addin et double-cliquez sur le fichier python 'makeaddin'
- Double-cliquez sur le «fichier complémentaire Python
- Redémarrez ArcMap pour que les modifications prennent effet
Si je ne fais pas ces étapes, les modifications ne sont pas reconnues. Cela devient assez ennuyeux et prend du temps lorsque je veux placer peut-être une simple ligne d'impression quelque part ou que je fais une petite modification juste pour tester un résultat.
Existe-t-il une meilleure façon de le faire?
Selon la suggestion de @ blah238, le script suivant
Enregistrer dans le répertoire contenant makeaddin.py:
la source
arcmap = "C:/Program Files (x86)/ArcGIS/Desktop10.3/bin/ArcMap.exe"
etMap = '"{0}" {1} /s'.format(arcmap, mapdoc)
à ce qui précède. Alorsos.system(Map)
réussira là oùos.system(mapdoc)
ça ne marche pas.J'ai reçu une réponse sur le site Web d'ArcGIS. Apparemment, c'est le seul moyen de recompiler des compléments python. Quelqu'un a enregistré une idée sur ArcGIS Ideas et j'ai également voté et commenté.
Le fil du forum de discussion ArcGIS se trouve ici .
la source
J'utilise généralement deux approches: l'une consiste, pour tous les outils que vous utilisez qui ne sont vraiment que du géotraitement, à autoriser leur importation, puis vous pouvez configurer une session Python interactive et faire
reload(mymodule)
comme mentionné pour inclure les dernières modifications (ou configurer chargement automatique dans IPython ). Si vous apportez simplement des modifications à une boîte à outils Python, vous pouvez recharger la boîte à outils en cliquant dessus avec le bouton droit dans la vue Catalogue et en cliquant sur 'Actualiser'.Pour le code qui nécessite une interaction utilisateur dans l'interface graphique, j'utilise le script de commandes suivant pour accélérer le processus:
Où myaddin.mxd a des couches de données et le contexte que j'utilise pour le projet spécifique. Cela déclenchera l'installation du complément et ArcMap simultanément, mais je peux généralement cliquer sur le bouton «Installer le complément» plus rapidement que le démarrage d'ArcGIS. Vous pouvez également ajouter
pause
avant la dernière commande d'attendre la saisie avant de démarrer ArcGIS.la source
ESRIRegAddIn.exe
avec le/s
commutateur pour installer le complément en mode silencieux. Le chemin vers ESRIRegAddIn sur ma machine estC:\Program Files (x86)\Common Files\ArcGIS\bin
.