42 lines
1.7 KiB
TypeScript
42 lines
1.7 KiB
TypeScript
import Path from '../graphic/Path';
|
|
import Element, { ElementAnimateConfig } from '../Element';
|
|
import { split } from './dividePath';
|
|
export declare function alignBezierCurves(array1: number[][], array2: number[][]): number[][][];
|
|
export interface CombineMorphingPath extends Path {
|
|
childrenRef(): (CombineMorphingPath | Path)[];
|
|
__isCombineMorphing: boolean;
|
|
}
|
|
export declare function centroid(array: number[]): number[];
|
|
export declare function isCombineMorphing(path: Element): path is CombineMorphingPath;
|
|
export declare function isMorphing(el: Element): boolean;
|
|
export declare function morphPath(fromPath: Path, toPath: Path, animationOpts: ElementAnimateConfig): Path;
|
|
export interface DividePathParams {
|
|
path: Path;
|
|
count: number;
|
|
}
|
|
export interface DividePath {
|
|
(params: DividePathParams): Path[];
|
|
}
|
|
export interface IndividualDelay {
|
|
(index: number, count: number, fromPath: Path, toPath: Path): number;
|
|
}
|
|
export interface CombineConfig extends ElementAnimateConfig {
|
|
dividePath?: DividePath;
|
|
individualDelay?: IndividualDelay;
|
|
}
|
|
export declare function combineMorph(fromList: (CombineMorphingPath | Path)[], toPath: Path, animationOpts: CombineConfig): {
|
|
fromIndividuals: Path<import("../graphic/Path").PathProps>[];
|
|
toIndividuals: Path<import("../graphic/Path").PathProps>[];
|
|
count: number;
|
|
};
|
|
export interface SeparateConfig extends ElementAnimateConfig {
|
|
dividePath?: DividePath;
|
|
individualDelay?: IndividualDelay;
|
|
}
|
|
export declare function separateMorph(fromPath: Path, toPathList: Path[], animationOpts: SeparateConfig): {
|
|
fromIndividuals: Path<import("../graphic/Path").PathProps>[];
|
|
toIndividuals: Path<import("../graphic/Path").PathProps>[];
|
|
count: number;
|
|
};
|
|
export { split as defaultDividePath };
|