Fiz utilizando line(). Usando a função dividePizza(), posso conseguir um pedaço de circulo dividido por um numero, um angulo. Utilizando funções trigonométricas, consegui algo próximo de coordenadas polares, mas diferente. O meu raciocínio básico é desenhar uma linha que parte do ponto atual e vai até a próxima posição, calculada acrecentando dividePizza() ao angulo.
Código:
Código:
void setup() { size(800, 600); } float angulo = PI; void draw() { background(255); desenhaPoligono(width/2, height/2, 100, 3); angulo -=0.01; } void desenhaPoligono(int x, int y, int w, int lados) { for (int i = 0; i<lados; i++) { angulo += dividePizza(lados); line(x+w*sin(angulo), y+w*cos(angulo), x+w*sin(angulo+dividePizza(lados)), y+w*cos(angulo+dividePizza(lados))); } } float dividePizza(int n) { return TAU/n; }
Comentários
Postar um comentário