public static void Ellipse(Cairo.Context context, PointF p, double r, Color color, bool filled, double width = 1.0) { context.Save(); context.Translate(p.X, p.Y); if (!filled) { context.LineWidth = width; context.LineCap = Cairo.LineCap.Butt; context.LineJoin = Cairo.LineJoin.Bevel; } var c = color.ToCairo(); context.SetSourceRGBA(c.R, c.G, c.B, c.A); context.Arc(0, 0, r, 0, Math.PI * 2); if (filled) { context.Fill(); } else { context.Stroke(); } context.Restore(); }
public static void Arc(Cairo.Context context, PointF p, double r, double a1, double a2, bool clockwise, Color color, bool filled, double width = 1.0) { context.Save(); context.Translate(p.X, p.Y); if (!filled) { context.LineWidth = width; context.LineCap = Cairo.LineCap.Butt; context.LineJoin = Cairo.LineJoin.Bevel; } var c = color.ToCairo(); context.SetSourceRGBA(c.R, c.G, c.B, c.A); if (clockwise) { context.Arc(0, 0, r, a1, a2); } else { context.ArcNegative(0, 0, r, a1, a2); } if (filled) { context.Fill(); } else { context.Stroke(); } context.Restore(); }
public object Create (Color startColor, Color endColor, PointF startPoint, PointF endPoint) { var gradient = new EtoGradient (startPoint.X, startPoint.Y, endPoint.X, endPoint.Y); gradient.Extend = Cairo.Extend.Pad; gradient.AddColorStop (0, startColor.ToCairo ()); gradient.AddColorStop (1, endColor.ToCairo ()); return gradient; }
public object Create(Color startColor, Color endColor, PointF startPoint, PointF endPoint) { var gradient = new EtoGradient(startPoint.X, startPoint.Y, endPoint.X, endPoint.Y); gradient.Extend = Cairo.Extend.Pad; gradient.AddColorStop(0, startColor.ToCairo()); gradient.AddColorStop(1, endColor.ToCairo()); return(gradient); }
public object Create(Color color, float thickness) { return(new PenObject { Color = color.ToCairo(), Thickness = thickness, MiterLimit = 10f, LineCap = PenLineCap.Square.ToCairo() }); }
public object Create (Color startColor, Color endColor, PointF startPoint, PointF endPoint) { var gradient = new EtoGradient (startPoint.X, startPoint.Y, endPoint.X, endPoint.Y); cairo_pattern_set_extend (gradient.Pointer, Cairo.Extend.Repeat); // not in windows?? gradient.Extend = Cairo.Extend.Repeat; gradient.AddColorStop (0, startColor.ToCairo ()); gradient.AddColorStop (1, endColor.ToCairo ()); return gradient; }
public object Create(Color startColor, Color endColor, PointF center, PointF gradientOrigin, SizeF radius) { var gradient = new EtoGradient(gradientOrigin, center, radius); gradient.Radius = radius; gradient.Extend = Cairo.Extend.Pad; gradient.AddColorStop(0, startColor.ToCairo()); gradient.AddColorStop(1, endColor.ToCairo()); return gradient; }
public object Create(Color startColor, Color endColor, PointF center, PointF gradientOrigin, SizeF radius) { var gradient = new EtoGradient(gradientOrigin, center, radius); gradient.Radius = radius; gradient.Extend = Cairo.Extend.Pad; gradient.AddColorStop(0, startColor.ToCairo()); gradient.AddColorStop(1, endColor.ToCairo()); return(gradient); }
public object Create(Color startColor, Color endColor, PointF startPoint, PointF endPoint) { var gradient = new EtoGradient(startPoint.X, startPoint.Y, endPoint.X, endPoint.Y); cairo_pattern_set_extend(gradient.Pointer, Cairo.Extend.Repeat); // not in windows?? gradient.Extend = Cairo.Extend.Repeat; gradient.AddColorStop(0, startColor.ToCairo()); gradient.AddColorStop(1, endColor.ToCairo()); return(gradient); }
public void RenderScene(Node rootNode) { using (var context = contextInitializer()) { context.Operator = Operator.Source; context.Color = background.ToCairo(); context.Paint(); context.Operator = Operator.Over; RenderNode(rootNode, context); } }
void DrawQuota(Cairo.Context context, double angle, Color color) { context.Save(); context.Rotate(angle * Math.PI / 180.0); context.MoveTo(0, -95); context.LineTo(1, -110); context.LineTo(-1, -110); context.ClosePath(); var c = color.ToCairo(); context.SetSourceRGBA(c.R, c.G, c.B, c.A); context.Stroke(); context.Restore(); }
public static void Polyline(Cairo.Context context, IEnumerable <PointF> points, Color color, double width = 1.0) { context.Save(); if (points.Count() < 2) { return; } context.LineWidth = width; context.LineCap = Cairo.LineCap.Round; context.LineJoin = Cairo.LineJoin.Round; var c = color.ToCairo(); context.SetSourceRGBA(c.R, c.G, c.B, c.A); context.MoveTo(points.ElementAt(0).X, points.ElementAt(0).Y); for (int i = 1; i < points.Count(); i++) { context.LineTo(points.ElementAt(i).X, points.ElementAt(i).Y); } context.Stroke(); context.Restore(); }
public void SetColor (SolidBrush widget, Color color) { widget.ControlObject = color.ToCairo (); }
public void SetColor(SolidBrush widget, Color color) { widget.ControlObject = color.ToCairo(); }
public object Create(Color color) { return(color.ToCairo()); }
/// <summary> /// Creates a gradient for the given position, size, and anchor location. /// </summary> protected Cairo.LinearGradient GenerateGradient(Coord point, Coord size, AnchorLocation location, Color startColor, Color stopColor) { Cairo.LinearGradient grad = null; var x = point.X; var y = point.Y; var r = (size.X + size.Y) / 2.0; switch (location) { case AnchorLocation.E: grad = new Cairo.LinearGradient(x + size.X, y, x, y); break; case AnchorLocation.NE: grad = new Cairo.LinearGradient(x + r, y, x, y + r); break; case AnchorLocation.N: grad = new Cairo.LinearGradient(x, y, x, y + size.Y); break; case AnchorLocation.NW: grad = new Cairo.LinearGradient(x, y, x + r, y + r); break; case AnchorLocation.W: grad = new Cairo.LinearGradient(x, y, x + size.X, y); break; case AnchorLocation.SW: grad = new Cairo.LinearGradient(x, y + r, x + r, y); break; case AnchorLocation.S: grad = new Cairo.LinearGradient(x, y + size.Y, x, y); break; case AnchorLocation.SE: grad = new Cairo.LinearGradient(x + r, y + r, x, y); break; } // assign the colors if (startColor == null) startColor = defaultBackgroundColor; grad.AddColorStop(0, startColor.ToCairo()); if (stopColor == null) stopColor = defaultBackgroundColor; grad.AddColorStop(1, stopColor.ToCairo()); return grad; }
public void SetColor(Pen widget, Color color) { ((PenObject)widget.ControlObject).Color = color.ToCairo(); }
public void SetColor (Pen widget, Color color) { ((PenObject)widget.ControlObject).Color = color.ToCairo (); }
public object Create (Color color, float thickness) { return new PenObject { Color = color.ToCairo (), Thickness = thickness, MiterLimit = 10f, LineCap = PenLineCap.Square.ToCairo () }; }
public object Create (Color color) { return color.ToCairo (); }