Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2017-12-17 11:19:04 BESOIN D'EXPLICATION DE LIGNES DE CODE

jeremy
nouveau membre
Date d'inscription: 2017-12-09
Messages: 8

BESOIN D'EXPLICATION DE LIGNES DE CODE



Bonjour ,
j'ai besoin d'aide car je ne comprend pas centaines lignes du programme

voila le programme ,

ce programme permet de déplacer un balle a un endroit précises dans un labyrinthe ,

PImage Chien;
PVector[] trajet;
PVector balle;
int indice, vitesse;

void setup() {
  size(1000, 700);
  Chien = loadImage("Chien.jpg"); // j'ai insere l'image

  noStroke();
  fill(0, 0.0);
  trajet = new PVector[18];
  trajet[0] = new PVector(387, 168);
  trajet[1] = new PVector(443, 168);
  trajet[2] = new PVector(443, 131);
  trajet[3] = new PVector(720, 131);
  trajet[4] = new PVector(720, 210);
  trajet[5] = new PVector(665, 210);
  trajet[7] = new PVector(665, 168);
  trajet[8] = new PVector(611, 168);
  balle = new PVector(387, 168);
  indice = 1;
  vitesse = 2;
}

void draw() {
  image(Chien, 0, 0, 1000, 700);
  fill(0);
  ellipse(balle.x, balle.y, 20, 20);       
  if (balle.x < trajet[indice].x) {       ça veut dire quoi ?
    balle.x += vitesse;                     ça veut dire quoi ?
  }
  if (balle.x > trajet[indice].x) {       ça veut dire quoi ?
    balle.x -= vitesse;                      ça veut dire quoi ?
  }
  if (balle.y < trajet[indice].y) {       ça veut dire quoi ?
    balle.y += vitesse;                     ça veut dire quoi ?
  }
  if (balle.y > trajet[indice].y) {       ça veut dire quoi ?
    balle.y -= vitesse;                      ça veut dire quoi ?
  }
  if (PVector.dist(balle, trajet[indice]) < vitesse) {     ça veut dire quoi ?
    indice++;                                                          ça veut dire quoi ?
  }
}

void mousePressed() {
  println(mouseX + " : " + mouseY); // connaitre les coordonees quand je pointe la souris
}


merci beaucoup

jeremy viale

Hors ligne

 

#2 2017-12-17 21:48:44 Re : BESOIN D'EXPLICATION DE LIGNES DE CODE

Mushussu
membre
Lieu: Orléans
Date d'inscription: 2012-05-24
Messages: 802

Re: BESOIN D'EXPLICATION DE LIGNES DE CODE



Bonsoir,

Dans le tableau trajet, c'est une suite de points qui permet à la balle de passer de l'un à l'autre. le point courant est identifié par la variable indice.

if (balle.x < trajet[indice].x) {

Si la coordonnée x de la balle est inferieure à la coordonnée x du point courant alors

balle.x += vitesse;

La balle se déplace dans le direction du point courant sur l'axe des x
Cette expression est equilente à

balle.x = balle.x + vitesse;

  if (PVector.dist(balle, trajet[indice]) < vitesse) {
    indice++;
  }

Si la distance entre la balle et le point courant est proche, ici inférieure au déplacement de la balle alors on estime qu'il faut passer au point suivant. On incrément la variable indice.
La classe PVector est très puissante et permet de réaliser des calculs de manière simple.

J'espère que mes explications sont assez claires.

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024