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

#include <kis_filter_strategy.h>

+ Inheritance diagram for KisBilinearFilterStrategy:

Public Member Functions

QString description () override
 
qint32 intValueAt (qint32 t, qreal weightsPositionScale) const override
 
 KisBilinearFilterStrategy ()
 
qreal valueAt (qreal t, qreal weightsPositionScale) const override
 
 ~KisBilinearFilterStrategy () override
 
- Public Member Functions inherited from KisFilterStrategy
QString id ()
 
virtual qint32 intSupport (qreal weightsPositionScale)
 
 KisFilterStrategy (KoID id)
 
QString name ()
 
virtual qreal support (qreal weightsPositionScale)
 
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 105 of file kis_filter_strategy.h.

Constructor & Destructor Documentation

◆ KisBilinearFilterStrategy()

KisBilinearFilterStrategy::KisBilinearFilterStrategy ( )
inline

Definition at line 108 of file kis_filter_strategy.h.

108 : KisFilterStrategy(KoID("Bilinear", i18n("Bilinear"))) {
109 supportVal = 1.0; intSupportVal = 256;
110 }
Definition KoID.h:30

◆ ~KisBilinearFilterStrategy()

KisBilinearFilterStrategy::~KisBilinearFilterStrategy ( )
inlineoverride

Definition at line 111 of file kis_filter_strategy.h.

111{}

Member Function Documentation

◆ description()

QString KisBilinearFilterStrategy::description ( )
inlineoverridevirtual

Reimplemented from KisFilterStrategy.

Definition at line 113 of file kis_filter_strategy.h.

113 {
114 return i18n("Adds pixels averaging the color values of surrounding pixels. Produces medium quality results when the image is scaled from half to two times the original size.");
115 }

◆ intValueAt()

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

Reimplemented from KisFilterStrategy.

Definition at line 114 of file kis_filter_strategy.cc.

115{
116 Q_UNUSED(weightsPositionScale);
117 /* f(t) = |t|, -1 <= t <= 1 */
118 if (t < 0) t = -t;
119 if (t < 256) {
120 // calc 256-1 but also go from .8 fixed point to 8bitscale. ie t = (t*255)/256; ie: if(t>=128) return t-1;
121 if (t >= 128) return 256 - t;
122 return 255 - t;
123 }
124 return(0);
125}

◆ valueAt()

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

Reimplemented from KisFilterStrategy.

Definition at line 106 of file kis_filter_strategy.cc.

107{
108 Q_UNUSED(weightsPositionScale);
109 if (t < 0.0) t = -t;
110 if (t < 1.0) return(1.0 - t);
111 return(0.0);
112}

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