角度高于360的三角比率

时间:2009-05-20 13:26:53

标签: trigonometry

是否使用Sin(720)或Cos(1440)(以度为单位的角度)? 无论是在计算机编程还是在任何其他情况下? 一般来说,是否使用任何角度的Sin / Cosine / Tan 大于360?

在物理学中,我们使用点积和交叉积 很多,但即使他们需要小于180度的角度 总是

大家好, 我知道如何计算它们.... 我想知道,如果他们有用吗???? 我何时会遇到一种情况,何时 我需要计算Sin(440)例如???

15 个答案:

答案 0 :(得分:10)

数学和编程都是:

Sin(x) = Sin(x % 360)

如另一个答案所指出的,大于360的角度表示圆上的一个或多个完整旋转加上模数部分。在某些情况下,这可能具有物理意义。

此外,在进行三角计算时,您应该考虑这个事实。例如:

sin(a)*cos(a) = (1/2)*sin(2a)

对于> 180,您将获得角度大于360的罪。

顺便说一句,看看here

答案 1 :(得分:4)

我在做角度算术时已经看到了这样的事情:

float angleOne = 150;
float angleTwo = 250;

//...

float result = Sin(angleOne + angleTwo); // Sin(400)
float result = Sin(angleOne - angleTwo); // Sin(-100)

在这个(人为的)示例中,它似乎很明显,但是当您根据几个对象的任意旋转计算角度时,您无法始终知道您将获得什么类型的数字。例如,想象一下,当他站在旋转平台上时,计算玩家在3D游戏中的位置。

答案 2 :(得分:3)

围绕圆圈旋转一次是360度或2pi弧度。

Trigonometric functions例如正弦和余弦将在它们达到360度时“环绕”并且以与0度相同的方式行动。基本上,会发生以下情况:

angle_in_unit_circle = angle mod 360

此外,某些三角函数(如切线)未在某些角度定义,例如90度和270度,其中角度的正切将返回正或负无穷大。

通过使用unit circle中刻有的直角三角形来表示正弦,余弦,正切函数以及此行为makes those functions periodic,可以看到这种“包裹”,因为它们会一遍又一遍地重复它们的模式试。

维基百科有关于Trigonometric functions的大量文章,因此值得一看。

<强>用法

在使用方面,我无法想到一个很好的例子,除了可能代表某个粒子在某个时间位于polar coordinate system的位置。角度θ取决于时间t

r(θ(t)) = t    where θ(t) = t

表示t的值从0到720,然后可以用Cartesian coordinate system表示为:

x(t) = r sin(θ(t)) == t sin(t)
y(t) = r cos(θ(t)) == t cos(t)

粒子将以螺旋型运动移动,具体取决于时间t。在这种情况下,将计算超过360的角度的正弦和余弦。

(我的数学生锈了,所以如果上面的等式中有任何错误,请告诉我!)

答案 3 :(得分:3)

每当你处理用户交互技术时,它们完全有可能将你推到0度或360度。想象一下,你正在制作一个带枪的游戏。它目前指向359度并且用户向右拉动操纵杆:现在它指向361度。如果你实现了错误的角度表示,突然之间,这把枪快速向左移动了近360度。

我预测用户将会因为该错误而感到失望。

在游戏,模拟和真实设备控制中,Euler angle表示参考框架的各种问题都很重要。 Gimbal lock是实际旋转设备控制中的一个严重问题(这是我生活中的摄像机摇摄/倾斜设备的问题)。在一个小船自动驾驶系统中,“快速旋转”错误是一个非常令人讨厌的问题 - 想象一下将钢丝绳紧紧包裹在轮罩周围(即,你不想站在那里)。

答案 4 :(得分:3)

有些时候,正常的数学意味着你最终“遍历圆圈”一次或多次,如果你保持数学简单,你的角度可能会大于360.我个人喜欢将角度标准化为0在这样的操作之后到360或-180到180,但这并不重要。

有时候,更大的数字可能真的代表某种东西。举一个简单的例子,想象一下打开经典拨号组合保险箱的说明。你需要旋转表盘几次,所以说明可能是:

   turn(800);  // Twice around plus another 20 degrees
   turn(-500); // Once around the other direction plus 140 degrees
   turn(40);   // Dial in the last digit

在这种情况下,接受罪恶或cos会告诉你一些关于表盘最终位置的信息,但你会丢失有关转弯数量的信息。

答案 5 :(得分:1)

在正弦曲线上,Sin(720)== Sin(0)(等),所以我希望这些函数的任何不错的实现都能处理“大于”360的度数。有很多理由可以达到大于360或小于0的角度。

答案 6 :(得分:1)

“主角”[-180,180]范围之外的角度基本上是彼此的别名(模数为360度)并且没有物理区别。

