Remove the one use of DrawLooper

We're going to remove DrawLooper from the canvas API soon.
This commit is contained in:
Adam Barth 2016-03-03 17:32:34 -08:00
parent 932b09c33a
commit 245c5ae2b8
2 changed files with 2 additions and 51 deletions

View File

@ -55,58 +55,10 @@ ui.Picture paint(ui.Rect paintBounds) {
canvas.transform(scaleMatrix); canvas.transform(scaleMatrix);
paint.color = const ui.Color.fromARGB(128, 0, 255, 0); paint.color = const ui.Color.fromARGB(128, 0, 255, 0);
canvas.drawCircle(ui.Point.origin, radius, paint); canvas.drawCircle(ui.Point.origin, radius, paint);
canvas.restore(); canvas.restore();
canvas.translate(0.0, 50.0); paint.color = const ui.Color.fromARGB(128, 255, 0, 0);
canvas.drawCircle(new ui.Point(150.0, 300.0), radius, paint);
// A DrawLooper is a powerful painting primitive that lets you apply several
// blending and filtering passes over a sequence of commands "in a loop". For
// example, the looper below draws the circle tree times, once with a blur,
// then with a gradient blend, and finally with just an offset.
ui.LayerDrawLooperBuilder builder = new ui.LayerDrawLooperBuilder()
..addLayerOnTop(
new ui.DrawLooperLayerInfo()
..setOffset(const ui.Offset(150.0, 0.0))
..setColorMode(ui.TransferMode.src)
..setPaintBits(ui.PaintBits.all),
new ui.Paint()
..color = const ui.Color.fromARGB(128, 255, 255, 0)
..colorFilter = new ui.ColorFilter.mode(
const ui.Color.fromARGB(128, 0, 0, 255),
ui.TransferMode.srcIn
)
..maskFilter = new ui.MaskFilter.blur(
ui.BlurStyle.normal, 3.0, highQuality: true
)
)
..addLayerOnTop(
new ui.DrawLooperLayerInfo()
..setOffset(const ui.Offset(75.0, 75.0))
..setColorMode(ui.TransferMode.src)
..setPaintBits(ui.PaintBits.shader),
new ui.Paint()
..shader = new ui.Gradient.radial(
new ui.Point(0.0, 0.0), radius/3.0,
<ui.Color>[
const ui.Color(0xFFFFFF00),
const ui.Color(0xFFFF0000)
],
null,
ui.TileMode.mirror
)
// Since we're don't set ui.PaintBits.maskFilter, this has no effect.
..maskFilter = new ui.MaskFilter.blur(
ui.BlurStyle.normal, 50.0, highQuality: true
)
)
..addLayerOnTop(
new ui.DrawLooperLayerInfo()..setOffset(const ui.Offset(225.0, 75.0)),
// Since this layer uses a DST color mode, this has no effect.
new ui.Paint()..color = const ui.Color.fromARGB(128, 255, 0, 0)
);
paint.drawLooper = builder.build();
canvas.drawCircle(ui.Point.origin, radius, paint);
// When we're done issuing painting commands, we end the recording an receive // When we're done issuing painting commands, we end the recording an receive
// a Picture, which is an immutable record of the commands we've issued. You // a Picture, which is an immutable record of the commands we've issued. You

View File

@ -11,7 +11,6 @@ export 'dart:ui' show
FontStyle, FontStyle,
FontWeight, FontWeight,
ImageShader, ImageShader,
LayerDrawLooperBuilder,
MaskFilter, MaskFilter,
Offset, Offset,
Paint, Paint,