Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Processing 2. Креативное программирование

.pdf
Скачиваний:
144
Добавлен:
06.03.2016
Размер:
16.65 Mб
Скачать

fDILATE: . ,.

fERODE: DILATE -. .

fGRAY: .

fINVERT: .

fOPAQUE: .

fPOSTERIZE: ..

fTHRESHOLD: .

.. ,.

, ,setup() float s., 1.0setup().

import processing.video.*;

Movie m; float s;

void setup()

{

size( 640, 480 );

m = new Movie( this, "marbles.mov" ); m.loop();

s = 1.0;

}

draw image().Speed text(). movieEvent() .

130

6

void draw()

{

background( 0 );

image( m, 0, 0, width, height );

fill( 0 );

text( "Speed: " + s, 20, 20 );

}

void movieEvent( Movie m )

{

m.read();

}

mousePressed() . -mouseX v-2 2.speed() Movie.

void mousePressed()

{

s = map( mouseX, 0, width, -2, 2 ); m.speed( s );

}

, :

131

speed() Movie .1.0, .0.5, .1.0..

..

, , -float w, .

import processing.video.*;

Movie m; float w;

void setup()

{

size( 640, 480 );

m = new Movie( this, "marbles.mov" ); m.loop();

}

void draw()

{

background( 0 );

image( m, 0, 0, width, height );

fill( 0 ); noStroke();

rect( 0, 0, w, 10 );

}

132

6

movieEvent() .0 width, w .

void movieEvent( Movie m )

{

m.read();

w = map( m.time(), 0, m.duration(), 0, width );

}

mousePressed() mouseX0 jump().

void mousePressed()

{

float x = map( mouseX, 0, width, 0, m.duration() ); m.jump( x );

}

, , ., :

133

duration() Movie ,. time() . jump() .- 0 . ,- .movieEvent().

. . .

Movie, .marbles marbles2,. .

import processing.video.*;

Movie m1;

Movie m2;

void setup()

{

size( 640, 480 );

m1 = new Movie( this, "marbles.mov" ); m1.loop();

m2 = new Movie( this, "marbles2.mov" ); m2.loop();

m2.speed( 2 );

}

movieEvent() ., .

void movieEvent( Movie m )

{

if ( m == m1 ) {

134

6

m1.read();

}else { m2.read();

}

}

draw() .blend().

void draw()

{

background( 0 );

image( m1, 0, 0, width, height );

blend(m2, 0, 0, width, height, 0, 0, width, height, DIFFERENCE);

}

, , , .

135

blend() . - PImage,. x y . - , . - .,Photoshop. , : ADD, BLEND, BURN,

DARKEST, DIFFERENCE, DODGE, EXCLUSION, HARD_LIGHT, LIGHTEST, MULTIPLY,

OVERLAY, SCREEN, SOFT_LIGHT SUBTRACT. , .

136

7

:

fMinim

f-

.. , -. .

Minim, , Processing., , . :

fSonia , http://sonia.pitaru.com/

fBeads , http://www.beadsproject.net/

fEss , http://www.tree-axis.com/Ess/

Minim

, - minim. , Minim.

Sketch | Import Library | minim..

import ddf.minim.*;

import ddf.minim.signals.*; import ddf.minim.analysis.*; import ddf.minim.effects.*;

minim .. , .

fddf.minim.*: Minim., minim. .

fddf.minim.signals.*:, ..

fddf.minim.analysis.*: ..

fddf.minim.effects.*: . , , , .

, Minim, - c - . ,.

138

7

playing_audio_files.pde. -minim, , .MP3 . Processing; data.

, - setup() Minim

AudioPlayer.

Minim minim;

AudioPlayer player;

setup() minim, MP3 data.

void setup()

{

size( 640, 480 );

minim = new Minim( this );

player = minim.loadFile("song.mp3"); player.play();

}

draw() . ,.

void draw()

{

background( 255 );

float x = map(player.position(), 0, player.length(), 0, width);

stroke( 0 );

line( x, 0, x, height );

int totalSeconds = (int)(player.length()/1000) % 60;

int totalMinutes = (int)(player.length()/(1000*60)) % 60; int playheadSeconds = (int)(player.position()/1000) % 60;

int playheadMinutes = (int)(player.position()/(1000*60)) % 60;

139

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]