Module linestring::mint_2d[][src]

Expand description

This module is optional. To use if you must include the feature mint in your Cargo.toml file.

By default all features are enabled (this is a work-around to enable the automatic rust doc). If you want to only enable the mint feature you must first disable the default features with default-features=false.

Cargo.toml example: linestring = {version="<current version>",default-features=false,features=["mint"]}

Modules

Module containing the convex hull calculations

Module containing the intersection calculations

Structs

A simple 2d AABB If min_max is none the data has not been assigned yet.

A 2d line

A 2d line string, aka polyline. If the ‘connected’ field is set the ‘as_lines()’ method will connect start point with the end-point. Todo: The builder structure of this struct needs to be revisited

A set of 2d LineString, an aabb + convex_hull. It also contains a list of aabb & convex_hulls of shapes this set has gobbled up. This can be useful for separating out inner regions of the shape.

This is a simple but efficient affine transformation object. It can pan, zoom and flip points around center axis but not rotate. It does not handle vector transformation, only points.

A parabolic arc as used in https://github.com/eadf/boostvoronoi.rs This struct contains the parameters for the arc + the functionality to convert it to a LineString2 or LineString3.

Enums

Placeholder for different 2d shapes

Functions

The distance between the line a->b to the point p is the same as distance = |(a-p)×(a-b)|/|a-b| https://en.wikipedia.org/wiki/Distance_from_a_point_to_a_line#Another_vector_formulation Make sure to not call this function with a-b==0 This function returns the distance²

Same as distance_to_line_squared but it can be called when a-b might be 0. It’s a little slower because it does the a==b test

The distance² between the two points

Get any intersection point between line segment and point. Inspired by https://stackoverflow.com/a/17590923