Objective-C 三角学

Objective-C Trigonometry

我现在三角肌痛。

double angle = tan(opposite/adjacent);
angle = (angle) * (180.0 / M_PI);

这就是为他们的细节找到角度,我们会说在这种情况下它从弧度转换后等于15.18º。

然后,以相同的角度找到新斜边的邻边和对边..

double oppAngle = sin(angle);
double adjAngle = cos(angle);

double secondOpposite = newDistance * oppAngle;
double secondAdjacent = newDistance * adjAngle;

NSLog(@"opposite = %.2f * %.2f = %.2f", oppAngle, newDistance, secondOpposite);
NSLog(@"Adjacent = %.2f * %.2f = %.2f", adjAngle, newDistance, secondAdjacent);

记录,

2015-06-27 17:36:14.565对面=-0.51 * 183.27 = -92.94

2015-06-27 17:36:14.565 相邻 = -0.86 * 183.27 = -157.95

这显然是错误的,因为它们角度的正弦和余弦不正确。角度记录 15.18º 所以我不太确定我哪里出错了,除非..它们再次转换为弧度?我不太确定我哪里出错了,但是..这是错误的。

三角函数为

tan(angle) = opposite / adjacent

所以要从边长得到角度,你需要使用反正切,也就是atan2

double angle = atan2(opposite, adjacent);

只要您知道 atan2 returns 以弧度为单位的角度(因此您的第二行是不必要的),您的其余代码就可以工作。