private Point GetObstacle(Point Start, Bitmap Map, int Inc, int AngleOffset)
{
Point p = new Point(Start.X, Start.Y);
double rad = ((Angle + 90 + AngleOffset) * Math.PI) / 180;
int IncX = 0;
int IncY = 0;
int Offset = 0;
while ((p.X + IncX >= 0) && (p.X + IncX < Map.Width) && (p.Y + IncY >= 0) && (p.Y + IncY < Map.Height))
{
if ((Map.GetPixel(p.X + IncX, p.Y + IncY).R == 0) && (Map.GetPixel(p.X + IncX, p.Y + IncY).G == 0) && (Map.GetPixel(p.X + IncX, p.Y + IncY).B == 0))
break;
Offset += Inc;
IncX = Convert.ToInt32(Offset * Math.Cos(rad));
IncY = Convert.ToInt32(Offset * Math.Sin(rad));
}
p.X += IncX;
p.Y += IncY;
return p;
}