qg3dviewer 1.0.0

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.
Files changed (69) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +94 -0
  3. package/dist/controls/CameraControls.d.ts +14 -0
  4. package/dist/controls/SetupCameraControls.d.ts +35 -0
  5. package/dist/controls/SetupFlying.d.ts +2 -0
  6. package/dist/convert/PlyToSplatConverter.d.ts +1 -0
  7. package/dist/convert/SplatToPlyConverter.d.ts +1 -0
  8. package/dist/events/EventConstants.d.ts +438 -0
  9. package/dist/events/EventListener.d.ts +2 -0
  10. package/dist/events/Events.d.ts +12 -0
  11. package/dist/events/SetupGlobalEV.d.ts +2 -0
  12. package/dist/index.d.ts +11 -0
  13. package/dist/index.es.js +6817 -0
  14. package/dist/index.umd.js +747 -0
  15. package/dist/internal/Index.d.ts +1 -0
  16. package/dist/internal/WebglVars.d.ts +31 -0
  17. package/dist/mapviewer/Reall3dMapViewer.d.ts +59 -0
  18. package/dist/mapviewer/Reall3dMapViewerOptions.d.ts +34 -0
  19. package/dist/mapviewer/events/MapEventListener.d.ts +2 -0
  20. package/dist/mapviewer/tween/SetupTween.d.ts +2 -0
  21. package/dist/mapviewer/utils/MapUtils.d.ts +6 -0
  22. package/dist/mapviewer/warpsplatmesh/WarpSplatMesh.d.ts +23 -0
  23. package/dist/meshs/boundbox/BoundBox.d.ts +7 -0
  24. package/dist/meshs/controlplane/ArrowHelper.d.ts +12 -0
  25. package/dist/meshs/controlplane/SetupControlPlane.d.ts +2 -0
  26. package/dist/meshs/focusmaker/SetupFocusMarker.d.ts +2 -0
  27. package/dist/meshs/mark/MarkCirclePlan.d.ts +36 -0
  28. package/dist/meshs/mark/MarkDistanceLine.d.ts +38 -0
  29. package/dist/meshs/mark/MarkMulitPlans.d.ts +40 -0
  30. package/dist/meshs/mark/MarkMultiLines.d.ts +37 -0
  31. package/dist/meshs/mark/MarkSinglePoint.d.ts +23 -0
  32. package/dist/meshs/mark/SetupMark.d.ts +2 -0
  33. package/dist/meshs/mark/data/MarkData.d.ts +6 -0
  34. package/dist/meshs/mark/data/MarkDataCirclePlan.d.ts +34 -0
  35. package/dist/meshs/mark/data/MarkDataDistanceLine.d.ts +34 -0
  36. package/dist/meshs/mark/data/MarkDataMultiLines.d.ts +32 -0
  37. package/dist/meshs/mark/data/MarkDataMultiPlans.d.ts +36 -0
  38. package/dist/meshs/mark/data/MarkDataSinglePoint.d.ts +24 -0
  39. package/dist/meshs/splatmesh/SetupSplatMesh.d.ts +2 -0
  40. package/dist/meshs/splatmesh/SplatMesh.d.ts +38 -0
  41. package/dist/meshs/splatmesh/SplatMeshOptions.d.ts +106 -0
  42. package/dist/modeldata/ModelData.d.ts +205 -0
  43. package/dist/modeldata/ModelOptions.d.ts +17 -0
  44. package/dist/modeldata/SplatTexdata.d.ts +40 -0
  45. package/dist/modeldata/SplatTexdataManager.d.ts +5 -0
  46. package/dist/modeldata/loaders/FileLoader.d.ts +2 -0
  47. package/dist/modeldata/loaders/PlyLoader.d.ts +5 -0
  48. package/dist/modeldata/loaders/SogLoader.d.ts +2 -0
  49. package/dist/modeldata/loaders/SplatLoader.d.ts +2 -0
  50. package/dist/modeldata/loaders/SpxLoader.d.ts +2 -0
  51. package/dist/modeldata/loaders/SpzLoader.d.ts +2 -0
  52. package/dist/modeldata/text/SetupGaussianText.d.ts +2 -0
  53. package/dist/modeldata/wasm/WasmParser.d.ts +19 -0
  54. package/dist/raycaster/SetupRaycaster.d.ts +2 -0
  55. package/dist/sorter/SetupSorter.d.ts +2 -0
  56. package/dist/sorter/Sorter.d.ts +1 -0
  57. package/dist/tools/brush-selection.d.ts +10 -0
  58. package/dist/tools/lasso-selection.d.ts +10 -0
  59. package/dist/tools/polygon-selection.d.ts +10 -0
  60. package/dist/tools/rect-selection.d.ts +8 -0
  61. package/dist/tools/tool-manager.d.ts +15 -0
  62. package/dist/utils/CommonUtils.d.ts +171 -0
  63. package/dist/utils/ViewerUtils.d.ts +10 -0
  64. package/dist/utils/consts/GlobalConstants.d.ts +62 -0
  65. package/dist/utils/consts/Index.d.ts +2 -0
  66. package/dist/utils/consts/WkConstants.d.ts +76 -0
  67. package/dist/viewer/Reall3dViewer.d.ts +57 -0
  68. package/dist/viewer/Reall3dViewerOptions.d.ts +174 -0
  69. package/package.json +50 -0
