【发布时间】:2014-12-30 20:38:24
【问题描述】:
我需要找到一个平面上只有三个坐标点的三角形的角度。在等式末尾的常规三角函数中,我会使用:
cos = (a ** 2) - (b ** 2) - (c ** 2) / -2 * b * c
我使用了** 运算符,而sideA、sideB 和sideC 是三角形边的长度。
我目前正在使用math.acos() 来查找角度,但我遇到了数学域错误。 math.acos() 是用于我所理解的反余弦的正确函数吗?
这是我的程序的代码摘录:
x = 100
y = 100
centerX = x + 50
centerY = y + 50
if event.type == MOUSEMOTION:
mousex, mousey = event.pos
sideA = math.sqrt((x - mousex)**2)+((y - mousey)**2)
sideB = math.sqrt((centerX - mousex)**2)+((centerY - mousey)**2)
sideC = math.sqrt((centerX - x)**2)+((centerY - y)**2)
cos = float(sideA**2)-(sideB**2)-(sideC**2)/(-2*(sideB*sideC))
angle = math.acos(cos)
print angle
我做错了什么?当我将程序中的数字输入计算器时,我得到了正确的角度。
【问题讨论】:
标签: python math trigonometry