3 releases (breaking)

0.3.0 Apr 25, 2021
0.2.0 Apr 6, 2021
0.1.0 Jul 3, 2019

#3 in #margin


Used in aoer-plotty-rs

ISC license

27KB
675 lines

geo-offset

This crate contains algorithms to shrink and dilate various geometric shapes.

crate.io docs.rs

This code is a Rust port of the JS lib polygon-offset.

Example

The following example shows how to compute an inflated line. The offset method is provided by the Offset trait which is implemented for most geo-types.

use geo_types::{Coordinate, Line};
use geo_offset::Offset;

let line = Line::new(
    Coordinate { x: 0.0, y: 0.0 },
    Coordinate { x: 1.0, y: 8.0 },
);

let line_with_offset = line.offset(2.0)?;

lib.rs:

This crate contains algorithms to shrink and dilate various geometric shapes.

This code is a Rust port of the JS lib polygon-offset.

Example

The following example shows how to compute an inflated line.
The offset method is provided by the Offset trait which is implemented for most geo-types.

use geo_types::{Coordinate, Line};
use geo_offset::Offset;

let line = Line::new(
    Coordinate { x: 0.0, y: 0.0 },
    Coordinate { x: 1.0, y: 8.0 },
);

let line_with_offset = line.offset(2.0)?;

Dependencies

~4.5–7MB
~130K SLoC