Estou desenvolvendo alguns suplementos python e estou me perguntando qual é a melhor maneira de recompilar o suplemento sempre que editar o script.
Atualmente, se eu fizer uma edição no script, parece que tenho que
- Fechar o ArcMap
- Vá para Minha pasta addin e clique duas vezes no arquivo python 'makeaddin'
- Clique duas vezes no arquivo 'Python Addin
- Reinicie o ArcMap para que as alterações entrem em vigor
Se eu não executar essas etapas, as edições não serão reconhecidas. Isso fica muito chato e demorado quando eu quero colocar talvez uma simples linha de impressão em algum lugar ou eu faço uma pequena edição apenas para testar um resultado.
Existe um jeito melhor de fazer isso?
Por sugestão de @ blah238, o seguinte script
Salve no diretório que contém makeaddin.py:
fonte
arcmap = "C:/Program Files (x86)/ArcGIS/Desktop10.3/bin/ArcMap.exe"
eMap = '"{0}" {1} /s'.format(arcmap, mapdoc)
ao acima. Entãoos.system(Map)
terá sucesso ondeos.system(mapdoc)
não.Eu recebi uma resposta no site do ArcGIS. Aparentemente, esta é a única maneira de recompilar suplementos python. Alguém registrou uma idéia no ArcGIS Ideas e eu votei e comentei também.
O tópico do Fórum de Discussão do ArcGIS está localizado aqui .
fonte
Geralmente, uso duas abordagens: uma é, para qualquer ferramenta usada que seja realmente apenas de geoprocessamento, permita que elas sejam importadas e, em seguida, você poderá configurar uma sessão interativa do Python e fazer o
reload(mymodule)
que foi mencionado para incluir as alterações mais recentes (ou configurar carregamento automático no IPython ). Se você está apenas fazendo alterações em uma caixa de ferramentas Python, pode recarregá-la clicando com o botão direito do mouse na visualização Catálogo e clicando em 'Atualizar'.Para código que requer interação do usuário na GUI, eu uso o seguinte script em lote para acelerar o processo:
Onde myaddin.mxd tem camadas de dados e contexto que eu uso para o projeto específico. Isso acionará a instalação do complemento e o ArcMap simultaneamente, mas geralmente posso clicar no botão 'Instalar suplemento' mais rapidamente do que o ArcGIS inicia. Como alternativa, você pode adicionar
pause
antes do último comando para aguardar a entrada antes de iniciar o ArcGIS.fonte
ESRIRegAddIn.exe
com a/s
opção para instalar o suplemento silenciosamente. O caminho para ESRIRegAddIn na minha máquina éC:\Program Files (x86)\Common Files\ArcGIS\bin
.