README
geojson-geometries
⛏ Extract elementary geometries from a GeoJSON inheriting properties.
Coded with ❤️ by Simone Primarosa.
Install
$ npm install --save geojson-geometries
Usage
const GeoJsonGeometries = require('geojson-geometries');
const geojson = {type: 'FeatureCollection',
features: [{
type: 'Feature',
geometry: {
type: 'Point',
coordinates: [102.0, 0.5]
},
properties: {prop0: 'value0'}
}, {
type: 'Feature',
geometry: {
type: 'LineString',
coordinates: [[102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]]
},
properties: {prop1: 'value1'}
}, {
type: 'Feature',
geometry: {
type: 'Polygon',
coordinates: [
[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]]
]
},
properties: {prop2: 'value2'}
}]
};
const extracted = new GeoJsonGeometries(geojson);
extracted.points
// => {
// type: "FeatureCollection",
// features: [{
// type: "Feature",
// geometry: {
// type: "Point",
// coordinates: [102, 0.5]
// },
// properties: {prop0: 'value0'}
// }]
// }
extracted.lines
// => {
// type: "FeatureCollection",
// features: [{
// type: "Feature",
// geometry: {
// type: "LineString",
// coordinates: [[[102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]]]
// },
// properties: {prop1: 'value1'}
// }]
// }
extracted.polygons
// => {
// type: "FeatureCollection",
// features: [{
// type: "Feature",
// geometry: {
// type: "Polygon",
// coordinates: [[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]]]
// },
// properties: {prop2: 'value2'}
// }]
// }
API
new GeoJsonGeometries(geoJson, [options])
Create an instance of the geometries extractor.
Param | Type | Description |
---|---|---|
geoJson | Object |
The GeoJSON from which extract the geometries. |
[options] | Object |
Optional options. |
options.ignorePoints | boolean |
If true the extractor will ignore geometries of type Point. |
options.ignoreLines | boolean |
If true the extractor will ignore geometries of type LineString. |
options.ignorePolygon | boolean |
If true the extractor will ignore geometries of type Polygon. |
Array.<Object>
geoJsonGeometries.points ⇒ Returns the list of geometries of type Point found in the GeoJSON.
Kind: instance property of GeoJsonGeometries
Returns: Array.<Object>
- A FeatureCollection of points with inherited properties if any.
Array.<Object>
geoJsonGeometries.lines ⇒ Returns the list of geometries of type LineString found in the GeoJSON.
Kind: instance property of GeoJsonGeometries
Returns: Array.<Object>
- A FeatureCollection of lines with inherited properties if any.
Array.<Object>
geoJsonGeometries.polygons ⇒ Returns the list of geometries of type Polygon found in the GeoJSON.
Kind: instance property of GeoJsonGeometries
Returns: Array.<Object>
- A FeatureCollection of polygons with inherited properties if any.
Authors
- Simone Primarosa - Github (@simonepri) • Twitter (@simoneprimarosa)
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the license file for details.