Sha256: bfae62c22713165ec2616a3ba8dece371a20e9c0c818d664462ef8d051a75794

Contents?: true

Size: 625 Bytes

Versions: 2

Compression:

Stored size: 625 Bytes

Contents

// @import parallel1
// @import sinusoidal

function bonne(φ0) {
  if (!φ0) return sinusoidal;
  var cotφ0 = 1 / Math.tan(φ0);

  function forward(λ, φ) {
    var ρ = cotφ0 + φ0 - φ,
        E = λ * Math.cos(φ) / ρ;
    return [
      ρ * Math.sin(E),
      cotφ0 - ρ * Math.cos(E)
    ];
  }

  forward.invert = function(x, y) {
    var ρ = Math.sqrt(x * x + (y = cotφ0 - y) * y),
        φ = cotφ0 + φ0 - ρ;
    return [
      ρ / Math.cos(φ) * Math.atan2(x, y),
      φ
    ];
  };

  return forward;
}

(d3.geo.bonne = function() { return parallel1Projection(bonne).parallel(45); }).raw = bonne;

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
d3js-plugins-rails-0.0.2 vendor/assets/javascripts/d3/plugins/geo/projection/bonne.js
d3js-plugins-rails-0.0.1 vendor/assets/javascripts/d3/plugins/geo/projection/bonne.js