|
Krita Source Code Documentation
|
#include <KoColorSpaceMaths.h>
Public Member Functions | |
| float | blend (float a, float b, float alpha) |
| quint8 | blend (quint8 a, quint8 b, quint8 c) |
| double | clamp (double a) |
| float | clamp (float a) |
| KoColorSpaceMathsTraits< quint16 >::compositetype | divide (quint16 a, quint16 b) |
| KoColorSpaceMathsTraits< quint8 >::compositetype | divide (quint8 a, quint8 b) |
| quint16 | invert (quint16 a) |
| quint8 | invert (quint8 a) |
| bool | isHalfValueFuzzy (double value) |
| bool | isHalfValueFuzzy (float value) |
| bool | isUnitValueClampedFuzzy (double d) |
| bool | isUnitValueClampedFuzzy (float f) |
| bool | isUnitValueFuzzy (double value) |
| bool | isUnitValueFuzzy (float value) |
| double | isUnsafeAsDivisor (double value) |
| float | isUnsafeAsDivisor (float value) |
| bool | isZeroValueClampedFuzzy (double d) |
| bool | isZeroValueClampedFuzzy (float f) |
| bool | isZeroValueFuzzy (double value) |
| bool | isZeroValueFuzzy (float value) |
| quint16 | multiply (quint16 a, quint16 b) |
| quint8 | multiply (quint8 a, quint8 b) |
| quint8 | multiply (quint8 a, quint8 b, quint8 c) |
| quint8 | scaleToA (double a) |
| quint16 | scaleToA (double a) |
| float | scaleToA (double a) |
| double | scaleToA (float a) |
| quint16 | scaleToA (float a) |
| quint8 | scaleToA (float a) |
| float | scaleToA (float a) |
| double | scaleToA (quint16 a) |
| float | scaleToA (quint16 a) |
| quint8 | scaleToA (quint16 a) |
| quint16 | scaleToA (quint16 a) |
| double | scaleToA (quint8 a) |
| float | scaleToA (quint8 a) |
| quint16 | scaleToA (quint8 a) |
| This specialization is needed because the default implementation won't work when scaling up. | |
| quint8 | scaleToA (quint8 a) |
Private Types | |
| typedef KoColorSpaceMathsTraits< _Tdst >::compositetype | dst_compositetype |
| typedef traits::compositetype | src_compositetype |
| typedef KoColorSpaceMathsTraits< _T > | traits |
This class defines some elementary operations used by various color space. It's intended to be generic, but some specialization exists either for optimization or just for being buildable.
| _T | some numerical type with an existing trait |
| _Tdst | some other numerical type with an existing trait, it is only needed if different of _T |
Definition at line 208 of file KoColorSpaceMaths.h.
|
private |
Definition at line 212 of file KoColorSpaceMaths.h.
|
private |
Definition at line 211 of file KoColorSpaceMaths.h.
|
private |
Definition at line 210 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 240 of file KoColorSpaceMaths.h.
|
inlinestatic |
Blending : (a * alpha) + b * (1 - alpha)
| a | |
| b | |
| alpha |
Definition at line 262 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 471 of file KoColorSpaceMaths.h.
|
inline |
|
inline |
Definition at line 391 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 274 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 477 of file KoColorSpaceMaths.h.
|
inlinestatic |
Clamps the composite type on higher border only. That is a fast path for scale-only transformations
Definition at line 327 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 278 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 286 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 295 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 303 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 299 of file KoColorSpaceMaths.h.
|
inlinestatic |
Division : (a * MAX ) / b
| a | |
| b |
Definition at line 228 of file KoColorSpaceMaths.h.
|
inline |
|
inline |
|
inlinestatic |
Definition at line 307 of file KoColorSpaceMaths.h.
|
inlinestatic |
Inversion : unitValue - a
| a |
Definition at line 252 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 676 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 649 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 356 of file KoColorSpaceMaths.h.
References v.
|
inline |
Definition at line 426 of file KoColorSpaceMaths.h.
References qFuzzyCompare(), and value().
|
inline |
Definition at line 512 of file KoColorSpaceMaths.h.
References qFuzzyCompare(), and value().
|
inlinestatic |
Definition at line 351 of file KoColorSpaceMaths.h.
References v.
|
inline |
Definition at line 419 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 505 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 336 of file KoColorSpaceMaths.h.
References value().
|
inline |
Definition at line 402 of file KoColorSpaceMaths.h.
References qFuzzyCompare(), and value().
|
inline |
Definition at line 488 of file KoColorSpaceMaths.h.
References qFuzzyCompare(), and value().
|
inlinestatic |
Definition at line 331 of file KoColorSpaceMaths.h.
References value().
|
inline |
Definition at line 397 of file KoColorSpaceMaths.h.
References value().
|
inline |
Definition at line 483 of file KoColorSpaceMaths.h.
References value().
|
inlinestatic |
Definition at line 346 of file KoColorSpaceMaths.h.
References v.
|
inline |
Definition at line 412 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 498 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 341 of file KoColorSpaceMaths.h.
References value().
|
inline |
Definition at line 407 of file KoColorSpaceMaths.h.
References qFuzzyIsNull(), and value().
|
inline |
Definition at line 493 of file KoColorSpaceMaths.h.
References qFuzzyIsNull(), and value().
|
inlinestatic |
Definition at line 232 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 215 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 219 of file KoColorSpaceMaths.h.
|
inline |
|
inline |
|
inline |
Definition at line 636 of file KoColorSpaceMaths.h.
References UINT8_MULT3().
|
inlinestatic |
Definition at line 315 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 244 of file KoColorSpaceMaths.h.
|
inlinestatic |
This function will scale a value of type _T to fit into a _Tdst.
Definition at line 270 of file KoColorSpaceMaths.h.
|
inline |
|
inline |
Definition at line 378 of file KoColorSpaceMaths.h.
References CLAMP, float2int(), and v.
|
inline |
Definition at line 433 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 439 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 445 of file KoColorSpaceMaths.h.
References CLAMP, float2int(), and v.
|
inline |
Definition at line 458 of file KoColorSpaceMaths.h.
References CLAMP, float2int(), and v.
|
inline |
Definition at line 715 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 385 of file KoColorSpaceMaths.h.
References KoLuts::Uint16ToFloat.
|
inline |
Definition at line 452 of file KoColorSpaceMaths.h.
References KoLuts::Uint16ToFloat.
|
inline |
|
inline |
Definition at line 709 of file KoColorSpaceMaths.h.
|
inline |
Definition at line 372 of file KoColorSpaceMaths.h.
References KoLuts::Uint8ToFloat.
|
inline |
Definition at line 465 of file KoColorSpaceMaths.h.
References KoLuts::Uint8ToFloat.
|
inline |
This specialization is needed because the default implementation won't work when scaling up.
Definition at line 688 of file KoColorSpaceMaths.h.
References UINT8_TO_UINT16().
|
inline |
Definition at line 703 of file KoColorSpaceMaths.h.
|
inlinestatic |
Definition at line 236 of file KoColorSpaceMaths.h.