从具有切线斜率的外部点到椭圆的切线之间的角度
Angle between tangents to ellipse from external points with slopes of tangents
让你在二维问题中得到两条直线的斜率,比如 (m1 & m2)。
现在,我怎么知道两条线之间的角度是多少?
我这样试过:
from math import atan
from math import degrees
from operator import abs
if 1+m1*m2:
alpha = degrees(atan(abs((m1-m2)/(1+m1*m2)))
print(alpha)
else:
print(90)
现在,问题是如何知道代码要打印哪个角度
是alpha还是beta
它还打印 -ve angle also?
虽然我只想要 alpha,但我会在 +ve 象限中保持变化点 D。
坡度不包含有关线方向的完整信息(可能有两个方向),因此很难确定您的情况需要什么角度(alpha 或 180-alpha)。此外,坡度的使用是有限的,因为垂直线没有合法的坡度值。
也许对线使用方向向量是明智的,在这种情况下
atan2(d1 x d2, d1.dot.d2)
给出将 d1 旋转到 d2 所需的有符号角度。
但是你打算如何使用这个角度呢?
让你在二维问题中得到两条直线的斜率,比如 (m1 & m2)。
现在,我怎么知道两条线之间的角度是多少?
我这样试过:
from math import atan
from math import degrees
from operator import abs
if 1+m1*m2:
alpha = degrees(atan(abs((m1-m2)/(1+m1*m2)))
print(alpha)
else:
print(90)
现在,问题是如何知道代码要打印哪个角度
是alpha还是beta 它还打印 -ve angle also?
虽然我只想要 alpha,但我会在 +ve 象限中保持变化点 D。
坡度不包含有关线方向的完整信息(可能有两个方向),因此很难确定您的情况需要什么角度(alpha 或 180-alpha)。此外,坡度的使用是有限的,因为垂直线没有合法的坡度值。
也许对线使用方向向量是明智的,在这种情况下
atan2(d1 x d2, d1.dot.d2)
给出将 d1 旋转到 d2 所需的有符号角度。
但是你打算如何使用这个角度呢?