如何比较两个List <point>列表?</point>

时间:2015-01-29 10:10:29

标签: c# .net winforms

private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
    pixelscoordinatesinrectangle = new List<Point>();
    pixelscoordinatesinrectangle = pointsAffected.ToList();
    DrawIt = false;

    for (int i = 0; i < trackBar1FileInfo.Length; i++)
    {
        DrawIt = true;
        trackBar1.Value = i;
        LoadPictureAt(trackBar1.Value, sender);
        pictureBox1.Load(trackBar1FileInfo[i].FullName);
        ConvertedBmp = ConvertTo24(trackBar1FileInfo[trackBar1.Value].FullName);
        ConvertedBmp.Save(ConvertedBmpDir + "\\ConvertedBmp.bmp");
        mymem = ToStream(ConvertedBmp, ImageFormat.Bmp);
        backTexture = TextureLoader.FromStream(D3Ddev, mymem);
        scannedCloudsTexture = new Texture(D3Ddev, 512, 512, 1, Usage.Dynamic, Format.A8R8G8B8, Pool.Default);
        Button1Code();
        pictureBox1.Refresh();
        newpixelscoordinates = pointsAffected.ToList();
    }
}

我想要比较的是在List的像素中,使用List newpixelscoordinates对其进行循环。

两个列表都是 并且两个列表都包含像素坐标,例如在列表索引0之一中 存在:x = 23 y = 56并且在第二列表索引0:x = 456 y = 78

所以我想在每个List索引0与索引0和索引1与索引1进行比较。

循环中每次更改的列表都是newpixelscoordinates。 现在在循环中,变量trackBar1FileInfo在这种情况下包含5000个项目。 所以将有5000个列表再次比较pixelcoordinatesinrectangle。

循环newpixelscoordinates中的每个迭代将包含与pixelscoordinatesinrectangle相同的坐标或其中一些不同。

我想要做的是在其中一个比较迭代中,如果列表与写入文本文件不同,那么两个列表中的索引都不相同。

如果Lists所有索引都相同,则只需写入文本文件即可。例如,如果i = 345,则写入文本文件i = 345相同

如果不相同,请写下更多细节:

i = 778 两个列表中的索引45不同 索引787在两个列表中都不相同

0 个答案:

没有答案