public void DrawBezier(IPen pen, PointF pt1, PointF pt2, PointF pt3, PointF pt4) { CubicBezier cb = new CubicBezier(Utility.ToCoord(pt1), Utility.ToCoord(pt2), Utility.ToCoord(pt3), Utility.ToCoord(pt4)); ApplyPen(pen); Gl.glBegin(Gl.GL_LINE_STRIP); //iterate this bitch for (double i = 0; i < 1.0; i += .025) { PointF p = Utility.ToPointF(cb.Bt(i)); Gl.glVertex2f(p.X, p.Y); } PointF p1 = Utility.ToPointF(cb.Bt(1)); Gl.glVertex2f(p1.X, p1.Y); Gl.glEnd(); }
public static void DrawBezier(GLPen pen, PointF startP, PointF ctrl1, PointF ctrl2, PointF endP) { CubicBezier cb = new CubicBezier(Utility.ToCoord(startP), Utility.ToCoord(ctrl1), Utility.ToCoord(ctrl2), Utility.ToCoord(endP)); pen.GLApplyPen(); Gl.glBegin(Gl.GL_LINE_STRIP); //iterate this bitch for (double i = 0; i < 1.0; i += .025) { PointF p = Utility.ToPointF(cb.Bt(i)); Gl.glVertex2f(p.X, p.Y); } PointF p1 = Utility.ToPointF(cb.Bt(1)); Gl.glVertex2f(p1.X, p1.Y); Gl.glEnd(); }