Trait geo::algorithm::linestring_segment::LineStringSegmentize
source · pub trait LineStringSegmentize {
// Required method
fn line_segmentize(&self, n: usize) -> Option<MultiLineString>;
}
Expand description
Segments a LineString into n
equal length LineStrings as a MultiLineString.
None
will be returned when n
is equal to 0 or when a point
cannot be interpolated on a Line
segment.
§Examples
use geo::{LineString, MultiLineString, LineStringSegmentize};
// Create a simple line string
let lns: LineString<f64> = vec![[0.0, 0.0], [1.0, 2.0], [3.0, 6.0]].into();
// Segment it into n LineStrings inside of a MultiLineString
let n = 6;
let segmentized = lns.line_segmentize(n).unwrap();
// Compare the number of elements
assert_eq!(n, segmentized.0.len());