@deck.gl/core
Version:
deck.gl core library
33 lines • 1.53 kB
TypeScript
import TransitionInterpolator from "./transition-interpolator.js";
/**
* This class adapts mapbox-gl-js Map#flyTo animation so it can be used in
* react/redux architecture.
* mapbox-gl-js flyTo : https://www.mapbox.com/mapbox-gl-js/api/#map#flyto.
* It implements “Smooth and efficient zooming and panning.” algorithm by
* "Jarke J. van Wijk and Wim A.A. Nuij"
*/
export default class FlyToInterpolator extends TransitionInterpolator {
opts: {
curve: number;
speed: number;
screenSpeed?: number;
maxDuration?: number;
};
constructor(opts?: {
/** The zooming "curve" that will occur along the flight path. Default 1.414 */
curve?: number;
/** The average speed of the animation defined in relation to `options.curve`, it linearly affects the duration, higher speed returns smaller durations and vice versa. Default 1.2 */
speed?: number;
/** The average speed of the animation measured in screenfuls per second. Similar to `opts.speed` it linearly affects the duration, when specified `opts.speed` is ignored. */
screenSpeed?: number;
/** Maximum duration in milliseconds, if calculated duration exceeds this value, `0` is returned. */
maxDuration?: number;
});
interpolateProps(startProps: any, endProps: any, t: any): {
longitude: number;
latitude: number;
zoom: number;
};
getDuration(startProps: any, endProps: any): any;
}
//# sourceMappingURL=fly-to-interpolator.d.ts.map