Modifications

Run 2000

1 375 octets ajoutés, 16 avril 2018 à 22:06
aucun résumé de modification
Enfin, dernière interaction, il y a deux fentes sur une face du cube dans lequel l'utilisateur peut passer une lame pour couper horizontalement ou verticalement la vidéo.
Dans cette expérience, c'est l'humain qui interagit directement avec son corps et ses mouvements.
 
 
<gallery>
schema-principe.png|Schéma du cube avec les différents capteurs
 
</gallery>
== '''Le cube''' ==
==== -Mise en aléatoire des vidéos ====
int dernier;
int encours;
int num_movies = 8;
import processing.video.*;
import processing.sound.*;
import http.requests.*;
SoundFile file;
 
 
Movie m1, m2, m3;
Movie[] movies = new Movie[num_movies];
Movie currentMovie;
 
int time =0;
 
void setup() {
//On met la fenetre à la taille de l'écran
size(displayWidth, displayHeight);
//On importe le fichier
file = new SoundFile(this, "Moderat.wav");
file.loop();
//On met la musique en boucle
for (int i = 0; i < movies.length; i++) {
movies[i] = new Movie(this, nf(i, 2, 0)+".mov");
//On installe une sélection aléatoire des vidéos (qui vont de 00.mov à 07.mov)
}
encours = 0;
dernier = encours;
currentMovie = movies[encours];
currentMovie.play();
}
 
void draw() {
 
if (millis() >= time + currentMovie.duration()*1000) {
dernier = encours;
encours = nouveau(dernier);
currentMovie.stop();
time = millis();
currentMovie = movies[encours];
}
//La vidéo qui se lance sera toujours différente de la précédente mais ne se lancera que lorque que la précedente sera finie
currentMovie.play();
image(currentMovie, 0, 0, width, height);
}
 
int nouveau(int dernier) {
boolean ok = false;
int r = dernier;
while (!ok) {
r = int(random(num_movies));
println(r);
if (r != dernier) {
ok = true;
dernier = r;
}
}
println("-");
return r;
}
 
 
void movieEvent(Movie m) {
m.read();
//On lit la vidéo
}
 
==== -Inversion des couleurs pour le capteur lumière ====
1 013
modifications