1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| // Test Lignes //
int lignePointAlphaX = 128;
int lignePointAlphaY = 200;
int lignePointBetaX = 350;
int lignePointBetaY = 360;
/*[...]*/
if(Image.isMutable()) {
int coinTuileHautGaucheX = x * 256;
int coinTuileHautGaucheY = y * 256;
int coinTuileHautDroiteX = (x + 1) * 256;
int coinTuileHautDroiteY = y * 256;
int coinTuileBasDroiteX = (x + 1) * 256;
int coinTuileBasDroiteY = (y + 1) * 256;
int coinTuileBasGaucheX = x * 256;
int coinTuileBasGaucheY = (y + 1) * 256;
boolean affichage = false;
if((lignePointAlphaX > coinTuileHautGaucheX && lignePointAlphaX < coinTuileHautDroiteX && lignePointAlphaY > coinTuileHautGaucheY && lignePointAlphaY < coinTuileBasGaucheY) || (lignePointBetaX > coinTuileHautGaucheX && lignePointBetaX < coinTuileHautDroiteX && lignePointBetaY > coinTuileHautGaucheY && lignePointBetaY < coinTuileBasGaucheY)) {
affichage = true;
} else if(intersectionSegments(coinTuileHautGaucheX, coinTuileHautGaucheY, coinTuileHautDroiteX, coinTuileHautDroiteY, lignePointAlphaX, lignePointAlphaY, lignePointBetaX, lignePointBetaY)) {
affichage = true;
} else if(intersectionSegments(coinTuileHautDroiteX, coinTuileHautDroiteY, coinTuileBasDroiteX, coinTuileBasDroiteY, lignePointAlphaX, lignePointAlphaY, lignePointBetaX, lignePointBetaY)) {
affichage = true;
} else if(intersectionSegments(coinTuileBasGaucheX, coinTuileBasGaucheY, coinTuileBasDroiteX, coinTuileBasDroiteY, lignePointAlphaX, lignePointAlphaY, lignePointBetaX, lignePointBetaY)) {
affichage = true;
} else if(intersectionSegments(coinTuileHautGaucheX, coinTuileHautGaucheY, coinTuileBasGaucheX, coinTuileBasGaucheY, lignePointAlphaX, lignePointAlphaY, lignePointBetaX, lignePointBetaY)) {
affichage = true;
}
if(affichage) {
// On dessine la ligne !
}
} |