用C# 语言如何获取一条斜线上的所有像素点的坐标
用C#语言如何获取一条斜线上的所有像素点的坐标?
先要知道两个点,然后就能算出斜率,用直线方程就能算出来了,下面借用了一段网上的代码,用于参考吧
Point a = new Point(1, 1);
Point b = new Point(9, 9);
// 循环x坐标
for (int i = a.X + 1; i < b.X; i++)
{
// 计算斜率
double k = ((double) (a.Y - b.Y))/(a.X - b.X);
// 根据斜率,计算y坐标
double y = k*(i - a.X) + a.Y;
// 简单判断一下y是不是整数
double d = y - (int) y;
if (0.001 > d && d > -0.001)
{
Console.Write("点的坐标:{0},{1}", i, y);
}
}