UNPKG

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.

59 lines 3.25 kB
import { Event, Mesh, Vector3 } from 'three'; import { IMaterial } from '../IMaterial'; import { IObject3D, IObjectSetDirtyOptions } from '../IObject'; import { IGeometry, IGeometryEventMap } from '../IGeometry'; import { makeIObject3DUiConfig } from './IObjectUi'; import { ITexture } from '../ITexture'; export declare const iObjectCommons: { setDirty: (this: IObject3D, options?: IObjectSetDirtyOptions, ...args: any[]) => void; upgradeObject3D: typeof upgradeObject3D; makeUiConfig: typeof makeIObject3DUiConfig; autoCenter: <T extends IObject3D>(this: T, setDirty?: boolean, undo?: boolean) => T; autoScale: <T extends IObject3D>(this: T, autoScaleRadius?: number, isCentered?: boolean, setDirty?: boolean, undo?: boolean) => T; pivotToBoundsCenter: <T extends IObject3D>(this: T, setDirty?: boolean) => () => void; pivotToPoint: <T extends IObject3D>(this: T, point: Vector3, setDirty?: boolean) => () => void; traverseModels: <T extends IObject3D>(this: T, callback: (object: IObject3D) => boolean | void, { visible, widgets, ...ops }: { [x: string]: any; visible?: boolean | undefined; widgets?: boolean | undefined; }) => void; eventCallbacks: { onAddedToParent: (this: IObject3D, e: Event) => void; onRemovedFromParent: (this: IObject3D, e: Event) => void; onGeometryUpdate: (this: IObject3D, e: IGeometryEventMap["geometryUpdate"] & Event<"geometryUpdate">) => void; }; initMaterial: (this: IObject3D) => void; getMaterial: (this: IObject3D) => IMaterial | IMaterial[] | undefined; getMaterials: (this: IObject3D) => IMaterial[]; setMaterial: (this: IObject3D, material: IMaterial | IMaterial[] | undefined) => never[] | undefined; setMaterials: (this: IObject3D, materials: IMaterial[]) => void; initGeometry: (this: IObject3D) => void; getGeometry: (this: IObject3D & Mesh) => IGeometry | undefined; setGeometry: (this: IObject3D & Mesh, geometry: IGeometry | undefined) => void; refreshUi: (this: IObject3D) => void; /** @ignore */ dispatchEvent: (superDispatch: IObject3D["dispatchEvent"]) => IObject3D["dispatchEvent"]; /** @ignore */ clone: (superClone: IObject3D["clone"]) => IObject3D["clone"]; /** @ignore */ copy: (superCopy: IObject3D["copy"]) => IObject3D["copy"]; /** @ignore */ add: (superAdd: IObject3D["add"]) => IObject3D["add"]; /** @ignore */ dispose: (superDispose?: IObject3D["dispose"]) => (this: IObject3D, removeFromParent?: boolean) => any; getMapsForObject3D: (this: IObject3D) => Map<string, ITexture>; deleteObject: (object: IObject3D, e?: any) => Promise<(() => void) | undefined>; duplicateObject: (object: IObject3D, e?: any) => Promise<{ action: () => void; undo: () => void; }>; }; export declare const sceneTextureProperties: Set<string>; export declare const object3DTextureProperties: Set<string>; /** * Converts three.js Object3D to IObject3D, setup object events, adds utility methods, and runs objectProcessor. * @param parent */ declare function upgradeObject3D(this: IObject3D, parent?: IObject3D | undefined): IObject3D; export {}; //# sourceMappingURL=../../src/core/object/iObjectCommons.d.ts.map