Trop de rectangle [Résolu]

Signaler
-
 pascalg2 -
Bonjour,
Ca fait plusieurs jours que je tourne en rond, je n'arrive pas à trouver pourquoi j'ai trop de rectangles avec fillRect : je me sers d'une boucle pour afficher plusieurs rectangles de couleurs (légende d'un camembert) et je me retrouve avec x + (x -1) rectangles, les indésirables étant de la même couleur.
code :
...bla bla bla
var dessin = "graf01";    // pour ici, en réalité issue d'un tableau
var canvas = document.getElementById(dessin);
 var ctx = canvas.getContext('2d');
 var color1 = new  Array("darkcyan","yellow","red","blue","green","cyan","gold");
 var lg = 7;    // pour ici, en réalité longueur d'un tableau

 for(j = 0; j < lg; j++) {    
         ctx.fillStyle = color1[j];
         ctx.fillRect(0, j * 14, 20, (j + 1) * 14);
 }

blablabla...

Si quelqu'un à déjà résolu ce problème...

Merci

PS : je suis sur opéra mais c'est pareil sur firefox.

EDIT: Ajout de la coloration syntaxique.

3 réponses

Messages postés
1787
Date d'inscription
vendredi 9 mai 2008
Statut
Non membre
Dernière intervention
9 juin 2021
131
bonjour

pourrai tu mettre plus de code afin de tester car comme ca pas évident
Messages postés
1787
Date d'inscription
vendredi 9 mai 2008
Statut
Non membre
Dernière intervention
9 juin 2021
131
j'ai testé et il y a une chose que je ne comprend pas

(j + 1) * 14


en retirant cette partie on obtient bien le nombre de rectangle

ctx.fillRect(0, j * 14, 20,14);


et si il faut des espacements entre chaques rectangle

 ctx.fillRect(0, j * (14+5), 20,14);
Merci Kazma,
c'est le 'bug ' que je cherchais.
C'est bien 14 au lieu de (j + 1) * 14.

Merci encore