import { ScreenXY } from "../common/screen-xy"; import { CRS } from "../crs/crs"; import { Polyline } from "../geometry/polyline"; /** * 线默认动画效果类 * @remarks * 类似航线效果 */ export declare class LineAnimation extends Animation { /** * 线 */ private _polyline; private _start; private _end; private _control; private _percent; /** * 线宽 */ lineWidth: number; /** * 起始色 */ startColor: string; /** * 终止色 */ endColor: string; /** * 二次贝塞尔曲线控制点与线段夹角 */ angle: number; /** * 构造函数 * @param {Polyline} geometry - 线 */ constructor(geometry: Polyline); /** * 数据投影 * @param {CRS} crs - 坐标系 */ project(crs: CRS): void; /** * 数据变换 * @param {ScreenXY} origin - 窗口坐标原点 * @param {number} zoom - 当前缩放级别 */ transform(origin: ScreenXY, zoom: number): void; /** * 动画效果 * @remarks * 通过Animator中requestAnimationFrame循环调用,因此注意优化代码,保持帧数 * @param {number} elapsed - 已逝去的时间,毫秒 * @param {CanvasRenderingContext2D} ctx - 绘图上下文 */ animate(elapsed: number, ctx: CanvasRenderingContext2D): void; _drawCurvePath(ctx: any, start: any, point: any, end: any, percent: any): void; _quadraticBezier(p0: any, p1: any, p2: any, t: any): number; }