@openhps/core
Version:
Open Hybrid Positioning System - Core component
52 lines (44 loc) • 1.41 kB
TypeScript
import { AnimationBlendMode } from "../constants.js";
import { Vector3 } from "../math/Vector3.js";
import { Bone } from "../objects/Bone.js";
import { KeyframeTrack } from "./KeyframeTrack.js";
export interface MorphTarget {
name: string;
vertices: Vector3[];
}
export class AnimationClip {
constructor(name?: string, duration?: number, tracks?: KeyframeTrack[], blendMode?: AnimationBlendMode);
name: string;
tracks: KeyframeTrack[];
/**
* @default THREE.NormalAnimationBlendMode
*/
blendMode: AnimationBlendMode;
/**
* @default -1
*/
duration: number;
uuid: string;
results: any[];
resetDuration(): AnimationClip;
trim(): AnimationClip;
validate(): boolean;
optimize(): AnimationClip;
clone(): this;
toJSON(clip: AnimationClip): any;
static CreateFromMorphTargetSequence(
name: string,
morphTargetSequence: MorphTarget[],
fps: number,
noLoop: boolean,
): AnimationClip;
static findByName(clipArray: AnimationClip[], name: string): AnimationClip;
static CreateClipsFromMorphTargetSequences(
morphTargets: MorphTarget[],
fps: number,
noLoop: boolean,
): AnimationClip[];
static parse(json: any): AnimationClip;
static parseAnimation(animation: any, bones: Bone[]): AnimationClip;
static toJSON(clip: AnimationClip): any;
}