shop-components 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dev/libs/gltf-progressive/src/extension.d.ts +50 -0
- package/dist/dev/libs/gltf-progressive/src/extension.model.d.ts +24 -0
- package/dist/dev/libs/gltf-progressive/src/index.d.ts +15 -0
- package/dist/dev/libs/gltf-progressive/src/loaders.d.ts +28 -0
- package/dist/dev/libs/gltf-progressive/src/lods.debug.d.ts +4 -0
- package/dist/dev/libs/gltf-progressive/src/lods.manager.d.ts +79 -0
- package/dist/dev/libs/gltf-progressive/src/lods.promise.d.ts +36 -0
- package/dist/dev/libs/gltf-progressive/src/plugins/index.d.ts +2 -0
- package/dist/dev/libs/gltf-progressive/src/plugins/modelviewer.d.ts +1 -0
- package/dist/dev/libs/gltf-progressive/src/plugins/plugin.d.ts +12 -0
- package/dist/dev/libs/gltf-progressive/src/utils.d.ts +5 -0
- package/dist/dev/libs/gltf-progressive/src/utils.internal.d.ts +21 -0
- package/dist/dev/libs/gltf-progressive/src/version.d.ts +1 -0
- package/dist/dev/libs/gltf-progressive/src/worker/index.d.ts +1 -0
- package/dist/dev/libs/gltf-progressive/src/worker/loader.mainthread.d.ts +44 -0
- package/dist/dev/libs/gltf-progressive/vite.config.d.ts +2 -0
- package/dist/dev/main.d.ts +3 -0
- package/dist/{stories/device-viewer → dev/src}/amr.d.ts +22 -2
- package/dist/{stories/device-viewer → dev/src}/index.stories.d.ts +1 -2
- package/dist/{stories/device-viewer → dev/src}/scene.d.ts +2 -5
- package/dist/shop-components.cjs +98 -188
- package/dist/shop-components.mjs +2809 -3287
- package/package.json +4 -4
- package/dist/stories/cropper/index.d.ts +0 -67
- package/dist/stories/cropper/index.stories.d.ts +0 -11
- package/dist/stories/device-viewer/index.d.ts +0 -84
- package/dist/stories/device-viewer/lines.d.ts +0 -36
- package/dist/stories/devices/index.d.ts +0 -5
- package/dist/stories/devices/index.stories.d.ts +0 -13
- package/dist/stories/devices/src/connector.d.ts +0 -8
- package/dist/stories/devices/src/constraints/constraint.d.ts +0 -16
- package/dist/stories/devices/src/constraints/same-device-constraint.d.ts +0 -9
- package/dist/stories/devices/src/constraints/single-connection-constraint.d.ts +0 -9
- package/dist/stories/devices/src/device.d.ts +0 -11
- package/dist/stories/devices/src/pin.d.ts +0 -43
- package/dist/stories/main.d.ts +0 -3
- package/dist/stories/plugin.d.ts +0 -5
- package/dist/stories/plugins/change-slot/index.d.ts +0 -0
- package/dist/stories/step-viewer/index.d.ts +0 -17
- package/dist/stories/step-viewer/index.stories.d.ts +0 -19
- /package/dist/{stories/main → dev}/index.d.ts +0 -0
- /package/dist/{stories → dev/libs}/sglb/index.d.ts +0 -0
- /package/dist/{stories → dev/libs}/utils/index.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/assembly.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/belt.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/dimension/index.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/dimension/line3.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/dimension/size-box.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/dimension/size-line.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/goods-box.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/group-roller.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/libs/BVH/index.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/libs/gizmo/gizmo.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/libs/progress-shadow/ProgressiveShadows.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/logo.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/main.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/mechanism/mechanism.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/outerline.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/pin/pin.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/roller.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/row.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/slot/slot-item.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/slot.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/sound.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/text2.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/text3.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/ui/camera-position.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/ui/right-menu.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/utils/geometory.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/utils/index.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/worker/generate-mesh-bvh-worker.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/worker/generateAsync.worker.d.ts +0 -0
- /package/dist/{stories/device-viewer → dev/src}/worker/path-tracing-scene-worker.d.ts +0 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { BufferGeometry, Material, Mesh, Texture } from "three";
|
|
2
|
+
import { type GLTF, type GLTFLoaderPlugin, GLTFParser } from "three/examples/jsm/loaders/GLTFLoader.js";
|
|
3
|
+
import { NEEDLE_ext_progressive_mesh, NEEDLE_ext_progressive_texture } from "./extension.model.js";
|
|
4
|
+
export declare const EXTENSION_NAME = "NEEDLE_progressive";
|
|
5
|
+
type ProgressiveMaterialTextureLoadingResult = {
|
|
6
|
+
material: Material;
|
|
7
|
+
slot: string;
|
|
8
|
+
texture: Texture | null;
|
|
9
|
+
level: number;
|
|
10
|
+
};
|
|
11
|
+
type TextureLODsMinMaxInfo = {
|
|
12
|
+
min_count: number;
|
|
13
|
+
max_count: number;
|
|
14
|
+
lods: Array<{
|
|
15
|
+
min_height: number;
|
|
16
|
+
max_height: number;
|
|
17
|
+
}>;
|
|
18
|
+
};
|
|
19
|
+
export declare class NEEDLE_progressive implements GLTFLoaderPlugin {
|
|
20
|
+
get name(): string;
|
|
21
|
+
static getMeshLODExtension(geo: BufferGeometry): NEEDLE_ext_progressive_mesh | null;
|
|
22
|
+
static getPrimitiveIndex(geo: BufferGeometry): number;
|
|
23
|
+
static getMaterialMinMaxLODsCount(material: Material | Material[], minmax?: TextureLODsMinMaxInfo): TextureLODsMinMaxInfo;
|
|
24
|
+
static hasLODLevelAvailable(obj: Mesh | BufferGeometry | Texture | Material | Material[], level?: number): boolean;
|
|
25
|
+
static assignMeshLOD(mesh: Mesh, level: number): Promise<BufferGeometry | null>;
|
|
26
|
+
static assignTextureLOD(materialOrTexture: Material, level: number): Promise<Array<ProgressiveMaterialTextureLoadingResult> | null>;
|
|
27
|
+
static assignTextureLOD(materialOrTexture: Mesh, level: number): Promise<Array<ProgressiveMaterialTextureLoadingResult> | null>;
|
|
28
|
+
static assignTextureLOD(materialOrTexture: Texture, level: number): Promise<Texture | null>;
|
|
29
|
+
private static assignTextureLODForSlot;
|
|
30
|
+
private readonly parser;
|
|
31
|
+
private readonly url;
|
|
32
|
+
constructor(parser: GLTFParser);
|
|
33
|
+
private _isLoadingMesh;
|
|
34
|
+
loadMesh: (meshIndex: number) => Promise<any> | null;
|
|
35
|
+
afterRoot(gltf: GLTF): null;
|
|
36
|
+
static registerTexture: (url: string, tex: Texture, level: number, index: number, ext: NEEDLE_ext_progressive_texture) => void;
|
|
37
|
+
static registerMesh: (url: string, key: string, mesh: Mesh, level: number, index: number, ext: NEEDLE_ext_progressive_mesh) => void;
|
|
38
|
+
private static readonly lodInfos;
|
|
39
|
+
private static readonly previouslyLoaded;
|
|
40
|
+
private static readonly lowresCache;
|
|
41
|
+
private static readonly workers;
|
|
42
|
+
private static _workersIndex;
|
|
43
|
+
private static getOrLoadLOD;
|
|
44
|
+
private static maxConcurrent;
|
|
45
|
+
private static queue;
|
|
46
|
+
private static assignLODInformation;
|
|
47
|
+
private static getAssignedLODInformation;
|
|
48
|
+
private static copySettings;
|
|
49
|
+
}
|
|
50
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
type NEEDLE_progressive_model_LOD = {
|
|
2
|
+
path: string;
|
|
3
|
+
hash?: string;
|
|
4
|
+
};
|
|
5
|
+
export type NEEDLE_progressive_ext = {
|
|
6
|
+
guid: string;
|
|
7
|
+
lods: Array<NEEDLE_progressive_model_LOD>;
|
|
8
|
+
};
|
|
9
|
+
export type NEEDLE_ext_progressive_texture = NEEDLE_progressive_ext & {
|
|
10
|
+
lods: Array<NEEDLE_progressive_model_LOD & {
|
|
11
|
+
width: number;
|
|
12
|
+
height: number;
|
|
13
|
+
}>;
|
|
14
|
+
};
|
|
15
|
+
export type NEEDLE_ext_progressive_mesh = NEEDLE_progressive_ext & {
|
|
16
|
+
lods: Array<NEEDLE_progressive_model_LOD & {
|
|
17
|
+
indexCount: number;
|
|
18
|
+
vertexCount: number;
|
|
19
|
+
densities: number[] | undefined;
|
|
20
|
+
density: number;
|
|
21
|
+
}>;
|
|
22
|
+
density: number;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { version as VERSION } from "./version.js";
|
|
2
|
+
export * from "./extension.js";
|
|
3
|
+
export * from "./plugins/index.js";
|
|
4
|
+
export { LODsManager, type LOD_Results } from "./lods.manager.js";
|
|
5
|
+
export { setDracoDecoderLocation, setKTX2TranscoderLocation, createLoaders, addDracoAndKTX2Loaders, configureLoader } from "./loaders.js";
|
|
6
|
+
export { getRaycastMesh, registerRaycastMesh, useRaycastMeshes } from "./utils.js";
|
|
7
|
+
import { WebGLRenderer } from "three";
|
|
8
|
+
import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader.js";
|
|
9
|
+
import { SmartLoadingHints } from "./loaders.js";
|
|
10
|
+
declare type UseNeedleGLTFProgressiveOptions = {
|
|
11
|
+
enableLODsManager?: boolean;
|
|
12
|
+
hints?: Omit<SmartLoadingHints, "progressive">;
|
|
13
|
+
};
|
|
14
|
+
export declare function useNeedleProgressive(url: string, renderer: WebGLRenderer, loader: GLTFLoader, opts?: UseNeedleGLTFProgressiveOptions): any;
|
|
15
|
+
export declare function useNeedleProgressive(loader: GLTFLoader, renderer: WebGLRenderer, opts?: UseNeedleGLTFProgressiveOptions): any;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { WebGLRenderer } from 'three';
|
|
2
|
+
import { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader.js';
|
|
3
|
+
import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js';
|
|
4
|
+
export declare const GET_LOADER_LOCATION_CONFIG: () => {
|
|
5
|
+
dracoDecoderPath: string;
|
|
6
|
+
ktx2TranscoderPath: string;
|
|
7
|
+
};
|
|
8
|
+
export declare function setDracoDecoderLocation(location: string): void;
|
|
9
|
+
export declare function setKTX2TranscoderLocation(location: string): void;
|
|
10
|
+
export declare function createLoaders(renderer: WebGLRenderer | null): {
|
|
11
|
+
dracoLoader: DRACOLoader;
|
|
12
|
+
meshoptDecoder: {
|
|
13
|
+
supported: boolean;
|
|
14
|
+
ready: Promise<void>;
|
|
15
|
+
decodeVertexBuffer: (target: Uint8Array, count: number, size: number, source: Uint8Array, filter?: string | undefined) => void;
|
|
16
|
+
decodeIndexBuffer: (target: Uint8Array, count: number, size: number, source: Uint8Array) => void;
|
|
17
|
+
decodeIndexSequence: (target: Uint8Array, count: number, size: number, source: Uint8Array) => void;
|
|
18
|
+
decodeGltfBuffer: (target: Uint8Array, count: number, size: number, source: Uint8Array, mode: string, filter?: string | undefined) => void;
|
|
19
|
+
useWorkers: (count: number) => void;
|
|
20
|
+
decodeGltfBufferAsync: (count: number, size: number, source: Uint8Array, mode: string, filter?: string | undefined) => Promise<Uint8Array>;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export declare function addDracoAndKTX2Loaders(loader: GLTFLoader): void;
|
|
24
|
+
export type SmartLoadingHints = {
|
|
25
|
+
progressive?: boolean;
|
|
26
|
+
usecase?: "product";
|
|
27
|
+
};
|
|
28
|
+
export declare function configureLoader(loader: GLTFLoader, opts: SmartLoadingHints): void;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Camera, Material, Object3D, Scene, Texture, Vector3, WebGLRenderer } from "three";
|
|
2
|
+
import { NEEDLE_progressive_plugin } from "./plugins/plugin.js";
|
|
3
|
+
import { PromiseGroupOptions } from "./lods.promise.js";
|
|
4
|
+
export type LODManagerContext = {
|
|
5
|
+
engine: "three" | "needle-engine" | "model-viewer" | "react-three-fiber" | "unknown";
|
|
6
|
+
};
|
|
7
|
+
export declare type LOD_Results = {
|
|
8
|
+
mesh_lod: number;
|
|
9
|
+
texture_lod: number;
|
|
10
|
+
};
|
|
11
|
+
declare type LODChangedEventListener = (args: {
|
|
12
|
+
type: "mesh" | "texture";
|
|
13
|
+
level: number;
|
|
14
|
+
object: Object3D | Material | Texture;
|
|
15
|
+
}) => void;
|
|
16
|
+
export declare class LODsManager {
|
|
17
|
+
#private;
|
|
18
|
+
static debugDrawLine?: (a: Vector3, b: Vector3, color: number) => void;
|
|
19
|
+
static getObjectLODState(object: Object3D): LOD_state | undefined;
|
|
20
|
+
static addPlugin(plugin: NEEDLE_progressive_plugin): void;
|
|
21
|
+
static removePlugin(plugin: NEEDLE_progressive_plugin): void;
|
|
22
|
+
static get(renderer: WebGLRenderer, context?: LODManagerContext): LODsManager;
|
|
23
|
+
readonly renderer: WebGLRenderer;
|
|
24
|
+
private readonly context;
|
|
25
|
+
private readonly projectionScreenMatrix;
|
|
26
|
+
get plugins(): NEEDLE_progressive_plugin[];
|
|
27
|
+
overrideLodLevel: undefined | number;
|
|
28
|
+
targetTriangleDensity: number;
|
|
29
|
+
skinnedMeshAutoUpdateBoundsInterval: number;
|
|
30
|
+
updateInterval: "auto" | number;
|
|
31
|
+
pause: boolean;
|
|
32
|
+
manual: boolean;
|
|
33
|
+
private readonly _newPromiseGroups;
|
|
34
|
+
private _promiseGroupIds;
|
|
35
|
+
awaitLoading(opts?: PromiseGroupOptions): Promise<{
|
|
36
|
+
cancelled: boolean;
|
|
37
|
+
awaited_count: number;
|
|
38
|
+
resolved_count: number;
|
|
39
|
+
}>;
|
|
40
|
+
private _postprocessPromiseGroups;
|
|
41
|
+
private readonly _lodchangedlisteners;
|
|
42
|
+
addEventListener(evt: "changed", listener: LODChangedEventListener): void;
|
|
43
|
+
removeEventListener(evt: "changed", listener: LODChangedEventListener): void;
|
|
44
|
+
private constructor();
|
|
45
|
+
private _fpsBuffer;
|
|
46
|
+
enable(): void;
|
|
47
|
+
disable(): void;
|
|
48
|
+
update(scene: Scene, camera: Camera): void;
|
|
49
|
+
private onAfterRender;
|
|
50
|
+
private internalUpdate;
|
|
51
|
+
private updateLODs;
|
|
52
|
+
private loadProgressiveTextures;
|
|
53
|
+
private loadProgressiveMeshes;
|
|
54
|
+
private readonly _sphere;
|
|
55
|
+
private readonly _tempBox;
|
|
56
|
+
private readonly _tempBox2;
|
|
57
|
+
private readonly tempMatrix;
|
|
58
|
+
private readonly _tempWorldPosition;
|
|
59
|
+
private readonly _tempBoxSize;
|
|
60
|
+
private readonly _tempBox2Size;
|
|
61
|
+
private static corner0;
|
|
62
|
+
private static corner1;
|
|
63
|
+
private static corner2;
|
|
64
|
+
private static corner3;
|
|
65
|
+
private static readonly _tempPtInside;
|
|
66
|
+
private static isInside;
|
|
67
|
+
private static skinnedMeshBoundsFrameOffsetCounter;
|
|
68
|
+
private static $skinnedMeshBoundsOffset;
|
|
69
|
+
private calculateLodLevel;
|
|
70
|
+
}
|
|
71
|
+
declare class LOD_state {
|
|
72
|
+
frames: number;
|
|
73
|
+
lastLodLevel_Mesh: number;
|
|
74
|
+
lastLodLevel_Texture: number;
|
|
75
|
+
lastScreenCoverage: number;
|
|
76
|
+
readonly lastScreenspaceVolume: Vector3;
|
|
77
|
+
lastCentrality: number;
|
|
78
|
+
}
|
|
79
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
type PromiseType = "texture" | "mesh";
|
|
2
|
+
export type PromiseGroupOptions = {
|
|
3
|
+
name?: string;
|
|
4
|
+
frames?: number;
|
|
5
|
+
waitForFirstCapture?: boolean;
|
|
6
|
+
signal?: AbortSignal;
|
|
7
|
+
maxPromisesPerObject?: number;
|
|
8
|
+
};
|
|
9
|
+
type PromiseGroupResolveResult = {
|
|
10
|
+
cancelled: boolean;
|
|
11
|
+
awaited_count: number;
|
|
12
|
+
resolved_count: number;
|
|
13
|
+
};
|
|
14
|
+
export declare class PromiseGroup {
|
|
15
|
+
static readonly addPromise: (type: PromiseType, object: object, promise: Promise<any>, groups: PromiseGroup[]) => void;
|
|
16
|
+
readonly ready: Promise<PromiseGroupResolveResult>;
|
|
17
|
+
get awaitedCount(): number;
|
|
18
|
+
get resolvedCount(): number;
|
|
19
|
+
get currentlyAwaiting(): number;
|
|
20
|
+
private _resolve;
|
|
21
|
+
private readonly _signal?;
|
|
22
|
+
private _frame_start;
|
|
23
|
+
private _frames_to_capture;
|
|
24
|
+
private _resolved;
|
|
25
|
+
private _addedCount;
|
|
26
|
+
private _resolvedCount;
|
|
27
|
+
private readonly _awaiting;
|
|
28
|
+
private _maxPromisesPerObject;
|
|
29
|
+
constructor(frame: number, options: PromiseGroupOptions);
|
|
30
|
+
private _currentFrame;
|
|
31
|
+
update(frame: number): void;
|
|
32
|
+
private readonly _seen;
|
|
33
|
+
private add;
|
|
34
|
+
private resolveNow;
|
|
35
|
+
}
|
|
36
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function patchModelViewer(): void;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { WebGLRenderer, Scene, Camera, Mesh } from 'three';
|
|
2
|
+
import { NEEDLE_ext_progressive_mesh } from '../extension.model.js';
|
|
3
|
+
export interface NEEDLE_progressive_plugin {
|
|
4
|
+
onBeforeUpdateLOD?(renderer: WebGLRenderer, scene: Scene, camera: Camera, object: Mesh): void;
|
|
5
|
+
onAfterUpdatedLOD?(renderer: WebGLRenderer, scene: Scene, camera: Camera, object: Mesh, level: {
|
|
6
|
+
mesh_lod: number;
|
|
7
|
+
texture_lod: number;
|
|
8
|
+
}): void;
|
|
9
|
+
onRegisteredNewMesh?(mesh: Mesh, ext: NEEDLE_ext_progressive_mesh): void;
|
|
10
|
+
onBeforeGetLODMesh?(mesh: Mesh, level: number): void;
|
|
11
|
+
}
|
|
12
|
+
export declare const plugins: NEEDLE_progressive_plugin[];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { BufferGeometry, Object3D } from "three";
|
|
2
|
+
export declare const isSSR: boolean;
|
|
3
|
+
export declare function getRaycastMesh(obj: Object3D): BufferGeometry<any, any> | null;
|
|
4
|
+
export declare function registerRaycastMesh(obj: Object3D, geom: BufferGeometry): void;
|
|
5
|
+
export declare function useRaycastMeshes(enabled?: boolean): void;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare function isDebugMode(): string | boolean;
|
|
2
|
+
export declare function getParam(name: string): boolean | string;
|
|
3
|
+
export declare function resolveUrl(source: string | undefined, uri: string): string;
|
|
4
|
+
export declare function isMobileDevice(): boolean;
|
|
5
|
+
export declare function isDevelopmentServer(): boolean;
|
|
6
|
+
export type SlotReturnValue<T = any> = {
|
|
7
|
+
use?: ((promise: Promise<T>) => void);
|
|
8
|
+
};
|
|
9
|
+
export declare class PromiseQueue<T = any> {
|
|
10
|
+
readonly maxConcurrent: number;
|
|
11
|
+
private readonly _running;
|
|
12
|
+
private readonly _queue;
|
|
13
|
+
debug: boolean;
|
|
14
|
+
constructor(maxConcurrent?: number, opts?: {
|
|
15
|
+
debug?: boolean;
|
|
16
|
+
});
|
|
17
|
+
private tick;
|
|
18
|
+
slot(key: string): Promise<SlotReturnValue<T>>;
|
|
19
|
+
private add;
|
|
20
|
+
private internalUpdate;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const version = "";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getWorker as createGLTFLoaderWorker } from './loader.mainthread.js';
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { BufferGeometry, Texture, WebGLRenderer } from "three";
|
|
2
|
+
import type { KTX2LoaderWorkerConfig } from "three/examples/jsm/loaders/KTX2Loader.js";
|
|
3
|
+
type GLTFLoaderWorkerOptions = {
|
|
4
|
+
debug?: boolean;
|
|
5
|
+
};
|
|
6
|
+
type WorkerLoadResult = {
|
|
7
|
+
url: string;
|
|
8
|
+
geometries: Array<{
|
|
9
|
+
geometry: BufferGeometry;
|
|
10
|
+
meshIndex: number;
|
|
11
|
+
primitiveIndex: number;
|
|
12
|
+
extensions: Record<string, any>;
|
|
13
|
+
}>;
|
|
14
|
+
textures: Array<{
|
|
15
|
+
texture: Texture;
|
|
16
|
+
textureIndex: number;
|
|
17
|
+
extensions: Record<string, any>;
|
|
18
|
+
}>;
|
|
19
|
+
};
|
|
20
|
+
export declare function getWorker(opts?: GLTFLoaderWorkerOptions): Promise<GLTFLoaderWorker>;
|
|
21
|
+
export type { GLTFLoaderWorker, GLTFLoaderWorkerOptions, WorkerLoadResult };
|
|
22
|
+
export type GLTFLoaderWorker_Message = {
|
|
23
|
+
type: 'init';
|
|
24
|
+
} | {
|
|
25
|
+
type: 'load';
|
|
26
|
+
url: string;
|
|
27
|
+
dracoDecoderPath: string;
|
|
28
|
+
ktx2TranscoderPath: string;
|
|
29
|
+
ktx2LoaderConfig: KTX2LoaderWorkerConfig;
|
|
30
|
+
} | {
|
|
31
|
+
type: "loaded-gltf";
|
|
32
|
+
result: WorkerLoadResult;
|
|
33
|
+
};
|
|
34
|
+
declare class GLTFLoaderWorker {
|
|
35
|
+
private readonly worker;
|
|
36
|
+
static createWorker(opts: GLTFLoaderWorkerOptions): Promise<GLTFLoaderWorker>;
|
|
37
|
+
private _running;
|
|
38
|
+
private _webglRenderer;
|
|
39
|
+
load(url: string | URL, opts?: {
|
|
40
|
+
renderer?: WebGLRenderer;
|
|
41
|
+
}): Promise<WorkerLoadResult>;
|
|
42
|
+
private _debug;
|
|
43
|
+
private constructor();
|
|
44
|
+
}
|
|
@@ -5,10 +5,20 @@ import { ObjectSize } from './utils';
|
|
|
5
5
|
import { SizeBox } from './dimension/size-box';
|
|
6
6
|
import { AMRAssembly } from './assembly';
|
|
7
7
|
import EventEmitter from 'eventemitter3';
|
|
8
|
-
import type { CropperConfigs } from '../cropper';
|
|
9
8
|
import { GoodsBox } from './goods-box';
|
|
10
9
|
import { Logo } from './logo';
|
|
11
10
|
export declare const textureLoader: TextureLoader;
|
|
11
|
+
export interface CropperConfigs {
|
|
12
|
+
canvasWidth: number;
|
|
13
|
+
canvasHeight: number;
|
|
14
|
+
scaleX: number;
|
|
15
|
+
scaleY: number;
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
ox: number;
|
|
19
|
+
oy: number;
|
|
20
|
+
url: string;
|
|
21
|
+
}
|
|
12
22
|
export interface AmrProps {
|
|
13
23
|
url?: string;
|
|
14
24
|
showSizeBox: boolean;
|
|
@@ -22,6 +32,12 @@ export declare class Amr extends Object3D {
|
|
|
22
32
|
private _container;
|
|
23
33
|
lines: Group<import("three").Object3DEventMap>;
|
|
24
34
|
private _app;
|
|
35
|
+
private _modelRoot;
|
|
36
|
+
private _mixer;
|
|
37
|
+
private _clips;
|
|
38
|
+
private _actionsMap;
|
|
39
|
+
private _animationClock;
|
|
40
|
+
private _onTicker;
|
|
25
41
|
sizeBox: SizeBox;
|
|
26
42
|
_goodsSize: ObjectSize;
|
|
27
43
|
_slots: Slot[];
|
|
@@ -107,6 +123,10 @@ export declare class Amr extends Object3D {
|
|
|
107
123
|
generateSlot(m: Object3D, scene: Object3D): Slot | undefined;
|
|
108
124
|
clean(): void;
|
|
109
125
|
destroy(): void;
|
|
110
|
-
playAction(name: string, reset?: boolean
|
|
126
|
+
playAction(name: string, reset?: boolean, options?: {
|
|
127
|
+
timeScale?: number;
|
|
128
|
+
fadeIn?: number;
|
|
129
|
+
clampWhenFinished?: boolean;
|
|
130
|
+
}): Promise<void>;
|
|
111
131
|
pauseAction(name: string): void;
|
|
112
132
|
}
|
|
@@ -11,11 +11,10 @@ import Stats from 'stats-fps.js';
|
|
|
11
11
|
import { Pane } from 'tweakpane';
|
|
12
12
|
import { Sound } from './sound';
|
|
13
13
|
import { Slot, SLOT_EVENTS } from './slot';
|
|
14
|
-
import { DeviceLines, Line } from './lines';
|
|
15
14
|
import { Amr } from './amr';
|
|
16
15
|
import { Logo } from './logo';
|
|
17
16
|
export declare const font: Font;
|
|
18
|
-
export { Slot,
|
|
17
|
+
export { Slot, SLOT_EVENTS, Logo };
|
|
19
18
|
export interface LogoProps {
|
|
20
19
|
name: string;
|
|
21
20
|
target: Mesh;
|
|
@@ -89,6 +88,7 @@ export declare class Scene3D {
|
|
|
89
88
|
private _resizeObserver;
|
|
90
89
|
private _container;
|
|
91
90
|
private _fitAnimation;
|
|
91
|
+
private _focusRestoreView;
|
|
92
92
|
private _raycaster;
|
|
93
93
|
private _selected;
|
|
94
94
|
private _pointerDownTimeout;
|
|
@@ -106,9 +106,6 @@ export declare class Scene3D {
|
|
|
106
106
|
private _ground;
|
|
107
107
|
private light;
|
|
108
108
|
private _amrRender;
|
|
109
|
-
private _pointCloudMode;
|
|
110
|
-
get pointCloudMode(): boolean;
|
|
111
|
-
set pointCloudMode(enabled: boolean);
|
|
112
109
|
get usePathTracing(): boolean;
|
|
113
110
|
private _clearAmrContent;
|
|
114
111
|
private _shadowMode;
|