Skip to content

Instantly share code, notes, and snippets.

@edmorais
Last active April 22, 2016 15:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save edmorais/0aa9b7626eb11cbe3f14 to your computer and use it in GitHub Desktop.
Save edmorais/0aa9b7626eb11cbe3f14 to your computer and use it in GitHub Desktop.
Desenha sucessivamente circulos de uma entre cinco cores aleatórias (mau exemplo).
/* __ ________ ___ ___ _______
/ / / __/ _/ |_ |/ _ < / __/
/ /___\ \_/ / / __// // / /__ \
/____/___/___/ /____/\___/_/____/
Aula de 24/04/2015:
Desenha sucessivamente circulos de uma entre cinco cores aleatórias (mau exemplo).
Por Eduardo Morais / FBAUP - www.eduardomorais.pt/fbaup/
*/
/*
Declarações de variáveis:
*/
int px = 1; // posição do 'cursor'
int py = 1;
color cor1, cor2, cor3, cor4, cor5; // cinco cores, cinco variáveis
/*
Função setup():
Executada automaticamente no início do programa:
*/
void setup() {
size(640, 480);
background(255);
noStroke();
ellipseMode(CORNER);
// vamos dar cor às nossas cinco variáveis
// usamos uma paleta retirada do site ColourLovers
cor1 = color(#774F38);
cor2 = color(#E08E79);
cor3 = color(#F1D4AF);
cor4 = color(#ECE5CE);
cor5 = color(#C5E0DC);
}
/*
Função draw():
Executada repetidamente a cada 'frame'/fotograma de animação.
*/
void draw() {
int s = round(random(1, 5)); // numero à sorte entre 1 e 5
// uma série de condições para escolher o enchimento de acordo com o número à sorte:
if (s == 1) {
fill(cor1);
}
if (s == 2) {
fill(cor2);
}
if (s == 3) {
fill(cor3);
}
if (s == 4) {
fill(cor4);
}
if (s == 5) {
fill(cor5);
}
// MAS E SE TIVESSEMOS 200 CORES? TERÍAMOS DUZENTOS IFs???
// desenha o circulo:
ellipse(px, py, 30, 30);
// avança o 'cursor' 32 pixels para a direita:
px = px + 32;
// mas se chegou ao fim da 'linha', avança 32 pixels para baixo e volta para a esquerda:
if (px > width) {
px = 1;
py = py + 32;
}
// limpa a imagem se o 'cursor' chegou ao fundo do ecrã:
if (py > height) {
py = 1;
background(255);
}
} // fim da função draw()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment