Crate line_drawing

Source
Expand description

A collection of line-drawing algorithms for use in graphics and video games.

Currently implemented:

Modules§

octant
A simple octant struct for transforming line points.
steps
An iterator that returns (start, end) tuples from the walk.

Structs§

Bresenham
An implementation of Bresenham’s line algorithm.
Bresenham3d
An 3-D implementation of bresenham, sourced from this site.
BresenhamCircle
An implementation of Bresenham’s circle algorithm.
Midpoint
An implementation of the mid-point line drawing algorithm.
Supercover
Like WalkGrid but takes diagonal steps if the line passes directly over a corner.
WalkGrid
Walk along a grid, taking only orthogonal steps.
WalkVoxels
Walk between two voxels, taking orthogonal steps and visiting all voxels in between.
XiaolinWu
An implementation of Xiaolin Wu’s line algorithm.

Enums§

VoxelOrigin
Whether the center or corner of a voxel is aligned with the “grid”.

Traits§

FloatNum
All the floating-point primitives.
SignedNum
All the signed integer primitives.

Type Aliases§

Point
A point in 2D space.
Voxel
An point in 3D space.