public AETEntry(Edge e, AETEntry next = null) { yMax = Math.Max(e.Y1, e.Y2); xMin = yMax == e.Y1 ? e.X2 : e.X1; dxdy = (e.X2 - e.X1) / (e.Y2 - e.Y1); Next = next; }
private void FillET(List <Edge> edges) { foreach (var e in edges) { if ((int)e.Y1 == (int)e.Y2) { continue; } int index = (int)Math.Min(e.Y1, e.Y2); AETEntry entry = new AETEntry(e, ET[index]); ET[index] = entry; } }