从数学/工程意义上讲,如果你有一个旋转次数很重要并且必须跟踪的过程(例如,来回旋转的电机),那么0度和720度就不一样了。正弦和余弦只是周期函数,因此它们每360度具有相同的值。如果粒子经历均匀的圆周运动,其中x(t)= A cos(ωt+φ),y(t)= A sin(ωt+φ),那么相位角θ=(ωt+φ)将进入不管它是什么,无论是0度还是720度或82144.33度等等。

因此无论θ的值是多少,函数cos(θ)和sin(θ)都可以用来计算x和y坐标。这不像你在这个问题上有选择,如果θ是82144.33度,那么你将要计算该角度的正弦和余弦。

答案 7 :(得分:1)

我玩一款名为Garry's Mod的PC游戏,在游戏中有一些时刻,在编程时,我想要一个简单的解决方案来保持一个物体不断在一个恒定的圆圈中移动。为此,我使用永久增加计时器的正弦和余弦,测量自游戏启动以来的时间量。

T(时间)的正弦等于轨道路径X值,而T的余弦等于轨道路径Y值(X和Y在3维坐标平面上,Z未在时刻。)

示例:

T = 1000蜱 X = SIN(T) Y = COS(T)

因此,在此期间X为0.8268795405320025,Y为0.15466840618074712。

现在让我们说时间量增加到1500. X将是-0.9939019569066535,Y = -0.11026740251372914。

简而言之,它会不断地从1波动到-1,让我有机会将该值乘以100,并使坐标平面位于我的角色位置,然后我可以告诉编程的表达式移动基于这些坐标的物体,它会在我周围的恒定圆形路径中移动。

多田。谁说你不能从电子游戏中学习?

答案 8 :(得分:0)

肯定有时你最终可能会采用角度测量&gt; 360度是因为某种计算...但它与无数个其他角度测量相同,其中一个将在0到360之间。但是,如果你正在编写一个函数,你应该能够自己处理这个计算...不依赖于用户为你做mod。

即虽然sin(370)== sin(10)是真的,并且用户可以自己进行这种翻译,但他们可能不会出于某种原因(参见评论中的“bolt”示例)最高评级的答案),因此该功能应该能够处理任何值。

答案 9 :(得分:0)

由于sin(x) = sin(x mod 360°)cos(x) = cos(x mod 360°)您可以在计算中使用每个值,但您也可以规范化范围[0°,360°)或任何其他360°范围。如果大角度具有明确的含义,则仅取决于使用情况。

处理器会将计算规范化为90°甚至更小的范围,并从这个小范围中推导出所有其他值。

什么时候会出现大于360°的参数?

它们在模拟周期性时间或空间相关函数时自然发生。

答案 10 :(得分:0)

你的问题没有多大意义,因为你似乎知道这里的区别:

不 - 你将永远不必“计算”Sin(720),因为你需要“计算”Sin(0)。你需要看看Sinus函数的定义,以充分理解幕后的内容 - 当理解这一点时,对于任何人来说,为什么Sin(0)= Sin(720)都没有任何神奇的意义。 ,(逻辑上)没有Angle = FullAngle%360正在进行,所有这些都在函数应该做的定义中。

See wikipedia

答案 11 :(得分:0)

@ dta,我觉得人们有点困惑。你问它是否“有用”。我会说“没关系,因为你只需在执行计算时将角度移动到适当的范围。”在某些情况下,您需要知道物体旋转0度的距离,从而导致多次旋转。但除了这些情况,解释正常0-360范围内的角度更方便。大多数人建立直观的感觉,哪个方向对应于正常范围内的角度。 170,234度指向什么方向?与314度相同。

答案 12 :(得分:0)

正如@Chris Arguin和其他人所说,角度大于360°(或小于-360°的角度)的罪对你有用取决于你是否需要关于旋转(或其分数)的信息由角度和角度%360°之间的差异表示。

此外,由于你得到相同的答案,如果你调用sin(角度)而不是sin(角度%360),你将节省一点处理时间,特别是如果你在一个循环中做了很多计算。

OTOH,@ Scottie T指出,如果某人知道你的角度指向一个圆圈的位置很重要,那么人们通常可以直接知道一个角度的位置,其绝对值为360或更小,比他们更容易更大的角度。

答案 13 :(得分:0)

在许多情况下,需要[0,360]以外的角度。我喜欢组合锁的想法。在这里,人们经常会在简单的[0,360]度范围之外看到正角度和负角度。

多角度公式在数学中通常很重要。 Trig函数用于除三角形之外的其他位置。它们出现在各种各样的地方,例如傅立叶级数,或图像压缩方案,或微分方程的解。在计算上,你总是可以使用mod将trig函数的范围缩小到默认值。但是,在这个标称范围内始终提供角度很少是真的。

答案 14 :(得分:0)

也使用高于360度的角度,例如描述滑雪板技巧:

http://en.wikipedia.org/wiki/List_of_snowboard_tricks#Spins

所以你看,有各种各样的现实世界的例子,你用更高的角度来描述一个物体的旋转。