Cours:BallePOO

De troyesGEII
Révision datée du 25 mars 2016 à 14:46 par Bjacquot (discussion | contributions) (Page créée avec « <source lang=c> class Balle { PVector position; PVector vitesse; PVector zoneBD; PVector zoneHG; float rayon; int couleur = 100; Balle(PVector p, PVector... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher
class Balle
{
  PVector position;
  PVector vitesse;
  PVector zoneBD;
  PVector zoneHG;
  float rayon;
  int couleur = 100;
  
  Balle(PVector p, PVector v, PVector bBD,PVector bHG, float r)
  {
    p.add(bHG);
    this.position = p;
    this.vitesse = v;
    this.rayon = r;
    this.zoneBD = bBD;
    this.zoneHG = bHG;
  }
  void deplacer()
  {
    this.position.add(this.vitesse);
  }
  void go()
  {
    this.deplacer();
    this.rebondir();
    this.afficher();
  }
  void rebondir()
  {
    if ((position.x-rayon)<zoneHG.x) {if (vitesse.x<0) vitesse.x=-vitesse.x;}
    if ((position.y-rayon)<zoneHG.y) {if (vitesse.y<0) vitesse.y=-vitesse.y;}
    if ((position.x+rayon)>zoneBD.x) {if (vitesse.x>0) vitesse.x=-vitesse.x;}
    if ((position.y+rayon)>zoneBD.y) {if (vitesse.y>0) vitesse.y=-vitesse.y;}
  }
  void afficher()
  {
    fill(this.couleur);
    ellipse(this.position.x,
            this.position.y,
            2*this.rayon,
            2*this.rayon);
  }
}