Quelque chose qui fonctionnait bien dans la version WinForms de Paintual c’était la pipette (le “color picker”). Sous WPF je n’ai pas trouvé d’équivalent, alors je vais adapter le code de Julian Ott (https://www.codeproject.com/Articles/35436/Adobe-Color-Picker-Clone) . Ça va me prendre un certain temps car il y a quelque chose que je ne comprends pas bien, notamment comment sont générées les variations des plages de couleurs en temps réel, et ça ne m’est pas très utile de simplement recopier le code cette fois-ci. Il y a des chances que j’apprenne ici quelque chose de bien utile.

Alors en jouant au jeu avant-après, on voit un peu le progrès.

En parallèle, je réintègre le générateur de bruit. Ça sera au moins une première chose qui fonctionnera dans la nouvelle version. Un peu déçu devant la complexité de la tâche qui consiste à programmer des effets de tracés, je peux entre temps penser à générer des plages d’effets, chose pour laquelle on peut tolérer un temps d’attente avant de voir un résultat alors qu’un tracé demande vraiment un rendu en temps réel.

* * *

 

Something that worked well in the WinForms version of Paintual was the color picker. Under WPF I did not find an equivalent, so I’m going to adapt Julian Ott’s code (https://www.codeproject.com/Articles/35436/Adobe-Color-Picker-Clone). It will take me a while because there are things I do not understand very well, especially how the variations of the color plane are generated in real time, and it would not be that useful for me to just copy the code this time. Chances are I’ll be learning something very useful.

So playing the game of before-and-after, we see a little progress (see pictures above).

In parallel, I reintegrate the noise generator. It will be at least a first thing that works in the new version. Being a little disappointed by the complexity of the task of programming live stroke effects, I set myself a simpler goal of creating planar effects, something for which one can tolerate a wait time before seeing the result onscreen, as opposed to stroke rendering which definitely needs to be in realtime.