movies in processing
in
Core Library Questions
•
1 year ago
i´m working on a project. i want to show a movie and words on it. i don´t know how to let the words fade out when the movie is over. can anybody help me?
here is the code:
import processing.video.*;
Movie theMov;
PFont f;
float jitter;
float jitter2;
float transPosX_1, transPosX_2, transPosX_3, transPosX_4, transPosX_5, transPosX_6, transPosX_7;
float transPosY_1, transPosY_2, transPosY_3, transPosY_4, transPosY_5, transPosY_6, transPosY_7;
float textBreite;
float textBreite2;
float textBreite3;
float xspeed, xspeed2, xspeed3, xspeed4, xspeed5, xspeed6, xspeed7;
float yspeed, yspeed2, yspeed3, yspeed4, yspeed5, yspeed6, yspeed7;
int fontsize1 = 85, fontsize2 = 66, fontsize3 = 36;
void setup() {
size(1024, 761);
theMov = new Movie(this, "dom.mov");
/* only use 1 of the following options */
theMov.play(); //plays the movie once
//theMov.loop(); //plays the movie over and over
f = loadFont("ACaslonPro-Italic-48.vlw"); // Font laden
xspeed = random(-1, -0.5); // geschwindigkeit und position text 1
yspeed = random(-1, -0.5);
transPosX_1 = width/2;
transPosY_1 = height/20;
xspeed2 = random(-2, 0.1); // geschwindigkeit und position text 2
yspeed2 = random(-1, 0);
transPosX_2 = width/3;
transPosY_2 = height/8;
xspeed3 = random(-1, -0.9); // geschwindigkeit und position text 3
yspeed3 = random(-0.5, -0.8);
transPosX_3 = width/6;
transPosY_3 = height/4;
xspeed4 = random(-1.8, 0.8); // geschwindigkeit und position text 4
yspeed4 = random(-0.5, 0);
transPosX_4 = width/2;
transPosY_4 = height/2;
xspeed5 = random(-2.5, 0.8); // geschwindigkeit und position text 5
yspeed5 = random(-1, 0);
transPosX_5 = width/2;
transPosY_5 = height/2;
xspeed6 = random(-1, 0.8); // geschwindigkeit und position text 6
yspeed6 = random(-2, 0);
transPosX_6 = width/10;
transPosY_6 = height/5;
xspeed7 = random(0, 0.8); // geschwindigkeit und position text 7
yspeed7 = random(-1, 0);
transPosX_7 = width/1;
transPosY_7 = height/2;
}
void draw() {
image(theMov, 0, 0);
smooth();
textAlign(CENTER); // Textausrichtung
jitter = random(-2, 2);
/* ############ TEXT 1 ############ */
transPosX_1 = transPosX_1 + xspeed; // geschwindigkeit errechnen
transPosY_1 = transPosY_1 + yspeed;
textBreite = textWidth("dom"); // Textbreite ermitteln
if ((transPosX_1 > width-(textBreite/2))||(transPosX_1 <= textBreite/2)) {
xspeed=-1* xspeed;
} // wenn er an irgendeiner seite anstößt in abhängigkeit der textgröße
if ((transPosY_1 > height-fontsize2/2)||(transPosY_1 <= fontsize2/2)) {
yspeed=-1* yspeed;
} // kehre xspeed und yspeed um
pushMatrix(); // Matrix grenzt Transform ein
if ((mouseX>transPosX_1-textBreite/2) && (mouseX<transPosX_1+textBreite/2) && (mouseY>transPosY_1-8) && (mouseY<transPosY_1+8)) {
translate(jitter, jitter);
textFont(f,55); // Font definieren der verwendet werden soll
}
fill(200, 50);
text("dom", transPosX_1, transPosY_1);
popMatrix();
textFont(f,70);
/* ############ TEXT 2 ############ */
transPosX_2 = transPosX_2 + xspeed2;
transPosY_2 = transPosY_2 + yspeed2;
textBreite2 = textWidth("gebet");
if ((transPosX_2 > width-(textBreite2/2))||(transPosX_2 <= textBreite2/2)) {
xspeed2=-1* xspeed2;
}
if ((transPosY_2 > height-fontsize2/2)||(transPosY_2 <= fontsize2/2)) {
yspeed2=-1* yspeed2;
}
pushMatrix();
if ((mouseX>transPosX_2-textBreite2/2) && (mouseX<transPosX_2+textBreite2/2) && (mouseY>transPosY_2-8) && (mouseY<transPosY_2+8)) {
translate(jitter, jitter);
textFont(f,44);
}
fill(200, 86);
text("gebet", transPosX_2, transPosY_2);
popMatrix();
textFont(f,24);
/* ############ TEXT 3 ############ */
transPosX_3 = transPosX_3 + xspeed3;
transPosY_3 = transPosY_3 + yspeed3;
textBreite3 = textWidth("gott");
if ((transPosX_3 > width-(textBreite3/2))||(transPosX_3 <= textBreite3/2)) {
xspeed3=-1* xspeed3;
}
if ((transPosY_3 > height-fontsize3/2)||(transPosY_3 <= fontsize3/2)) {
yspeed3=-1* yspeed3;
}
pushMatrix();
if ((mouseX>transPosX_3-textBreite3/2) && (mouseX<transPosX_3+textBreite3/2) && (mouseY>transPosY_3-8) && (mouseY<transPosY_3+8)) {
translate(jitter, jitter);
textFont(f, 36);
}
fill(200,65);
text("gott", transPosX_3, transPosY_3);
popMatrix();
textFont(f, 36);
/* ############ TEXT 4 ############ */
transPosX_4 = transPosX_4 + xspeed4;
transPosY_4 = transPosY_4 + yspeed4;
textBreite3 = textWidth("gemeinschaft");
if ((transPosX_4 > width-(textBreite3/2))||(transPosX_4 <= textBreite3/2)) {
xspeed4=-1* xspeed3;
}
if ((transPosY_4 > height-fontsize3/2)||(transPosY_4 <= fontsize3/2)) {
yspeed4=-1* yspeed3;
}
pushMatrix();
if ((mouseX>transPosX_4-textBreite3/2) && (mouseX<transPosX_4+textBreite3/2) && (mouseY>transPosY_4-8) && (mouseY<transPosY_4+8)) {
translate(jitter, jitter);
textFont(f, 20);
}
fill(200, 20);
text("gemeinschaft", transPosX_4, transPosY_4);
popMatrix();
textFont(f, 36);
/* ############ TEXT 5 ############ */
transPosX_5 = transPosX_5 + xspeed5;
transPosY_5 = transPosY_5 + yspeed5;
textBreite3 = textWidth("stille");
if ((transPosX_5 > width-(textBreite3/2))||(transPosX_5 <= textBreite3/2)) {
xspeed5=-1* xspeed3;
}
if ((transPosY_5 > height-fontsize3/2)||(transPosY_5 <= fontsize3/2)) {
yspeed5=-1* yspeed3;
}
pushMatrix();
if ((mouseX>transPosX_5-textBreite3/2) && (mouseX<transPosX_5+textBreite3/2) && (mouseY>transPosY_5-8) && (mouseY<transPosY_5+8)) {
translate(jitter, jitter);
textFont(f, 40);
}
fill(200, 20);
text("stille", transPosX_5, transPosY_5);
popMatrix();
textFont(f, 26);
/* ############ TEXT 6 ############ */
transPosX_6 = transPosX_6 + xspeed6;
transPosY_6 = transPosY_6 + yspeed6;
textBreite3 = textWidth("halleluja");
if ((transPosX_6 > width-(textBreite3/2))||(transPosX_6 <= textBreite3/2)) {
xspeed6=-1* xspeed3;
}
if ((transPosY_6 > height-fontsize3/2)||(transPosY_6 <= fontsize3/2)) {
yspeed5=-1* yspeed3;
}
pushMatrix();
if ((mouseX>transPosX_6-textBreite3/2) && (mouseX<transPosX_6+textBreite3/2) && (mouseY>transPosY_6-8) && (mouseY<transPosY_5+8)) {
translate(jitter, jitter);
textFont(f, 40);
}
fill(200, 60);
text("halleluja", transPosX_6, transPosY_6);
popMatrix();
textFont(f, 65);
/* ############ TEXT 7 ############ */
transPosX_7 = transPosX_7 + xspeed;
transPosY_7 = transPosY_7 + yspeed7;
textBreite3 = textWidth("glocke");
if ((transPosX_7 > width-(textBreite3/2))||(transPosX_7 <= textBreite3/2)) {
xspeed7=-1* xspeed3;
}
if ((transPosY_7 > height-fontsize3/2)||(transPosY_7 <= fontsize3/2)) {
yspeed7=-1* yspeed3;
}
pushMatrix();
if ((mouseX>transPosX_7-textBreite3/2) && (mouseX<transPosX_7+textBreite3/2) && (mouseY>transPosY_7-8) && (mouseY<transPosY_7+8)) {
textFont(f,55);
}
fill(200, 45);
text("glocke", transPosX_7, transPosY_7);
popMatrix();
textFont(f,55);
}
void movieEvent(Movie m) {
m.read();
}
1