MCPcopy Create free account
hub / github.com/JetBrains/skija / linearCS

Method linearCS

examples/scenes/src/ShadersScene.java:158–168  ·  view source on GitHub ↗
(float x0, float y0, float x1, float y1, int colorFrom, int colorTo, ColorSpace cs, int steps)

Source from the content-addressed store, hash-verified

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()}) {

Callers 1

drawLinearCSMethod · 0.95

Calls 4

getSRGBMethod · 0.95
makeLerpMethod · 0.95
makeLinearGradientMethod · 0.95
convertMethod · 0.80

Tested by

no test coverage detected