protected virtual void DrawOverlay(SKCanvas canvas, Shape shape, RectangleF rect) { var strokeColor = shape.GetStrokeColor(VirtualView, Color.Black); var strokeWidth = shape.GetLineWidth(VirtualView, 1); var fill = shape.GetFill(VirtualView, Color.Transparent); canvas.DrawShape(shape, rect, strokeColor: strokeColor, strokeWidth: strokeWidth, fill: fill, drawingStyle: Graphics.DrawingStyle.StrokeFill); }
protected virtual void DrawTrack(SKCanvas canvas, RectangleF rectangle) { //TODO: Get colors from environment var progress = this.GetEnvironment <float>(toggleProgress, 0); var fillColor = defaultTrackOffColor.Lerp(defaultTrackOnColor, progress); trackRect.Center(rectangle.Center()); canvas.DrawShape(TrackShape, trackRect, fill: fillColor); }
public override void Draw(SKCanvas canvas, RectangleF rect) { var backgroundColor = this.GetBackgroundColor(Color.White).ToSKColor(); canvas.Clear(backgroundColor); var drawingStyle = Shape.GetDrawingStyle(this, DrawingStyle.StrokeFill); var strokeColor = Shape.GetStrokeColor(this, Color.Black); var strokeWidth = Shape.GetLineWidth(this, 1); var fill = Shape.GetFill(this); canvas.DrawShape(Shape, rect, drawingStyle, strokeWidth, strokeColor, fill); }
protected virtual void DrawThumb(SKCanvas canvas, RectangleF rectangle) { //TODO: Get colors from environment thumbRect.Center(rectangle.Center()); var thumbProgress = this.GetEnvironment <float>(thumbProgressAnimation, 0); thumbRect.Width = thumbSize.Lerp(thumbStretched, thumbProgress); var offX = trackRect.X; var onX = trackRect.Right - thumbRect.Width; var progress = this.GetEnvironment <float>(toggleProgress, 0); var fillColor = defaultThumbOffColor.Lerp(defaultThumbOnColor, progress); var strokeColor = Color.LightGrey.Lerp(Color.Transparent, progress); thumbRect.X = offX.Lerp(onX, progress); canvas.DrawShape(thumbCircle, thumbRect, Graphics.DrawingStyle.StrokeFill, strokeColor: strokeColor, strokeWidth: .5f, fill: fillColor); }