Você está na página 1de 2

Instruções

1 - Coloque seu nome e matrícula no arquivo enviado no SOLAR.


2 - Envie um arquivo com as respostas em pdf, caso tenha código, pode colocar o link do editor p5 na
questão relativa ao código, ou pode enviar o arquivo do código separado, com seu nome e matricula -
código. Ex: dante509015-codigo.js.
3 - Como sugestão usem esse site para criar imagens dos seus códigos e colocarem no pdf caso não
desejem enviar o arquivo de código ou postar no editor.
Carbon

Questões
1) Crie uma função que receba um número inteiro como parâmetro e retorne um array de cores aleatórias
em formato RGB. Use esse array para desenhar círculos no canvas.
2) Crie uma função que receba um array de números e retorne o maior valor. Use esse valor para definir
a altura de retângulos que serão desenhados no canvas.
3) Crie 5 arrays dentro de um único array, cada um desses 5 arrays contendo 4 números de 0 a 10,
para cada número, desenhe um quadrado de uma cor única nas posições x = indiceDoNumero * 20,
indiceDoArrayInterno * 20, largura 20 e altura 20
4) Crie 2 arrays, um para coordenadas x e outro para coordenadas y, em seguida desenhe linhas que
conectem 10 pontos.
5) Crie uma função que testa se dois retangulos estão colidindo, o retorno da função devera ser falso ou
verdadeiro.
6) Crie uma função que desenhará um coração na tela.
7) Qual a diferença entre Instância e uma Classe em POO e qual a relação entre métodos e funções e
entre variáveis e atributos?
8) Cite os 4 Pilares da POO e explique cada um deles com suas palavras.
9) Crie uma classe chamada “Círculo” que represente um círculo na tela usando a notação class do
javascript. Essa classe deve ter os atributos “cx”, “cy” (coordenadas do centro) e “raio”. Crie um
método chamado “desenhar” que desenhe o círculo na tela usando p5.js.
10) Adicione um método chamado “mover” à classe “Círculo” que modifique as coordenadas do centro do
círculo de acordo com algum critério (por exemplo, aumentando o valor de “x” a cada frame). Além

1
disso Modifique a classe “Círculo” adicionando um método chamado “verificarLimites” que verifica se
o círculo saiu dos limites da tela. Agora, com base no resultado de retornado de verificarLimites,
altere o critério adicionado no método “mover” (por exemplo: saiu do limite da janela, irei inverter o
valor que “aumenta” em x a cada frame). Por fim, crie uma variavel no escopo global que servirá
futuramente para armazenar uma instancia dessa classe, porém na função setup inicializa-a e chame
os métodos mover e desenhar no draw.

Recomendações
O p5.js tem uma documentação bem simples que permite entender um pouco mais de cada função que
temos a nossa disposição. É uma prática extremamente importante que vocês devem ter de ler essas doc-
umentações das tecnologias que irão utilizara, caso não leiam, pelo menos utilizem na hora de programar,
pois vai abrir sua cabeça para implementar diversas soluções
Referência P5.js
A 6 Questão pode ser resolvida utilizando coordenadas polares, é bem simples, ao invés de vc desenhar
utilizando x e y como os pontos vc vai desenhar uma figura geométrica utilizando um raio (de um círculo) e
o angulo entre o raio e o eixo X. Link para referência:
Coordenada polares
Equações de Curva - Coração
** Existem outras formas de resolver essa questão. Fique a vontade pra resolver o problema **

Você também pode gostar