@visactor/vrender-core
Version:
```typescript import { xxx } from '@visactor/vrender-core'; ```
17 lines (16 loc) • 732 B
TypeScript
import type { IPoint, IPointLike } from '@visactor/vutils';
import type { IDirection, ICurve, IPath2D } from '../../../interface';
export declare abstract class Curve implements ICurve<IPoint> {
type: number;
readonly p0: IPoint;
defined: boolean;
protected length: number;
abstract getPointAt(t: number): IPointLike;
abstract getAngleAt(t: number): number;
abstract getYAt(x: number): number;
abstract includeX(x: number): boolean;
getLength(direction?: IDirection): number;
protected abstract calcLength(): number;
protected abstract calcProjLength(direction: IDirection): number;
abstract draw(path: IPath2D, x: number, y: number, sx: number, sy: number, percent: number): void;
}