Etape 11 : Signifie le calcul de la valeur
La première chose à que faire est de prendre une capture d’écran de la totalité de l’écran :
capture d’écran = screenshotRobot.createScreenCapture (new Rectangle (new Dimension(screenWidth,screenHeight))) ;
Ensuite nous remettre toutes les valeurs RVB à zéro.
rouge = vert = bleu = 0 ;
Après cela, il faut itérer sur tous les pixels qui affectent la couleur actuelle. Deux pour les boucles fera ce travail pour nous. À chaque étape, nous incrémentons notre position par la largeur courante de l’étape.
Gauche
pour (xPosition = startXSide ; xPosition < endXSide ; xPosition += horinzontale) {}
pour (PositionY = startYSide ; PositionY < endYSide ; PositionY += horinzontale) {}
currentPixel = screenShot.getRGB (xPosition, PositionY) ;
rouge = (int) (255 & (currentPixel >> 16)) ;
vert = (int) (255 & (currentPixel >> 8)) ;
bleu = + (int) (255 & (currentPixel)) ;
}
}
La largeur d’étape détermine combien de pixels affecte la valeur moyenne. Cette valeur est élevé, plus vite le pour les boucles seront traitées, parce que nous manquons beaucoup de pixels. Le revers de la médaille est le calcul de la valeur moyenne. C’est plus précisément si vous si vous analysez le nombre de pixels. D’autre part il n’est pas nécessaire de regarder tout seul parce que pixels étroits ont eu la même couleur.
C’est un compromis entre vitesse et précision. Juste essayer quelques valeurs et surveiller la valeur mise à jour.
Nous résumer tout rouges, tout verts et tout bleus des valeurs de tous les pixels et diviser par le nombre de ce pixel. Maintenant, nous avons obtenu la valeur moyenne.
rouge / = numberOfSidePixels ;
vert / = numberOfSidePixels ;
bleu / = numberOfSidePixels ;
Si vous souhaitez que l’application de dormir pendant un certain temps après le cycle d’un calcul, vous pouvez modifier la valeur de « Sommeil ».