WP通过触摸轨迹计算水平方向与轨迹的角度

来源:互联网 发布:美的电磁炉哪款好 知乎 编辑:程序博客网 时间:2024/05/14 02:24
容器的左上角为原点,代码如下

void JudgeMoveDirection(Point start, Point end)
{
//角度
double angle = 0;
if (Math.Abs(end.X - star.X) < 1 && Math.Abs(end.Y - star.Y) < 1)
{
angle = 0;
}
else if (end.X > start.X)
{
if (end.Y > start.Y)
{
angle = 360 - Math.Atan((end.Y - start.X) * 1.0 / (end.X - start.X)) * 180 / Math.PI;
}
else
{
angle = Math.Atan((start.Y - end.Y) * 1.0 / (end.X - start.X)) * 180 / Math.PI;
}
}
else
{
if (end.Y > start.Y)
{
angle = Math.Atan((end.Y - start.X) * 1.0 / (start.X - end.X)) * 180 / Math.PI;
}
else
{
angle = Math.Atan((start.Y - end.Y) * 1.0 / (start.X - end.X)) * 180 / Math.PI;
}
}
txtbContent.Text = angle.ToString()+"\nX:"+start.X.ToString()+ "\n" + "\nY:" + start.Y.ToString() + "\nX:" + end.X.ToString() + "\n" + "\nY:" + end.Y.ToString();
}



0 0
原创粉丝点击