private List <Point> PrzydzielDoOdcinkaKwadraty(Odcinek o) { List <Point> Zwracana = new List <Point>(); Point Poczotek = new Point(Convert.ToInt32(o.PoczotekX / SzerokośćKratki), Convert.ToInt32(o.PoczotekY / WysokośćKratki)); Point Koniec = new Point(Convert.ToInt32(o.KoniecX / SzerokośćKratki), Convert.ToInt32(o.KoniecY / WysokośćKratki)); if (Poczotek == Koniec) { Zwracana.Add(Poczotek); return(Zwracana); } o.WyZnaczAB(); if (!o.WyznaczoneAB || Poczotek.X == Koniec.X) { PrzydzielajDoWartosciKwadraty(Poczotek.X, o.PoczotekY, o.KoniecY, Zwracana); return(Zwracana); } int IX = Poczotek.X + 1; float KoniecPoprzedniego = o.WartośćY((IX)*SzerokośćKratki); PrzydzielajDoWartosciKwadraty(Poczotek.X, o.PoczotekY, KoniecPoprzedniego, Zwracana); PrzydzielajDoWartosciKwadraty(Koniec.X, o.KoniecY, o.WartośćY(Koniec.X * SzerokośćKratki), Zwracana); while (IX < Koniec.X) { PrzydzielajDoWartosciKwadraty(IX++, KoniecPoprzedniego, KoniecPoprzedniego = o.WartośćY((IX)*SzerokośćKratki), Zwracana); } return(Zwracana); }