public void Draw(BitmapCanvas canvas, Matrix3X3 parentMatrix, byte parentAlpha) { LottieLog.BeginSection("GradientFillContent.Draw"); _path.Reset(); for (var i = 0; i < _paths.Count; i++) { _path.AddPath(_paths[i].Path, parentMatrix); } //_path.ComputeBounds(out _boundsRect); Shader shader; if (_type == GradientType.Linear) { shader = LinearGradient; } else { shader = RadialGradient; } _shaderMatrix.Set(parentMatrix); shader.LocalMatrix = _shaderMatrix; _paint.Shader = shader; var alpha = (byte)(parentAlpha / 255f * _opacityAnimation.Value / 100f * 255); _paint.Alpha = alpha; canvas.DrawPath(_path, _paint); LottieLog.EndSection("GradientFillContent.Draw"); }
public void Draw(BitmapCanvas canvas, Matrix3X3 parentMatrix, byte parentAlpha) { if (_hidden) { return; } LottieLog.BeginSection("FillContent.Draw"); _paint.Color = _colorAnimation.Value ?? Colors.White; var alpha = (byte)(parentAlpha / 255f * _opacityAnimation.Value / 100f * 255); _paint.Alpha = alpha; if (_colorFilterAnimation != null) { _paint.ColorFilter = _colorFilterAnimation.Value; } _path.Reset(); for (var i = 0; i < _paths.Count; i++) { _path.AddPath(_paths[i].Path, parentMatrix); } canvas.DrawPath(_path, _paint); LottieLog.EndSection("FillContent.Draw"); }
public virtual void Draw(BitmapCanvas canvas, Matrix3X3 parentMatrix, byte parentAlpha) { LottieLog.BeginSection("FillContent.Draw"); _paint.Color = _colorAnimation.Value; var alpha = (byte)(parentAlpha / 255f * _opacityAnimation.Value / 100f * 255); _paint.Alpha = alpha; _path.Reset(); for (var i = 0; i < _paths.Count; i++) { _path.AddPath(_paths[i].Path, parentMatrix); } canvas.DrawPath(_path, _paint); LottieLog.EndSection("FillContent.Draw"); }