(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.GeoJSON2SVG = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i -1) { return g.coordinates.map(function(part) { var single = {}; single.type = g.type.replace('Multi',''); single.coordinates = part; if(g.crs) single.crs = g.crs; return single; }); } else { return false; } } function implode(gs) { var sameType = gs.every(function(g) { return singles.indexOf(g.type) > -1; }) var crs = gs[0].crs || 0; var sameCrs = gs.every(function(g) { var gcrs = g.crs || 0; return gcrs == crs; }); if(sameType && sameCrs) { var multi = {}; multi.type = 'Multi' + gs[0].type; multi.coordinates = []; if(crs != 0) multi.crs = crs; gs.forEach(function(g) { multi.coordinates.push(g.coordinates); }); return multi; } else { return false; } }; var multigeojson = { explode: explode, implode: implode }; if(typeof module !== 'undefined' && module.exports) { module.exports = multigeojson; } else if(window) { window.multigeojson = multigeojson; } })(); },{}],5:[function(require,module,exports){ //converter.js var multi = require('multigeojson'); function getCoordString(coords,res,origin, precision, opt) { //origin - svg image origin var convertedCoords = coords.map(function(coord) { if (opt.coordinateConverter) { coord = opt.coordinateConverter(coord); } return [(coord[0] - origin.x)/res, (origin.y - coord[1])/res]; }); var coordStr = convertedCoords.map(function (coord) { if (precision) { return coord[0].toFixed(precision) + ',' + coord[1].toFixed(precision); } else { return coord[0] + ',' + coord[1]; } }); return coordStr.join(' '); } function addAttributes(ele,attributes) { var part = ele.split('/>')[0]; for(var key in attributes) { if(attributes[key]) { part += ' ' + key + '="' + attributes[key] + '"'; } } return part + ' />'; } function point(geom,res,origin,opt) { var r = opt && opt.r ? opt.r : 1; var pointAsCircle = opt && opt.hasOwnProperty('pointAsCircle') ? opt.pointAsCircle : false; var coords = getCoordString([geom.coordinates],res,origin,opt.precision, opt); if (pointAsCircle) { return [coords]; } else { return [ 'M' + coords + ' m'+ -r+ ',0'+ ' a'+r+','+ r + ' 0 1,1 '+ 2*r + ','+0 + ' a'+r+','+ r + ' 0 1,1 '+ -2*r + ','+0 ]; } } function multiPoint(geom,res,origin,opt) { var explode = opt && opt.hasOwnProperty('explode') ? opt.explode : false; var paths = multi.explode(geom).map(function(single) { return point(single,res,origin,opt)[0]; }); if(!explode) return [paths.join(' ')]; return paths; } function lineString(geom,res,origin,opt) { var coords = getCoordString(geom.coordinates,res,origin,opt.precision, opt); var path = 'M'+ coords; return [path]; } function multiLineString(geom,res,origin,opt) { var explode = opt && opt.hasOwnProperty('explode') ? opt.explode : false; var paths = multi.explode(geom).map(function(single) { return lineString(single,res,origin,opt)[0]; }); if(!explode) return [paths.join(' ')]; return paths; } function polygon(geom,res,origin,opt) { var mainStr,holes,holeStr; mainStr = getCoordString(geom.coordinates[0],res,origin,opt.precision, opt); if (geom.coordinates.length > 1) { holes = geom.coordinates.slice(1,geom.coordinates.length); } var path = 'M'+ mainStr; if(holes) { for(var i=0;i