public void DrawPolygon(Point[] pts, Color c, double thick, bool fill, double rfill)
        {
            //set Color
            Gl.glColor3d(c.RedScaled, c.GreenScaled, c.BlueScaled);
            //Gl.glColor4f(c.redf(), c.greenf(), c.bluef(), .1f);

            //Set Thickness
            if (thick >= 1)
            { Gl.glLineWidth((float)thick); }

            //Set Fill
            if (!fill)
            { Gl.glBegin(Gl.GL_LINE_STRIP); }
            else
            {
                Gl.glBegin(Gl.GL_TRIANGLE_FAN);
                c = c.Multiply(rfill);
            }

            Gl.glColor3d(c.RedScaled, c.GreenScaled, c.BlueScaled);

            //Cycle Through Points around circle
            for (int i = 0; i < pts.Length; i++)
                Gl.glVertex2d(pts[i].X, pts[i].Y);
            Gl.glVertex2d(pts[0].X, pts[0].Y);

            Gl.glEnd();

            Gl.glLineWidth(1f);
        }
 public void DrawCircleShadow(Point p, Double r, Color c, Color fc)
 {
     DrawCircle(p, r, fc.Multiply(.25), true, 1);
     DrawCircle(p, r, c, false, r);
 }