Conserver l’écran (screen.keep)
Déclaration
screen.keep()
Description
Conserve le contenu actuel de l’écran dans un tampon du script. Lors de plusieurs appels successifs aux fonctions de lecture de couleur, de recherche de couleur, de capture d’écran ou de recherche d’image, le contenu est lu dans ce tampon au lieu de l’écran réel, ce qui améliore les performances des vérifications d’image et de couleur.
Cette fonction d’optimisation améliore les performances de nombreuses fonctions de traitement d’images statiques.
L’appel ne fait que modifier la source de données des fonctions de capture et de lecture de couleur de XXTouch ; il ne fige pas l’image réelle à l’écran.
Exemple
-- Écrit dans le journal les couleurs de 6144 points
t = {}
screen.keep()
for k = 1, 640, 10 do
for j = 1, 960, 10 do
-- Formate en texte hexadécimal
t[#t + 1] = string.format("%X", screen.get_color(k, j))
end
end
screen.unkeep()
nLog(t)
Remarque : le code ci-dessus utilise la fonction hors de ce chapitre nLog
À savoir
- Deux appels autonomes et consécutifs à screen.get_color pour une même position peuvent renvoyer des valeurs différentes
- Sans screen.keep, la durée d’un appel autonome à screen.get_color est à peu près celle d’un screen.keep
- Après un appel à screen.keep, 50 appels consécutifs à screen.get_color prennent environ autant de temps qu’un seul appel à screen.keep