static public class TriangleSolutions{...}
查看 :MyTool.Dynamic.CompleteTriangle全解三角形
目录
1.Get_A_Angle_AAA 提供 : 两个角,获得第三角 : 角A=180-(角B+角C) 同理
2.Getdiameter_Edge_Angle 提供 : 角和对边 , 获得外接圆直径
3.GetEdge_Angle_diameter 提供 : 角和外接圆直径 , 获得角的对边
4.GetAngle_Edge_diameter 提供 : 角的对边和外接圆直径 , 获得<=90的角
5.Get_A_Angle_EEE 提供 : 三个边 , 获得一个角
6.Get_A_Edge_EAE 提供 : 两个边和一个夹角 , 获得夹角的对边
///
/// 提供 : 两个角,获得第三角 : 角A=180-(角B+角C) 同理
///
/// 角B
/// 角C
/// return : 角A
static public float Get_A_Angle_AAA(float B_Angle,float C_Angle){//获取角
return 180-(B_Angle+C_Angle);
}
///
/// 提供 : 角和对边 , 获得外接圆直径
///
/// 角
/// 角的对边
/// return : 外接圆直径
static public float Getdiameter_Edge_Angle(float Angle,float Edge){//获取外接圆直径
return Edge/Mathf.Sin(Angle*Mathf.Deg2Rad);//获取外接直径
}
///
/// 提供 : 角和外接圆直径 , 获得角的对边
///
/// 角
/// 外接圆直径
/// return : 角的对边
static public float GetEdge_Angle_diameter(float Angle , float diameter){//通过外接圆直径获得边
return Mathf.Sin(Angle*Mathf.Deg2Rad)*diameter;//通过直径获得边
}
///
/// 提供 : 角的对边和外接圆直径 , 获得<=90的角
///
/// 角的对边
/// 外接圆直径
/// return : <=90的角
static public float GetAngle_Edge_diameter(float Edge ,float diameter){//通过外接圆直径获得<=90的角
return Mathf.Asin(Edge/diameter)*Mathf.Rad2Deg;//获得<=90的角
}
///
/// 提供 : 三个边 , 获得一个角
///
/// 角A的对边
/// 角B的对边
/// 角C的对边
/// return : 角A
static public float Get_A_Angle_EEE(float A_Edge ,float B_Edge,float C_Edge){//从三边获得一角
return Mathf.Acos((B_Edge*B_Edge+C_Edge*C_Edge - A_Edge*A_Edge) / (2*(B_Edge*C_Edge)))*Mathf.Rad2Deg;
}
///
/// 提供 : 两个边和一个夹角 , 获得夹角的对边
///
/// 夹角A
/// 角B的对边
/// 角C的对边
/// return : 角A的对边
static public float Get_A_Edge_EAE(float A_Angle,float B_Edge,float C_Edge){//夹角获取对边
return Mathf.Sqrt(B_Edge*B_Edge+C_Edge*C_Edge-2*B_Edge*C_Edge*Mathf.Cos(A_Angle*Mathf.Deg2Rad));
}