File size: 1,238 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
import { DiscreteInterpolant } from './../math/interpolants/DiscreteInterpolant';
import { LinearInterpolant } from './../math/interpolants/LinearInterpolant';
import { CubicInterpolant } from './../math/interpolants/CubicInterpolant';
import { InterpolationModes } from '../constants';

export class KeyframeTrack {
  constructor(
    name: string,
    times: any[],
    values: any[],
    interpolation?: InterpolationModes
  );

  name: string;
  times: any[];
  values: any[];

  ValueTypeName: string;
  TimeBufferType: Float32Array;
  ValueBufferType: Float32Array;

  DefaultInterpolation: InterpolationModes;

  InterpolantFactoryMethodDiscrete(result: any): DiscreteInterpolant;
  InterpolantFactoryMethodLinear(result: any): LinearInterpolant;
  InterpolantFactoryMethodSmooth(result: any): CubicInterpolant;

  setInterpolation(interpolation: InterpolationModes): void;
  getInterpolation(): InterpolationModes;

  getValuesize(): number;

  shift(timeOffset: number): KeyframeTrack;
  scale(timeScale: number): KeyframeTrack;
  trim(startTime: number, endTime: number): KeyframeTrack;
  validate(): boolean;
  optimize(): KeyframeTrack;

  static parse(json: any): KeyframeTrack;
  static toJSON(track: KeyframeTrack): any;
}