import type { DataPoint, IInterpolationAlgorithm, ScreenPoint } from '../..'; /** * Provides functionality to interpolate a list of points by a Centripetal Catmull–Rom spline. * Based on CanonicalSplineHelper.cs (c) 2009 by Charles Petzold (WPF and Silverlight) * http://www.charlespetzold.com/blog/2009/01/Canonical-Splines-in-WPF-and-Silverlight.html */ export declare class CatmullRomSpline implements IInterpolationAlgorithm { /** * The alpha value. */ alpha: number; /** * The maximum number of segments. */ maxSegments: number; /** * Initializes a new instance of the CatmullRomSpline class. * @param alpha The alpha. */ constructor(alpha: number); /** * Creates a spline from data points. * @param points Data points. * @param isClosed True if the spline is closed. * @param tolerance The tolerance. * @returns Spline. */ createSplineDp(points: DataPoint[], isClosed: boolean, tolerance: number): DataPoint[]; /** * Creates a spline from points in screen space. * @param points Resampled points. * @param isClosed True if the spline is closed. * @param tolerance The tolerance. * @returns Spline. */ createSplineSp(points: ScreenPoint[], isClosed: boolean, tolerance: number): ScreenPoint[]; /** * Creates a spline of data points. * @param points The points. * @param alpha The alpha. * @param isClosed True if the spline is closed. * @param tolerance The tolerance. * @param maxSegments The maximum number of segments. * @returns A list of data points. */ private static createSplineForDp; /** * Creates a spline of screen points. * @param points The points. * @param alpha The alpha. * @param isClosed True if the spline is closed. * @param tolerance The tolerance. * @param maxSegments The maximum number of segments. * @returns A list of screen points. */ static createSpline(points: ScreenPoint[], alpha: number, isClosed: boolean, tolerance: number, maxSegments: number): ScreenPoint[]; /** * The segment. * @private */ private static segment; private static getT; private static mult; private static equals; private static prev; private static sum; } //# sourceMappingURL=CatmullRomSpline.d.ts.map