(float x0, float y0, float x1, float y1, int colorFrom, int colorTo, ColorSpace cs, int steps)
| 187 | } |
| 188 | |
| 189 | private Shader linearCS(float x0, float y0, float x1, float y1, int colorFrom, int colorTo, ColorSpace cs, int steps) { |
| 190 | Color4f from = ColorSpace.getSRGB().convert(cs, new Color4f(colorFrom)); |
| 191 | Color4f to = ColorSpace.getSRGB().convert(cs, new Color4f(colorTo)); |
| 192 | Color4f[] colors = new Color4f[steps + 1]; |
| 193 | float[] pos = new float[steps + 1]; |
| 194 | for (int i = 0; i < steps + 1; ++i) { |
| 195 | pos[i] = (float) i / steps; |
| 196 | colors[i] = from.makeLerp(to, pos[i]); |
| 197 | } |
| 198 | return Shader.makeLinearGradient(x0, y0, x1, y1, colors, cs, pos, GradientStyle.DEFAULT); |
| 199 | } |
| 200 | |
| 201 | private void drawLinearCS(Canvas canvas) { |
| 202 | for (ColorSpace cs: new ColorSpace[] {null, ColorSpace.getSRGB(), ColorSpace.getSRGBLinear()}) { |
no test coverage detected