MCPcopy Create free account
hub / github.com/breck7/scroll / polymap

Function polymap

external/.d3.js:14978–14999  ·  view source on GitHub ↗
(domain, range, interpolate)

Source from the content-addressed store, hash-verified

14976}
14977
14978function polymap(domain, range, interpolate) {
14979 var j = Math.min(domain.length, range.length) - 1,
14980 d = new Array(j),
14981 r = new Array(j),
14982 i = -1;
14983
14984 // Reverse descending domains.
14985 if (domain[j] < domain[0]) {
14986 domain = domain.slice().reverse();
14987 range = range.slice().reverse();
14988 }
14989
14990 while (++i < j) {
14991 d[i] = normalize(domain[i], domain[i + 1]);
14992 r[i] = interpolate(range[i], range[i + 1]);
14993 }
14994
14995 return function(x) {
14996 var i = bisect(domain, x, 1, j) - 1;
14997 return r[i](d[i](x));
14998 };
14999}
15000
15001function copy$1(source, target) {
15002 return target

Callers

nothing calls this directly

Calls 5

normalizeFunction · 0.85
interpolateFunction · 0.85
minMethod · 0.80
reverseMethod · 0.80
sliceMethod · 0.80

Tested by

no test coverage detected