我需要一个公式来检查水平线和给定线之间的角度,然后判断给定线是水平(θ<45)还是垂直(θ> 45)然后返回θ。
我知道我必须使用Math.Atan
,但我真的不知道怎么做。
函数签名应该类似于
double isLineVert(Line line)
{
// calculate angle //
return angle; //(in degrees)
}
答案 0 :(得分:0)
我已经使用@MBo提出的方法解决了问题,取得了高度和长度的差异。这是功能:
public static bool? isLineVertical(Line line)
{
double xDiff = Math.Abs(line.X2 - line.X1);
double yDiff = Math.Abs(line.Y2 - line.Y1);
bool? vertical = null;
if (yDiff > xDiff)
{
vertical = true;
}
else if (xDiff > yDiff)
{
vertical = false;
}
return vertical;
}