threepipe
Version:
A modern 3D viewer framework built on top of three.js, written in TypeScript, designed to make creating high-quality, modular, and extensible 3D experiences on the web simple and enjoyable.
54 lines • 2.08 kB
TypeScript
import { Mesh, Object3D, Object3DEventMap, OrthographicCamera, PerspectiveCamera, Sprite, Vector3, Vector4, WebGLRenderer } from 'three';
import { LineSegments2 } from 'three/examples/jsm/lines/LineSegments2.js';
export type GizmoOrientation = '+x' | '-x' | '+y' | '-y' | '+z' | '-z';
export type DomPlacement = 'top-left' | 'top-right' | 'top-center' | 'center-right' | 'center-left' | 'center-center' | 'bottom-left' | 'bottom-right' | 'bottom-center';
export interface ViewHelper2EventMap extends Object3DEventMap {
['animating-changed']: {
detail: {
key: 'animating';
value: boolean;
oldValue: boolean;
};
};
update: {
event: PointerEvent;
change: 'pointer';
} | {
change: 'orientation';
};
}
/**
* Extended ViewHelper implemented from the following source:
* https://github.com/Fennec-hub/viewHelper
* MIT License
* Copyright (c) 2022 Fennec-hub
*/
export declare class ViewHelper2 extends Object3D<ViewHelper2EventMap> {
camera: OrthographicCamera | PerspectiveCamera;
orthoCamera: OrthographicCamera<Object3DEventMap>;
isViewHelper: boolean;
animating: boolean;
target: Vector3;
backgroundSphere: Mesh;
axesLines: LineSegments2;
spritePoints: Sprite[];
domElement: HTMLElement;
domContainer: HTMLElement;
domRect: DOMRect;
renderer: WebGLRenderer;
viewport: Vector4;
offsetHeight: number;
constructor(camera: PerspectiveCamera | OrthographicCamera, canvas: HTMLCanvasElement, placement?: DomPlacement, size?: number, pixelRatio?: number);
startListening(): void;
onPointerMove(e: PointerEvent): void;
onPointerLeave(e: PointerEvent): void;
handleClick(e: PointerEvent | MouseEvent): void;
handleHover(e: PointerEvent): void;
render(): void;
updateOrientation(fromCamera?: boolean): void;
update(): void;
animate(delta: number): void;
setOrientation(orientation: GizmoOrientation): void;
dispose(): void;
}
//# sourceMappingURL=../../src/three/utils/ViewHelper2.d.ts.map