react-three-nurbs
Version:
A React component library for NURBS (Non-Uniform Rational B-Spline) curves, surfaces, and solids in Three.js. Built with React Three Fiber, zero external NURBS dependencies — all math implemented from scratch. Boolean operations powered by OpenCASCADE WAS
19 lines (18 loc) • 619 B
TypeScript
import { Vector3 } from "three";
import { NurbsCurve } from "../core";
export interface UseNurbsCurveOptions {
points: number[][];
degree?: number;
weights?: number[];
knots?: number[];
resolution?: number;
}
export interface UseNurbsCurveResult {
curve: NurbsCurve | null;
points: Vector3[];
point: (t: number) => Vector3 | null;
tangent: (t: number) => Vector3 | null;
length: () => number;
closestParam: (point: Vector3) => number | null;
}
export declare function useNurbsCurve({ points, degree, weights, knots, resolution, }: UseNurbsCurveOptions): UseNurbsCurveResult;