Crate embedded_graphics_transform
source · [−]Expand description
Add simple coordinate transforms for embedded graphics displays
This crate adds DrawTarget
implementations which apply various simple
transformations to coordinates as they’re being written. This allows
graphics output to be rotated or mirrored to display correctly on a specific
display device.
Specifically, it implements:
- rotation by 90/180/270 degrees (and 0, for consistency)
- mirroring
- transposition
Note that these transformations can be composed if needed.
Because this is a completely generic implementation, it cannot take
advantage of any hardware or driver specific specializations. In particular,
DrawTarget::fill_contiguous
must fall back to a generic implementation
using draw_iter
.
(fill_solid
and clear
can
use specialized implementations, however.)
All the transforms implement AsRef<D>
/AsMut<D>
to get access to the
underlying display object so that its inherent functions can be called.
Structs
Mirror image around X axis.
Mirror image around Y axis.
Rotate an image with runtime configuration.
No-op (identity) rotation for completeness.
Rotate image 90 degrees to the right.
Rotate image 180 degrees.
Rotate image 90 degrees to the left.
Transpose X and Y coordinates.
Enums
Image rotation direction and amount.