这是我的代码:
# point of intersection between opposite and hypotenuse
x,y = pygame.mouse.get_pos()
# using formula for length of line
lenline1 = (x-x)**2 + (300-y)**2
lenline2 = (x-700)**2 + (y-300)**2
opposite = math.sqrt(lenline1)
adjacent = math.sqrt(lenline2)
# Converting length of lines to angle
PQ = opposite/adjacent
k = math.sin(PQ)
j = math.asin(k)
print(j)
我没有得到我所期望的结果,虽然在搞乱它之后,我得到了接近,但它不是很正确。有人能告诉我我做错了什么吗。我有两行: 相对和相邻 我想用罪的反义词得到这个角度。我做错什么了。我只是个初学者,所以不要提供太详细的信息。我无法想象这很难做到。
谢谢。
不用费心计算,它毫无意义。
但是,这只适用于直角三角形,您必须在正确的位置适当的边长。一般来说,这不起作用,您需要使用dot product method。
要查找两条直线之间的角度,请使用以下关系:
也就是说
其中l1 x,l1 y是直线l1的x,y分量。
看起来你在寻找三角形(700300),(x,300),(x,y)的角度。你让事情变得比需要的复杂多了。斜边的长度是
math.hypot((700-x),(300-y))
,角度是math.atan2((700-x), (300-y))
。相关问题 更多 >
编程相关推荐