Krita Source Code Documentation
Loading...
Searching...
No Matches
KisBoxFilterStrategy Class Reference

#include <kis_filter_strategy.h>

+ Inheritance diagram for KisBoxFilterStrategy:

Public Member Functions

QString description () override
 
virtual qint32 intSupport (qreal weightsPositionScale) override
 
qint32 intValueAt (qint32 t, qreal weightsPositionScale) const override
 
 KisBoxFilterStrategy ()
 
virtual qreal support (qreal weightsPositionScale) override
 
qreal valueAt (qreal t, qreal weightsPositionScale) const override
 
 ~KisBoxFilterStrategy () override
 
- Public Member Functions inherited from KisFilterStrategy
QString id ()
 
 KisFilterStrategy (KoID id)
 
QString name ()
 
virtual ~KisFilterStrategy ()
 

Additional Inherited Members

- Protected Attributes inherited from KisFilterStrategy
qint32 intSupportVal {0}
 
KoID m_id
 
qreal supportVal {0.0}
 

Detailed Description

Definition at line 83 of file kis_filter_strategy.h.

Constructor & Destructor Documentation

◆ KisBoxFilterStrategy()

KisBoxFilterStrategy::KisBoxFilterStrategy ( )
inline

Definition at line 86 of file kis_filter_strategy.h.

86 : KisFilterStrategy(KoID("NearestNeighbor", i18n("Nearest Neighbor"))) {
87 // 0.5 and 128, but with a bit of margin to ensure the correct pixel will be used
88 // even in case of calculation errors
89 supportVal = 0.51; intSupportVal = 129;
90 }
Definition KoID.h:30

◆ ~KisBoxFilterStrategy()

KisBoxFilterStrategy::~KisBoxFilterStrategy ( )
inlineoverride

Definition at line 91 of file kis_filter_strategy.h.

91{}

Member Function Documentation

◆ description()

QString KisBoxFilterStrategy::description ( )
inlineoverridevirtual

Reimplemented from KisFilterStrategy.

Definition at line 93 of file kis_filter_strategy.h.

93 {
94 return i18n("Replicate pixels in the image. Preserves all the original detail, but can produce jagged effects.");
95 }

◆ intSupport()

qint32 KisBoxFilterStrategy::intSupport ( qreal weightsPositionScale)
overridevirtual

Reimplemented from KisFilterStrategy.

Definition at line 101 of file kis_filter_strategy.cc.

102{
103 return qCeil(intSupportVal*weightsPositionScale);
104}

References KisFilterStrategy::intSupportVal.

◆ intValueAt()

qint32 KisBoxFilterStrategy::intValueAt ( qint32 t,
qreal weightsPositionScale ) const
overridevirtual

Reimplemented from KisFilterStrategy.

Definition at line 87 of file kis_filter_strategy.cc.

88{
89 /* f(t) = 1, -0.5 < t <= 0.5 */
90 if ((t >= -128 * weightsPositionScale) && (t < 128 * weightsPositionScale))
91 return 255;
92 return 0;
93}

◆ support()

qreal KisBoxFilterStrategy::support ( qreal weightsPositionScale)
overridevirtual

Reimplemented from KisFilterStrategy.

Definition at line 96 of file kis_filter_strategy.cc.

97{
98 return supportVal*weightsPositionScale;
99}

References KisFilterStrategy::supportVal.

◆ valueAt()

qreal KisBoxFilterStrategy::valueAt ( qreal t,
qreal weightsPositionScale ) const
overridevirtual

Reimplemented from KisFilterStrategy.

Definition at line 81 of file kis_filter_strategy.cc.

82{
83 if ((t >= -0.5 * weightsPositionScale) && (t < 0.5 * weightsPositionScale)) return(1.0);
84 return(0.0);
85}

The documentation for this class was generated from the following files: