在C#中,如何计算给定x1,y1,x2,y2相对于Y轴的两个点之间的角度(假设x从左到右增加,y从上到下增加)?
答案 0 :(得分:3)
试试这个:
static double GetAngle(double x1, double y1, double x2, double y2)
{
var w = x2 - x1;
var h = y2 - y1;
var atan = Math.Atan(h/w) / Math.PI * 180;
if (w < 0 || h < 0)
atan += 180;
if (w > 0 && h < 0)
atan -= 180;
if (atan < 0)
atan += 360;
return atan % 360;
}