This commit is contained in:
Mike Bostock 2013-10-07 09:00:34 -07:00
Родитель cf66cccb19
Коммит 9e13eff5fd
3 изменённых файлов: 65 добавлений и 66 удалений

84
d3.js поставляемый
Просмотреть файл

@ -4793,11 +4793,7 @@ d3 = function() {
var vb = edge.b;
if (vb) return true;
var va = edge.a, x0 = extent[0][0], x1 = extent[1][0], y0 = extent[0][1], y1 = extent[1][1], lSite = edge.l, rSite = edge.r, lx = lSite.x, ly = lSite.y, rx = rSite.x, ry = rSite.y, fx = (lx + rx) / 2, fy = (ly + ry) / 2, fm, fb;
if (ry !== ly) {
fm = (lx - rx) / (ry - ly);
fb = fy - fm * fx;
}
if (fm == null) {
if (ry === ly) {
if (fx < x0 || fx >= x1) return;
if (lx > rx) {
if (!va) va = {
@ -4818,45 +4814,49 @@ d3 = function() {
y: y0
};
}
} else if (fm < -1 || fm > 1) {
if (lx > rx) {
if (!va) va = {
x: (y0 - fb) / fm,
y: y0
}; else if (va.y >= y1) return;
vb = {
x: (y1 - fb) / fm,
y: y1
};
} else {
if (!va) va = {
x: (y1 - fb) / fm,
y: y1
}; else if (va.y < y0) return;
vb = {
x: (y0 - fb) / fm,
y: y0
};
}
} else {
if (ly < ry) {
if (!va) va = {
x: x0,
y: fm * x0 + fb
}; else if (va.x >= x1) return;
vb = {
x: x1,
y: fm * x1 + fb
};
fm = (lx - rx) / (ry - ly);
fb = fy - fm * fx;
if (fm < -1 || fm > 1) {
if (lx > rx) {
if (!va) va = {
x: (y0 - fb) / fm,
y: y0
}; else if (va.y >= y1) return;
vb = {
x: (y1 - fb) / fm,
y: y1
};
} else {
if (!va) va = {
x: (y1 - fb) / fm,
y: y1
}; else if (va.y < y0) return;
vb = {
x: (y0 - fb) / fm,
y: y0
};
}
} else {
if (!va) va = {
x: x1,
y: fm * x1 + fb
}; else if (va.x < x0) return;
vb = {
x: x0,
y: fm * x0 + fb
};
if (ly < ry) {
if (!va) va = {
x: x0,
y: fm * x0 + fb
}; else if (va.x >= x1) return;
vb = {
x: x1,
y: fm * x1 + fb
};
} else {
if (!va) va = {
x: x1,
y: fm * x1 + fb
}; else if (va.x < x0) return;
vb = {
x: x0,
y: fm * x0 + fb
};
}
}
}
edge.a = va;

2
d3.min.js поставляемый

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -36,12 +36,7 @@ function d3_geom_voronoiConnectEdge(edge, extent) {
fm,
fb;
if (ry !== ly) {
fm = (lx - rx) / (ry - ly);
fb = fy - fm * fx;
}
if (fm == null) {
if (ry === ly) {
if (fx < x0 || fx >= x1) return;
if (lx > rx) {
if (!va) va = {x: fx, y: y0};
@ -52,25 +47,29 @@ function d3_geom_voronoiConnectEdge(edge, extent) {
else if (va.y < y0) return;
vb = {x: fx, y: y0};
}
} else if (fm < -1 || fm > 1) {
if (lx > rx) {
if (!va) va = {x: (y0 - fb) / fm, y: y0};
else if (va.y >= y1) return;
vb = {x: (y1 - fb) / fm, y: y1};
} else {
if (!va) va = {x: (y1 - fb) / fm, y: y1};
else if (va.y < y0) return;
vb = {x: (y0 - fb) / fm, y: y0};
}
} else {
if (ly < ry) {
if (!va) va = {x: x0, y: fm * x0 + fb};
else if (va.x >= x1) return;
vb = {x: x1, y: fm * x1 + fb};
fm = (lx - rx) / (ry - ly);
fb = fy - fm * fx;
if (fm < -1 || fm > 1) {
if (lx > rx) {
if (!va) va = {x: (y0 - fb) / fm, y: y0};
else if (va.y >= y1) return;
vb = {x: (y1 - fb) / fm, y: y1};
} else {
if (!va) va = {x: (y1 - fb) / fm, y: y1};
else if (va.y < y0) return;
vb = {x: (y0 - fb) / fm, y: y0};
}
} else {
if (!va) va = {x: x1, y: fm * x1 + fb};
else if (va.x < x0) return;
vb = {x: x0, y: fm * x0 + fb};
if (ly < ry) {
if (!va) va = {x: x0, y: fm * x0 + fb};
else if (va.x >= x1) return;
vb = {x: x1, y: fm * x1 + fb};
} else {
if (!va) va = {x: x1, y: fm * x1 + fb};
else if (va.x < x0) return;
vb = {x: x0, y: fm * x0 + fb};
}
}
}