Un ángulo expresa cuánto gira una dirección. Los grados facilitan la lectura humana; los radianes relacionan el giro con la longitud de arco y son la unidad natural de las funciones trigonométricas.
Rotar una figura, orientar un personaje, apuntar un cañón, dibujar un arco o distribuir objetos alrededor de un centro exige representar ángulos. El ángulo describe una orientación o el cambio entre una dirección inicial y otra final.
Grados y radianes miden el mismo fenómeno. Elegir la unidad correcta y convertirla cuando corresponde evita errores frecuentes en animaciones y funciones trigonométricas.
Geométricamente, dos semirrectas con un origen común forman un ángulo. El origen es el vértice; una semirrecta es el lado inicial y la otra, el lado final.
En el plano cartesiano se toma habitualmente el eje x positivo como dirección cero. Desde allí, el sentido antihorario es positivo y el horario es negativo.
Una vuelta completa se divide en 360 grados. Esta división permite reconocer fácilmente fracciones comunes de un giro.
| Giro | Grados | Dirección desde +x |
|---|---|---|
| Ninguno | 0° | Derecha |
| 1/4 de vuelta | 90° | Arriba |
| 1/2 vuelta | 180° | Izquierda |
| 3/4 de vuelta | 270° | Abajo |
| 1 vuelta | 360° | Derecha nuevamente |
Los ángulos no tienen que ser enteros: 22.5°, 0.1° o −47.8° son valores perfectamente válidos.
Un radián es el ángulo central que abarca un arco cuya longitud es igual al radio. Como una circunferencia mide 2πr, una vuelta contiene 2π radianes.
Los radianes simplifican las fórmulas de arcos, velocidad angular, derivadas y movimiento circular. Por eso JavaScript, Canvas y la mayoría de las bibliotecas matemáticas los utilizan.

| Grados | Radianes | Fracción de vuelta |
|---|---|---|
| 30° | π/6 | 1/12 |
| 45° | π/4 | 1/8 |
| 60° | π/3 | 1/6 |
| 90° | π/2 | 1/4 |
| 180° | π | 1/2 |
| 270° | 3π/2 | 3/4 |
| 360° | 2π | 1 |
Partiendo de 180°=π rad obtenemos dos factores de conversión:
Ejemplo 1: 135°·π/180=3π/4 rad. Ejemplo 2: 5π/6·180/π=150°.
La unidad π se cancela algebraicamente en la segunda operación. Para cálculos numéricos usamos Math.PI.
El signo representa el sentido del giro. Un valor positivo avanza antihorariamente y uno negativo lo hace en sentido horario, según la convención matemática.
Un ángulo negativo no es una longitud negativa: simplemente indica el sentido desde el cual se alcanza la orientación final.
Los ángulos que difieren en vueltas completas terminan en la misma dirección. Por ejemplo, 45°, 405° y −315° son coterminales.
Normalizar ayuda a mostrar valores comprensibles y comparar orientaciones, aunque en una animación también puede interesar conservar el número total de vueltas.
En el círculo de radio uno, la orientación θ llega al punto (cos θ, sen θ). Este punto funciona también como vector unitario:
Multiplicándolo por una longitud L obtenemos un desplazamiento con ese tamaño: (L cos θ, L sen θ). Así conectamos ángulos y movimiento.
El plano matemático hace crecer y hacia arriba, mientras que Canvas suele hacerlo hacia abajo. Para conservar una orientación matemática al dibujar usamos:
Si se utiliza la suma en y, los ángulos positivos se verán girar en sentido horario. Ambas convenciones son utilizables si todo el proyecto mantiene la misma regla.
Modifica el ángulo o selecciona una referencia. El laboratorio muestra su valor normalizado, equivalencia en radianes, vector unitario y cuadrante. El modo pantalla permite observar la inversión vertical.
const aRadianes = grados => grados * Math.PI / 180;
const aGrados = radianes => radianes * 180 / Math.PI;
function normalizarGrados(angulo) {
return ((angulo % 360) + 360) % 360;
}
function direccion(grados) {
const rad = aRadianes(grados);
return { x: Math.cos(rad), y: Math.sin(rad) };
}
console.log(aRadianes(180)); // 3.141592653589793
console.log(aGrados(Math.PI / 2)); // 90
console.log(normalizarGrados(-45)); // 315
const vector = direccion(45);
console.log(`(${vector.x.toFixed(3)}, ${vector.y.toFixed(3)})`);
// (0.707, 0.707)Para recuperar el ángulo de un vector se utiliza Math.atan2(y,x). Esta función determina correctamente el cuadrante y acepta una componente x igual a cero.
const origen = { x: 2, y: 1 };
const objetivo = { x: 7, y: 5 };
const dx = objetivo.x - origen.x;
const dy = objetivo.y - origen.y;
const anguloRad = Math.atan2(dy, dx);
const anguloGrados = anguloRad * 180 / Math.PI;
console.log(anguloRad.toFixed(3) + " rad"); // 0.675 rad
console.log(anguloGrados.toFixed(2) + "°"); // 38.66°En este ejemplo, el vector desde el origen hasta el objetivo es (5, 4) y su orientación es aproximadamente 38.66°.
Los ángulos controlan orientación de sprites, disparos, arcos, medidores, órbitas, radares, cámaras y velocidad angular.
La nave calcula el ángulo hacia el objetivo con Math.atan2(dy, dx). Luego usa cos(θ) y sen(θ) para orientar el sprite y definir la velocidad del disparo.
Math.sin o Math.cos.Math.atan(y/x) y perder información del cuadrante.Math.atan2 obtiene la orientación de un vector.Comprender las dos unidades permite comunicar ángulos de forma intuitiva y utilizarlos correctamente en cálculos. Esta base será esencial para aplicar seno, coseno y tangente al movimiento y al dibujo 2D.
En el próximo tema estudiaremos trigonometría aplicada a gráficos 2D.