|
1473 | 1473 | }, "mousewheel") : (d3_behavior_zoomDelta = function() { |
1474 | 1474 | return -d3.event.detail; |
1475 | 1475 | }, "MozMousePixelScroll"); |
1476 | | - d3.interpolateHsl = d3_interpolateHsl; |
1477 | | - function d3_interpolateHsl(a, b) { |
1478 | | - a = d3.hsl(a); |
1479 | | - b = d3.hsl(b); |
1480 | | - var ah = a.h, as = a.s, al = a.l, bh = b.h - ah, bs = b.s - as, bl = b.l - al; |
1481 | | - if (isNaN(bs)) bs = 0, as = isNaN(as) ? b.s : as; |
1482 | | - if (isNaN(bh)) bh = 0, ah = isNaN(ah) ? b.h : ah; else if (bh > 180) bh -= 360; else if (bh < -180) bh += 360; |
1483 | | - return function(t) { |
1484 | | - return d3_hsl_rgb(ah + bh * t, as + bs * t, al + bl * t) + ""; |
1485 | | - }; |
1486 | | - } |
1487 | 1476 | d3.hsl = function(h, s, l) { |
1488 | 1477 | return arguments.length === 1 ? h instanceof d3_Hsl ? d3_hsl(h.h, h.s, h.l) : d3_rgb_parse("" + h, d3_rgb_hsl, d3_hsl) : d3_hsl(+h, +s, +l); |
1489 | 1478 | }; |
|
1507 | 1496 | d3_hslPrototype.rgb = function() { |
1508 | 1497 | return d3_hsl_rgb(this.h, this.s, this.l); |
1509 | 1498 | }; |
1510 | | - d3_hslPrototype.interpolate = d3_interpolateHsl; |
| 1499 | + d3_hslPrototype.interpolate = d3_hslInterpolate; |
| 1500 | + function d3_hslInterpolate(a, b) { |
| 1501 | + a = d3.hsl(a); |
| 1502 | + b = d3.hsl(b); |
| 1503 | + var ah = a.h, as = a.s, al = a.l, bh = b.h - ah, bs = b.s - as, bl = b.l - al; |
| 1504 | + if (isNaN(bs)) bs = 0, as = isNaN(as) ? b.s : as; |
| 1505 | + if (isNaN(bh)) bh = 0, ah = isNaN(ah) ? b.h : ah; else if (bh > 180) bh -= 360; else if (bh < -180) bh += 360; |
| 1506 | + return function(t) { |
| 1507 | + return d3_hsl_rgb(ah + bh * t, as + bs * t, al + bl * t) + ""; |
| 1508 | + }; |
| 1509 | + } |
1511 | 1510 | function d3_hsl_rgb(h, s, l) { |
1512 | 1511 | var m1, m2; |
1513 | 1512 | h = isNaN(h) ? 0 : (h %= 360) < 0 ? h + 360 : h; |
|
1527 | 1526 | } |
1528 | 1527 | return d3_rgb(vv(h + 120), vv(h), vv(h - 120)); |
1529 | 1528 | } |
1530 | | - d3.interpolateLab = d3_interpolateLab; |
1531 | | - function d3_interpolateLab(a, b) { |
1532 | | - a = d3.lab(a); |
1533 | | - b = d3.lab(b); |
1534 | | - var al = a.l, aa = a.a, ab = a.b, bl = b.l - al, ba = b.a - aa, bb = b.b - ab; |
1535 | | - return function(t) { |
1536 | | - return d3_lab_rgb(al + bl * t, aa + ba * t, ab + bb * t) + ""; |
1537 | | - }; |
1538 | | - } |
1539 | | - d3.interpolateHcl = d3_interpolateHcl; |
1540 | | - function d3_interpolateHcl(a, b) { |
1541 | | - a = d3.hcl(a); |
1542 | | - b = d3.hcl(b); |
1543 | | - var ah = a.h, ac = a.c, al = a.l, bh = b.h - ah, bc = b.c - ac, bl = b.l - al; |
1544 | | - if (isNaN(bc)) bc = 0, ac = isNaN(ac) ? b.c : ac; |
1545 | | - if (isNaN(bh)) bh = 0, ah = isNaN(ah) ? b.h : ah; else if (bh > 180) bh -= 360; else if (bh < -180) bh += 360; |
1546 | | - return function(t) { |
1547 | | - return d3_hcl_lab(ah + bh * t, ac + bc * t, al + bl * t) + ""; |
1548 | | - }; |
1549 | | - } |
1550 | 1529 | d3.hcl = function(h, c, l) { |
1551 | 1530 | return arguments.length === 1 ? h instanceof d3_Hcl ? d3_hcl(h.h, h.c, h.l) : h instanceof d3_Lab ? d3_lab_hcl(h.l, h.a, h.b) : d3_lab_hcl((h = d3_rgb_lab((h = d3.rgb(h)).r, h.g, h.b)).l, h.a, h.b) : d3_hcl(+h, +c, +l); |
1552 | 1531 | }; |
|
1568 | 1547 | d3_hclPrototype.rgb = function() { |
1569 | 1548 | return d3_hcl_lab(this.h, this.c, this.l).rgb(); |
1570 | 1549 | }; |
1571 | | - d3_hclPrototype.interpolate = d3_interpolateHcl; |
| 1550 | + d3_hclPrototype.interpolate = d3_hclInterpolate; |
| 1551 | + function d3_hclInterpolate(a, b) { |
| 1552 | + a = d3.hcl(a); |
| 1553 | + b = d3.hcl(b); |
| 1554 | + var ah = a.h, ac = a.c, al = a.l, bh = b.h - ah, bc = b.c - ac, bl = b.l - al; |
| 1555 | + if (isNaN(bc)) bc = 0, ac = isNaN(ac) ? b.c : ac; |
| 1556 | + if (isNaN(bh)) bh = 0, ah = isNaN(ah) ? b.h : ah; else if (bh > 180) bh -= 360; else if (bh < -180) bh += 360; |
| 1557 | + return function(t) { |
| 1558 | + return d3_hcl_lab(ah + bh * t, ac + bc * t, al + bl * t) + ""; |
| 1559 | + }; |
| 1560 | + } |
1572 | 1561 | function d3_hcl_lab(h, c, l) { |
1573 | 1562 | if (isNaN(h)) h = 0; |
1574 | 1563 | if (isNaN(c)) c = 0; |
|
1597 | 1586 | d3_labPrototype.rgb = function() { |
1598 | 1587 | return d3_lab_rgb(this.l, this.a, this.b); |
1599 | 1588 | }; |
1600 | | - d3_labPrototype.interpolate = d3_interpolateLab; |
| 1589 | + d3_labPrototype.interpolate = d3_labInterpolate; |
| 1590 | + function d3_labInterpolate(a, b) { |
| 1591 | + a = d3.lab(a); |
| 1592 | + b = d3.lab(b); |
| 1593 | + var al = a.l, aa = a.a, ab = a.b, bl = b.l - al, ba = b.a - aa, bb = b.b - ab; |
| 1594 | + return function(t) { |
| 1595 | + return d3_lab_rgb(al + bl * t, aa + ba * t, ab + bb * t) + ""; |
| 1596 | + }; |
| 1597 | + } |
1601 | 1598 | function d3_lab_rgb(l, a, b) { |
1602 | 1599 | var y = (l + 16) / 116, x = y + a / 500, z = y - b / 200; |
1603 | 1600 | x = d3_lab_xyz(x) * d3_lab_X; |
|
1654 | 1651 | d3_rgbPrototype.toString = function() { |
1655 | 1652 | return "#" + d3_rgb_hex(this.r) + d3_rgb_hex(this.g) + d3_rgb_hex(this.b); |
1656 | 1653 | }; |
| 1654 | + function d3_rgbInterpolate(a, b) { |
| 1655 | + a = d3.rgb(a); |
| 1656 | + b = d3.rgb(b); |
| 1657 | + var ar = a.r, ag = a.g, ab = a.b, br = b.r - ar, bg = b.g - ag, bb = b.b - ab; |
| 1658 | + return function(t) { |
| 1659 | + return "#" + d3_rgb_hex(Math.round(ar + br * t)) + d3_rgb_hex(Math.round(ag + bg * t)) + d3_rgb_hex(Math.round(ab + bb * t)); |
| 1660 | + }; |
| 1661 | + } |
1657 | 1662 | function d3_rgb_hex(v) { |
1658 | 1663 | return v < 16 ? "0" + Math.max(0, v).toString(16) : Math.min(255, v).toString(16); |
1659 | 1664 | } |
|
1872 | 1877 | d3_rgb_names.forEach(function(key, value) { |
1873 | 1878 | d3_rgb_names.set(key, d3_rgbNumber(value)); |
1874 | 1879 | }); |
1875 | | - d3.interpolateRgb = d3_interpolateRgb; |
1876 | | - function d3_interpolateRgb(a, b) { |
1877 | | - a = d3.rgb(a); |
1878 | | - b = d3.rgb(b); |
1879 | | - var ar = a.r, ag = a.g, ab = a.b, br = b.r - ar, bg = b.g - ag, bb = b.b - ab; |
1880 | | - return function(t) { |
1881 | | - return "#" + d3_rgb_hex(Math.round(ar + br * t)) + d3_rgb_hex(Math.round(ag + bg * t)) + d3_rgb_hex(Math.round(ab + bb * t)); |
1882 | | - }; |
1883 | | - } |
1884 | 1880 | function d3_Color() {} |
1885 | | - d3_Color.prototype.interpolate = d3_interpolateRgb; |
| 1881 | + d3_Color.prototype.interpolate = d3_rgbInterpolate; |
1886 | 1882 | d3_Color.prototype.toString = function() { |
1887 | 1883 | return this.rgb() + ""; |
1888 | 1884 | }; |
|
5723 | 5719 | } |
5724 | 5720 | d3.interpolators = [ function(a, b) { |
5725 | 5721 | var t = typeof b; |
5726 | | - return (t === "string" ? d3_rgb_names.has(b) || /^(#|rgb\(|hsl\()/.test(b) ? d3_interpolateRgb : d3_interpolateString : t === "object" ? b.interpolate || (Array.isArray(b) ? d3_interpolateArray : d3_interpolateObject) : d3_interpolateNumber)(a, b); |
| 5722 | + return (t === "string" ? d3_rgb_names.has(b) || /^(#|rgb\(|hsl\()/.test(b) ? d3_rgbInterpolate : d3_interpolateString : t === "object" ? b.interpolate || (Array.isArray(b) ? d3_interpolateArray : d3_interpolateObject) : d3_interpolateNumber)(a, b); |
5727 | 5723 | } ]; |
5728 | 5724 | d3.interpolateArray = d3_interpolateArray; |
5729 | 5725 | function d3_interpolateArray(a, b) { |
|
5835 | 5831 | function d3_ease_bounce(t) { |
5836 | 5832 | return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375; |
5837 | 5833 | } |
| 5834 | + d3.interpolateHcl = d3_hclInterpolate; |
| 5835 | + d3.interpolateHsl = d3_hslInterpolate; |
| 5836 | + d3.interpolateLab = d3_labInterpolate; |
| 5837 | + d3.interpolateRgb = d3_rgbInterpolate; |
5838 | 5838 | d3.interpolateRound = d3_interpolateRound; |
5839 | 5839 | function d3_interpolateRound(a, b) { |
5840 | 5840 | b -= a; |
|
0 commit comments