Languages
[Edit]
DE

JavaScript - Math.atan2() Methode - Beispiel

3 points
Created by:
Nikki
1635

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)

Hey ūüĎč
Would you like to know what we do?
  • Dirask is a friendly IT community for learners, professionals and hobbyists to share their knowledge and help each other in extraordinary easy way.
  • We welcome everyone,
    no matter what the experience,
    no matter how basic the question is,
    this community will help you.