Inicio · Parte 03 — Geometría, trigonometría y geometría analítica
sin θ = opuesto/hipotenusa, cos θ = adyacente/hipotenusa
tan θ = sin θ / cos θ
atan2(y, x) devuelve el ángulo en el cuadrante correcto
Las razones trigonométricas están bien definidas gracias a la semejanza (clase 063): todos los triángulos rectángulos con el mismo ángulo agudo son semejantes, así que la razón entre dos de sus lados no depende del tamaño del triángulo, solo del ángulo. Sin ese hecho, «el seno de 30°» no significaría nada.
La tangente es el cociente de las otras dos, y por eso no está definida donde el coseno se anula: en 90° y 270° la tangente diverge. Esa singularidad es real y hay que manejarla; en implementaciones se evita la tangente siempre que se pueda, usando directamente seno y coseno.
Para recuperar el ángulo a partir de las coordenadas, la función correcta es atan2, no atan. atan(y/x) pierde la información del cuadrante —el cociente es el mismo para (1,1) y (−1,−1)— y además falla si x es cero. atan2(y, x) recibe los dos argumentos por separado, devuelve el ángulo en el rango (−π, π] y maneja los cuatro cuadrantes. Usar atan donde correspondía atan2 es un error clásico en robótica y gráficos.
El programa usa estas razones en la clase 076 (coordenadas polares), en la 323 (positional encoding, construido con senos y cosenos de frecuencias distintas) y en cualquier cálculo de ángulo entre vectores.
Triángulo con catetos 3 y 4.
opuesto = 3, adyacente = 4
hipotenusa = √(9+16) = 5
θ = atan2(3, 4) = 0.6435 rad = 36.87°
sin θ = 3/5 = 0.6
cos θ = 4/5 = 0.8
tan θ = 3/4 = 0.75
Comprobación: tan θ = sin θ / cos θ = 0.6/0.8 = 0.75 ✓
Por qué atan2 y no atan:
atan(3/4) = 0.6435 (cuadrante I)
atan(-3/-4) = 0.6435 ← ¡mismo valor, cuadrante III!
atan2(-3,-4) = -2.498 ✓ correcto
Seno, coseno y tangente sobre un triángulo rectángulo concreto.
python classes/part-03-geometria-trigonometria-y-geometria-analitica/065-seno-coseno-y-tangente/lab.py
compmath run 065
opuestoadyacentehipotenusaangulo_radangulo_gradossincostantan_es_sin/cos{
"opuesto": 3.0,
"adyacente": 4.0,
"hipotenusa": 5.0,
"angulo_rad": 0.6435011087932844,
"angulo_grados": 36.86989764584402,
"sin": 0.6
}
Cálculo de ángulos en robótica y gráficos, conversión a coordenadas polares, positional encoding y análisis de fase en señales.
Las transformaciones geométricas son el caso visual de las transformaciones lineales que una red aplica a sus activaciones; la similitud coseno es trigonometría en alta dimensión.
math.atan2 — documentación de la herramienta que ejecuta el laboratorio · URL de la fuente primaria comprobada en Python Software Foundation (2026-08-19).