(float x0, float y0, float x1, float y1, int colorFrom, int colorTo, ColorSpace cs, int steps)
| 156 | } |
| 157 | |
| 158 | private Shader linearCS(float x0, float y0, float x1, float y1, int colorFrom, int colorTo, ColorSpace cs, int steps) { |
| 159 | Color4f from = ColorSpace.getSRGB().convert(cs, new Color4f(colorFrom)); |
| 160 | Color4f to = ColorSpace.getSRGB().convert(cs, new Color4f(colorTo)); |
| 161 | Color4f[] colors = new Color4f[steps + 1]; |
| 162 | float[] pos = new float[steps + 1]; |
| 163 | for (int i = 0; i < steps + 1; ++i) { |
| 164 | pos[i] = (float) i / steps; |
| 165 | colors[i] = from.makeLerp(to, pos[i]); |
| 166 | } |
| 167 | return Shader.makeLinearGradient(x0, y0, x1, y1, colors, cs, pos, GradientStyle.DEFAULT); |
| 168 | } |
| 169 | |
| 170 | private void drawLinearCS(Canvas canvas) { |
| 171 | for (ColorSpace cs: new ColorSpace[] {null, ColorSpace.getSRGB(), ColorSpace.getSRGBLinear()}) { |
no test coverage detected