В Python, есть 2 арктангенс функции: atan
просто инверсией tan
; но atan2
принимает 2 аргумента. В вашем случае, так как вы знаете, как катетами, вы можете также использовать функцию 2-аргумент atan2
:
ang = atan2(y, x)
В качестве альтернативы, вы можете написать
ang = atan(y/x)
Обоснованием atan2
является то, что ему работает правильно, даже если x
равно 0; в то время как с atan(y/x)
a ZeroDivisionError: float division by zero
будет поднят.
Кроме того, atan
может дать только угол между -π/2 ... + π/2, в то время как atan2
знает признаки обоих y
и x
, и, таким образом, может знать, какой из 4 квадрантов значение падает; его значение варьируется от -π до + π. Хотя, конечно, у вас не было бы треугольника с отрицательной шириной или высотой ...
При вызове 'atan2' вам нужно передать 2 аргумента,' y/x' - 1 номер, например. аргумент –
Также проверьте закрывающую скобку на 'atan2 ('. – lit