Annonce

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

17 mai 2019 : accident de la base de données : plus d'infos

#1 2014-12-10 19:26:24 Chemin aléatoire

grsblfx
nouveau membre
Date d'inscription: 2014-12-10
Messages: 7

Chemin aléatoire



Bonjour ! Je cherche à faire quelque chose qui pourrait être très simple, mais n'ayant aucune base en code, je ne sais pas du tout comment faire. En fait, je souhaiterais simplement créer une animation d'un chemin en ligne se dessinant, avançant de 5 pixels à la fois, soit à gauche, soit à droite, soit en haut soit en bas, de manière aléatoire, et se figeant au moment où la ligne atteint un des bords.

                 Si vous pouviez me donner quelques pistes ça me serait fortement profitable !
                         Merci beaucoup d'avance !

Hors ligne

 

#2 2014-12-10 20:40:04 Re : Chemin aléatoire

Olivier
N°4
Lieu: Chalon sur la Saône
Date d'inscription: 2009-04-07
Messages: 1471
Site web

Re: Chemin aléatoire



Je te propose ce bout de code qui ne fait pas exactement ce que tu veux, mais qui te donne... des pistes. tongue

Code (P5) :

int X1, Y1, X2, Y2;

void setup() {
  
  size(400, 400);
  
  X1 = width/2;
  Y1 = height/2;

  X2 = X1 + decalage();
  Y2 = Y1 + decalage();
}

void draw() {

  line(X1, Y1, X2, Y2);
  
  X1 = X2;
  Y1 = Y2;

  X2 = X1 + decalage();
  Y2 = Y1 + decalage();  
 
}

int decalage() {
 
 // retourne -5, 0 ou 5
 return(5*(int(random(3))-1));
}

http://codelab.fr/up/chemin.png


L'Amour au Peuple !

Hors ligne

 

#3 2014-12-10 21:27:49 Re : Chemin aléatoire

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

Re: Chemin aléatoire



Voici, ma proposition :

int x1, y1, x2, y2;  

void setup() {  
  size(400, 400);  
  x1 = width/2;  
  y1 = height/2;  
  x2 = x1;  
  y2 = y1 - 5;
  background(255);
}  

void draw() {  
  x1 = x2;  
  y1 = y2;  
  switch((int) random(4)) {
  case 0 : // Nord
    y2 -= 5;
    break;
  case 1 : // Est
    x2 += 5;
    break;
  case 2 : // Sud
    y2 += 5;
    break;
  case 3 : // Ouest
    x2 -= 5;
    break;
  }
  line(x1, y1, x2, y2);  
  if ((x1 == 0) || (x1 == width) || (y1 == 0) || (y1 == height)) {
    save("Chemin.png");
    noLoop();
  }
}

http://codelab.fr/up/Chemin.png

Dernière modification par Mushussu (2014-12-10 21:29:30)

Hors ligne

 

#4 2014-12-10 21:36:46 Re : Chemin aléatoire

grsblfx
nouveau membre
Date d'inscription: 2014-12-10
Messages: 7

Re: Chemin aléatoire



C'est vraiment super ! c'est très très proche de ce que je cherchais, merci beaucoup c'est bien plus qu'une piste !
C'est même mieux que ce que j'imaginais ! Encore merci !

Hors ligne

 

#5 2014-12-18 13:19:14 Re : Chemin aléatoire

Olivier
N°4
Lieu: Chalon sur la Saône
Date d'inscription: 2009-04-07
Messages: 1471
Site web

Re: Chemin aléatoire



Yep...
Juste pour dire que je me suis inspiré de l'idée pour pondre ce filtre :


lien vers la page de la vidéo sur vimeo


Documentation ici.


L'Amour au Peuple !

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2019