README.md

# Exshape
Parse ESRI Shapefiles
[![Build Status](https://travis-ci.org/rozap/exshape.svg?branch=master)](https://travis-ci.org/rozap/exshape)



## Usage
### Installation
Add

```elixir
{:exshape, "~> 2.1.2"}
```

to `mix.exs` deps

### From a zip archive
```elixir
[
  {"rivers", rivers_proj, river_shapes},
  {"lakes", lakes_proj, lake_shapes}
] = Exshape.from_zip("path/to/archive.zip")

Stream.each(river_shapes, &IO.inspect/1) |> Stream.run
Stream.each(lake_shapes, &IO.inspect/1) |> Stream.run
```

### Shapes from a SHP byte stream
```elixir
File.stream!("rivers.shp", [], 2048)
|> Exshape.Shp.read
|> Stream.each(&IO.inspect/1)
|> Stream.run
```

### Attributes from a DBF byte stream
```elixir
File.stream!("rivers.dbf", [], 2048)
|> Exshape.Dbf.read
|> Stream.each(&IO.inspect/1)
|> Stream.run
```