0

我有四个点可以形成凹四边形:

一(3, 11)

b(11, 9)

c(18 , 10)

d(8 , 1)

在此处输入图像描述

现在我想以度为单位获得(b)角的内角。注意:内角大于180度。

4

2 回答 2

2

最安全的方法是使用内积和叉积,可以使用两个向量(a->b,b->c)的4个点并使用内积公式计算内积

<ab,bc> = |ab|*|bc|* cos (abc)
cos(abc) =  |ab|*|bc| / <ab,bc> 

这不足以唯一地分配天使,因为一个角度和它的补具有相同的cos但有不同的sin,这就是叉积解决问题的地方。

ab * bc = |ab|*|bc| * sin(abc)

左边部分可以使用终点坐标计算,因此您可以计算 sin,计算 sin 和 cos 后,您可以适当地指定天使。

于 2013-02-22T19:01:34.240 回答
0

d 点在这里只是分散注意力。考虑 (abc) 三角形:

  • 从坐标中很容易确定ab、bc和ca的长度。
  • 然后,您可以用 sin、cos 或 tan 确定 (ab, bc) 内角
  • 您寻找的角度是 360 减去 (ab, bc) 内角。
于 2013-02-22T18:41:20.517 回答