Languages
[Edit]
DE

JavaScript - Math.atan() Methode - Beispiel

3 points
Created by:
Nikki
10520

Die Math.atan Funktion gibt die Zahl im Bogenmaß im Bereich -Math.PI/2 bis +Math.PI/2zurück. Die Funktion berechnet den Wert der invertierten Tangentenfunktion.

// ONLINE-RUNNER:browser;

function calculateAngle(a, b) {
	return Math.atan(a / b);
}

/*
  |\
  | \ h - Für diese Funktion sind diese Informationen nicht erforderlich
a |  \
  |__*\ <- Winkel
    b
*/

var a, b;

// a und b bilden gleichschenkliges rechtwinkliges Dreieck
a = 3; 
b = a;
console.log( calculateAngle(a, b) ); // 0.7853981633974483 <- ~45 Grade

// a und b bilden die Hälfte des gleichseitigen Dreiecks
a = 3; 
b = a * Math.sqrt(3); 
console.log( calculateAngle(a, b) ); // 0.5235987755982988 <- ~30 Grade

// a und b bilden ein sehr hohes (+Inf) und schlankes (~0) Dreieck
a = +Infinity; 
b = 0; 
console.log( calculateAngle(a, b) ); // 1.5707963267948966 <- ~90 Grade

1. Dokumentation

SyntaxMath.atan(number)
Parameter

number - Ganzzahl oder Gleitkommazahl, der das Ergebnis einer Operation opposite / adjacent im rechtwinkligen Dreieck darstellt. (primitiver Wert).

Ergebnis

Wert von number im Bogenmaß im Bereich von -Math.PI/2 bis +Math.PI/2 (primitiver Wert).

Wenn der Wert nicht berechnet werden kann, wird NaN zurückgegeben.

Beschreibung

atan ist eine statische Methode, die nur einen Parameter verwendet und eine Approximation an das Ergebnis der mathematischen Funktion arctangent(x) zurückgibt.


2. Arbeit mit Graden

// ONLINE-RUNNER:browser;

function calculateAngle(a, b) {
	var angle = Math.atan(a / b);

    return (180 / Math.PI) * angle; // Radiant zu Graden Umwandlung
}

/*
  |\
  | \ h - Für diese Funktion sind diese Informationen nicht erforderlich
a |  \
  |__*\ <- Winkel
    b
*/

var a, b;

// a und b bilden gleichschenklige rechtwinklige Dreiecke
a = 3; 
b = a;
console.log( calculateAngle(a, b) ); // ~45 Grade

// a und b bilden die Hälfte des gleichseitigen Dreiecks
a = 3; 
b = a * Math.sqrt(3); 
console.log( calculateAngle(a, b) ); // ~30 Grade

// a und b bilden ein sehr hohes (+Inf) und schlankes (~0) Dreieck
a = +Infinity; 
b = 0; 
console.log( calculateAngle(a, b) ); // ~90 Grade

3. Canvas-Diagramm - Beispiel

// ONLINE-RUNNER:browser;

<!doctype html>
<html>
<head>
  <style> #canvas { border: 1px solid black; } </style>
</head>
<body>
  <canvas id="canvas" width="400" height="150"></canvas>
  <script>
    
    var canvas = document.querySelector('#canvas');
    var context = canvas.getContext('2d');

    // arctangent Chartbereich
    var x1 = -10.0;
    var x2 = +10.0;
    var y1 = -Math.PI / 2;
    var y2 = +Math.PI / 2;

    var dx = 0.1;

    var xRange = x2 - x1;
    var yRange = y2 - y1;

    function calculatePoint(x) {
      var y = Math.atan(x);

      // Chart wird aufgrund von umgekehrten Canvas-Pixeln horizontal umgekehrt

      var nx = (x - x1) / xRange;       // normalized x
      var ny = 1.0 - (y - y1) / yRange; // normalized y
      
      var point = {
        x: nx * canvas.width,
        y: ny * canvas.height
      };

      return point;
    }

    console.log('x range: <' + x1 + '; ' + x2 + '>');
    console.log('y range: <' + y1 + '; ' + y2 + '> // angles in radians');

    var point = calculatePoint(x1);
    
    context.beginPath();
    context.moveTo(point.x, point.y);

    for (var x = x1 + dx; x < x2; x += dx) {
      point = calculatePoint(x);
      context.lineTo(point.x, point.y);
    }

    point = calculatePoint(x2);
    context.lineTo(point.x, point.y);
    context.stroke();

  </script>
</body>
</html>

Literaturverzeichnis

  1. Arkusfunktion - Wikipedia

Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.

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