private void drawShape(BaseShape shape, PointF origin) { if (!shape.Visible) { return; } VertexCollection verts = shape.GetVertices(origin); GL.Color3(shape.FillColor); GL.Begin(verts.Mode); foreach (PointF vert in verts) { GL.Vertex2(vert.X, vert.Y); } GL.End(); }