Olá. Estou desenvolvendo uma espécie de paint em Java e preciso desenhar um polígono regular que tenha um numero “n” de lados que o usuário escolhe.
Peço para o usuário clicar no local que ele quer que seja o centro do polígono e onde ele quer que termine o polígono, formando assim um raio, que vai do centro até um vértice do polígono. Esse seria o primeiro vértice do polígono (centro+raio), gostaria de saber como faço para calcular os outros vértices desse polígono.
Calcule o angulo do primeiro vertice em relação ao eixo x, para isso determine o seno, o cosseno ou a tangente do angulo formado, e depois use o Math.acos, Math.asin ou Math.atan dependendo de qual vc escolheu para calcular.
Divida o “circulo” em partes 2PI / n, se estiver em graus 360 / n
Somando uma parte com o angulo do primeiro vertice vc terá o angulo do segundo vertice V2 em relação ao eixo x
O calculo para o x de V2 é (centro.x + raio * Math.cos(anguloV2)) para o y é semelhante
Deve ser repetido n-1 vezes
B
blue_velvet
Muito obrigado! Apenas mais uma pergunta, quando diz “o ângulo onde termina”, seria , por exemplo, este indicado em vermelho ou o em verde(central)?
D
diego12
Me refiro ao angulo do primeiro vertice (aquele clicado pelo usuario) em relaçao ao eixo x, portanto o q está em laranja, o verde seria a “parte” (2PI/n) q deve ser adicionado ao primeiro (que está em laranja) para encontrar o vertice seguinte V2, se adicionado novamente encontrará o V3.