47 double sumCounter = 0;
48 double sumDenominator = 0;
52 distance = sqrt(( vertex_it.
x - x ) * ( vertex_it.
x - x ) + ( vertex_it.
y - y ) * ( vertex_it.
y - y ) );
58 currentWeight = 1 / ( pow( distance, mDistanceCoefficient ) );
59 sumCounter += ( currentWeight * vertex_it.
z );
60 sumDenominator += currentWeight;
63 if ( sumDenominator == 0.0 )
68 result = sumCounter / sumDenominator;
QVector< vertexData > mCachedBaseData
Interface class for interpolations.
int interpolatePoint(double x, double y, double &result) override
Calculates interpolation value for map coordinates x, y.
bool mDataIsCached
Flag that tells if the cache already has been filled.
QgsIDWInterpolator(const QList< LayerData > &layerData)
double ANALYSIS_EXPORT min(double x, double y)
Returns the minimum of two doubles or the first argument if both are equal.
int cacheBaseData()
Caches the vertex and value data from the provider.