mypaint / libmypaint

libmypaint, a.k.a. "brushlib", is a library for making brushstrokes which is used by MyPaint and other projects.
http://mypaint.org
Other
307 stars 87 forks source link

Adjustable symmetry angle #156

Closed jplloyd closed 4 years ago

jplloyd commented 4 years ago

Adds a matrix type, with some basic transforms, refactors the symmetry code to make use of precalculated transformation matrices and splits it out into a separate source/header file.

The ability to adjust the angle of the symmetry lines is added, allowing for much more flexible use.

This breaks the API in two ways: adding the angle parameter to set_symmetry_state and changing the layout/contents of the MyPaintTiledSurface struct. To my knowledge, no other program than MyPaint makes use of that part of the API, so it shouldn't be an issue.