Produces valid geojson with coordinates converted to wgs84.
grunt, build the site with
all ways of calling it return the same thing, an object with keys being feature class names and values being geojson.
either give it a path, in node to a .gdb folder or in the browser to a zipped .gdb file.
var fgdb = require'fgdb';fgdb'path/to/something.gdb(.zip)'then//do something//do something else;
in the browser you can also just pass a fileList aka from something like this:
which in chrome they can select a folder, or in other browsers they can select all the files inside the folder.
documentgetElementById"upload"addEventListener"change"fgdbfileInputfilesthen//do something//do something else;;
Both the browser and node will accept a buffer (node Buffer or ArrayBuffer) for a zipped .gdb, that simply returns the object.
- Figure out how feature names are stored in the database
- zipped files
- put it in a web worker or maybe in multiple web workers
- Promises, promises can fit in here somehow
not a high priority:
- Anything projections beyond wgs84 all of the things.
- M coordinates
- MultiPatch, curves or type of feature that doesn't translate to GeoJSON
- Support for browsers that aren’t the two more recent versions