/** * Returns the footpoint(s) (and parameter `t` value(s)) on the * given bezier curve to the given point (with `t ∈ [0,1]`). * * * guaranteed accurate to within `4*Number.EPSILON` in the returned `t` * value(s) * * the returned point(s) are objects with the following properties: * * `p`: the best estimate point on the bezier curve (calculated from the root interval `ri`) * * `t`: the best estimate `t` parameter value (calculated from the root interval `ri`) * * `d`: the best estimate closest distance from the point to the bezier curve (calculated from the root interval `ri`) * * `ri`: a root interval guaranteed to contain the actual `t` value * * `box`: a small box guaranteed to contain the relevant point on the bezier curve * * `dSquaredI`: a small squared distance interval guaranteed to contain the actual distance squared * between the point and the bezier curve * * @param ps an order 0,1,2 or 3 bezier curve given as an ordered array of its * control point coordinates, e.g. `[[0,0], [1,1], [2,1], [2,0]]` * @param p a point, e.g. `[1,2]` * * @doc */ declare function getFootPointsOnBezierPolysCertified(ps: number[][], p: number[]): { polyDd: number[][]; polyE: number[]; getPolyExact: () => number[][]; }; export { getFootPointsOnBezierPolysCertified };