private void openEV3PGMToolStripMenuItem_Click(object sender, EventArgs e)
{
int x = 174;
int y = 128;
string pgm = "";
Stream f = null;
int size = x * y;
int[] cells = new int[size];
openFileDialog1.Filter = "PGM | *.pgm";
DialogResult res = openFileDialog1.ShowDialog(this);
if(openFileDialog1.SafeFileName != "")
{
f = openFileDialog1.OpenFile();
using (StreamReader reader = new StreamReader(f, Encoding.UTF8))
{
pgm = reader.ReadToEnd();
}
grid1.ClearCells();
pgm = pgm.Replace("\r", "");
pgm = pgm.Replace("\n", "");
string[] pgmCells = pgm.Split(',');
StringBuilder strBuffer = new StringBuilder();
int posX = 0;
int posY = -1;
grid1.SetBounds(x, y);
for (int n = 0; n < size; n++)
{
if (n % x == 0)
{
posX = 0;
posY++;
}
int color = int.Parse(pgmCells[n]);
switch (m_scale)
{
case ScaleTypes.HeightMap:
grid1.SetCell(posX, posY, Color.FromArgb(color, color, color));
break;
case ScaleTypes.HeatMap:
grid1.SetCell(posX, posY, Color.FromArgb(255 - color, 0, color));
break;
}
posX++;
}
grid1.Invalidate();
}
f.Close();
}