Skip to content

Commit 14b8d48

Browse files
committed
Fix silly bug.
This was due to mishandling infinities in the clamping function, so the default extent was "backwards".
1 parent 81db54c commit 14b8d48

3 files changed

Lines changed: 14 additions & 12 deletions

File tree

d3.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3936,8 +3936,8 @@ d3.behavior.zoom = function() {
39363936
var xyz = [0, 0, 0],
39373937
event = d3.dispatch("zoom"),
39383938
origin = d3_behavior_zoomOrigin([0, 0, 0]),
3939-
extents = [[Infinity, -Infinity],
3940-
[Infinity, -Infinity],
3939+
extents = [[-Infinity, Infinity],
3940+
[-Infinity, Infinity],
39413941
[-Infinity, Infinity]];
39423942

39433943
function zoom() {
@@ -4174,12 +4174,13 @@ function d3_behavior_zoomTo(z, x0, x1) {
41744174

41754175
function d3_behavior_zoomExtentsRange(x, i, k) {
41764176
var range = d3_behavior_zoomExtents[i],
4177+
r0 = range[0],
41774178
r1 = range[1];
41784179
if (arguments.length === 3) {
4179-
return Math.max(r1 * (r1 === -Infinity ? 1 : 1 / k - 1),
4180-
Math.min(range[0], x / k)) * k;
4180+
return Math.max(r1 * (r1 === Infinity ? -Infinity : 1 / k - 1),
4181+
Math.min(r0 === -Infinity ? Infinity : r0, x / k)) * k;
41814182
}
4182-
return Math.max(range[0], Math.min(r1, x));
4183+
return Math.max(r0, Math.min(r1, x));
41834184
}
41844185

41854186
function d3_behavior_zoomOrigin(origin) {

0 commit comments

Comments
 (0)