Exercício P05 – Geração procedural de padrões e texturas

26 maio, 2009 (17:29) | exercícios | Por: admin

Este é um exercício para realização em sala.

Uma das principais aplicações da estrutura de repetição em relação à programação gráfica é na geração procedural de texturas e padrões.

Analise os exemplos a seguir (ver mais exemplos em Reas  – p. 65 a 67):

Exemplo 1:

fill(0, 76);
noStroke();
smooth();
for(int y=-10;y<=100;y = y + 10) {
   for(int x = -10; x<=100; x = x + 10)
   {
     ellipse(x + y / 8.0, y + x/8.0, 15 + x/2, 10);
   }
}

Exemplo 2:

noStroke();
for(int y=0; y<100; y = y + 10)
{
  for(int x=0;x<100;x = x = x + 10)
  {
    fill((x+y)* 1.4);
    rect(x,y, 10, 10);
  }
}

Exemplo 3:

for(float y=20; y<=80; y = y * 1.2) {
  for(int x=20;x<=80;x = x + 5) {
    line(x, y, x, y-2);
  }
}

Exemplo 4:

for(float y=20; y<=80; y = y * 1.2) {
  for(int x=20;x<=80;x = x + 5) {
    line(x, y, x, y-2);
  }
}

Exemplo 5:

for(int y=1;y<100;y=y+10) {
  for(int x=1;x<y;x=x+10) {
    line(x,y,x+6,y+6);
    line(x+6,y,x,y+6);
  }
}

 

A) Faça o teste de mesa de cada um dos exemplos um número mínimo de vezes que permita que você entenda seu funcionamento.

B) Baseado nos exemplos, ou criando alguma coisa do zero, gere algumas texturas e padrões procedurais utilizando estruturas de repetição.

Seu código deve ter um máximo de 11 “;” e um máximo de 2 “for” . Por exemplo, no exemplo 5, acima,  temos 6 “;” e 2 “for”.

Envie a imagem resultante de seu código na pasta indicada no Eureka. Apenas a imagem e não seu código!

Envie seu código no link a seguir.

http://spreadsheets.google.com/viewform?formkey=ckJ6X2U0QTNpNklNbm1GSVAyWDVjc1E6MA..

C) Após o envio vamos fazer uma competição.

Você deve escolher uma imagem disponível na pasta de imagens no Eureka.

Recrie o código usado para gerar a imagem. Envie sua resposta no link abaixo:

http://spreadsheets.google.com/viewform?formkey=cnVJVjRjeUl3aUVYT3Y2Y0VMSnFmZEE6MA..

Comentários

Pingback de Introdução à Programação 1 e 2 (2009) » Exercício de Revisão para Prova (2o Bimestre)
Data: 23 de junho de 2009 Hora: 17:40

[...] Ver Aula 08 e Exercício P05 [...]