summaryrefslogtreecommitdiff
path: root/shared-module/vectorio/VectorShape.c
AgeCommit message (Collapse)Author
2020-07-20vectorio: fix VectorShape non-transposed pixel placementKenny
Fixes https://github.com/adafruit/circuitpython/issues/3170 The absolute transform needs to be subtracted in all cases, not only when the coordinate system is transposed.
2020-06-03Fix up end of file and trailing whitespace.Diego Elio Pettenò
This can be enforced by pre-commit, but correct it separately to make it easier to review.
2020-05-12add performance measurement to VectorShapewarriorofwire
2020-05-10vectorio: clean up after group removalwarriorofwire
VectorShape tells the Group to redraw whatever it left behind when it is removed now.
2020-05-10vectorio: respect display transpose and mirror.warriorofwire
VectorShape now just uses the Group's and Display's absolute transforms.
2020-05-09vectorio: switch per-shape transform to Displaywarriorofwire
Rather than maintain a transform per-shape, we'll just use whatever settings are on the Display. Currently only transpose is done.
2020-05-09Add vectorio: for drawing shapeswarriorofwire
vectorio builds on m4 express feather Concrete shapes are composed into a VectorShape which is put into a displayio Group for display. VectorShape provides transpose and x/y positioning for shape implementations. Included Shapes: * Circle - A radius; Circle is positioned at its axis in the VectorShape. - You can freely modify the radius to grow and shrink the circle in-place. * Polygon - An ordered list of points. - Beteween each successive point an edge is inferred. A final edge closing the shape is inferred between the last point and the first point. - You can modify the points in a Polygon. The points' coordinate system is relative to (0, 0) so if you'd like a top-center justified 10x20 rectangle you can do points [(-5, 0), (5, 0), (5, 20), (0, 20)] and your VectorShape x and y properties will position the rectangle relative to its top center point * Rectangle A width and a height.