Skip to content

Commit 11a19ec

Browse files
committed
Merge branch 'fix-greatarc-target'
2 parents baf7855 + 58fb99d commit 11a19ec

File tree

7 files changed

+42
-22
lines changed

7 files changed

+42
-22
lines changed

component.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"name": "d3",
3-
"version": "3.0.3",
3+
"version": "3.0.4",
44
"main": "./d3.js"
55
}

d3.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
};
1313
}
1414
d3 = {
15-
version: "3.0.3"
15+
version: "3.0.4"
1616
};
1717
var π = Math.PI, ε = 1e-6, d3_radians = π / 180, d3_degrees = 180 / π;
1818
function d3_target(d) {
@@ -6159,9 +6159,9 @@
61596159
return interpolate;
61606160
}
61616161
d3.geo.greatArc = function() {
6162-
var source = d3_source, s, target = d3_target, t, precision = 6 * d3_radians, interpolate;
6162+
var source = d3_source, source_, target = d3_target, target_, precision = 6 * d3_radians, interpolate;
61636163
function greatArc() {
6164-
var p0 = s || source.apply(this, arguments), p1 = t || target.apply(this, arguments), i = interpolate || d3.geo.interpolate(p0, p1), t = 0, dt = precision / i.distance, coordinates = [ p0 ];
6164+
var p0 = source_ || source.apply(this, arguments), p1 = target_ || target.apply(this, arguments), i = interpolate || d3.geo.interpolate(p0, p1), t = 0, dt = precision / i.distance, coordinates = [ p0 ];
61656165
while ((t += dt) < 1) coordinates.push(i(t));
61666166
coordinates.push(p1);
61676167
return {
@@ -6170,18 +6170,18 @@
61706170
};
61716171
}
61726172
greatArc.distance = function() {
6173-
return (interpolate || d3.geo.interpolate(s || source.apply(this, arguments), t || target.apply(this, arguments))).distance;
6173+
return (interpolate || d3.geo.interpolate(source_ || source.apply(this, arguments), target_ || target.apply(this, arguments))).distance;
61746174
};
61756175
greatArc.source = function(_) {
61766176
if (!arguments.length) return source;
6177-
source = _, s = typeof _ === "function" ? null : _;
6178-
interpolate = s && t ? d3.geo.interpolate(s, t) : null;
6177+
source = _, source_ = typeof _ === "function" ? null : _;
6178+
interpolate = source_ && target_ ? d3.geo.interpolate(source_, target_) : null;
61796179
return greatArc;
61806180
};
61816181
greatArc.target = function(_) {
61826182
if (!arguments.length) return target;
6183-
target = _, t = typeof _ === "function" ? null : _;
6184-
interpolate = s && t ? d3.geo.interpolate(s, t) : null;
6183+
target = _, target_ = typeof _ === "function" ? null : _;
6184+
interpolate = source_ && target_ ? d3.geo.interpolate(source_, target_) : null;
61856185
return greatArc;
61866186
};
61876187
greatArc.precision = function(_) {

d3.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "d3",
3-
"version": "3.0.3",
3+
"version": "3.0.4",
44
"description": "A small, free JavaScript library for manipulating documents based on data.",
55
"keywords": [
66
"dom",

src/core/core.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
d3 = {version: "3.0.3"}; // semver
1+
d3 = {version: "3.0.4"}; // semver
22

33
var π = Math.PI,
44
ε = 1e-6,

src/geo/greatArc.js

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
d3.geo.greatArc = function() {
2-
var source = d3_source, s,
3-
target = d3_target, t,
2+
var source = d3_source, source_,
3+
target = d3_target, target_,
44
precision = 6 * d3_radians,
55
interpolate;
66

77
function greatArc() {
8-
var p0 = s || source.apply(this, arguments),
9-
p1 = t || target.apply(this, arguments),
8+
var p0 = source_ || source.apply(this, arguments),
9+
p1 = target_ || target.apply(this, arguments),
1010
i = interpolate || d3.geo.interpolate(p0, p1),
1111
t = 0,
1212
dt = precision / i.distance,
@@ -18,20 +18,20 @@ d3.geo.greatArc = function() {
1818

1919
// Length returned in radians; multiply by radius for distance.
2020
greatArc.distance = function() {
21-
return (interpolate || d3.geo.interpolate(s || source.apply(this, arguments), t || target.apply(this, arguments))).distance;
21+
return (interpolate || d3.geo.interpolate(source_ || source.apply(this, arguments), target_ || target.apply(this, arguments))).distance;
2222
};
2323

2424
greatArc.source = function(_) {
2525
if (!arguments.length) return source;
26-
source = _, s = typeof _ === "function" ? null : _;
27-
interpolate = s && t ? d3.geo.interpolate(s, t) : null;
26+
source = _, source_ = typeof _ === "function" ? null : _;
27+
interpolate = source_ && target_ ? d3.geo.interpolate(source_, target_) : null;
2828
return greatArc;
2929
};
3030

3131
greatArc.target = function(_) {
3232
if (!arguments.length) return target;
33-
target = _, t = typeof _ === "function" ? null : _;
34-
interpolate = s && t ? d3.geo.interpolate(s, t) : null;
33+
target = _, target_ = typeof _ === "function" ? null : _;
34+
interpolate = source_ && target_ ? d3.geo.interpolate(source_, target_) : null;
3535
return greatArc;
3636
};
3737

test/geo/greatArc-test.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,26 @@ suite.addBatch({
1717
target: [ 73 + 47 / 60, 40 + 38 / 60]
1818
}), 3973 / 6371, .5);
1919
},
20+
"source and target can be set as constants": function() {
21+
var arc = d3.geo.greatArc()
22+
.source([5, 52])
23+
.target([-120, 37])
24+
.precision(7.2);
25+
assert.inDelta(arc().coordinates, [
26+
[ 5, 52 ],
27+
[ -3.805036, 57.05083],
28+
[ -15.122869, 61.30118],
29+
[ -29.396213, 64.34584],
30+
[ -46.132729, 65.72409],
31+
[ -63.394401, 65.15597],
32+
[ -78.854311, 62.76337],
33+
[ -91.401599, 58.96701],
34+
[-101.190927, 54.21333],
35+
[-108.843633, 48.83586],
36+
[-114.961152, 43.05231],
37+
[-120, 37 ]
38+
], .5);
39+
},
2040
"geodesic": function(arc) {
2141
assert.inDelta(arc.precision(7.2)({source: [5, 52], target: [-120, 37]}).coordinates, [
2242
[ 5, 52 ],

0 commit comments

Comments
 (0)