import type { GetInterpolateValue } from './index.js'; import type { MValue, Properties, RGBA, VectorPoint } from '../../index.js'; /** * # Lanczos Interpolation * * ## Description * Perform interpolation using the Lanczos filter. This method uses a kernel-based approach * to weigh contributions from nearby points, providing a balance between smoothing and sharpness. * * ## Usage * ```ts * import { lanczosInterpolation, PointIndexFast } from 'gis-tools-ts'; * import type { VectorPoint } from 'gis-tools-ts'; * * // We have m-value data that we want to interpolate * interface TempData { temp: number; } * * const pointIndex = new PointIndexFast(); * // add lots of points * pointIndex.insertLonLat(lon, lat, data); * // .... * * // given a point we are interested in * const point: VectorPoint = { x: 20, y: -40 }; * // get a collection of points relative to the point * const data = await pointIndex.searchRadius(point.x, point.y, radius); * * // interpolate * const interpolatedValue = lanczosInterpolation(point, data, (p) => p.m.temp); * ``` * @param point - Point to interpolate * @param refData - Reference data points * @param getValue - Function to extract the value from a reference point * @param kernelRadius - Lanczos kernel radius (default is 2) Recommend to only use 2 or 3. * @returns - The interpolated value */ export declare function lanczosInterpolation(point: VectorPoint, refData: VectorPoint[], getValue?: GetInterpolateValue, kernelRadius?: number): number; /** * Helper function for {@link lanczosInterpolation} on RGB(A) data. * Light in RGB data is logarithmically weighted, so we need to expand each component by n^2 to * get the correct weight for each component. * @param point - Point to interpolate * @param refData - Reference data points * @param kernelRadius - Lanczos kernel radius (default is 2) Recommend to only use 2 or 3. * @returns - The interpolated RGBA data. */ export declare function rgbaLanczosInterpolation(point: VectorPoint, refData: VectorPoint[], kernelRadius?: number): RGBA; //# sourceMappingURL=lanczos.d.ts.map