Bug 376179 - fuzzy dynamic is not influenced by "strength"
Summary: fuzzy dynamic is not influenced by "strength"
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Brush engines (show other bugs)
Version: 3.1.2
Platform: Other Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Tiar
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-02-08 13:16 UTC by Bollebib
Modified: 2019-09-14 15:26 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bollebib 2017-02-08 13:16:32 UTC
if you set for example rotation on pressure you can get 360 degrees of rotation at full strength

at half strength or with adjusted curve you will get 180 degrees.

This does not work for fuzzy stroke or fuzzy dab.

I would expect fuzzy at 50 to have the same degrees available as when i use it for pressure.

This is important to have randomness,but slightly less exagerated at times. Like when painting blades of grass,to prevent them to stand on their head,but still have some randomness.


Strength or curve should influence fuzzy like it does with pressure or other dynamics.
Comment 1 wolthera 2017-02-08 16:06:35 UTC
Fuzzy dab is affected by the curve here, but not by the strength, no.
Comment 2 Bollebib 2017-02-08 18:35:34 UTC
(In reply to wolthera from comment #1)
> Fuzzy dab is affected by the curve here, but not by the strength, no.

yes, i made a mistake earlier in my config,you are correct,it does work with curves
Comment 3 Tiar 2019-08-15 15:42:53 UTC
Git commit 3602c72493b78d7e787911e60f3680371778f2ec by Agata Cacko.
Committed on 15/08/2019 at 15:42.
Pushed by tymond into branch 'master'.

Fix Strength not used in Rotation - Fuzzy Dab

Before this commit, if you chose Fuzzy Dab sensor
in Rotation option, the value of the Strength slider wouldn't
affect the resulting rotation of the brush tip.
This commit fixes that behaviour: now if you choose very low
Strength and the first curve from the template ones,
the brush tip will rotate only slightly (before it would rotate
within the full 360* range).

* Fuzzy Dab is 'additive' kind of sensor, so it's value would be put
in 'realAdditivePart' in rotationLikeValue(). 'constant' contains the
value of 'Strength' slider. To get it working together,
'realAdditivePart' had to be multiplied by the 'constant' value.

* HSV option just ignored the problem and multiplied it by the value of
the slider later. It couldn't be done for Rotation because Rotation
takes the canvas rotation into account (see rotationLikeValue).
Therefore it had to be done inside rotationLikeValue function, not
later. Therefore the multiplication in HSV option had to be disabled
to not double the effect.
BACKPORT:krita/4.2

M  +1    -1    plugins/paintops/libpaintop/kis_curve_option.h
M  +0    -1    plugins/paintops/libpaintop/kis_pressure_hsv_option.cpp

https://invent.kde.org/kde/krita/commit/3602c72493b78d7e787911e60f3680371778f2ec
Comment 4 Tiar 2019-09-14 15:26:22 UTC
Git commit 1c65c4c04d84aabcaaa29e9981a3e725a1d26f5a by Agata Cacko.
Committed on 14/09/2019 at 15:25.
Pushed by tymond into branch 'krita/4.2'.

Fix Strength not used in Rotation - Fuzzy Dab

Before this commit, if you chose Fuzzy Dab sensor
in Rotation option, the value of the Strength slider wouldn't
affect the resulting rotation of the brush tip.
This commit fixes that behaviour: now if you choose very low
Strength and the first curve from the template ones,
the brush tip will rotate only slightly (before it would rotate
within the full 360* range).

* Fuzzy Dab is 'additive' kind of sensor, so it's value would be put
in 'realAdditivePart' in rotationLikeValue(). 'constant' contains the
value of 'Strength' slider. To get it working together,
'realAdditivePart' had to be multiplied by the 'constant' value.

* HSV option just ignored the problem and multiplied it by the value of
the slider later. It couldn't be done for Rotation because Rotation
takes the canvas rotation into account (see rotationLikeValue).
Therefore it had to be done inside rotationLikeValue function, not
later. Therefore the multiplication in HSV option had to be disabled
to not double the effect.
BACKPORT:krita/4.2

M  +1    -1    plugins/paintops/libpaintop/kis_curve_option.h
M  +0    -1    plugins/paintops/libpaintop/kis_pressure_hsv_option.cpp

https://invent.kde.org/kde/krita/commit/1c65c4c04d84aabcaaa29e9981a3e725a1d26f5a