Zunächst beachten Sie, dass die Syntax atan(y/x)
, aber atan2(y, x)
, nicht atan2(y/x)
ist. Dies ist wichtig, denn wenn Sie die Division nicht ausführen, geben Sie zusätzliche Informationen an, vor allem die einzelnen Zeichen x
und y
. Wenn Sie die Koordinaten x
und y
separat kennen, kennen Sie den Winkel, einschließlich des Quadranten.
Wenn Sie tan(θ) = y/x
-sin(θ) = y/sqrt(x²+y²)
gehen, dann die inverse Operation asin
nimmt y
und sqrt(x²+y²)
und kombiniert, dass einige Informationen über den Winkel zu erhalten. Hier spielt es keine Rolle, ob wir die Division selbst ausführen oder eine hypothetische asin2
Funktion ausführen lassen. Der Nenner ist immer positiv, daher enthält das geteilte Argument genau so viele Informationen, wie Zähler und Nenner enthalten. (Zumindest in einer IEEE-Umgebung, in der Division durch Null führt zu einer korrekt signierten Unendlichkeit.)
Wenn Sie wissen, die y
koordinieren und die Hypotenuse sqrt(x²+y²)
dann kennen Sie den Sinus des Winkels, aber Sie können den Winkel nicht wissen selbst , da Sie nicht zwischen negativen und positiven x
Werten unterscheiden können. Ebenso, wenn Sie die x
Koordinate und die Hypothenuse kennen, kennen Sie den Kosinus des Winkels, aber Sie können das Vorzeichen des y
Wertes nicht kennen.
So asin2
und acos2
sind nicht mathematisch machbar, zumindest nicht in naheliegender Weise. Wenn Sie ein Zeichen in der Hypothenuse haben, könnten die Dinge anders sein, aber ich kann mir keine Situation vorstellen, in der ein solches Zeichen auf natürliche Weise entstehen würde.
Zustimmen. Die Domäne von "sin (x)" ist "x = -π/2 ... π/2" und von "cos (x)" ist "x = 0, π". Es gibt _no_ way 'acos()' würde eine negative Zahl zurückgeben, weil 'cos (x) = cos (-x)'. – ja72
Der erste Satz, wenn sehr verwirrend. – Dan