MCPcopy Create free account
hub / github.com/plotly/plotly.js / makeScaler

Function makeScaler

src/traces/image/calc.js:59–88  ·  view source on GitHub ↗
(trace)

Source from the content-addressed store, hash-verified

57
58// Generate a function to scale color components according to zmin/zmax and the colormodel
59function makeScaler(trace) {
60 var cr = constants.colormodel[trace.colormodel];
61 var colormodel = (cr.colormodel || trace.colormodel);
62 var n = colormodel.length;
63
64 trace._sArray = [];
65 // Loop over all color components
66 for(var k = 0; k < n; k++) {
67 if(cr.min[k] !== trace.zmin[k] || cr.max[k] !== trace.zmax[k]) {
68 trace._sArray.push(scale(
69 trace.zmin[k],
70 (cr.max[k] - cr.min[k]) / (trace.zmax[k] - trace.zmin[k]),
71 cr.min[k],
72 cr.max[k]
73 ));
74 } else {
75 trace._sArray.push(constrain(cr.min[k], cr.max[k]));
76 }
77 }
78
79 return function(pixel) {
80 var c = pixel.slice(0, n);
81 for(var k = 0; k < n; k++) {
82 var ck = c[k];
83 if(!isNumeric(ck)) return false;
84 c[k] = trace._sArray[k](ck);
85 }
86 return c;
87 };
88}

Callers 1

calc.jsFile · 0.85

Calls 2

constrainFunction · 0.85
scaleFunction · 0.70

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…