Crate iron_shapes[][src]

Expand description

This crate provides basic data structures for Euclidean geometry in the plane.

Modules

edge

An edge is a line segment from a start-point to a end-point.

edge_integer

Edge intersection functions for integer coordinates.

edge_rational

Edge intersection functions for rational coordinates.

math

Math helper functions.

matrix2d

Data structures and functions for 2x2 matrices.

matrix3d

Data structures and functions for 3x3 matrices.

multi_polygon

Multi-polygons are a set of multiple polygons.

path

Path is essentially a chain of line segments but with a possibly non-zero width. It can be thought of the shape resulting by a stroke of a thick pen along the line segments.

point

Points represent a location in the two dimensional plane by an x and y coordinate.

point_string

A point string is a finite sequence of points.

polygon

This module contains data types and functions for polygons with holes.

prelude

The prelude can be used to conveniently import the commonly used data types.

rect

Data structures and functions for dealing with rectangles which consist of vertical and horizontal edges.

redge

An REdge is ‘rectilinear’ edge which is either horizontal or vertical.

repetition

Describe repetitions of geometrical objects.

shape

Abstractions for geometrical shapes.

simple_polygon

This module contains data types and functions for basic polygons without holes.

simple_rpolygon

This module contains data types and functions for basic rectilinear polygons without holes.

text

Text is used as labels associated with a point.

traits

Common traits for geometrical objects.

transform

Transforms are used to describe the location, rotation, scaling and mirroring of geometric shapes.

types

Commonly used type definitions and constants.

vector

Two dimensional vectors are a core data type for Euclidean geometry in the plane. Vectors consist of an x and y coordinate value and describe a translation in the plane.

Macros

point

Shorthand notation for creating a point.

polygon

Shorthand notation for creating a polygon.

simple_polygon

Shorthand notation for creating a simple polygon.

simple_rpolygon

Shorthand notation for creating a simple polygon.

vector

Shorthand notation for creating a vector.

Traits

CoordinateType

Trait for types that can be used as coordinates in the euclidean plane. In practice this are integers, floats and possible rational numbers.