void Calculate(Vector2 p1, Vector2 p2, Vector2 p3)
{
float a = Vector2.Distance(p2, p3);
float b = Vector2.Distance(p1, p3);
float c = Vector2.Distance(p1, p2);
Debug.Log(a + " " + b + " " + c);
float angleA = Mathf.Acos((b * b + c * c - a * a) / (2 * b * c)) * Mathf.Rad2Deg;
float angleB = Mathf.Acos((a * a + c * c - b * b) / (2 * a * c)) * Mathf.Rad2Deg;
float angleC = Mathf.Acos((a * a + b * b - c * c) / (2 * a * b)) * Mathf.Rad2Deg;
Debug.Log(angleA + " " + angleB + " " + angleC);
}
推到过程
已知 : A(1,0),B(4,6),C(−3,5) 三点
根据距离公式:d=
先算数三条边长 a b c
a=√(4+3)2+(6−5)2=√50
b=√(1+3)2+(0−5)2=√41
c=√(1−4)2+(0−6)2=√45
根据cos公式得到