File size: 927 Bytes
6cd9596
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import { Vector3 } from './../../math/Vector3';
import { Curve } from './../core/Curve';

// Extras / Curves /////////////////////////////////////////////////////////////////////
export namespace CurveUtils {
  export function tangentQuadraticBezier(
    t: number,
    p0: number,
    p1: number,
    p2: number
  ): number;
  export function tangentCubicBezier(
    t: number,
    p0: number,
    p1: number,
    p2: number,
    p3: number
  ): number;
  export function tangentSpline(
    t: number,
    p0: number,
    p1: number,
    p2: number,
    p3: number
  ): number;
  export function interpolate(
    p0: number,
    p1: number,
    p2: number,
    p3: number,
    t: number
  ): number;
}

export class CatmullRomCurve3 extends Curve<Vector3> {
  constructor(
    points?: Vector3[],
    closed?: boolean,
    curveType?: string,
    tension?: number
  );

  points: Vector3[];

  getPoint(t: number): Vector3;
}