Como calcular os vértices de um triângulo na prática
Todo mundo já viu um triângulo no papel, mas quando a coisa vai para coordenadas, programação ou construção civil, as coisas complicam rápido. Vou explicar da forma que eu uso todo dia, sem enrolação.
Achar os vertices de um triangulo quando você só tem dois pontos
Suponha que você tenha o ponto A(2, 3) e o ponto B(5, 7), e quer o terceiro vértice C para formar um triângulo equilátero. A distância entre A e B é raiz de 25, que dá 5.83 unidades. Para achar C, você usa uma rotação de 60 graus em torno de A, ou de B, dependendo do sentido que quer. O cálculo envolve seno e cosseno de 60°, que são 0.866 e 0.5 respectivamente. A fórmula fica: Cx = Ax + (Bx - Ax)*cos(60) ± (By - Ay)*sin(60), e Cy de forma parecida. O sinal do seno define se o triângulo aponta pra cima ou pra baixo. Na prática, eu já errei esse sinal três vezes num projeto de usinagem porque o desenho técnico não especificava a orientação. Perdi duas horas refazendo o programa da CNC até entender que o sistema de coordenadas da máquina era canhoto, não destro como eu assumia. Esse erro é mais comum do que parece. Quando você trabalha com vértices de um triangulo em softwares CAD, o sentido horário ou anti-horário determina se a normal da face aponta pra dentro ou pra fora do modelo. Em renderização 3D, isso causa backface culling errado, e você vê buracos no objeto que não deveria ter.
Vértices, lados e a relaçao que todo mundo esquece
Um triângulo tem exatamente três vértices, três lados e três ângulos internos que somam 180°. Parece óbvio, mas a parte que as pessoas geralmente perdem é a relação entre o menor lado e o menor ângulo. O ângulo oposto ao lado mais curto é sempre o menor ângulo. Se você inverter essa lógica na hora de montar uma estrutura, pode colocar um apoio num ponto que não aguenta a carga real. Já vi engenheiros cometerem esse erro em lajes de concreto, achando que a distribuição de forças era simétrica quando na verdade o triângulo formado pelos pilares era escaleno. Para triângulos retângulos, o cálculo dos vértices é mais simples porque um dos ângulos é fixo em 90°. Se você posiciona o vértice do ângulo reto na origem e alinha os catetos com os eixos X e Y, o terceiro vértice fica em (a, b), onde a e b são os comprimentos dos catetos. O teorema de Pitágoras valida a hipotenusa, mas na prática o mais útil é verificar se o produto escalar dos dois vetores que partem do vértice reto dá zero. Se der zero, o ângulo está mesmo em 90°.
Método direto: construir vértices a partir de centro e raio
Às vezes você precisa que os três vértices fiquem sobre uma circunferência. Aí o processo é usar ângulos separados por 120°. O vértice i é dado por (cx + r*cos(theta + i*120°), cy + r*sin(theta + i*120°)), onde cx e cy são o centro do círculo, r é o raio, e theta é um ângulo inicial que você escolhe para rotacionar o triângulo inteiro. Esse método é rápido e funciona perfeitamente para gerar malhas triangulares regulares em simulações numéricas. O problema é que essa abordagem gera triângulos equiláteros, e nem toda simulação precisa disso. Em elementos finitos, triângulos muito regulares podem causar erros numéricos porque a matriz de rigidez fica mal condicionada. O ideal é perturbar levemente os vértices, talvez deslocando cada um em até 5% do comprimento do lado em direção aleatória. Isso mantém a qualidade do triângulo sem introduzir degenerescências que travariam o solver.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Se o seu objetivo é só visualizar ou fazer desenho técnico, existem calculadoras online gratuitas que aceitam três coordenadas e retornam ângulos, áreas e tipos de triângulo. Eu uso principalmente para checar resultados rápidos antes de passar para o código principal. O tempo de verificação costuma ficar em torno de dois minutos, comparado a meia hora escrevendo e depurando a função do zero.
Quando os vertices de um triangulo simplesmente não funcionam
Não adianta forçar uma solução triangular quando o domínio geométrico não se adapta. Malhas triangulares em regiões com curvatura acentuada, como bordas de asas de avião ou cascos de navio, geram erro numérico alto porque o triângulo é uma aproximação de primeira ordem. Nesses casos, eu prefiro usar elementos quadriláteros ou até superfícies NURBS, que descrevem a curvatura exata sem depender de muitos vértices. Outro cenário problemático é quando três pontos quase colineares aparecem como entrada. O triângulo fica tão achatado que a área computada volta zero por limitação de precisão de ponto flutuante. O solver de elementos finitos então divide por essa área e estoura com divisão por zero. A solução prática é detectar colinearidade antes de montar a malha: calcule o produto vetorial dos dois lados e verifique se a magnitude é menor que uma tolerância relacionada ao tamanho esperado dos elementos. Se for, rejeite o triângulo ou refaça os pontos.
Essa tolerância geralmente fica em torno de 1e-6 vezes o quadrado do maior lado. Valores maiores passam triângulos ruins e causam instabilidade numérica; valores menores deixam passar triângulos que parecem bons visualmente mas ainda assim quebram o solver. Ajustei esse parâmetro empiricamente em vários projetos e descobri que 1e-7 funcionava melhor para modelos com coordenadas na ordem de metros, enquanto para microestruturas em micrômetros o ideal era 1e-9.
Verificando se tres pontos formam um triangulo valido
Antes de qualquer cálculo, confirme se os três pontos não estão alinhados. O teste mais direto é calcular a área pelo determinante: area = 0.5 * |x1(y2 - y3) + x2(y3 - y1) + x3(y1 - y2)|. Se a área for diferente de zero, você tem um triângulo válido. Esse teste leva menos de um milissegundo em qualquer linguagem e evita horas de depuração depois. Eu recomendo incluir essa verificação em toda função que recebe coordenadas de vértices como entrada, porque dados vindos de sensores, digitalizações ou entrada do usuário quase sempre trazem pontos colineares ou duplicados. Depois de validar os vértices, o próximo passo natural é calcular os comprimentos dos lados com a distância euclidiana, determinar os ângulos pela lei dos cossenos, e verificar a desigualdade triangular: a soma de quaisquer dois lados deve ser estritamente maior que o terceiro. Se essa condição falhar, os pontos nem formam um triângulo fechado, mesmo que a área não seja exatamente zero.