import { default as p5ex } from '../p5exInterface'; import { NumberContainer } from '../basic'; import { Drawable } from '../loopables'; /** * Trimmable quadratic bezier curve. */ export declare class QuadraticBezierCurve implements Drawable { readonly pointList: p5.Vector[]; readonly resolution: number; readonly startRatio: NumberContainer; readonly endRatio: NumberContainer; protected readonly p: p5ex; /** * * @param p * @param startPoint * @param controlPoint * @param endPoint * @param resolution * @param startRatioRef * @param endRatioRef */ constructor(p: p5ex, startPoint: p5.Vector, controlPoint: p5.Vector, endPoint: p5.Vector, resolution: number, startRatioRef: NumberContainer, endRatioRef: NumberContainer); /** * Returns true if the provided control point candidate is valid. * @param controlPoint - The control point candidate to be checked. * @param startPoint - The start point of the bezier curve. * @param endPoint - The start point of the bezier curve. * @param minDistance - Minimum distance between the control point and the start/end point. * @param minAngle - Minimum angle of the control point. * @param maxAngle - Maximum angle of the control point. * @static */ static checkControlPoint(controlPoint: p5.Vector, startPoint: p5.Vector, endPoint: p5.Vector, minDistance: number, minAngle: number, maxAngle: number): boolean; draw(): void; }