Languages
[Edit]
DE

JavaScript - Math.atan2() Methode - Beispiel

3 points
Created by:
Nikki
9650

Die Funktion┬áMath.atan2()┬ágibt den Winkel in┬áRadiant im Bereich┬á-Math.PI/2┬ábis┬á+Math.PI/2┬ázwischen der positiven x-Achse und dem Strahl zum Punkt┬á(x, y) Ôëá (0, 0)┬ázur├╝ck.

// ONLINE-RUNNER:browser;

//                       y   x         Winkel in Radiant
console.log( Math.atan2( 2,  4) ); //  0.4636476090008061 <-   ~26.6 Grade
console.log( Math.atan2( 4, -2) ); //  2.0344439357957027 <-  ~116.6 Grade
console.log( Math.atan2(-2, -4) ); // -2.6779450445889870 <- ~-153.4 Grade
console.log( Math.atan2(-4,  2) ); // -1.1071487177940904 <-  ~-63.4 Grade

Die atan2() Methode wurde im folgenden Bild dargestellt:

atan2(y, x) function visualization - JavaScript Math Object.
atan2(y, x) Funktionvisualizierung - JavaScript Math Objekt.

1. Dokumentation

SyntaxMath.atan2(y, x)
Parametery, x - Ganzzahl-oder Gleitkommazahlenwerte, die Punktkoordinaten sind (primitiver Wert).
Ergebnis

numberwert des Winkels zwischen zwei Linien OP und OX im Radiant im Bereich -Math.PI/2 bis +Math.PI/2 (primitiver Wert).

Wo:

  • O=(0, 0)┬á- Schnittpunkt der Koordinatensystemachsen,
  • P=(x, y)┬á- Ausgangspunkt,
  • OX - positiver Teil der┬áx-Achse.

Wenn der Punkt im 1. (I) oder 2. (II) Quadrantenwinkel gegen den Uhrzeigersinn gemessen wird.

Wenn der Punkt im 3. (III) oder 4. (IV) Quadrantenwinkel im Uhrzeigersinn gemessen wird.

Hinweis: Winkelpfeile zeigen gemessene Winkel f├╝r Punkte in verschiedenen Quadranten.

Beschreibung

atan2 ist eine statische Methode, die Parameter verwendet und die Approximation der arctangent(y/x) Funktion unter Berücksichtigung der Quadranten der Punktposition (P=(x, y)) zurückgibt. 


2. Arbeit mit Graden

// ONLINE-RUNNER:browser;

function calculateAngle(y, x) {
	var angle = Math.atan2(y, x);

    return (180 / Math.PI) * angle; // Radiant zum Grad-Konvertierung
}

// Anwendungsbeispiel:

console.log( calculateAngle( 2,  4) ); //   26.56505117707799 Grade
console.log( calculateAngle( 4, -2) ); //  116.56505117707799 Grade
console.log( calculateAngle(-2, -4) ); // -153.43494882292200 Grade
console.log( calculateAngle(-4,  2) ); //  -63.43494882292201 Grade

3.  Konvertierung im Uhrzeigersinn in Grad

Dieser Abschnitt zeigt, wie Winkel in Winkel im Uhrzeigersinn (von 0 bis 360 Grad) konvertiert werden.

// ONLINE-RUNNER:browser;

function calculateAngle(y, x) {
	var angle = Math.atan2(y, x);
  
  	if (angle < 0.0) {
    	angle += 2.0 * Math.PI;
    }

    return (180 / Math.PI) * angle; // Radiant zum Grad-Konvertierung
}

// Anwendungbeispiel:

console.log( calculateAngle( 2,  4) ); //  26.56505117707799 Grade
console.log( calculateAngle( 4, -2) ); // 116.56505117707799 Grade
console.log( calculateAngle(-2, -4) ); // 206.56505117707800 Grade
console.log( calculateAngle(-4,  2) ); // 296.56505117707800 Grade

4.  Konvertierung gegen den Uhrzeigersinn in Grad

Dieser Abschnitt zeigt, wie Winkel in Winkel gegen den Uhrzeigersinn (von 360 bis 0 Grad) konvertiert werden.

// ONLINE-RUNNER:browser;

function calculateAngle(y, x) {
	var angle = Math.atan2(y, x);
  
  	if (angle > 0.0) {
    	angle -= 2.0 * Math.PI;
    }

    return (180 / Math.PI) * angle; // Radiant zum Grad-Konvertierung
}

// Anwendungsbeispiel:

console.log( calculateAngle( 2,  4) ); // -333.434948822922 Grade
console.log( calculateAngle( 4, -2) ); // -243.434948822922 Grade
console.log( calculateAngle(-2, -4) ); // -153.434948822922 Grade
console.log( calculateAngle(-4,  2) ); // -63.4349488229220 Grade

Literaturverzeichnis

  1. Arctan2 - Wikipedia
  2. Arkusfunktion- Wikipedia

JavaScript - Objekt Math (DE)

Native Advertising
­čÜÇ
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

ÔŁĄ´ŞĆ­čĺ╗ ­čÖé

Join