Cálculo del Ángulo de un Vector en JavaScript

JavaScriptJavaScriptBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, exploraremos el concepto de ángulo de vector y aprenderemos a calcular el ángulo entre dos vectores utilizando JavaScript. Utilizaremos varias funciones matemáticas como Math.pow(), Math.sqrt() y Math.acos() para realizar los cálculos necesarios y obtener el resultado deseado. A través de este laboratorio, obtendremos una mejor comprensión de las operaciones de vector y sus aplicaciones prácticas.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") javascript/AdvancedConceptsGroup -.-> javascript/higher_funcs("Higher-Order Functions") subgraph Lab Skills javascript/variables -.-> lab-28691{{"Cálculo del Ángulo de un Vector en JavaScript"}} javascript/data_types -.-> lab-28691{{"Cálculo del Ángulo de un Vector en JavaScript"}} javascript/arith_ops -.-> lab-28691{{"Cálculo del Ángulo de un Vector en JavaScript"}} javascript/comp_ops -.-> lab-28691{{"Cálculo del Ángulo de un Vector en JavaScript"}} javascript/array_methods -.-> lab-28691{{"Cálculo del Ángulo de un Vector en JavaScript"}} javascript/higher_funcs -.-> lab-28691{{"Cálculo del Ángulo de un Vector en JavaScript"}} end

Cálculo del Ángulo de un Vector

Para calcular el ángulo (theta) entre dos vectores, siga estos pasos:

  1. Abra la Terminal/SSH y escriba node para comenzar a practicar la codificación.
  2. Utilice Array.prototype.reduce(), Math.pow() y Math.sqrt() para calcular la magnitud de cada vector y el producto escalar de los dos vectores.
  3. Utilice Math.acos() para calcular el arcocoseno y obtener el valor de theta.

A continuación, se muestra un fragmento de código de ejemplo:

const vectorAngle = (x, y) => {
  let mX = Math.sqrt(x.reduce((acc, n) => acc + Math.pow(n, 2), 0));
  let mY = Math.sqrt(y.reduce((acc, n) => acc + Math.pow(n, 2), 0));
  return Math.acos(x.reduce((acc, n, i) => acc + n * y[i], 0) / (mX * mY));
};

vectorAngle([3, 4], [4, 3]); // 0.283794109208328

Esta función toma dos arrays (x e y) como argumentos y devuelve el ángulo (en radianes) entre ellos.

Resumen

¡Felicidades! Has completado el laboratorio de Ángulo de Vector. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.