Sha256: ed34ac4687d89d9db27b542fcbeb66a58edce10d693e0de0c784c45ffb6c353a
Contents?: true
Size: 742 Bytes
Versions: 2
Compression:
Stored size: 742 Bytes
Contents
function vanDerGrinten3(λ, φ) { if (Math.abs(φ) < ε) return [λ, 0]; var sinθ = 2 * φ / π, θ = asin(sinθ); if (Math.abs(λ) < ε || Math.abs(Math.abs(φ) - π / 2) < ε) return [0, π * Math.tan(θ / 2)]; var A = (π / λ - λ / π) / 2, y1 = sinθ / (1 + Math.cos(θ)); return [ π * (sgn(λ) * asqrt(A * A + 1 - y1 * y1) - A), π * y1 ]; } vanDerGrinten3.invert = function(x, y) { if (!y) return [x, 0]; var y1 = y / π, A = (π * π * (1 - y1 * y1) - x * x) / (2 * π * x); return [ x ? π * (sgn(x) * Math.sqrt(A * A + 1) - A) : 0, π / 2 * Math.sin(2 * Math.atan(y1)) ]; }; (d3.geo.vanDerGrinten3 = function() { return projection(vanDerGrinten3); }).raw = vanDerGrinten3;
Version data entries
2 entries across 2 versions & 1 rubygems