MCPcopy Create free account
hub / github.com/HumbleUI/Skija / draw

Method draw

examples/scenes/src/MaskFiltersScene.java:6–47  ·  view source on GitHub ↗
(Canvas canvas, int width, int height, float dpi, int xpos, int ypos)

Source from the content-addressed store, hash-verified

4
5public class MaskFiltersScene extends Scene {
6 @Override
7 public void draw(Canvas canvas, int width, int height, float dpi, int xpos, int ypos) {
8 canvas.translate(20, 20);
9
10 try (Paint fill = new Paint().setColor(0xFFe76f51);
11 Path figure = new PathBuilder().moveTo(75, 19).lineTo(140, 131).lineTo(10, 131).closePath()
12 .moveTo(75, 56).lineTo(42, 113).lineTo(107, 113).closePath()
13 .build();)
14 {
15 MaskFilter outer = MaskFilter.makeBlur(FilterBlurMode.OUTER, 5);
16 MaskFilter inner = MaskFilter.makeBlur(FilterBlurMode.INNER, 5);
17 MaskFilter shader = MaskFilter.makeShader(Shader.makeLinearGradient(10, 0, 140, 0, new int[] { 0xFF000000, 0x00000000 }));
18 byte[] table = new byte[256];
19 for (int i = 0; i < 256; ++i) {
20 table[i] = (byte) (255 - i);
21 }
22
23 MaskFilter[][] filters = new MaskFilter[][] {
24 new MaskFilter[] {
25 MaskFilter.makeBlur(FilterBlurMode.NORMAL, 10),
26 MaskFilter.makeBlur(FilterBlurMode.NORMAL, 5),
27 MaskFilter.makeBlur(FilterBlurMode.SOLID, 5),
28 outer,
29 inner,
30 MaskFilter.makeBlur(FilterBlurMode.NORMAL, 5, false),
31 shader
32 }
33 };
34
35 for (MaskFilter[] fs: filters) {
36 canvas.save();
37 for (MaskFilter f: fs) {
38 fill.setMaskFilter(f);
39 canvas.drawPath(figure, fill);
40 canvas.translate(150, 0);
41 f.close();
42 }
43 canvas.restore();
44 canvas.translate(0, 150);
45 }
46 }
47 }
48}

Callers

nothing calls this directly

Calls 14

makeBlurMethod · 0.95
makeShaderMethod · 0.95
makeLinearGradientMethod · 0.95
closePathMethod · 0.80
lineToMethod · 0.80
moveToMethod · 0.80
saveMethod · 0.80
setMaskFilterMethod · 0.80
restoreMethod · 0.80
translateMethod · 0.45
setColorMethod · 0.45
buildMethod · 0.45

Tested by

no test coverage detected