WIP Rotational brushes now supported

Unlike "directional" brushes, in which a 3x3 grid representing the
8 cardinal directions (45 degree steps) is used, only a single brush
image is required, and Tux Paint will rotate it between 0 and 360 degrees,
depending on the direction the mouse is going.

The brush's ".dat" file should contain a line consisting of the word
"rotate".

Note: This adds a dependency on "SDL_gfx" library (Homepage:
https://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx/
SourceForge project page: https://sourceforge.net/projects/sdlgfx/)
as this feature use it's "rotozoom" functionality.

WIP -- Doesn't handle animated brushes correctly yet!

Closes https://sourceforge.net/p/tuxpaint/feature-requests/122/
This commit is contained in:
Bill Kendrick 2021-09-06 23:44:35 -07:00
parent 8a97e83a7b
commit a3080eef18
27 changed files with 316 additions and 110 deletions

View file

@ -26,7 +26,7 @@
</p>
<p>
31 de Maio de 2021 </p>
6 de Setembro de 2021 </p>
</center>
<hr size="2"
@ -367,14 +367,25 @@
</blockquote>
<h4>
Pinceis direccionais animados </h4>
Rotating Brushes </h4>
<blockquote>
<p>
Pode mesturar funcións animadas e direccionais nun pincel. Use ambas as opcións («<code><b>frames=<i>N</i></b></code>» e «<code><b>directional</b></code>»), en liñas separadas no ficheiro «<code>.dat</code>» do pincel. </p>
As of Tux Paint version 0.9.27, you may now create rotating brushes. As the brush is used, it is rotated 360 degrees, depending on the direction the brush is going. </p>
<p>
Coloque o pincel de xeito que cada conxunto de formas 3x3 de dirección estea distribuído nunha ampla imaxe PNG. Por exemplo, se o pincel ten 30x30 e hai 5 fotogramas, sería de 450x90. (Os píxeles máis a esquerda de 150x90 da imaxe representan as 9 formas de dirección do primeiro cadro, por exemplo). </p>
Engada unha liña que conteña a palabra «<code><b>rotate</b></code>» ao ficheiro de datos debrush's. </p>
</blockquote>
<h4>
Animated Directional or Rotating Brushes </h4>
<blockquote>
<p>
You may mix both animated and either directional or rotating features into one brush. Use both options desired ("<code><b>frames=<i>N</i></b></code>" and "<code><b>directional</b></code>" or "<code><b>rotate</b></code>"), in separate lines in the brush's "<code>.dat</code>" file. </p>
<p>
For directional brushes, lay the brush out so that each 3x3 set of directional shapes are laid out across a wide PNG image. For example, if the brush is 30x30 and there are 5 frames, it would be 450x90. (The leftmost 150x90 pixels of the image represent the 9 direction shapes for the first frame, for example.) </p>
</blockquote>
</blockquote>