//estes valores estão inseridos como um ArrayList para permitir
// maior flexibilidade na escolha de formas a serem desenhadas
// (por exemplo: trocar o “rect” por “bezier” para gerar um desenho irregular,
// permitindo formas exatas de trechos do território representado
int[] CT1 = {380, 280};
int[] AreaCT1 = {40, 40};
// desafios futuros:
// desenhar a forma exata do canteiro
// construir a forma a partir do centro geolocalizado (= COORDS LAT & LONG)

// boolean overBox = false;
// boolean locked = false;

void setup() {
size (800, 600);
}

void draw() {
fill(0);
background(200);
noStroke();
// o desenho do retângulo a partir de variáveis é o outro elemento de flexibilidade
// desta forma, é possível ajustar para formas irregulares com maior facilidade
rect(CT1[0], CT1[1], AreaCT1[0], AreaCT1[1]);
// desafio futuro: gerar uma fórmula que calcule a área a partir do centro
// e que encontre o centro aproximado de um área irregular

// monitoramento de valores: as próximas duas linhas são desnecessárias:
// servem apenas para monitorar o valor do mouse em relação à posição do quadrado
// o uso de monitoramento de valores pode facilitar algumas etapas
// de desenvolvimento de código
println(mouseX, mouseY);
println(CT1[0], CT1[1], AreaCT1[0], AreaCT1[1]);

if (mouseX > CT1[0] && mouseX < CT1[0]+AreaCT1[0] &&
mouseY > CT1[1] && mouseY < CT1[1]+AreaCT1[1] ) {
// overBox = true;
//   if(!locked) {
PFont font;
font = loadFont(“HNL14.vlw”);
textFont(font, 14);
text(“teste”, 10, 50);
// }
} else {
background(200);
rect(CT1[0], CT1[1], AreaCT1[0], AreaCT1[1]);
// overBox = false;
}
}

Anúncios