This module extracts administrative boundary polygons from openstreetmap data files. It's currently using node-osmium to do most of the work, and simply filtering the generated polygons using tags.
Note: you will need node
and npm
installed first.
The easiest way to install node.js
is with nave.sh by executing [sudo] ./nave.sh usemain stable
$ npm install fences-builder
This utility needs the following parameters.
Parameter | Description |
---|---|
inputFile |
Path to input file. Must be a valid OSM data file (pbf, osm, etc.) |
outputDir |
Path to an existing directory that will contain output files for each admin_level. |
$ fences-builder --inputFile=<file> --outputDir=<dir>
var FencesBuilder = require('fences-builder');
var builder = new FencesBuilder(inputFile, outputDir);
builder.start(function (err, results) {
if (err) {
console.error(colors.red('[Error]:'), err.message);
}
else {
console.log(colors.blue('[Results]:'), results);
}
});
- Osmium parser has been separated into a child process because it doesn't respect node's event loop.
- Cannot run with full planet file as input. Process runs out of memory. It is recommended that the planet data is pre-filtered using osmfilter or some other similar utility.
$ npm test
Note: the tests don't attempt to verify osmium functionality, we trust that things are working as expected there.