@@ -0,0 +1,106 @@
1
+ import { Renderer, Scene } from 'three';
2
+ import { Events } from '../../events/Events';
3
+ import { OrbitControls } from 'three/examples/jsm/Addons.js';
4
+ /**
5
+ * Splat mesh configuration options
6
+ */
7
+ export interface SplatMeshOptions {
8
+ /**
9
+ * Name
10
+ */
11
+ name?: string;
12
+ /**
13
+ * Renderer instance to be used
14
+ */
15
+ renderer: Renderer;
16
+ /**
17
+ * Scene instance to be used
18
+ */
19
+ scene: Scene;
20
+ /**
21
+ * Camera controls
22
+ */
23
+ controls?: OrbitControls;
24
+ /**
25
+ * Renderer event manager
26
+ */
27
+ viewerEvents?: Events;
28
+ /**
29
+ * Debug mode flag; defaults to false in production
30
+ */
31
+ debugMode?: boolean;
32
+ /**
33
+ * Large-scene mode flag; cannot be changed after initialization
34
+ */
35
+ bigSceneMode?: boolean;
36
+ /**
37
+ * Point-cloud rendering mode; defaults to true,
38
+ * Can be updated dynamically via viewer.options()
39
+ */
40
+ pointcloudMode?: boolean;
41
+ /**
42
+ * Maximum number of Gaussians to render on mobile devices,
43
+ * Can be updated dynamically via viewer.options()
44
+ */
45
+ maxRenderCountOfMobile?: number;
46
+ /**
47
+ * Maximum number of Gaussians to render on PC,
48
+ * Can be updated dynamically via viewer.options()
49
+ */
50
+ maxRenderCountOfPc?: number;
51
+ /**
52
+ * Brightness scale factor; defaults to 1.0
53
+ */
54
+ lightFactor?: number;
55
+ /**
56
+ * Whether to display a watermark; defaults to true
57
+ */
58
+ showWatermark?: boolean;
59
+ /**
60
+ * Spherical harmonics rendering degree; defaults to 0
61
+ */
62
+ shDegree?: number;
63
+ /**
64
+ * Enable depth testing; defaults to true
65
+ */
66
+ depthTest?: boolean;
67
+ /**
68
+ * Render quality level (1~9, default to 5)
69
+ */
70
+ qualityLevel?: number;
71
+ /**
72
+ * Sort type (default to SortTypes.Default)
73
+ */
74
+ sortType?: number;
75
+ /**
76
+ * map mode, defaults to false
77
+ */
78
+ mapMode?: boolean;
79
+ /**
80
+ * disable transition effect on load; defaults to false
81
+ */
82
+ disableTransitionEffectOnLoad?: boolean;
83
+ /**
84
+ * transition effect type; defaults to ModelCenterCirccle
85
+ */
86
+ transitionEffect?: TransitionEffects;
87
+ /**
88
+ * 最小可渲染直径像素
89
+ */
90
+ minPixelDiameter?: number;
91
+ /**
92
+ * 最大直径像素
93
+ */
94
+ maxPixelDiameter?: number;
95
+ /**
96
+ * 最小可渲染透明度
97
+ */
98
+ minAlpha?: number;
99
+ }
100
+ /** 过渡效果 */
101
+ export declare enum TransitionEffects {
102
+ ModelCenterCirccle = 1,
103
+ ScreenCenterCircle = 2,
104
+ ScreenMiddleToLeftRight = 3,
105
+ ScreenMiddleToTopBottom = 4
106
+ }
@@ -0,0 +1,205 @@
1
+ import { Matrix4, Vector3 } from 'three';
2
+ import { CameraInfo } from '../controls/SetupCameraControls';
3
+ import { ModelOptions } from './ModelOptions';
4
+ /**
5
+ * SPX file header information
6
+ */
7
+ export declare class SpxHeader {
8
+ Fixed: string;
9
+ Version: number;
10
+ SplatCount: number;
11
+ MinX: number;
12
+ MaxX: number;
13
+ MinY: number;
14
+ MaxY: number;
15
+ MinZ: number;
16
+ MaxZ: number;
17
+ MinTopY: number;
18
+ MaxTopY: number;
19
+ CreateDate: number;
20
+ CreaterId: number;
21
+ ExclusiveId: number;
22
+ ShDegree: number;
23
+ Flag1: number;
24
+ Flag2: number;
25
+ Flag3: number;
26
+ Reserve1: number;
27
+ Reserve2: number;
28
+ Comment: string;
29
+ HashCheck: boolean;
30
+ }
31
+ /**
32
+ * Splat model
33
+ */
34
+ export declare class SplatModel {
35
+ /** Model options */
36
+ readonly opts: ModelOptions;
37
+ /** File size (bytes) */
38
+ fileSize: number;
39
+ /** Downloaded size (bytes) */
40
+ downloadSize: number;
41
+ /** Current model status */
42
+ status: ModelStatus;
43
+ /** Raw model data */
44
+ splatData: Uint8Array;
45
+ /** Watermark data */
46
+ watermarkData: Uint8Array;
47
+ /** Number of Gaussians in the model */
48
+ dataSplatCount: number;
49
+ /** Number of watermark Gaussians */
50
+ watermarkCount: number;
51
+ /** Spherical harmonics (level 1 or 1+2) */
52
+ sh12Data: Uint8Array[];
53
+ /** Spherical harmonics (level 3 only) */
54
+ sh3Data: Uint8Array[];
55
+ /** Downloaded SH (level 1 or 1+2) count */
56
+ sh12Count: number;
57
+ /** Downloaded SH (level 3 only) count */
58
+ sh3Count: number;
59
+ /** Byte length of a single Gaussian record */
60
+ rowLength: number;
61
+ /** Total Gaussian count in the model */
62
+ modelSplatCount: number;
63
+ /** Downloaded Gaussian count */
64
+ downloadSplatCount: number;
65
+ /** Render-ready Gaussian count (dynamic for large scenes) */
66
+ renderSplatCount: number;
67
+ /** Abort controller for fetch cancellation */
68
+ abortController: AbortController;
69
+ /** Header info for .spx format */
70
+ header: SpxHeader;
71
+ spzVersion: number;
72
+ sogVersion: number;
73
+ CompressionRatio: string;
74
+ dataShDegree: number;
75
+ /** Model metadata */
76
+ meta: MetaData;
77
+ /** Map of cut data for large scenes */
78
+ map: Map<string, CutData>;
79
+ /** Bounding box extents */
80
+ minX: number;
81
+ maxX: number;
82
+ minY: number;
83
+ maxY: number;
84
+ minZ: number;
85
+ maxZ: number;
86
+ /** Highest Y coordinate */
87
+ topY: number;
88
+ currentRadius: number;
89
+ aabbCenter: Vector3;
90
+ /** Bounding sphere radius for .spx */
91
+ maxRadius: number;
92
+ metaMatrix: Matrix4;
93
+ /** Flags */
94
+ notifyFetchStopDone: boolean;
95
+ smallSceneUploadDone: boolean;
96
+ textWatermarkVersion: number;
97
+ lastTextWatermarkVersion: number;
98
+ fetchLimit: number;
99
+ /** Active points data */
100
+ activePoints: any;
101
+ constructor(opts: ModelOptions, meta?: MetaData);
102
+ }
103
+ /**
104
+ * Data chunk used in large-scene tiling
105
+ */
106
+ export interface CutData {
107
+ /** Number of Gaussians in this chunk */
108
+ splatCount?: number;
109
+ /** Raw data of this chunk */
110
+ splatData?: Uint8Array;
111
+ minX?: number;
112
+ maxX?: number;
113
+ minY?: number;
114
+ maxY?: number;
115
+ minZ?: number;
116
+ maxZ?: number;
117
+ center?: Vector3;
118
+ radius?: number;
119
+ /** Current renderable points (computed at runtime) */
120
+ currentRenderCnt?: number;
121
+ /** Distance to camera (computed at runtime) */
122
+ distance?: number;
123
+ }
124
+ /**
125
+ * Model status
126
+ */
127
+ export declare enum ModelStatus {
128
+ /** Ready */
129
+ FetchReady = 0,
130
+ /** In progress */
131
+ Fetching = 1,
132
+ /** Completed successfully */
133
+ FetchDone = 2,
134
+ /** Interrupted during request */
135
+ FetchAborted = 3,
136
+ /** Request failed */
137
+ FetchFailed = 4,
138
+ /** Invalid model format or data */
139
+ Invalid = 5
140
+ }
141
+ /**
142
+ * Metadata
143
+ */
144
+ export interface MetaData {
145
+ /** Name */
146
+ name?: string;
147
+ /** Version */
148
+ version?: string;
149
+ /** Update date (YYYYMMDD) */
150
+ updateDate?: number;
151
+ /** Enable auto-rotation */
152
+ autoRotate?: boolean;
153
+ /** Enable debug mode */
154
+ debugMode?: boolean;
155
+ /** Enable point-cloud rendering */
156
+ pointcloudMode?: boolean;
157
+ /** Maximum render count for mobile */
158
+ maxRenderCountOfMobile?: number;
159
+ /** Maximum render count for PC */
160
+ maxRenderCountOfPc?: number;
161
+ /** Maximum download count for mobile splats */
162
+ mobileDownloadLimitSplatCount?: number;
163
+ /** Maximum download count for PC splats */
164
+ pcDownloadLimitSplatCount?: number;
165
+ /** Meter scale factor */
166
+ meterScale?: number;
167
+ /** Text watermark */
168
+ watermark?: string;
169
+ /** Display watermark */
170
+ showWatermark?: boolean;
171
+ /** Display bounding box */
172
+ showBoundBox?: boolean;
173
+ /** Camera parameters */
174
+ cameraInfo?: CameraInfo;
175
+ /** Annotations */
176
+ marks?: any[];
177
+ /** Fly-through camera positions */
178
+ flyPositions?: number[];
179
+ /** Fly-through camera look-at points */
180
+ flyTargets?: number[];
181
+ /** render quality level */
182
+ qualityLevel?: number;
183
+ /** sort type */
184
+ sortType?: number;
185
+ /** depth near rate */
186
+ depthNearRate?: number;
187
+ /** depth near value */
188
+ depthNearValue?: number;
189
+ /** 最小可渲染直径像素 */
190
+ minPixelDiameter?: number;
191
+ /** 最大直径像素 */
192
+ maxPixelDiameter?: number;
193
+ /** 最小可渲染透明度 */
194
+ minAlpha?: number;
195
+ /** Enable particle loading effect (small scenes) */
196
+ particleMode?: boolean;
197
+ /** Auto-cut count */
198
+ autoCut?: number;
199
+ /** Transformation matrix */
200
+ transform?: number[];
201
+ /** Geolocation (EPSG:4326 WGS 84) */
202
+ WGS84?: number[];
203
+ /** Model URL */
204
+ url?: string;
205
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Gaussian Model Options
3
+ */
4
+ export interface ModelOptions {
5
+ /**
6
+ * Model URL
7
+ */
8
+ url: string;
9
+ /**
10
+ * Model format (ply | splat | spx | spz | sog | obj), auto-detected by default
11
+ */
12
+ format?: 'ply' | 'splat' | 'spx' | 'spz' | 'sog' | 'obj';
13
+ /**
14
+ * Whether to force re-download
15
+ */
16
+ fetchReload?: boolean;
17
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * 纹理
3
+ */
4
+ interface SplatTexdata {
5
+ /** 索引(0 | 1) */
6
+ index: number;
7
+ /** 纹理版本(毫秒时间戳) */
8
+ version?: number;
9
+ /** 纹理数据 */
10
+ txdata?: Uint32Array;
11
+ /** 坐标数据 */
12
+ xyz?: Float32Array;
13
+ /** 纹理数据就绪标志 */
14
+ textureReady?: boolean;
15
+ /** 纹理数据就绪时间点 */
16
+ textureReadyTime?: number;
17
+ /** 是否渲染中的活动状态 */
18
+ active?: boolean;
19
+ activeTime?: number;
20
+ /** 包围盒极限点 */
21
+ minX?: number;
22
+ /** 包围盒极限点 */
23
+ maxX?: number;
24
+ /** 包围盒极限点 */
25
+ minY?: number;
26
+ /** 包围盒极限点 */
27
+ maxY?: number;
28
+ /** 包围盒极限点 */
29
+ minZ?: number;
30
+ /** 包围盒极限点 */
31
+ maxZ?: number;
32
+ /** 待渲染的Splat数量 */
33
+ renderSplatCount?: number;
34
+ /** 可见且可用的Splat数量 */
35
+ visibleSplatCount?: number;
36
+ /** 所有处理中的模型Splat数量合计 */
37
+ modelSplatCount?: number;
38
+ /** 模型数据中的水印数量 */
39
+ watermarkCount?: number;
40
+ }
@@ -0,0 +1,5 @@
1
+ import { Events } from '../events/Events';
2
+ /**
3
+ * 纹理数据管理
4
+ */
5
+ export declare function setupSplatTextureManager(events: Events): void;
@@ -0,0 +1,2 @@
1
+ import { Events } from '../../events/Events';
2
+ export declare function loadFile(url: string, events?: Events): Promise<Uint8Array>;
@@ -0,0 +1,5 @@
1
+ import { SplatModel } from '../ModelData';
2
+ /**
3
+ * PLY加载器(注:仅支持3DGS标准格式的PLY)
4
+ */
5
+ export declare function loadPly(model: SplatModel): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { SplatModel } from '../ModelData';
2
+ export declare function loadSog(model: SplatModel): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { SplatModel } from '../ModelData';
2
+ export declare function loadSplat(model: SplatModel): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { SplatModel } from '../ModelData';
2
+ export declare function loadSpx(model: SplatModel): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { SplatModel } from '../ModelData';
2
+ export declare function loadSpz(model: SplatModel): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { Events } from '../../events/Events';
2
+ export declare function setupGaussianText(events: Events): void;
@@ -0,0 +1,19 @@
1
+ import { SpxHeader } from '../ModelData';
2
+ export declare function parseSpxHeader(header: Uint8Array): Promise<SpxHeader>;
3
+ interface SpxBlockResult {
4
+ splatCount: number;
5
+ blockFormat: number;
6
+ datas?: Uint8Array;
7
+ isSplat?: boolean;
8
+ isSh?: boolean;
9
+ isSh1?: boolean;
10
+ isSh2?: boolean;
11
+ isSh3?: boolean;
12
+ isSh23?: boolean;
13
+ dataSh3?: Uint8Array;
14
+ success: boolean;
15
+ }
16
+ export declare function parseSpxBlockData(data: Uint8Array, header?: SpxHeader): Promise<SpxBlockResult>;
17
+ export declare function parseSplatToTexdata(data: Uint8Array, splatCount: number): Promise<Uint8Array>;
18
+ export declare function parseWordToTexdata(x: number, y0z: number, isY?: boolean, isNgativeY?: boolean): Promise<Uint8Array>;
19
+ export {};
@@ -0,0 +1,2 @@
1
+ import { Events } from '../events/Events';
2
+ export declare function setupRaycaster(events: Events): void;
@@ -0,0 +1,2 @@
1
+ import { Events } from '../events/Events';
2
+ export declare function setupSorter(events: Events): void;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ import { Events } from '../events/Events';
2
+ declare class BrushSelection {
3
+ activate: () => void;
4
+ deactivate: () => void;
5
+ constructor(events: Events, parent: HTMLElement, mask: {
6
+ canvas: HTMLCanvasElement;
7
+ context: CanvasRenderingContext2D;
8
+ });
9
+ }
10
+ export { BrushSelection };
@@ -0,0 +1,10 @@
1
+ import { Events } from '../events/Events';
2
+ declare class LassoSelection {
3
+ activate: () => void;
4
+ deactivate: () => void;
5
+ constructor(events: Events, parent: HTMLElement, mask: {
6
+ canvas: HTMLCanvasElement;
7
+ context: CanvasRenderingContext2D;
8
+ });
9
+ }
10
+ export { LassoSelection };
@@ -0,0 +1,10 @@
1
+ import { Events } from '../events/Events';
2
+ declare class PolygonSelection {
3
+ activate: () => void;
4
+ deactivate: () => void;
5
+ constructor(events: Events, parent: HTMLElement, mask: {
6
+ canvas: HTMLCanvasElement;
7
+ context: CanvasRenderingContext2D;
8
+ });
9
+ }
10
+ export { PolygonSelection };
@@ -0,0 +1,8 @@
1
+ import { Events } from '../events/Events';
2
+ declare class RectSelection {
3
+ activate: () => void;
4
+ deactivate: () => void;
5
+ constructor(events: Events, parent: HTMLElement);
6
+ destroy(): void;
7
+ }
8
+ export { RectSelection };
@@ -0,0 +1,15 @@
1
+ import { Events } from '../events/Events';
2
+ interface Tool {
3
+ activate: () => void;
4
+ deactivate: () => void;
5
+ }
6
+ declare class ToolManager {
7
+ tools: Map<string, Tool>;
8
+ events: Events;
9
+ active: string | null;
10
+ constructor(events: Events);
11
+ register(name: string, tool: Tool): void;
12
+ get(toolName: string): Tool;
13
+ activate(toolName: string | null): void;
14
+ }
15
+ export { ToolManager };
@@ -0,0 +1,171 @@
1
+ import { Audio } from 'three';
2
+ import { Events } from '../events/Events';
3
+ import { SplatMeshOptions } from '../meshs/splatmesh/SplatMeshOptions';
4
+ export declare function setupCommonUtils(events: Events): void;
5
+ export declare const shaderChunk: {
6
+ alphahash_fragment: string;
7
+ alphahash_pars_fragment: string;
8
+ alphamap_fragment: string;
9
+ alphamap_pars_fragment: string;
10
+ alphatest_fragment: string;
11
+ alphatest_pars_fragment: string;
12
+ aomap_fragment: string;
13
+ aomap_pars_fragment: string;
14
+ batching_pars_vertex: string;
15
+ begin_vertex: string;
16
+ beginnormal_vertex: string;
17
+ bsdfs: string;
18
+ iridescence_fragment: string;
19
+ bumpmap_pars_fragment: string;
20
+ clipping_planes_fragment: string;
21
+ clipping_planes_pars_fragment: string;
22
+ clipping_planes_pars_vertex: string;
23
+ clipping_planes_vertex: string;
24
+ color_fragment: string;
25
+ color_pars_fragment: string;
26
+ color_pars_vertex: string;
27
+ color_vertex: string;
28
+ common: string;
29
+ cube_uv_reflection_fragment: string;
30
+ defaultnormal_vertex: string;
31
+ displacementmap_pars_vertex: string;
32
+ displacementmap_vertex: string;
33
+ emissivemap_fragment: string;
34
+ emissivemap_pars_fragment: string;
35
+ colorspace_fragment: string;
36
+ colorspace_pars_fragment: string;
37
+ envmap_fragment: string;
38
+ envmap_common_pars_fragment: string;
39
+ envmap_pars_fragment: string;
40
+ envmap_pars_vertex: string;
41
+ envmap_physical_pars_fragment: string;
42
+ envmap_vertex: string;
43
+ fog_vertex: string;
44
+ fog_pars_vertex: string;
45
+ fog_fragment: string;
46
+ fog_pars_fragment: string;
47
+ gradientmap_pars_fragment: string;
48
+ lightmap_pars_fragment: string;
49
+ lights_lambert_fragment: string;
50
+ lights_lambert_pars_fragment: string;
51
+ lights_pars_begin: string;
52
+ lights_toon_fragment: string;
53
+ lights_toon_pars_fragment: string;
54
+ lights_phong_fragment: string;
55
+ lights_phong_pars_fragment: string;
56
+ lights_physical_fragment: string;
57
+ lights_physical_pars_fragment: string;
58
+ lights_fragment_begin: string;
59
+ lights_fragment_maps: string;
60
+ lights_fragment_end: string;
61
+ logdepthbuf_fragment: string;
62
+ logdepthbuf_pars_fragment: string;
63
+ logdepthbuf_pars_vertex: string;
64
+ logdepthbuf_vertex: string;
65
+ map_fragment: string;
66
+ map_pars_fragment: string;
67
+ map_particle_fragment: string;
68
+ map_particle_pars_fragment: string;
69
+ metalnessmap_fragment: string;
70
+ metalnessmap_pars_fragment: string;
71
+ morphcolor_vertex: string;
72
+ morphnormal_vertex: string;
73
+ morphtarget_pars_vertex: string;
74
+ morphtarget_vertex: string;
75
+ normal_fragment_begin: string;
76
+ normal_fragment_maps: string;
77
+ normal_pars_fragment: string;
78
+ normal_pars_vertex: string;
79
+ normal_vertex: string;
80
+ normalmap_pars_fragment: string;
81
+ clearcoat_normal_fragment_begin: string;
82
+ clearcoat_normal_fragment_maps: string;
83
+ clearcoat_pars_fragment: string;
84
+ iridescence_pars_fragment: string;
85
+ opaque_fragment: string;
86
+ packing: string;
87
+ premultiplied_alpha_fragment: string;
88
+ project_vertex: string;
89
+ dithering_fragment: string;
90
+ dithering_pars_fragment: string;
91
+ roughnessmap_fragment: string;
92
+ roughnessmap_pars_fragment: string;
93
+ shadowmap_pars_fragment: string;
94
+ shadowmap_pars_vertex: string;
95
+ shadowmap_vertex: string;
96
+ shadowmask_pars_fragment: string;
97
+ skinbase_vertex: string;
98
+ skinning_pars_vertex: string;
99
+ skinning_vertex: string;
100
+ skinnormal_vertex: string;
101
+ specularmap_fragment: string;
102
+ specularmap_pars_fragment: string;
103
+ tonemapping_fragment: string;
104
+ tonemapping_pars_fragment: string;
105
+ transmission_fragment: string;
106
+ transmission_pars_fragment: string;
107
+ uv_pars_fragment: string;
108
+ uv_pars_vertex: string;
109
+ uv_vertex: string;
110
+ worldpos_vertex: string;
111
+ background_vert: string;
112
+ background_frag: string;
113
+ backgroundCube_vert: string;
114
+ backgroundCube_frag: string;
115
+ cube_vert: string;
116
+ cube_frag: string;
117
+ depth_vert: string;
118
+ depth_frag: string;
119
+ distanceRGBA_vert: string;
120
+ distanceRGBA_frag: string;
121
+ equirect_vert: string;
122
+ equirect_frag: string;
123
+ linedashed_vert: string;
124
+ linedashed_frag: string;
125
+ meshbasic_vert: string;
126
+ meshbasic_frag: string;
127
+ meshlambert_vert: string;
128
+ meshlambert_frag: string;
129
+ meshmatcap_vert: string;
130
+ meshmatcap_frag: string;
131
+ meshnormal_vert: string;
132
+ meshnormal_frag: string;
133
+ meshphong_vert: string;
134
+ meshphong_frag: string;
135
+ meshphysical_vert: string;
136
+ meshphysical_frag: string;
137
+ meshtoon_vert: string;
138
+ meshtoon_frag: string;
139
+ points_vert: string;
140
+ points_frag: string;
141
+ shadow_vert: string;
142
+ shadow_frag: string;
143
+ sprite_vert: string;
144
+ sprite_frag: string;
145
+ };
146
+ export declare function initSplatMeshOptions(options: SplatMeshOptions): SplatMeshOptions;
147
+ export declare const decodeB64: typeof atob;
148
+ /** 是否7天内 */
149
+ export declare function isNeedReload(yyyymmdd?: number): boolean;
150
+ export declare const isLocalhost: boolean;
151
+ export declare function clipUint8(value: number): number;
152
+ export declare function encodeSplatSH(val: number): number;
153
+ export declare function computeCompressionRatio(splatCount: number, bytelength: number): string;
154
+ export declare function DecompressGzip(data: Uint8Array): Promise<Uint8Array>;
155
+ export declare function DecompressXZ(datas: Uint8Array): Promise<Uint8Array>;
156
+ export declare function showTvText(txt: string, duration: number, audio: Audio): Promise<boolean>;
157
+ export declare function clearTvText(): void;
158
+ export declare function data190To19(data190: Uint8Array): Promise<Uint8Array>;
159
+ export declare function sh123To1(data123: Uint8Array): Promise<Uint8Array>;
160
+ export declare function sh123To2(data123: Uint8Array): Promise<Uint8Array>;
161
+ export declare function sh123To3(data123: Uint8Array): Promise<Uint8Array>;
162
+ export declare function webpToRgba(webps: Uint8Array): Promise<{
163
+ width: number;
164
+ height: number;
165
+ rgba: Uint8Array;
166
+ }>;
167
+ export declare function unzipToMap(zipBytes: Uint8Array): Map<string, Uint8Array>;
168
+ export declare function uint8ArrayToString(uint8Array: Uint8Array): string;
169
+ export declare function logEncode(v: number): number;
170
+ export declare function logDecode(v: number): number;
171
+ export declare function loopByTime(fnRun: Function, fnIsContinue?: Function, delay?: number): void;
@@ -0,0 +1,10 @@
1
+ import { PerspectiveCamera, WebGLRenderer } from 'three';
2
+ import { Events } from '../events/Events';
3
+ import { SplatMeshOptions } from '../meshs/splatmesh/SplatMeshOptions';
4
+ import { Reall3dViewerOptions } from '../viewer/Reall3dViewerOptions';
5
+ export declare function setupViewerUtils(events: Events): void;
6
+ export declare function initSplatMeshOptions(options: SplatMeshOptions): SplatMeshOptions;
7
+ export declare function initGsViewerOptions(options: Reall3dViewerOptions): Reall3dViewerOptions;
8
+ export declare function initRenderer(opts: Reall3dViewerOptions): WebGLRenderer;
9
+ export declare function initCamera(opts: Reall3dViewerOptions): PerspectiveCamera;
10
+ export declare function copyGsViewerOptions(gsViewerOptions: Reall3dViewerOptions): SplatMeshOptions;