O script que estou escrevendo reposiciona dois quadros de dados e define suas extensões.
Ao fazer isso, ele redesenha todo o Active View 4 vezes, diminuindo substancialmente o script.
Pressionar F9 ou clicar no botão 'Pausar desenho' antes de executar o script desativa o desenho e faz com que o script seja executado muito mais rapidamente, mas quero que o script faça isso automaticamente.
Desejo desativar o desenho do ArcMap 10 no início do script e ativá-lo no final.
Como eu faço isso?
fonte
Sei que essa pergunta foi encerrada há muito tempo, mas tenho algumas ferramentas antigas para resolver esse problema recentemente, e a solução SendKeys não parece mais funcionar, então rolei minha própria solução depois de experimentar. Ele não desativa o desenho, mas cria o desempenho equivalente ao desabilitar as camadas e reativá-las quando terminar. A execução do script em segundo plano não resolve o problema (embora eu pensasse que seria), então tentei desativar todas as camadas - e funcionou! Aceleração total para o código equivalente em um documento vazio. Então, aqui está um código para fazer isso.
Essas duas funções, quando combinadas, desativam todas as camadas em um documento, retornando o estado salvo das camadas. Então, quando suas operações estiverem concluídas, você poderá ativá-las novamente, fornecendo esse estado salvo para a segunda função. Uso recomendado:
E as funções estão abaixo - correções, comentários, etc - bem-vindo - código bastante novo, para que possa ter alguns erros, mas já foi testado.
fonte