A Fiona CLI plugin for buffering geometries.
Project description
A Fiona CLI plugin for buffering geometries in parallel. Powered by Shapely.
Usage
Usage: fio buffer [OPTIONS] INFILE OUTFILE
Geometries can be dilated with a positive distance, eroded with a negative
distance, and in some cases cleaned or repaired with a distance of 0.
Examples
--------
Default settings - buffer geometries in the input CRS:
$ fio buffer in.geojson out.geojson --distance 10
Dynamically buffer geometries by a distance stored in the field
'magnitude' and write as GeoJSON:
$ fio buffer \
in.shp \
out.geojson \
--driver GeoJSON \
--distance magnitude
Read geometries from one CRS, buffer in another, and then write to a
third:
$ fio buffer in.shp out.shp \
--distance 10 \
--buf-crs EPSG:3857 \
--dst-crs EPSG:32618
Control cap style, mitre limit, segment resolution, and join style:
$ fio buffer in.geojson out.geojson \
--distance 0.1 \
--res 5 \
--cap-style flat \
--join-style mitre \
--mitre-limit 0.1\
Options:
--version Show the version and exit.
-f, --format, --driver NAME Output driver name. Derived from the input
datasource if not given.
--cap-style [flat|round|square]
Where geometries terminate, use this style.
[default: round]
--join-style [round|mitre|bevel]
Where geometries touch, use this style.
[default: round]
--res INTEGER Resolution of the buffer around each vertex
of the geometry. [default: 16]
--mitre-limit FLOAT When using a mitre join, limit the maximum
length of the join corner according to this
ratio. [default: 5.0]
--distance FLOAT|FIELD Buffer distance or field containing distance
values. Units match --buf-crs. When
buffering with a field, feature's with a
null value are unaltered. [required]
--src-crs TEXT Specify CRS for input data. Not needed if
set in input file.
--buf-crs TEXT Perform buffer operations in a different
CRS. [default: --src-crs]
--dst-crs TEXT Reproject geometries to a different CRS
before writing. Must be combined with
--buf-crs. [default: --src-crs]
--geom-type GEOMTYPE Output layer's geometry type. [default:
MultiPolygon]
--skip-failures Skip geometries that fail somewhere in the
processing pipeline.
--jobs CORES Process geometries in parallel across N
cores. Feature ID's and order are not
preserved if more that 1 cores are used.
[default: 1]
--help Show this message and exit.
Installing
Via pip:
$ pip install fio-buffer
From source:
$ git clone https://github.com/geowurster/fio-buffer
$ cd fio-buffer
$ python setup.py install
Developing
$ git clone https://github.com/geowurster/fio-buffer
$ cd fio-buffer
$ virtualenv venv
$ source venv/bin/activate
$ pip install -e .[dev]
$ py.test tests --cov fio_buffer --cov-report term-missing
License
See LICENSE.txt.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fio-buffer-0.1.1.tar.gz
(8.5 kB
view details)
File details
Details for the file fio-buffer-0.1.1.tar.gz
.
File metadata
- Download URL: fio-buffer-0.1.1.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68a93b356981fa3665a7db075c9ad2a14ce0b66f4084a50ddf9641f1f6e3681a |
|
MD5 | 3cc1a59c4473d37eee58eaac7261edf5 |
|
BLAKE2b-256 | f6eb53347d16a000eb1604abc58acb41ad3a343edb86a7870fdd0154c7257362 |