Krita Source Code Documentation
Loading...
Searching...
No Matches
KisEncloseAndFillPainterDetail::SpecificColorOrTransparentDifferencePolicy Struct Reference
+ Inheritance diagram for KisEncloseAndFillPainterDetail::SpecificColorOrTransparentDifferencePolicy:

Public Member Functions

quint8 getDifferenceFor (const quint8 *srcData) const
 
 SpecificColorOrTransparentDifferencePolicy (const KoColorSpace *colorSpace, const KoColor &color)
 

Additional Inherited Members

- Public Attributes inherited from KisEncloseAndFillPainterDetail::DifferencePolicyBase
const KoColor color
 
const KoColorSpacecolorSpace
 

Detailed Description

Definition at line 69 of file KisEncloseAndFillPainter.cpp.

Constructor & Destructor Documentation

◆ SpecificColorOrTransparentDifferencePolicy()

KisEncloseAndFillPainterDetail::SpecificColorOrTransparentDifferencePolicy::SpecificColorOrTransparentDifferencePolicy ( const KoColorSpace * colorSpace,
const KoColor & color )
inline

Definition at line 71 of file KisEncloseAndFillPainter.cpp.

72 : DifferencePolicyBase{colorSpace, color.convertedTo(colorSpace)}
73 {}
KoColor convertedTo(const KoColorSpace *cs, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags) const
Definition KoColor.cpp:163

Member Function Documentation

◆ getDifferenceFor()

quint8 KisEncloseAndFillPainterDetail::SpecificColorOrTransparentDifferencePolicy::getDifferenceFor ( const quint8 * srcData) const
inline

Definition at line 75 of file KisEncloseAndFillPainter.cpp.

76 {
77 const quint8 colorDifference = colorSpace->difference(srcData, color.data());
78 const quint8 opacityDifference = colorSpace->opacityU8(srcData) * 100 / quint8_MAX;
79 return qMin(colorDifference, opacityDifference);
80 }
virtual quint8 difference(const quint8 *src1, const quint8 *src2) const =0
virtual quint8 opacityU8(const quint8 *pixel) const =0
quint8 * data()
Definition KoColor.h:144
const quint8 quint8_MAX
Definition kis_global.h:24
qreal colorDifference(const QColor &c1, const QColor &c2)

References KisEncloseAndFillPainterDetail::DifferencePolicyBase::color, KisEncloseAndFillPainterDetail::DifferencePolicyBase::colorSpace, KoColor::data(), KoColorSpace::difference(), KoColorSpace::opacityU8(), and quint8_MAX.


The documentation for this struct was generated from the following file: