[][src]Crate shapefile

Read & Write Shapefile in Rust

.dbf can be read & written to (but the support for this is still alpha-ish)

As different shapefiles can store different type of shapes (but one shapefile can only store the same type of shapes) This library provide two ways of reading the shapes:

  1. Reading as Shape and then do a match to handle the different shapes
  2. Reading directly as concrete shapes (ie Polyline, PolylineZ, Point, etc) this of course only works if the file actually contains shapes that matches the requested type

Reading

For more details see the reader module

Writing

To write a file see the writer module

Features

The geo-types feature can be enabled to have access to From and TryFrom implementations allowing to convert (or try to) back and forth between shapefile's type and the one in geo_types

Re-exports

pub use reader::read;
pub use reader::read_as;
pub use reader::Reader;
pub use record::traits::MultipartShape;
pub use record::traits::MultipointShape;
pub use record::Multipatch;
pub use record::convert_shapes_to_vec_of;
pub use record::HasShapeType;
pub use record::ReadableShape;
pub use record::Multipoint;
pub use record::MultipointM;
pub use record::MultipointZ;
pub use record::PatchType;
pub use record::Shape;
pub use record::NO_DATA;
pub use record::Point;
pub use record::PointM;
pub use record::PointZ;
pub use record::Polygon;
pub use record::PolygonM;
pub use record::PolygonZ;
pub use record::Polyline;
pub use record::PolylineM;
pub use record::PolylineZ;
pub use writer::Writer;

Modules

header
reader

Reader module, contains the definitions of the types that a user should use to read a file

record
writer

Module with the definition of the Writer that allows writing shapefile

Enums

Error

All Errors that can happen when using this library

ShapeType

The enum for the ShapeType as defined in the specification