El script que estoy escribiendo reposiciona dos marcos de datos y establece sus extensiones.
Al hacer esto, vuelve a dibujar toda la Vista activa 4 veces, ralentizando sustancialmente el script.
Al presionar F9 o hacer clic en el botón 'Pausar dibujo' antes de ejecutar el script, se desactiva el dibujo y el script se ejecuta mucho más rápido, pero quiero que el script lo haga automáticamente.
Quiero deshabilitar el dibujo de ArcMap 10 al comienzo del script y habilitarlo al final.
¿Cómo hago esto?
fuente
Me di cuenta de que esta pregunta se cerró hace mucho tiempo, pero tengo algunas herramientas antiguas para las que esto era un problema nuevo y la solución SendKeys ya no parece funcionar, así que hice mi propia solución después de experimentar. No deshabilita el dibujo, pero crea el rendimiento equivalente al deshabilitar las capas y volver a habilitarlas cuando haya terminado. Hacer que el script se ejecute en segundo plano no resuelve el problema (aunque pensé que lo haría), así que intenté desactivar todas las capas, ¡y funcionó! Aceleración completa al código equivalente en un documento vacío. Así que aquí hay un código para lograr eso.
Estas dos funciones, cuando se combinan, desactivan todas las capas en un documento, devolviendo el estado guardado de las capas. Luego, cuando haya terminado sus operaciones, puede volver a activarlas proporcionando ese estado guardado a la segunda función. Uso recomendado:
Y las funciones están a continuación: correcciones, comentarios, etc. bienvenido: código bastante nuevo, por lo que puede tener algunos errores, pero se ha probado algunos.
fuente