import { Box2, Box3, Vector2, Vector3 } from 'three'; import { PatchBoundId } from './common_types.js'; /** * @param point input point inside bounding box * @param points surrounding points which must remain outside bounding box * @param bounds * @returns largest bounding box including input point while excluding surrounding points */ export declare const findBoundingBox: (point: Vector2, points: Vector2[], bounds: Box2) => Box2; export declare const bboxContainsPointXZ: (bbox: Box3, point: Vector3) => boolean; /** * * y2 - p12-----p22 * | + p | * | | * y1 - p11-----p21 * | | * x1 x2 * * @param p * @param p11 * @param p12 * @param p22 * @param p21 * @returns */ export declare const bilinearInterpolation: (p: Vector2, bounds: Box2, boundingVals: Record>) => any; export declare function smoothStep(x: number, min: number, max: number): number; /** * Inverse distance weighting (IDW) * @param cornersPoints * @param point */ export declare const roundToDec: (val: number, n_pow: number) => number; export declare const vectRoundToDec: (input: Vector2 | Vector3, n_pow: number) => Vector2 | Vector3; export declare const clamp: (val: number, min: number, max: number) => number;