Loading Gruntfile.js +3 −12 Original line number Diff line number Diff line var buildDefs = require('./buildDefs'); module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), Loading Loading @@ -107,14 +105,7 @@ module.exports = function(grunt) { grunt.loadNpmTasks('grunt-contrib-connect'); grunt.loadNpmTasks('grunt-mocha-phantomjs'); grunt.registerTask('test', ['connect', 'mocha_phantomjs:before']); grunt.registerTask('defs',function(){ var defs = grunt.option('defs'); if(defs && defs.indexOf(',')>-1){ defs = defs.split(','); } buildDefs.defs(defs); }); grunt.registerTask('amd',['defs','jshint','requirejs:amd','connect','mocha_phantomjs:amd']); grunt.registerTask('build',['defs','jshint','requirejs:custom']); grunt.registerTask('default', ['defs','jshint','test','requirejs:reg','requirejs:amd','mocha_phantomjs:after','mocha_phantomjs:amd']); grunt.registerTask('amd',['jshint','requirejs:amd','connect','mocha_phantomjs:amd']); grunt.registerTask('build',['jshint','requirejs:custom']); grunt.registerTask('default', ['jshint','test','requirejs:reg','requirejs:amd','mocha_phantomjs:after','mocha_phantomjs:amd']); } buildDefs.jsdeleted 100644 → 0 +0 −89 Original line number Diff line number Diff line var defaultLocals = require('./src/defs/defaultLocals'); var top = "define(function() {return function(defs) {defs("; var end = ")}});"; var pTop = "define(function(require, exports) {"; var pBottom = "});" var projes = { aea: "exports.aea = require('./projCode/aea');", lcc: "exports.lcc = require('./projCode/lcc');", utm: "exports.utm = require('./projCode/utm');", aeqd: "exports.aeqd = require('./projCode/aeqd');", eqdc: "exports.eqdc = require('./projCode/eqdc');", merc: "exports.merc = require('./projCode/merc');", poly: "exports.poly = require('./projCode/poly');", mill: "exports.mill = require('./projCode/mill');", cea: "exports.cea = require('./projCode/cea');", krovak: "exports.krovak = require('./projCode/krovak');", sterea: "exports.sterea = require('./projCode/sterea');", laea: "exports.laea = require('./projCode/laea');", cass: "exports.cass = require('./projCode/cass');", eqc: "exports.eqc = require('./projCode/eqc');", tmerc: "exports.tmerc = require('./projCode/tmerc');", longlat: "exports.longlat = require('./projCode/longlat');exports.identity=exports.longlat;", somerc: "exports.somerc = require('./projCode/somerc');", sinu: "exports.sinu = require('./projCode/sinu');", stere: "exports.stere = require('./projCode/stere');", gnom: "exports.gnom = require('./projCode/gnom');", omerc: "exports.omerc = require('./projCode/omerc');", nzmg: "exports.nzmg = require('./projCode/nzmg');", moll: "exports.moll = require('./projCode/moll');", vandg: "exports.vandg = require('./projCode/vandg');" }; var fs = require('fs'); function buildDefs(defs) { if (!defs) { return writeDefs(defaultLocals); } else if (typeof defs === 'string') { return writeDefs(defaultLocals.filter(filterString(defs))); } else { return writeDefs(defaultLocals.filter(filterArray(defs))); } } function writeDefs(defs) { writeProjes(defs); fs.writeFileSync('./src/defs/local.js', top + JSON.stringify(defs) + end, 'utf8'); } function writeProjes(defs) { var out = {}; defs.forEach(function(d) { if (d.projName && (d.projName in projes)) { out[d.projName] = projes[d.projName]; } }); out.longlat = projes.longlat; out.identity = out.longlat; var outString = pTop; for (var key in out) { outString += out[key]; } outString += pBottom; fs.writeFileSync('./src/projections.js', outString, 'utf8'); } function filterString(string) { var key = string.split(':')[0]; var value = string.split(':')[1]; return function(obj) { return (key in obj) && obj[key] === value; }; } function filterArray(array) { var funcArray = array.map(filterString); return function(obj) { return funcArray.some(function(f) { return f(obj); }); }; } exports.defs = buildDefs; src/Proj.js +1 −1 Original line number Diff line number Diff line define(['./extend','./common','./defs','./constants','./datum','./projections','./wkt2'],function(extend, common, defs,constants,datum,projections,wkt) { define(['./extend','./common','./defs','./constants','./datum','./projections','./wkt'],function(extend, common, defs,constants,datum,projections,wkt) { var proj = function proj(srsCode) { if (!(this instanceof proj)) { Loading src/constants.js +5 −0 Original line number Diff line number Diff line Loading @@ -236,6 +236,11 @@ define(function() { ellipse: "WGS84", datumName: "WGS84" }, "ch1903":{ towgs84:"674.374,15.056,405.346", ellipse:"bessel", datumName:"swiss" }, "ggrs87": { towgs84: "-199.87,74.79,246.62", ellipse: "GRS80", Loading src/projCode/lcc.js +3 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,9 @@ define(['../common'],function(common) { else { this.ns = sin1; } if(isNaN(this.ns)){ this.ns = sin1; } this.f0 = ms1 / (this.ns * Math.pow(ts1, this.ns)); this.rh = this.a * this.f0 * Math.pow(ts0, this.ns); if (!this.title) { Loading Loading
Gruntfile.js +3 −12 Original line number Diff line number Diff line var buildDefs = require('./buildDefs'); module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), Loading Loading @@ -107,14 +105,7 @@ module.exports = function(grunt) { grunt.loadNpmTasks('grunt-contrib-connect'); grunt.loadNpmTasks('grunt-mocha-phantomjs'); grunt.registerTask('test', ['connect', 'mocha_phantomjs:before']); grunt.registerTask('defs',function(){ var defs = grunt.option('defs'); if(defs && defs.indexOf(',')>-1){ defs = defs.split(','); } buildDefs.defs(defs); }); grunt.registerTask('amd',['defs','jshint','requirejs:amd','connect','mocha_phantomjs:amd']); grunt.registerTask('build',['defs','jshint','requirejs:custom']); grunt.registerTask('default', ['defs','jshint','test','requirejs:reg','requirejs:amd','mocha_phantomjs:after','mocha_phantomjs:amd']); grunt.registerTask('amd',['jshint','requirejs:amd','connect','mocha_phantomjs:amd']); grunt.registerTask('build',['jshint','requirejs:custom']); grunt.registerTask('default', ['jshint','test','requirejs:reg','requirejs:amd','mocha_phantomjs:after','mocha_phantomjs:amd']); }
buildDefs.jsdeleted 100644 → 0 +0 −89 Original line number Diff line number Diff line var defaultLocals = require('./src/defs/defaultLocals'); var top = "define(function() {return function(defs) {defs("; var end = ")}});"; var pTop = "define(function(require, exports) {"; var pBottom = "});" var projes = { aea: "exports.aea = require('./projCode/aea');", lcc: "exports.lcc = require('./projCode/lcc');", utm: "exports.utm = require('./projCode/utm');", aeqd: "exports.aeqd = require('./projCode/aeqd');", eqdc: "exports.eqdc = require('./projCode/eqdc');", merc: "exports.merc = require('./projCode/merc');", poly: "exports.poly = require('./projCode/poly');", mill: "exports.mill = require('./projCode/mill');", cea: "exports.cea = require('./projCode/cea');", krovak: "exports.krovak = require('./projCode/krovak');", sterea: "exports.sterea = require('./projCode/sterea');", laea: "exports.laea = require('./projCode/laea');", cass: "exports.cass = require('./projCode/cass');", eqc: "exports.eqc = require('./projCode/eqc');", tmerc: "exports.tmerc = require('./projCode/tmerc');", longlat: "exports.longlat = require('./projCode/longlat');exports.identity=exports.longlat;", somerc: "exports.somerc = require('./projCode/somerc');", sinu: "exports.sinu = require('./projCode/sinu');", stere: "exports.stere = require('./projCode/stere');", gnom: "exports.gnom = require('./projCode/gnom');", omerc: "exports.omerc = require('./projCode/omerc');", nzmg: "exports.nzmg = require('./projCode/nzmg');", moll: "exports.moll = require('./projCode/moll');", vandg: "exports.vandg = require('./projCode/vandg');" }; var fs = require('fs'); function buildDefs(defs) { if (!defs) { return writeDefs(defaultLocals); } else if (typeof defs === 'string') { return writeDefs(defaultLocals.filter(filterString(defs))); } else { return writeDefs(defaultLocals.filter(filterArray(defs))); } } function writeDefs(defs) { writeProjes(defs); fs.writeFileSync('./src/defs/local.js', top + JSON.stringify(defs) + end, 'utf8'); } function writeProjes(defs) { var out = {}; defs.forEach(function(d) { if (d.projName && (d.projName in projes)) { out[d.projName] = projes[d.projName]; } }); out.longlat = projes.longlat; out.identity = out.longlat; var outString = pTop; for (var key in out) { outString += out[key]; } outString += pBottom; fs.writeFileSync('./src/projections.js', outString, 'utf8'); } function filterString(string) { var key = string.split(':')[0]; var value = string.split(':')[1]; return function(obj) { return (key in obj) && obj[key] === value; }; } function filterArray(array) { var funcArray = array.map(filterString); return function(obj) { return funcArray.some(function(f) { return f(obj); }); }; } exports.defs = buildDefs;
src/Proj.js +1 −1 Original line number Diff line number Diff line define(['./extend','./common','./defs','./constants','./datum','./projections','./wkt2'],function(extend, common, defs,constants,datum,projections,wkt) { define(['./extend','./common','./defs','./constants','./datum','./projections','./wkt'],function(extend, common, defs,constants,datum,projections,wkt) { var proj = function proj(srsCode) { if (!(this instanceof proj)) { Loading
src/constants.js +5 −0 Original line number Diff line number Diff line Loading @@ -236,6 +236,11 @@ define(function() { ellipse: "WGS84", datumName: "WGS84" }, "ch1903":{ towgs84:"674.374,15.056,405.346", ellipse:"bessel", datumName:"swiss" }, "ggrs87": { towgs84: "-199.87,74.79,246.62", ellipse: "GRS80", Loading
src/projCode/lcc.js +3 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,9 @@ define(['../common'],function(common) { else { this.ns = sin1; } if(isNaN(this.ns)){ this.ns = sin1; } this.f0 = ms1 / (this.ns * Math.pow(ts1, this.ns)); this.rh = this.a * this.f0 * Math.pow(ts0, this.ns); if (!this.title) { Loading