我注意到Python中有sin
,cos
和tan
函数。
所以,我想我会用这些来制作一种瞄准我的游戏的方式,不幸的是,sin
,cos
,tan
,asin
这个词的描述,acos
和atan
非常令人困惑。
我知道如何从学校开始执行所有sin
,cos
和tan
规则,我只需要将它们应用到代码中。所以,这就是我需要做的,我只需要知道我必须使用哪一个:
我有
从这个角度来看,我想要解决相反和相邻的问题
斜边将是sin/asin
和cos/acos
。哪一个?我不知道。
如何输入我的号码?我只是做aim = cos(angle,hyp)
还是我必须应用其他一些计算?
答案 0 :(得分:4)
公式为:
adjacent = hypothenuse * math.cos(angle)
opposite = hypothenuse * math.sin(angle)
其中angle
以弧度为单位。
答案 1 :(得分:2)
你的措辞有点令人困惑......但我的理解是你在2D空间中有一个点,你想要将它推进到特定距离(斜边),瞄准地平线上方的指定角度。如果是这样的话:
newX = oldX + dist * cos(angle)
newY = oldY + dist * sin(angle)
假设angle
为弧度,Y轴为正向,角度为0,瞄准右侧,PI / 2为顶部。如果不是这种情况,您可能需要稍微摆弄一下这些标志。