@osbjs/osbjs
Version:
a minimalist osu! storyboarding framework
20 lines (19 loc) • 742 B
TypeScript
import { IDistancePosition } from '../Interfaces';
import { Curve } from './Curve';
import { Vector2 } from '../../Math';
export declare class CircleCurve extends Curve {
precision: number;
length: number;
distancePositions: IDistancePosition[];
startPosition: Vector2;
endPosition: Vector2;
startPoint: Vector2;
midPoint: Vector2;
endPoint: Vector2;
constructor(startPoint: Vector2, midPoint: Vector2, endPoint: Vector2);
getPositionAtProgress(t: number): Vector2;
getPositionAtDelta(delta: number): Vector2;
getPositionAtDistance(distance: number): Vector2;
private _initLength;
static isValid(startPoint: Vector2, midPoint: Vector2, endPoint: Vector2): boolean;
}