Voila en fait j’ai un plateau de jeu sur lequel j’aimerai mettre en fond un degradé de couleur bleu (clair sur les bords et fonce au milieu) un peu comme la mer.
Quelqu’un s’y connait un peu ?
Merci d’avance
Voila en fait j’ai un plateau de jeu sur lequel j’aimerai mettre en fond un degradé de couleur bleu (clair sur les bords et fonce au milieu) un peu comme la mer.
Quelqu’un s’y connait un peu ?
Merci d’avance
Ton problème est de générer une image avec un dégradé de bleu?
Il suffit de travailler directement avec les pixels
Regarde du côté de PixelGrabber
ok je regarde ca
mais il ne s’agit pas d’implementer une image en fond
ah?
non juste colorier le fond mais en faisant un dégradé
avec adobe photoshop il y a moyen !
(non mais en Java, photoshop il n’existe pas…)
Sinon ton degré doit être du genre :
[cpp]for ( int i = 0; i < height; i++ ) {
int color = (((int) ((float)(0x000000FF * ((float)i/(float)height)))) & 0x000000FF) | 0xFF000000;
for ( int j = 0; i < width; j++ )
setPixel(i,j, color);
}
[/cpp]
et avec sa il fait quoi il le copie coller dans les codes de sa page ?
Sa page?
Tu ne confondrais pas Java et Javascript?
(…)
Puis en javascript aussi tu peux le faire, mais bon…
Et pour un dégradé bleu -> blanc
[cpp]for ( int i = 0; i < height; i++ ) {
int value = (((int) ((float)(0xFF * ((float)i/(float)height)))) & 0x000000FF);
int color = 0xFF0000FF;
color += value << 8; // Ajout du vert
color += value << 16; // Ajout du rouge
for ( int j = 0; i < width; j++ )
setPixel(i,j, color);
}[/cpp]
Je pense que tu as strictement tout pour faire ton dégradé maintenant…
rah le boulet :o et en plus tu m’as suivi [myself] : s’il utilise mon code, il va avoir une boucle infini :o c’est pas i < width, mais j < width.
Ce ne sera pas ma première connerie dans ce post (Je ne pense pas qu’un PixelGrabber soit vraiment utile ici, y’a rien à récupérer)…
Pour m’excuser, une solution un peu plus complète -toujours partiellement repompée sur le code de Sans-Nom -> component, c’est n’importe quoi qui hérite de Component
int[] buffer = new int[width * height];
for (int i = 0 ; i < height ; i++) {
int value = (int) (255. * ((double)i/(double)height));
int color = 0xFF0000FF;
color += value << 8; // Ajout du vert
color += value << 16; // Ajout du rouge
for (int j = 0; j < width; j++) {
buffer[j + i * width] = color;
}
}
Image image = component.createImage(new MemoryImageSource(width, height, buffer, 0, width));
MediaTracker mediaTracker = new MediaTracker(component);
mediaTracker.addImage(image, 0);
try {
mediaTracker.waitForID(0);
}
catch(Exception e) {
e.printStackTrace();
}
t t t